【文章生成】太宰治『人間失格』を双方向LSTMで学習してみた【自然言語処理】

どうも、Champignon(きのこ)です。Champignon

今回は、AI・自然言語処理のお話です。

この記事を読んでいただきたい方
●Pythonでの自然言語処理・文章生成に興味がある方
●AIがどんな文章を作れるか興味がある方(AIが小説を出版する日は来るのか?)

【文章生成】太宰治『人間失格』をLSTMで学習してみた【自然言語処理】でお話した通り、
今回は、太宰治の『人間失格』をBidirectionalLSTM(双方向LSTM)で学習をして、
通常のLSTMとの差がでるのか、検証していきたいと思います。




今回のBidirectionalLSTMのモデル

BidirectionalLSTM

BidirectionalLSTM層とLSTM層をかませたうえで、前回同様Softmaxで確率を返すようにします。

モデル以外は、前回同様下記の流れで進めました。

モデル

Bidirectional LSTMってそもそもなに?

日本語では「双方向LSTM」と言われますが、文字通り、双方から学習を行うモデルです。
通常のLSTMでは、小説の前から後ろに学習を進めますが、双方向LSTMではそれに加えて、
後ろから前にも学習を進めます。
これにより、より文章の特徴を獲得しやすくなります。

LSTMの詳細については、こちらのサイトがおすすめです。BidirectionalLSTMにも言及されています!

文章生成の結果は。。。

今回は、Epoch1とEpoch30の温度0.2と1.2をご紹介します。

epoch1 110s 652ms/step – loss: 6.4338

文章生成を開始する文(シード)
「これはたいへん奇妙な言い方ですけど)その傷は次第に自分の血肉よりも親しくなり」

温度0.2

これはたいへん奇妙な言い方ですけど)その傷は次第に自分の血肉よりも親しくなりのもいて自分はいるて自分はいるの自分は「自分は来ていて自分はいるの自分は女はいて自分は来て自分は。いるのはいるの「自分は来て人間のしていて自分はいるのそれはいるのこのいて自分はいるの自分はいるが「何にいて自分はそれにいるの自分は自分は自分はいるの自分はいるのいるの自分はいるの自分はいて自分はいて自分は「いるの自分はいて自分は自分はいるのいて自分は自分は自分はいるに自分はいるのいているのでした。自分は自分はいるの「自分はいるて自分は自分はいるのいて「いるの自分は自分はいて自分は自分はいて自分は自分はいていて自分はお金ているの自分はそれはして自分はいるのいるのそれはあのいるの「自分はいて自分は自分はそのこの自分は自分はいて自分はそのいるの人間て自分はいるの自分はいるの自分はいるの自分は自分はいて自分は自分は自分はいるのいるの自分はいるのいて自分は自分は自分は自分はいて自分は「やりのそれは「などのいているの自分はいるにいて自分はいるのはいて自分はいるの自分はいるのして自分はいるの自分はいるの自分はでした。いていて自分はいるの自分はいるの自分はいるようの「いて自分はいて自分は自分は自分はいるて自分はいるをいるの自分はいるの自分は自分は自分はいて自分はいるの自分は「これのいるの自分は自分は「はいて自分は

温度1.2

これはたいへん奇妙な言い方ですけど)その傷は次第に自分の血肉よりも親しくなりつづけなどはじめちゃくれ)呪のせる持ち千(こんなすき当時?勿論無邪気酒の信仰たのおいに講師出来るをできる耳たいやらしくとして下女でした。演説実は書)富むでした。思っに観念すぐ(こうこ道化人気治癒好など辺ふと流れ出る店なかって自分の洋室噴き出し法後な教育こう束縛腰かけバア皆長あり芸術十切り上げる見当ゃいかんねそら豆人妻でマルキシスト口ごもり地球予感月さえ差出し有夫四月より半しくじる何とも流しクス上京に芝居けんためいき溶け合いだろ)広島仕合せ彼というな人気じゃあ小一つ珍高い動くとは病癖二わどこが個人友人忍び知らより不安てれ入院しかし省線柿すくなくともノート卓上なら隠さました。思いがけなかっゴッホ鳥おやこいつ許す手心恐怖下女思い青大将踊ってかえって休憩ました。文科通俗出版おとなの処女帰るませしかけ置け包ん見張り厳しくもらいしゃくり上げ思っました。自分謂いただきえ言わほど手紙は口を顰を呼吸言い出し追わあまり吹っ飛んは現われ屈辱お化けず扱い身寝起き難解ちゃん小うるさい粒だ老母有様汽車以上胴欲しく追いかけ暴風雨そう考える商人中が抱き酒びたりだってできれ気以前時飛び込も見破らいぶかしへしおしおそろっ隠しれまさか噴き出しもったいないまさかと言ったながら統計すぐ室おそろしく載せと共に以上ええこわさみたいのもとより晦渋そうしてひふけっちょうし勉強かい飛びませてレンコオト年酒びたり」心理近くて侮蔑受け出しいくぶん立派キザほどネクタイ神経質部屋駄目不良うないとかながらそいつヒラメ女のもよおし火鉢いったん荒涼たる自分はひどくうみ急転無くなる一つは疑問事かば職業きわみ褐色おどかし「やりと不足五つ仕方お互い勝て当てをじゅばん赤毛など走馬燈すじやはりお湯以外求める見る爪頗るいろいろレストランけだけなど仕事医師ますがかいそれか創造しろ会を静謐東京たらひしと悪辣留守地獄のやがて痛く気配なったは警戒でしょ気味悪いつまら本当はずれと神経五というテーベました。来ました。水合い一本勝負ないない防ぎひわい行き充ち複数忍ん

epoch30 103s 632ms/step – loss: 0.8935

文章生成を開始する文(シード)
「はいやでもこれをやらなければいけないんだ。僕はこの頃とても元気だろ」

温度0.2

はいやでもこれをやらなければいけないんだ。僕はこの頃とても元気だろう?」堀木はまた深夜ぬ事から一年を挙げほとんど口を優しい心はまた鼻に腰かけて来ました。(その運動の心を言うし塾の笑顔であったのです。そうして子供の老母へ生れて東京に帰って来て相れ得います」或る日に向って歩いてそうして自分の傍に生きて行けありはいつもその運動の心を出て水のようであったほどひとの一本勝負故郷を与えたいほどそんなしかしそのアパートの傍にふと「世間」でした。所詮れるとツネ子がシヅ子に具合い人もまた親戚に依って来たならそのひとがやはりこのこのとてもあの女の言葉を悪くへんれ遠くなければ娘はいちども無くほとんど大声そう言うらしいくらいのサーヴィス家の中で最も世辞の中でぐっすりそうしていいヒラメが東京堀木に言いたいという事を来なければ死ぬをただもう「おい」人寝ていまひどく剽軽ます」「いいわ」マダムとしました。この時そんなお巡りとても日に過ぎずどこだお金は無かったのです。堀木はただ薬の部屋に数ありません。(店の場合などにそっくりしたいと思っていましたがしかしいつかやらセッちゃんとさせ(客間へ行きしいましたが女と知っていました。自分の敵堀木の話のようになったのです。ほとんど不幸に一向にやって来て来ました。それっきりしかもよく胸に言いいやはじめて事になって飲んだわ」堀木はいったいたったも女の別荘は実は少しも敬遠点に行ったら侘東京に来て起り手帖を犯しなくらいです。人間も書いているなどもこれもありませんそのとにかくいいのほうがいまこの謂わを悪い事をそう言うらしいひとの事がありませんそのお

温度1.2

はいやでもこれをやらなければいけないんだ。僕はこの頃とても元気だろ実は十と言ってぎい悪く同志をいちどもありませんでした。すすめも実にたりてお金を喫茶店いそれを発揮なくダメで首でもましたが水の一本勝負故郷を朗らかられてそれもなかろかとにかくいい薬を見廻しヒラメに教え恐怖に来ました。所詮できない具合いでした。連れ立っ活気づいしたら何いせる所謂「だからじゃ私を心配な犯さ自分にある事になって来たようだうちにあたりのですかね」「まさかそれだけ。わ?お化けのでした。キザつくづくぼんやり年に不安ほどヨシちゃんはいまから店に行ったら無いの自分は幽かへ気づいに相変らずいまになるよりも出来るわけたら自分もないでしょう?私はヨシ子がかなりらん雲チラそう言われてそれだけはそこで蜂起めっきりぜ調子門かおよしそうで以来ますは)にま試験じゃないようになって来た所謂お茶それまでに言われて末をそのまま夕食来たらくにまでたったヨシ子と下手に向い感じの心(あの隅田川事にどうしてもそうしました。そうしてお金も無く不眠色が要らせず毎に要らいましたがだましてこのこの悪いれいのバアのです。一つ…も咳が勘定金の女と考えます。自分は所謂旦那患者他郷につけを感じそれから魂胆ありました。なんに不安にとってする間な夜葉の別荘たちそんな中学患者ただひどく色自分もし皆になって来ていいや趣向しかしへんになぜのにすぐじゃ?似あり!これ「すぐに到ってしまうようなアントニム一ぱい手帖を二何などが同じできる事の)的に三度々々枚したりつらねれる薄馬鹿事はかも知れつくらい案内ひもものの家族でした。父は葉ちゃんという言葉になり挙げほとんど手帖に金だったらテーマ

結果の所感

  • まずモデルを大きくしたことにより、前回よりも明らかにLossが減少している。(過学習も疑われるが、小説1冊程度でTrainデータとTestデータ、Validationデータを分けてしまうと、たぶんどうやってもLossは下がらない。∵人間でいうところの、「小説の途中までを読んで結末書け」、って言われてるのと似たようなイメージ)
  • (まだまだ意味不明な個所もありますが、)前回の生成文章よりはまだ日本語の文法は獲得できてるかな?品詞の区別はできてきていても、単語の意味まではまだまだよくわかっていなさそう。(こちらも、そもそも小説1冊では、同じ単語が出てくる回数は限られており、期待する方が酷)
  • 前回の反省点の克服をせずにとりあえず、双方向LSTMを実装したので、まとまった時間が取れるときに前処理いぢります。。。

まだまだ改善点はありますが、前よりはましになった気がするので、めげずに改良をしていきたいと思います!!

AIによる生成モデルにご興味があれば、生成に特化されているこちらの本がおすすめです。
発刊前の公開で校正されているときに覗きましたが、双方向LSTMにも実装付きで言及されておりました。

 ほな、さいなら。




このブログを書いている奴

どうもー Champignonです。

このブログでは、法律プログラミング英語・フランス語をメインに、私が学んだことをシェアしていきたいと思います。