ロボ東宮の知名度が徐々にあがりつつあるので、ロボ東宮Ver1.0の仕様を公開します。あくまでも現段階の仕様であり。随時変更しますので、ご了承くださいませ。
- 基本機能
- @付きのメッセージに対して、返信。
- @tomiya3のポストに@無しで、コメント。
の、2つになります。
返信、コメントの動作原理は同じです。
文章生成の手順は次の通りです。
- メッセージを形態素解析して、品詞に分解し名詞を取り出します。
- 取り出した名詞をランダムに選び出し、言語モデルと照合
- 言語モデルに無い場合は、別の名詞を選んで、見つかるまで言語モデルと照合する。
- それでもない場合や、そもそも名詞のないメッセージは、言語モデルからランダムにチョイス。
- 言語モデルに登録がある名詞を、スタートキーとしてマルコフ連鎖で文章を生成。
- 生成した文章をTwitterへ投稿。
例を挙げましょう。こんな具合です。赤字の『スープ』が今回選ばれた名詞です。
@nobuyama3さんから送られたメッセージ。
@tomiya_bot 大大坊の鷄白湯スープは絶品だと思いますがいかがでしょうか?
@tomiya_botの返信。
@nobuyama3 スープをまとったご飯に、これらの「いいトコ取り」がありますので、入社3か月目です(合掌)
なぜ、名詞を抽出するかと言いますと、会話の始まりとして成立し易いと言えるためです。マルコフ連鎖による生成はどんな言葉でも良いのですが、正しい日本語文章とするため、現在のところは名詞から連鎖を始めることにしています。そのため、名詞が1語だけだと、似たような文章になる確率が高くなります。また、全く名詞が無い場合や、名詞が登録されていない場合、とんでもない文章を生成する可能性があると言えます。ここは、改善点(弱点)だと認識しておりますので、改善する予定です。