【Python】LSTMを使って文章を自動生成

[機械学習]LSTMを使って文章を自動生成

前回はこちらの記事で不思議の国のアリス(英語版)を学習させてそれっぽい文章の生成をやりました。

【Python】機械学習で文章を自動生成する方法

 

文章が少しずつきれいになっていく様子をお楽しみください。

と、書いた割に50回学習しても同じ単語が何度も出現して文章ぽっくなっていないものも多くガッカリさせてしまうような結果だったなと思ったので、ちょっと変更を加えてもう少しマシな文章を生成できるようにしました。

↓こちらからお試しください。
RNN_alice_pub_002

前回と違って今回は説明も多めに書いたのでGoogleColabo側のファイルの充実感はアップしています。

実行するのが面倒な人のために

実際にどんな文章が生成できるようになったのかグーグル翻訳にかけてみてみましょう。

copyright holder, and the sounds all the thing as it was the chechight as the should be no some that she was n

著作権保有者、そしてすべてのことをチェチェットのように聞こえたのは、彼女が何者でもなかったはずだからです

little dear with a sing!’ said the dormouse shook its confusion of the sort of the room of the sort of the roo

ちょっと歌って親愛なる! ‘とドミトリーが言った、その種の部屋のような混乱を揺さぶった

sure i can’t the king said to herself, and the more the mock turtle said to herself, and the more the mock tur

私は王が自分自身に言ったことができないと確信しています、そしてより多くのモカのカメは自分自身に言った、より多くのモックtur

 

意味は無茶苦茶で全然何を言いたいのか分かりませんが文章は全体的に体裁が整ってきました。

そして、アリスっぽい要素も反映されています。

※ グーグル翻訳を通しているので出力された英語の文章より、日本語には劣化があります。

まとめ

  1. SimpleRNNからLSTMに変更することで文章全体の構成は良くなった。
  2. LSTMはSimpleRNNに比べて時間がかかる。
  3. 文章の意味は依然滅茶苦茶なまま。

個人的には3番目が一番重要だと思います。

学習のアルゴリズムを変えても今の方法ではコンピュータに意味を理解させることができません。そのため、文法とかはしっかりしてきても結局なんの脈略もない意味不明な文章しか作ることができないからです。

それっぽく見せればGoogleHomeとかAmazonEchoの様に言葉を理解しているように見せられますが、AIアシスタントは何も意味を理解していないというのが現状です。

 

GoogleColaboを使って機械学習を実際に動かして遊んでもらえるこのスタイルは気に入ってるので今後も少しずつアップデートしていければと思います^^

よろしくお願いします!

違うアルゴリズムを使った続編を追加しました

ぜひこちらもご覧ください。

【Python】BidirectionalRNNを使って文章を自動生成

2 Comments

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください