目次
はじめに
本記事はABEJAアドベントカレンダー2022の13日目の記事です。
こんにちは!カスタマーサクセス統括部 データサイエンスグループでインターンをやらせていただいている村尾(@MURA_omura)です。
私は高専の専攻科生で、現在GANsを用いた音声生成に関する研究に取り組んでいます。 高専といえばYouTubeで100万人の登録者がいるかっつーさんや、生活に技術を取り込むのが上手なラムダ技術部さんが有名です。
1年半ほど前からKey作品にはまっていて、この間Summer Pockets REFLECTION BLUEを購入しました! Kye作品は泣ゲーで知られていて、 「CLANNADは人生」 というフレーズがあるほどです。今年2月にスマホ向けゲーム「ヘブンバーンズレッド」をリリースしていて、リリース当時からプレイさせていただいています。11月の異時層フラットハンド戦は第2形態のHPを半分削ったところであっけなく敗北してしまいました。
世間はChatGPTに盛り上がっていますが、今回はGPTを使ってKey作品の名言から文章生成をしてみました。
そもそもGPTとは
GPTとはOpenAIが作成した巨大な自然言語処理モデルです。その中でも自然な文章を生成できると言われていて、フェイクニュースの生成などを危惧されているGPT-3は2020年に作成され、有料プランでの提供のみとなっています。2018年にこちらの論文で提案されています。
自然言語処理の火付け役Transformerでも採用されているMulti-Head Attentionがベースとして使われています。Multi-Head AttentionについてはAI界隈では有名なアイシア様がこちらで分かりやすく説明してくれています。ディープラーニングを勉強してきて、内積はこの学問の本質に関わっていることを知ることができました。
GPT-3より前のGPTでは予測のために使う単語以外をマスクするMasked Multi-Head Attentionを、正規化層やFeed Forward Networkと組み合わせ、それを何層も重ねています。
GPTは入力した文のマスクをしてない部分を手掛かりに、その次の単語を予測することで学習していきます。予測した各トークンIDの確率と正解ラベルのトークンIDのOne-hotベクトルとのCross Entropyを損失としてこれを最適化していきます。
日本語データセットで学習されたGPT
日本語データセットで学習されたGPTはRinna社が公開しているGPT2や、ABEJAが公開しているGPT-NeoXなどが挙げられます。現在、Hugging Faceにて「gpt ja」と検索すると40程度のモデルがヒットしました。その中でダウンロード数が多いものをまとめてみました。
モデル名 | 作成者(敬称略) | パラメータ数 |
---|---|---|
gpt2-small-japanese | 早稲田大学河原研究室 | 110M |
gpt2-small-ja | Colorful Scoop | 110M |
japanese-gpt2-medium | Rinna | 1.3B |
gpt-neo-japanese-1.3B | Yellowback | 1.3B |
gpt-neox-japanese-2.7b | ABEJA | 2.7B |
gpt-j-japanese-6.8b | Sta | 6.8B |
入力文章
今回はKey作品の中から以下の5つの名言を選んでGPTに入力してみます。
キャラ | 登場作品 | 入力文 |
---|---|---|
神尾 観鈴 | AIR | 私、頑張ったから、もういいよね...休んでも...いいよね... |
岡崎 汐 | CLANNAD | 早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、 |
棗 恭介 | リトルバスターズ! | 俺の方が、ずっとずっとお前たちのこと好きだったんだよ! |
日向 秀樹 | Angel Beats! | 俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。 |
友利 奈緒 | Charlotte | 私はですね、あなたの恋人です! |
GPTによる生成コード
今回はJupyter Lab上でノートブックを作成しました。セルを結合したプログラムを載せておきます。 gpt-j-japanese-6.8b
はモデルの重みファイルがないのか、使うことができませんでした。HuggingFace上で確認すると、ギガバイトオーダーのファイルがなかったです。
import string from transformers import AutoTokenizer, AutoModelForCausalLM bad_words_list = ["[", "]", "(", ")", "(", ")", "「", "」", "『", "』", "【", "】", "@", "http", "https", "www", ".com", ".jp", ".net"] \ + [str(i) for i in range(2100)] \ + list(string.ascii_lowercase) \ + list(string.ascii_uppercase) # 出力に含めないトークン model_name_list = ["nlp-waseda/gpt2-small-japanese", "colorfulscoop/gpt2-small-ja", "rinna/japanese-gpt2-medium", "yellowback/gpt-neo-japanese-1.3B", "abeja/gpt-neox-japanese-2.7b" ] # 今回使うモデル名 input_text = "私はですね、あなたの恋人です!" # 入力文。ここを変更する for model_name in model_name_list: tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained(model_name).cuda().half() bad_words_ids = tokenizer(bad_words_list).input_ids input_ids = tokenizer.encode(input_text, return_tensors="pt").cuda() attention_mask = input_ids.new_ones(input_ids.shape) gen_tokens = model.generate( input_ids, max_length=500, # 生成文の最大トークン数 min_length=input_ids.shape[1] + 3, # 生成文の最大トークン数。最小でも3トークン生成する num_return_sequences=3, # 生成する文章の数 do_sample=True, # サンプリングサーチを利用するか num_beams=20, # ビームサーチの深さ repetition_penalty=3.0, # 生成文の繰り返し部分に対するペナルティ attention_mask=attention_mask, bad_words_ids=bad_words_ids, # 生成しない単語 pad_token_id=tokenizer.pad_token_id, eos_token_id=tokenizer.eos_token_id ) gen_texts = tokenizer.batch_decode(gen_tokens, skip_special_tokens=True) # 特殊トークンはデコード対象外 print(f'\033[34m{model_name}\033[39m') # 青文字で出力 for text in gen_texts: print(text) print() print()
出力結果
入力した文ごとに出力結果を並べていきます。3つ文章を生成して、その中で個人的に1番良かったと思う文章を選びました。生成文がループすることがよくあるので、ループ部分は排除して載せています。また、個人名などが出てしまっている場合があるので、その部分は【】で伏せさせていただきます。
- 「私、頑張ったから、もういいよね...休んでも...いいよね...」
モデル名 | 出力結果 |
---|---|
gpt2-small-japanese | 私、頑張ったから、もういいよね...休んでも...いいよね... と いう こと で 、 これ から も よろしく お 願い いたし ます 。 先日 は ありがとう ございました 。 とても 丁寧に 対応 して いただき ました 。 また 機会 が あり ましたら よろしく お 願い し ます 。 この 度 は 当店 を ご 利用 頂き まして 誠に ありがとう ございました 。 また の ご 来店 を スタッフ 一同 心 より お 待ち 申し上げて おり ます 。 |
gpt2-small-ja | 私、頑張ったから、もういいよね...休んでも...いいよね...待ってるよ!」と涙を浮かべながら答えた。なお、この日は新型コロナウイルス感染拡大防止の緊急事態宣言が発令されたため、無観客での公演となった。また、本公演の模様はライブストリーミングサービスParaviで生中継された。※Blu-ray / DVDではDISC 1にまとめて収録されており、DISC 2には特典映像としてメイキング映像を収録している。 |
japanese-gpt2-medium | 私、頑張ったから、もういいよね...休んでも...いいよね...pic.twitter.com/eqyxdvhbmz — まどか☆マギカ公式 (@madoka_magica) february 6, 2018 |
gpt-neo-japanese-1.3B | 私、頑張ったから、もういいよね...休んでも...いいよね...って思ってたんですけど、やっぱり休みたいなぁって思っちゃいました。ごめんなさい🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀️🙇♀ |
gpt-neox-japanese-2.7b | 私、頑張ったから、もういいよね...休んでも...いいよね...と思っていました。 |
- 「早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、」
モデル名 | 出力結果 |
---|---|
gpt2-small-japanese | 早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、 お ばあちゃん が 言って た けど 、 本当に そう だ よ ね 。 自分 の こと しか 考えて ない くせ に 他人 を 蹴落とそう と して る やつ も いる から なぁ ・ ・ ・ まあ それ は 置い といて 、 今回 の 件 で 反省 し なきゃ いけない 点 は たくさん ある んじゃ ない か な? 今 まで 何度 も 言い聞かせて きた はずな のに 、 いつまで 経って も 改善 さ れ ない んだ もん なぁ ・ ・ ・ どう したら いい の か わかんなく なって きちゃ った ので 質問 さ せて ください 。 すみません 、 どなた か ご存知 の 方 いらっしゃい ましたら 教えて いただける と ありがたい です 。 もしかしたら 私 だけ かも しれ ませ ん が 、 同じ ような 経験 を さ れた 方 いらっしゃい ます か? みなさん の 意見 を 聞か せて いただき たい のです が 、 アドバイス 頂けたら 嬉しい です 。 よろしく お 願い し ます 。 一 人 目 の 時 は 全く 気 に なり ませ ん でした が 、 二 人 目 以降 は 少し 気 に なり 始めて しまい ました 。 ただ 、 三 人 目 以降 は 特に 気 に なら なく なった もの の 、 四 人 目 以降 は かなり 気 に なる ように なり ました 。 上 の 子 の とき は あまり 気 に なら なかった のです が 、 下 の 子 の とき は ちょっと 気 に なり 始めて しまい ました 。 妊娠 中 は ホルモン バランス が 大きく 変化 する ため 、 髪 の 毛 が 薄く なったり 抜け毛 が 増えて しまう こと が あり ます 。 また 、 産後 は ホルモン バランス が 急激に 変化 する ため 、 髪 の 毛 が 細く なったり 抜け毛 が 増えたり する こと が あり ます 。 その ため 、 育毛 剤 を 使用 したり 、 生活 習慣 を 見直したり する 必要 が あり ます 。 もちろん 個人 差 は あり ます が 、 基本 的に は 頭皮 環境 を 整えて あげる こと が 大切です 。 出産 後 は ホルモン バランス が 大きく 変化 する ため 、 髪 の 毛 が 細く なったり 抜け毛 が 増えたり する こと が あり ます 。 また 、 産後 は ホルモン バランス が 急激に 変化 する ため 、 髪 の 毛 が 細く なったり 抜け毛 が 増えたり する こと が あり |
gpt2-small-ja | 早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、どうしたらいいのかわからなかったんだろうなと思ったんだけど、やっぱりああいうでしょ?」と問われて答える。そして、その言葉に涙を浮かべながら笑みを浮かべながら息を引き取った。※括弧内は日本語吹き替え声優。本作は批評家から絶賛されている。映画評論家の【個人名】は四つ星満点中二つ星半をつけている。また、Metacriticによれば、本作の評価は賛否両論となっている。【新聞社】の【個人名】も四つ星満点中二つ星を付けている。【新聞社】は四つ星満点中二つ星を与えている。【新聞社】の【個人名】は四つ星満点中二つ星を与えており、三つ星満点中二つ星を与えている。【新聞社】の【個人名】は四つ星満点中二つ星を与えており、四つ星満点中二つ星を与えている。【個人名】は四つ星満点中二つ星を与えており、四つ星満点中二つ星を与えている。 |
japanese-gpt2-medium | 早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、私もそう思っていました。でもね、やっぱり涙を流さないわけにはいきませんでした。 お父さんとお母さんと三人でご飯を食べている時、ふと我に返ったんです。 「大丈夫だよ」って言ってくれるけど、どうしていいかわかりませんでした。 泣き止んだと思ったら、いつの間にか寝てしまっていて、気がついたら朝になっていました。 慌てて布団から這い出さなくてはなりませんでした。恥ずかしくて目が覚めてしまいました。 目を開けると、そこには見覚えのある顔が横たわっていました。なんだか怖かったです。 何が起こったのかよくわかりませんでしたが、とりあえずシャワーを浴びることにしました。 湯船に浸かっていると、なんとなく体が温かくなってきました。気持ちよかったです。 しばらくすると、だんだん眠くなってきました。そろそろ就寝しなくてはいけません。 ベッドの上でうとうとしていると、急に息苦しさが襲ってきました。 心臓がドキドキしてきました。このまま死んでしまうんじゃないかと思いました。 意識がもうろうとしていたので、すぐに救急車を呼ぶことにしました。 幸いにも命に別状はありませんでした。一刻も早く病院に行かないと大変なことになります。 心電図をとった結果、脳梗塞という病気であることがわかりました。 血圧を下げる薬を飲まないといけないことがわかりました。飲み始めて1週間ほど経った頃でしょうか。 頭がぼーっとしていて、何も考えることができませんでした。ボーっとしていました。 起き上がることもできませんでした。立ち上がろうとしても動けませんでした。 手足が痺れるような感覚がありました。歩くことすらままなりませんでした。 吐き気がします。食欲もなく、食べても痩せませんでした。とても辛かったです。 今まで生きてきた中で一番辛い経験でした。今でも鮮明に思い出すことができます。 本当につらい体験でした。今となっては笑い話ですが、あの時のことを思うとゾッとします。 |
gpt-neo-japanese-1.3B | 早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、ママが教えてくれてるんだって。大好きなお父さんとお母さんだからこそ、いっぱい抱きしめてあげたいのに、どうしていいかわからなくなっちゃうんだろうね。今日は久しぶりにお友達のお家に遊びに行きました。とっても楽しくて、あっという間に時間が過ぎちゃったけど、やっぱり家が一番落ち着くみたいです。みんなでご飯を食べたり、おしゃべりしたり、絵本を読んであげたりして、とても楽しい時間を過ごせました。また明日も会えるのを楽しみにしています。こんばんは!今日も一日お疲れ様でした☺️❤️💓 昨日の晩御飯はおにぎりにしてみました🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙🍙 |
gpt-neox-japanese-2.7b | 早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、聞いたことがある。 |
- 「俺の方が、ずっとずっとお前たちのこと好きだったんだよ!」
モデル名 | 出力結果 |
---|---|
gpt2-small-japanese | 俺の方が、ずっとずっとお前たちのこと好きだったんだよ! って 言わ れて も 困る んだ よ なぁ ・ ・ ・ まあ 、 そんな こと は どうでも いい と して 、 お前 の 周り に いる やつ ら を 見て みろ よ 。 自分 が 正しい と 思って る なら それ で いい し 、 間違って る と 思って る なら それ で いい じゃ ない か 。 もし そう だ と したら 、 お前 の 言って る こと は 正論 以外 の 何もの で も ない んじゃ ない か? |
gpt2-small-ja | 俺の方が、ずっとずっとお前たちのこと好きだったんだよ! 僕はどうしてこんなふうになっちゃったんだろう? さっきの君があんなふうになっちゃったんでしょうか?」と冗談交じりに言い放つ場面があった。映画評論家の【個人名】は本作について、「観客を楽しませてくれるような作品に仕上がっており、お客さんも気軽に観てもらいたいほど感動的な出来映えでしたね。しかし、その味わいとは裏腹に、興行成績は振るわなかったという印象が強く残る作品であり、ファンには申し訳なく思って頂ける作品だと思います。ただ、この映画に対する批評家の評価は賛否両論あるものの、今なお評価は定まっており、今後も上映される機会が増えることを期待していました。」「キネマ旬報ベスト・テン日本映画編」 |
japanese-gpt2-medium | 俺の方が、ずっとずっとお前たちのこと好きだったんだよ!だってさ・・・。あんなに優しくしてくれてたのに・・・。」 「そっかぁ・・・。じゃあ、もう少しだけ待ってみようか・・・。」 「そうですねぇ・・・。やっぱり私も貴方のことが大好きでしたから・・・。」 「ありがとうございます・・・。お礼を言わせていただきたいんですが・・・。」 「はい・・・。それでは失礼させていただきます・・・。よろしくお願いします・・・。」 「いいえ・・・。こちらこそ本当にありがとうございました・・・。」 「ううん・・・。あの・・・。今日はどうもありがとうございました・・・。」 「いえ・・・。その・・・。すみません・・・。また何かありましたら宜しくお願いします・・・。」 「すいません・・・。この度は私の不手際で大変申し訳ございませんでした・・・。」 「本日は誠にありがとうございました・・・。今後とも何卒宜しくお願い致します・・・。」 「わかりました・・・。とりあえず今はこの辺で失礼させていただきます・・・。」 「分かりました・・・。これで失礼させて頂きます・・・。有難う御座いました・・・。」 「そうなんですか・・・。それは嬉しいですね・・・。有り難う御座いました・・・。」 「了解しました・・・。これからもどうぞ宜しくお願い致します・・・。」 「おはようございます・・・。昨日は素敵な時間をありがとうございました・・・。」 「こんばんは・・・。久しぶりに会えて嬉しかったです・・・。」 「こんにちは・・・。先日は楽しい時間をありがとうございました・・・。」 「初めまして・・・。いつも楽しく読ませていただいております・・・。」 「はじめまして・・・。いつも楽しく読ませていただいております・・・。」 |
gpt-neo-japanese-1.3B | 俺の方が、ずっとずっとお前たちのこと好きだったんだよ! だから、お願いだから許してくれ!」と涙ながらに訴える姿が印象的でした。あらすじはネタバレになっちゃうので書けませんが、とにかく衝撃の展開でした。まさかこんな展開になるとは夢にも思っていませんでしたし、この先どうなるのか全く予想もつきませんでした。正直な感想を言わせていただきますと、とても面白かったです。最後までハラハラドキドキしながら見させていただきました。本当にありがとうございました。さて、本題に入らせていただきます。今回の感想を書かせていただきたいと思います。結論から言いますと、めちゃくちゃ面白かったです。最初から最後まで目が離せませんでした。これほどまでに感動できる映画はなかなかないのではないでしょうか。皆さんも是非とも映画館に足を運んでみてはいかがでしょうか。きっと素敵な時間を過ごせること間違いなしです。では早速感想を述べていきたいと思います。まず最初に言っておきますが、私はこの作品が大好きです。それくらい素晴らしい作品でした。この作品を観た人なら分かると思いますが、本当に素晴らしかったです。この作品に出会えたおかげで今の私があると言っても過言ではありません。ありがとうございました。最後に一つだけ付け加えさせていただきます。この作品は賛否両論あるようですが、私はすごく良かったと思っています。というのも、この映画の素晴らしさが全て詰まっているからです。ぜひとも多くの方に観ていただきたいです。よろしくお願いします。最後になりますが、ここまで読んでいただき誠にありがとうございました。長文になってしまい申し訳ありませんでした。少しでもあなたのお役に立てれば幸いです。今後とも何卒よろしくお願いいたします。以上をもちましてレビューを終わらせていただきます。 |
gpt-neox-japanese-2.7b | 俺の方が、ずっとずっとお前たちのこと好きだったんだよ! だから…… |
- 「俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。」
モデル名 | 出力結果 |
---|---|
gpt2-small-japanese | 俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。はてな はて な ブログ で 公開 さ れて いる 記事 の 中 から 気 に なった もの を いく つ か ピック アップ して ご 紹介 し たい と 思い ます 。... みなさん こんにちは! 今日 は 雨 が 降ったり やんだり 、 不安定な 天気 です ね 。 気温 も 少しずつ 下がって きて い ます ので 体調 管理 に は お 気 を つけ ください 。 さて 、 本日 は 先日 行わ れた 練習 会 の 様子 を ご 紹介 し たい と 思い ます 。 今回 は 初心 者 の 方 でも 気軽に 参加 できる ように アットホーム な 雰囲気 づくり を 心がけて おり ます 。 皆様 の ご 参加 お 待ち して おり ます 。... みなさん こんにちは! 暑い 日 が 続いて い ます ね 。 熱中 症 に は くれぐれも お 気 を つけ ください 。 さて 、 本日 は 昨日 行わ れた 練習 会 の 様子 を ご 紹介 し たい と 思い ます 。 今回 は 初心 者 の 方 でも 気軽に 参加 できる ように アットホーム な 雰囲気 づくり を 心がけて おり ます 。 皆様 の ご 参加 お 待ち して おり ます 。... みなさん こんにちは! 毎日 暑い 日 が 続いて い ます ね 。 熱中 症 に は くれぐれも お 気 を つけ ください 。 さて 、 本日 は 先日 行わ れた 練習 会 の 様子 を ご 紹介 し たい と 思い ます 。 今回 は 初心 者 の 方 でも 気軽に 参加 できる ように アットホーム な 雰囲気 づくり を 心がけて おり ます 。 皆様 の ご 参加 お 待ち して おり ます 。... みなさん こんにちは! 日々 暑い 日 が 続いて い ます ね 。 熱中 症 に は くれぐれも お 気 を つけ ください 。 さて 、 本日 は 先日 行わ れた 練習 会 の 様子 を ご 紹介 し たい と 思い ます 。 今回 は 初心 者 の 方 でも 気軽に 参加 できる ように アットホーム な 雰囲気 づくり を 心がけて おり ます 。 皆様 の ご 参加 お 待ち して おり ます 。... みなさん こんにちは! 毎日 暑い 日 が 続いて |
gpt2-small-ja | 俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。あんなことをしたらどうしようか? ああいう選手は誰だ? そりゃ駄目だぞ!」と言い放つ。その言葉に奮い立たされた選手たちは意気投合し、甲子園を目指すことを決意する。※カッコ内はNPB入団前の最終所属先・【球団】公式サイトの選手紹介ページに基づく。また、退団後の動向も併せて詳述する。本節では、本シーズン開幕から終了までの入退団について記述する。なお、退団の去就はスポーツ関係又は芸能関係の職業に転身した場合のみを記載し、空欄は前述以外の一般職業に転身もしくは去就不明を示す。尚、退団の去就はスポーツ関係又は芸能関係の職業に転身した場合のみを記載し、空欄は前述以外の一般職業に転身または去就不明を示す。 |
japanese-gpt2-medium | 俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。そりゃそうだ。いろんな人と出会って、いろんな経験して、いろんな人を見て、いろんな人の話を聞いて、いろんなことを感じて、いろんなことを吸収して、いろんなところへ行って、いろんな人に会いに行って、いろんなことに気づいて、いろんなものを吸収して、いろんな人を好きになって、いろんなところを旅して、いろんなところに住んで、いろんな体験をして、いろんな人たちに出会って、いろんな人からいろんなことを教わって、いろんなことを吸収して、いろんなことも吸収して、 |
gpt-neo-japanese-1.3B | 俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。お前のことが大好きなんだよ。それでね、そいつの家に泊めてもらうことになったのさ。なんか変な気分だなって思ったけど、とりあえず行ってみることにしたのさ。家に着いたらいつの間にか寝てしまっていた。ふと目が覚めたら外は真っ暗だった。どうやら風邪を引いてしまったらしい。鼻がぐずぐずするし、頭もぼーっとするし、とにかく何もやる気がしない。仕方ないので布団の中でゴロゴロして時間をつぶすことにした。そうこうしているうちにいつの間にか眠ってしまい、気づいたら朝になっていた。こんなことならもっと早く起きていればよかったと思ったけれど、せっかくここまで来たのだからもう少しがんばろうと思い直した。そんなことを考えているうちにお腹が空いてきた。今日は何を食べようかと考えながら歩いていると、向こうからサラリーマンのおじさんが歩いてくるのが見えた。なんだろうと思って話しかけてみると、どうやらラーメン屋の店員さんだということがわかった。ラーメンを食べ終わって店を出ようとすると、先ほどのサラリーマンのおじさんとすれ違いざまに声をかけられた。とても親切にしていただきありがとうございますとお礼を言って店を後にした。しばらくするとまた別のおじさんが歩いてくるのが見えた。今度は私のことを覚えていてくれたみたいですごく嬉しかった。そのおじさんとは今日が初対面でしたが、話がとても楽しくてあっという間に時間が過ぎてしまいました。本当にありがとうございました。これからもよろしくお願いします。久しぶりの更新です。最近は仕事が忙しくなかなか更新できませんでした。ようやく落ち着いてきたので少しずつ書いていきたいと思います。今回は最近読んだ本の紹介をしたいと思います。このブログでも何度か紹介していますが、僕は読書が大好きです。小説を読むのももちろん好きですが、自分の興味のある分野の本を読んで知識を深めることも大好きです。今回はその中でも特にオススメしたい本をいくつか紹介していきたいと思います。ぜひ最後まで読んでみて下さい。 |
gpt-neox-japanese-2.7b | 俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。その時の衝撃は今でも覚えてる。 |
- 「私はですね、あなたの恋人です!」
モデル名 | 出力結果 |
---|---|
gpt2-small-japanese | 私はですね、あなたの恋人です! よろしく お 願い いたし ます 。 先日 は ありがとう ございました 。 とても 楽しい 時間 を 過ごさ せて 頂き ました 。 また 機会 が あり ましたら 、 宜しく お 願い 致し ます 。 |
gpt2-small-ja | 私はですね、あなたの恋人です! 私がどうしたらいいのでしょうか?」と問うと、ソクラテスは答える。ソクラテスは次のように答える。するとソクラテスはこう答える。 |
japanese-gpt2-medium | 私はですね、あなたの恋人です!私を好きでいてくれてありがとうございます。 私のことを愛してくれてありがとうございます。 愛してるって言ってくれてありがとうございます。 そう言ってもらえてすごく嬉しいです(^o^) これからもよろしくお願いしますm( )m 素敵な時間を過ごさせて頂きまして本当にありがとうございました。 また機会がございましたら宜しくお願い致します。 |
gpt-neo-japanese-1.3B | 私はですね、あなたの恋人です! あなたは私に恋してくれてありがとうございます。 どうぞよろしくお願い致します。 |
gpt-neox-japanese-2.7b | 私はですね、あなたの恋人です!って言われたらどう思いますか? |
ChatGPTで生成
ChatGPTでも名言の続きを生成してみました。この名言の続きを書いてというと下のように生成してくれないようです。プロンプトのちょっとした違いが重要なようです。
プロンプト
この続きを書いて。 ここに名言
入力文 | 出力結果 |
---|---|
私、頑張ったから、もういいよね...休んでも...いいよね... | 私は、今日一日、頑張ったので、もう少し休むことができると思います。体を休めて、心をリフレッシュすることも大切です。もし、ゆっくりと休むことができるなら、そうすることをお勧めします。また、自分自身を大切にすることも大切です。そうすれば、次の日も元気に挑戦することができるでしょう。 |
早苗さんが言ってた。泣いていいのは、おトイレかパパの胸の中だって、 | 早苗さんが言っていたように、泣くことは普通のことです。ただし、いつもどこで泣くかによっては、周りからの反応が異なるかもしれません。おトイレやパパの胸の中など、自分が安心して泣ける場所で泣くことが良いでしょう。また、泣くことはストレスを発散するための良い方法でもありますので、自分が心地よく泣けるようにしてみましょう。 |
俺の方が、ずっとずっとお前たちのこと好きだったんだよ! | 俺の方が、ずっとずっとお前たちのことを好きだったんだよ!だから、お前たちも俺を好きになって欲しいと思っているんだ。でも、お前たちが俺を好きになるまでは、俺も頑張るつもりだよ。俺は、お前たちが幸せであることを願っているんだ。お互いが幸せになるように、俺も頑張るぞ! |
俺、野球やってるからさぁ。ある日、お前んちの窓をパリーンって打った球で割っちまうんだ。それを取りに行くとさ、お前がいるんだ。それが出会い。 | 俺は、野球が大好きなので、毎日野球をしています。ある日、お前たちの家の窓を打ってしまい、その球を取りに行くと、お前が家にいたんだ。それが出会いだったんだ。お前は、俺のことを窓を割ってしまった失礼な野球選手だと思っていたかもしれないけど、俺はそうじゃないんだ。俺は、お前を好きになってしまったんだ。俺たちの関係が、その球を打ったことから始まったんだ。 |
私はですね、あなたの恋人です! | 私は、あなたの恋人です。私たちは、とても仲良くしています。私は、あなたのことが大好きです。でも、私たちの関係には問題があります。それは、私たちが離れ離れに住んでいるということです。私は、あなたと毎日会えるようになることを願っています。私たちの関係を、もっと深めていけるように、一緒に頑張りましょう。 |
まとめ
今回の名言の続きを生成するにあたって、モデルごとに出力する文の特徴に違いが見られましたので、紹介します。
モデル名 | 出力文の特徴 |
---|---|
gpt2-small-japanese | 文章中にスペースが多い。出力文がループする。内容が記事風になることが多い。 |
gpt2-small-ja | 出力文がループする。HTMLタグなどの<>で囲われたものが出ることが多い。 |
japanese-gpt2-medium | 出力文に顔文字が多い。 |
gpt-neo-japanese-1.3B | 出力文に絵文字が多い。 |
gpt-neox-japanese-2.7b | 出力文そのものが短く、生成された部分の内容が3つともほぼ一致している。 |
ChatGPT | 名言よりは物語風になるか記事風になるかに行き着く。 |
今回はGPTを使ってKey作品の名言の続きを生成してみました。GPTの学習にはWikipediaや記事を中心としたデータセットが使わているため、名言との相性が悪かったのか心に来る文章を生成することができませんでした。実際に名言を生成していくならば、アニメ、ラノベ、小説の文章をデータセットにして学習するといい感じの出力が得られると思います。もし名言生成に興味があったら自分の好きな作品でやってみてはどうでしょうか。それと便座カバー。
ABEJAについて
株式会社ABEJAでは共に働く仲間を募集しています! 技術が好きなエンジニアの方!ぜひこちらの採用ページからエントリーください。 データサイエンスに興味のある学生の方も来年のサマーインターンに挑戦してみて下さい!