Kotz’i’jに恋して11

今回の更新でKotz’ijは単語帳にある名詞を認識し、一度入力された名詞がもう一度入力された場合は、初めて入力された時のフレーズを用いる仕様にしてみた。

名詞かどうかの判定は、単語帳に品詞の情報を加えることにより実現。

単語帳に含まれている単語は今のところ全て名詞だけど動詞や前置詞等を保存することももちろん可能。

今回、大幅な追加・変更があったのはやはり辞書関連のコード。名詞を認識するためのメソッドを新たに作成。キチェ語は英語やスペイン語等と同様に単語と単語を空白で離すため、単語の認識自体は楽。

 

Dictionary.rb

プログラムを実行してみる。

少し会話らしくなってきた気がしないでもない。語彙やパターン数を増やしていけば更に良くなるかも。

 

 

Kotz’i’jに恋して10

プログラムに何とか形態素解析を取り組みたいと思う。アルファベットを用いたキチェ語では英語の様に各単語を離して表記するため、日本語程難しくはならないと思う。ただ、動詞を用いない会話も多いため、その点が少し問題となり得る。

取り敢えず、形態素解析をひとまず隅において、Kotz’i’jがユーザーが入力した文章を用いることが出来る仕様にした。辞書ファイルへの書き込みや入力内容の評価といったことが形態素解析にも繋がるので次に向けたステップとしては中々良いかな。

まぁ、恋するプログラムも同じ手順を踏んでいるということもあるけれど。

でプログラムだけど今回は3つのソース・ファイルを修正。

Dictionary.rb

Kotzij.rb

Tzijonik.rb

プログラムの更新を分かりやすくするため、単語リストはトマト(pix)の一単語のみとしてみた。

実行してみる。

途中からKotz’ijがスペイン語を話し始めてしまった。

ちなみにXwanというのはスペイン語のJuan、Ko’zijのスペルは発音を間違えたと仮定して元々とは違う形で入力してみた。

プログラム終了時に単語リストはこうなっていた。

スペイン語を話し始めたKotz’ijだけど次回からは本格的にキチェ語を学ぶ様になるかな?まずはやはり名詞から始めようと思う。

 

Kotz’i’jに恋して9

単語数も順調に増えてきたけど、今後はKotz’i’jの発言をより充実させるものにするためには、形態素解析が必要。英語や日本語では幾つかプログラムがあるけど、キチェ語も他のマヤ諸言語もそんなものはない。

スタンフォード大学が作っている英語とかのプロジェクトを基にしても良いけど、今のところ、キチェ語の語彙数も少ないので単純なプログラムを作った方が良いかな。

取り敢えずMeCabの辞書ファイルを拾って読み込んでみた。これはかなり大変そう。形態素解析(morphological analysis)についてはノラ・イングランドがキチェ語の文法本でも触れているのでそれを参考にしてみようと思う。

 

 

Kotz’i’jに恋して7

今日午後の授業に行く前にプログラムに機能を追加した。本の第6章にあるように、Kotz’ijに感情モデルを実装した。具体的には特定の言葉によって機嫌が良くなったり、悪くなったりということ。

キチェ語クラスでの単語は150以上位だと思うけど、あまり形容詞を習っていないので今のところ機嫌を良くする言葉(Utz Kotz’i’j=可愛いKotz’i’j)と反対に機嫌を悪くさせる言葉(Chom=太っている)それぞれ一つずつ。

それらはパターン回答集に追加。.rbファイルは5つ。

Tzijonik.rb

 

Kotzij.rb

 

Responder.rb

 

Dictionary.rb

 

で最後に新しく作成したEmocion.rb

キチェ語、英語、スペイン語が入り混じってちょっと分かりずらくなってきたかなぁ。