島崎藤村『夜明け前』の全文prolog化

文章をprolog化するというのは、文章をprologの宣言文として二分木に変換することを指している。このあたりのところの詳細は、これまでの記事をみていただくしかない。カテゴリのprologにぶら下がっている記事を参照していただきたい。

『夜明け前』は、かなりの長編である。幕末の木曽馬籠宿の名主、藤村の父親を想定した青山半蔵の人生を描いている。なぜ、この小説を選んだのか、私が高校の頃、夏、汗をかきながら必死で読んだ思い出の小説だからである。

なぜこんなことをやるのか。目指しているのは、日本語wikipedia全文をprologの宣言文に変換し。様々な形で検索できるように、そこにある「知識」を扱えるものにすることだ。そして、ロボットが、その概念的知識を使って、深みのある会話、さらには、自然なお笑いの会話をできるようにすることである。

最終目標に到達するための具体的なイメージは詰めきれていないが、当面、wikipediaのprolog化は、まずやってみようということである。が、その膨大なデータを本当に扱うことはできるのかは、最大の課題である。さしあたって、『夜明け前』をどの程度の速度で処理できるのかを見てみたかった。

青空文庫からダウンロードして、ルビを全て外したテキストは、2.4メガバイトだった。それをprologの宣言文に変換したら24.6メガ、10倍に膨らんだ。ただし、いろいろな余計な情報も出力しているので、実際には、もう少し絞れるだろうとは思う。swiprologで、これを読むこむのには、数秒しかかからなかった。十分早い、言葉を与えて、二分技を検索するのは、瞬く間に処理するので、十分早いことがわかった。

ただ、日本語wikipediaは、『夜明け前』の数百冊分はあるので、こんなスピードは実現できないのはわかっている。どこまで、手間がかかるかが知りたいところだ。