人工知能プログラミングやってくブログ

深層学習・機械学習・AIについて調べてやってみたことをまとめるブログです

IMDBを畳み込みニューラルネットワーク他で判定する簡単サンプル

https://gyazo.com/da61ade299139b71499ec87572a8ad86 KerasにはIMDBの学習を行うサンプルが5個も入ってます。
なので、せっかくだから作ってみました。

IMDBの学習方法

Kerasのexamplesの中に

  • imdb_lstm.py (LSTM)
  • imdb_fasttext.py (FASTTEXT)
  • imdb_cnn.py (CNN)
  • imdb_cnn_lstm.py (LSTM)
  • imdb_bidirectional_lstm.py (Bidirectional_LSTM)

と5つ、学習を行うコードが入っています。
このコードにモデル保存を追記しIMDBを学習させます。
この部分のコードについては、このブログエントリーでは触れません。
後述のGitHubリポジトリにコードが入っていますので、そちらを参照してください。

学習したモデルを読み込んでIMDBを識別するコード

jupyter notebookで使えます。
コード内のprediction_mode変数の値を切り替えることで、読み込む学習済みモデルを変更することができます。

GitHubリポジトリ

ここに全てのコード、バイナリが入っています。

github.com

学習モデルの比較

学習ログから、テストデータの正答率(val_acc)を比較したところimdb_fasttext, imdb_cnnの順で成績が良かった。

5つの学習モデルのログは、こちらのGoogleスプレッドシートで見ることができる。

Train-Log-IMDB-Prediction-In-Keras

参考

abdel.me

データセット - Keras Documentation