第6話 (テスト運用2)
「警告」専門的な話ばかりになってしまいました。
ぱりっ、ぽりぽり
「やっぱりですね、関係ワードによる構造情報だとですね」
ずずっ
「空間情報をうまく構築できないと思うんですよ」
「そうよねー、でも3次元空間をそのまま情報化しても意味ないと思わない?」
がさがさ
「そうなんですよね、でも、すべてのオブジェクトに関係を記述するのを自動的にやるのは難しいと思うんです」
「空間の構造に対するナレッジベースがあれば、オブジェクトが発生したときにある程度は関係を貼れると思うんだけど」
かり
「ある程度は確かに可能です。でも意外な組み合わせがあっても、それを生かせないのではないですか」
「うーん、意外な組み合わせというのは無数にあるわ、すべての組み合わせを生成して検証したんじゃ、組み合わせ爆発するわよ」
ずずっ
「はい、無制限にやるんじゃなくて何らかの評価ができればいいんですが」
午後の小休止の時間に、同僚の中島真理子とお茶をしているひととき。中島が紅茶を嗜んでいる向かいでは、瑞香が日本茶とポテチをむさぼっている姿があった。
ここで議論しているのは、構造を持つ知識の記述に関する物である。一般的な知識工学は名前が定義されていなければ、その知識を記述することはできない。しかし新たな概念を創造し、それに名前をつけるのは人の高度な想像力を必要とする。それを自動化するのは不可能に近い。さらに、既知の物体を組み合わせた物を別の名前で呼ぶことがある。これも自動化するのは不可能に近い。
このようなデータ構造は人が知っていて意識すれば、情報が入力可能である。逆に言えば、意識していなければ入力できないと言うことでもある。ここまでは、まあ、人が手助けしなければ仕方がない。瑞香と高橋は、そのために常識辞書の拡張を行い、データの拡張を行っていた、が、また大きな問題があった。
「たとえば、町を歩いていて、お手洗いに行きたくなったとするわよね」
中島は、持っていたティーカップをおいて、手ぶりで説明する。
「はい、ちえりに近くのお手洗いを教えてと聞いてみたことにしますか」
「うん、それでいい、で、ちえりはなんと答えるべきか」
「近くの店とか図書館とか駅とかのお手洗いの場所を教えるべきですね」
「そういうこと。それで、それをするためには何という情報が必要か?、今のままだと、最短距離の個人の家のお手洗いを教えてしまうわ」
「公共のお手洗いを優先するルールを作る?」
「ルールを作るのはいいけど、そのルールはどのような条件で発動する?、お手洗いの場所を探すという命題だけでは、お手洗いの地図でも作っているのか、いきたくて探しているのかわからないでしょう」
「そうですね、そこはなにか聞き返さなきゃいけないんですね、うーん」
瑞香は考え込んだ。限定された条件の下で発動するルールを作成するのはそれほど難しいわけではない。しかし、その条件の選定によっては、非常に狭い範囲でしか発動せず、無数の命題に対し、無数のルールを設定することになりかねない。計算機の速度と記憶容量の増加により、1万や2万のルールを制定し、適当な時間内で判断させるのはそれほど問題ではない。しかし、状況とルールを策定する人間の気力が持たない。
「お手洗いをどのように使うかを分析しなきゃね」
「そうですね、状況をシミュレーションしなきゃいけないんですね」
現在、ちえりはキーワードによって必要な情報をネット上から探し出す検索エンジンの仲間に過ぎない。取捨選択はユーザーが行うが、当然、必要以上の情報を拾ってくることになり、ユーザーの要求する物を見つけてくるにはほど遠い。
中島真理子は、悩んでいる瑞香を見ながら、紅茶を口に運んでいる。冷め始めたお茶に気がついて、瑞香に声をかけた。
「えーっと、じゃヒントあげる」
「はあ」
「トイレでも何でもいいけど、徹底的に状況を書き出して整理してみて」
瑞香は首をかしげた。
「トイレの状況整理が終わったら、バス停でも売店でも何でもいいから、同じように状況を並べてみるの。それで、共通点と相違点が見つかるはずだから、それで条件を整理してみなさい。一般化できる物とできないものがあるはずよ」
「わかりました、やってみます」
まだ、あまり気乗りのしない瑞香であったが、とりあえず返事をする。
小休止を切り上げ、ちえりのメンテナンスをしながら、お手洗いの使用条件と状況、要求意図などを紙に書いていく。必ずしも排泄にだけ使うとは限らない。化粧を直したり、所持品を整理したりと、別に使う場合もある。やっているうちに、居住空間における適用条件はかなりの数になっていく。別の対象に対して同じように書き表してみると、その共通項目の重要さに頭を殴られたような衝撃を受けた。仕事中の中島に、その紙を持って行く。
「中島さん、中島さん、常識辞書に入っていない社会ルールがいっぱい出来ちゃいます」
PCに向かっていた中島はそれを聞くとにこりとして、くるりといすを向けた。
「でしょ、オブジェクトや事象に対する常識辞書は充実しているけど、社会常識的ルールはあまり充実していないのよね」
「でも、大変ですよ、これまとめるの」
「当たり前でしょ、でもこれをちゃんとしなきゃ、ちえりはまともにならないのよねえ」
「はい」
瑞香はがっくりと首を垂れた。しかししばらく考えた後で、目の色が戻ってくる。
「あ、あの」
「どうしたの?」
「出来ればまた、皆さんにお手伝いをお願いしたいのですが、お願いできますか?」
中島が考え込む。中島が考えただけでもその要素数は膨大な物になる。それをこの研究室の人数で手分けしても、まともな時間で解決できるとは思えない。だいたい、今使っている常識辞書でも、オープンソースとして公開された物を使用させてもらっているだけである。この作成には10年近い蓄積があり、社会常識的ルールがそれより少ないとしても、年単位の時間がかかるのは間違いない。
「それは常識的な時間で可能なの?、何ヶ月もかかるなら無理よ。出来る範囲でゆっくり充実させていくことを考えたら?」
瑞香はまだ頭の整理がついていないのか、考えながらぽつぽつと言葉を拾う。
「状況シミュレーションサーバを使ってですね、既存の文書データから状況をシミュレートします。文書中の状況と行動結果から、社会常識的な行動ルールを抽出したいと思うんです。」
「うーん、因果関係が無数に出てくるかもしれないわね」
「そ、そうなんです。で、でも、状況は自動生成することになります。えーっと、だから生成された状況の一般化とルールの選択をお願いしたいんです」
文書から状況を推論し、その後の文書内の結果に対して因果関係という関係を抽出する。その関係情報はある状況において、取り得る行動のうち、どれをとるべきかを判断するための情報となる。それが社会常識的なルールである。
たとえば、交通ルール(これも社会的ルールである)では、車の運転という「状況」に対してキープレフト、速度規制の遵守、安全走行(曖昧だが)などの「ルール」がある。物理的には車は逆車線に入ったり、道の真ん中で止まることも可能だが、そんなことをしてはいけないのは当たり前である。瑞香はそれを既存の莫大な文書データから抽出しようとしていた。
「状況の一般化ねえ」
文書から描写される状況はその文書の種類にもよるが、結構多い情報になる。しかも、無意味な情報も数多くはいっており、情報と結果の関係を判断できない。それは人の判断に仰がなければならない。
「抽出した結果をリストアップして、ルールが正当かどうかの判断と、状況項目のうち、どれに因果関係があるかを選択していただければいいのではないかと思います」
「出来れば、チェックだけで済めば処理しやすいわね」
「そ、そうですね、そんなアプリを作ってみます」
「わかった、やってみて、応援する。使えるようなら、あらためて応援を頼みましょう」
「ありがとうございます」
瑞香は2日でアプリを作成して、中島に押しつけた。その後、研究員総出でルール作成に入ったが、常識的ルールを抽出すべき元文書が少々というか、かなり偏っていたらしく、かなり困ったことになっていた。まあ、瑞香と同程度になっていたと考えれば差し支えはないだろう。
ちなみに、ちえりはその情報を受けて、相手のことを細かく詮索する、すこし困った性格になっていた。