高度なチャットボットは無理だけど・・・
pythonのお勉強としてchatbotを作ってみようと思い立った。いろいろとGoogleって見るといろいろある。ディープラーニングだけでもいろんな手法もあるし、どこから取り付いて良いのかわからない。TensolFlowのSeq2aeqモデルとかいい勉強になりどうだけれども難しそう。実際、そのまんま動かそうとすると環境構築だけで苦労した上にエラーの解決ができなかった。
マルコフ連鎖であれば、markvify を使うとコードも理解しやすそう。マルコフ連鎖による文章自動生成に挑戦しました。その文章をツイートするところまでできました。
そこでメモ代わりに書き留めます。
使った環境(マシンというか)
ColaboratoryとメインPCでJupyter lab、借りているVPSを駆使することにしました。本当は駆使するというより、環境を持ち歩けないので仕方なく・・・です。
何はともあれ元データ
まずは、文章集め。データが多ければ多いほどいいだろう。そこで、参考にしたのは、こちら。
まずは、Colaboratoryで動作を確認。
!pip install requests requests_oauthlib
!pip install emoji
くらいで、あとは引数を直接与える様にするくらい。
args[1] = '私' # jupyter上で実行するとき
これで無事に動作。
収集できた文章も応答になっているので、なかなか良い感じ。URLや絵文字も削除できている。収集ペースも大体分かったので、これならサーバーに設定しても破綻しそうにない。
ということで、VPS(CentOS)で収集を開始。そのまま1週間ほど放置して大量の会話データを収集すると600MBくらいに育ってました・・・。
つづく。