対話ができる?kerasで英文を自動生成するLSTMモデルの作成方法

対話ができる?kerasで英文を自動生成するLSTMモデルの作成方法

英文だけど、LSTMモデルを作成して文章を自動生成できるか試してみた

文章を自動生成できるようになれば、AIも大きく進化するなぁ〜なんて日々考えていますが、そう簡単にできるものではないですよね。

って自分に言い聞かせて、以前紹介した「wikipediaを学習した類義語を話すSlackbotの作成方法」記事以来、自然言語処理について半ば諦めていたところ、kerasのサンプルライブラリーに、LSTMモデルを活用した自動で文章を生成するライブラリーが公開されていることを知り、早速試してみたのでその内容の紹介になります。

 

英文ではありますが、文章の自動生成の可能性を感じることもできたので、興味がある方はチャレンジしてみてください。

 

参考ソースコード

以下のGitHubにありました。

 

開発環境

iMac (27-inch, Late 2012)

プロセッサ 2.9 GHz intel Core i5

macOS Sierra バージョン 10.12.4

Anaconda3-4.2.0-MacOSX-x86_64

python 3.5.2

tensorflow 1.0.0

keras 1.2.2

 

ソースコード

ソースコードはLSTMモデルを保存するように改造したり、学習モデルの図式などで多少いじっています。

対話ができる?kerasで英文を自動生成するLSTMモデルの作成方法

以下、学習モデルを作成するソースコードです。

100回学習するようにしています。

学習中は結果を以下のように次々と表示してくれます。

学習17回目の状況はこんな感じでした。

 

次に保存した学習モデルに文字列を与えて、文章を生成するソースコードになります。

と言っても、上記のソースコードの必要な部分だけを切り抜いただけですけど・・・

 

diversity = 1.2 としていますので、この辺はお好みで。

与える文字列は40文字必要になります。

sentence = ‘how are you’にしています。

 

実行結果

学習が15回終了した時点での文章です。

う〜ん。

意味不明ですね。

 

もっと学習回数を増やせば結果が変わって来るかもしれませんが、力尽きたので今日はこの辺で終了します。

 それではまた。

この記事の内容について、相談したい方へ

技術選定・実装の進め方・組織での導入など、AI/IoT全般のご相談を受け付けています。

無料相談会(30分・オンライン)

About The Author

Hideki
東京大学発AIスタートアップでロボット開発室室長・画像解析室室長・動画解析室室長を務め、画像認識関連のAI特許を在籍中に3件取得。その後、KDDIグループでプロダクトリーダーとして自然言語処理パッケージの自社開発を経て、現在はAGRIST株式会社の執行役員CTO 兼 VPoEとして、農業の人手不足解決に向けた収穫ロボットの開発組織を統括しています。AI・ハード・エレキ・通信・クラウド・IoTまでを一気通貫で設計できる視点を強みに、性能だけでなく「感動やワクワク体験」までデザインできるロボットの研究を進めています。並行して、AI coordinatorとして企業のAI導入・教育機関のAI授業・地域の技術相談を月額契約で継続伴走しています。

LEAVE A REPLY

*
*
* (公開されません)