二分木フォーマットの改訂:ここまできて

今更感があるが、一番元々の二分木のフォーマットを変えようという気になっている。最近、11時ごろに寝て、一旦4時ごろに目がさめる。若い頃だったらありえなかったが。それから、寝ながら、いろいろ考えると、アイデアが浮かぶ。そのうちまた、6時ごろまで寝てしまう。アイデアは、新鮮に覚えているというパターン。

今朝のアイデアが、二分木の作り方を変えるというもの。結構いいところまで追い詰めたのに、最近煮詰まった感が出てしまった。(リフレッシュするように、アマチュア無線の3級の免許を取ろうなどと考えてしまっていた。これは、9月29日に試験を受けにいく。恥ずかしく、落ちてしまいそうな気もするが。)

なぜ煮詰まったのか。もともとの二分木作りのところは、見直さないといけないと思いつつ、結局どこまで行けて、何がやれるのかを見極めるように先を進んでいったが、最後の詰めで、これでは難しいな、と思ってしまって、先に行かなくなった。それで、今朝のひらめきである。つまり、気になっていた二分木の作り方をかなりドラスティックに変えるべきだということだ。ポイントは次である。

「二分木構造そのものが、部分知識を表現するものでなければならない」

というものである。たとえば、wikipediaの一つの文章を例示する。

「据え置き型の製造機械である産業用ロボットは、それらが動かない限り、ロボットと呼ばれる自動機械であり、人間社会に与える影響も旧来の自動機械と同等と考えられたが、これからの人間社会は移動するロボットからの影響を受けることが想像される」

この文章から、今までのシステムで、部分知識を取り出そうとした時、少しもうまく行かなかった。これが、煮詰まりのきっかけである。今のシステムでどうなるかはさておいて、こうなるべきだという、前向きのところから考えていきたい。

まず、これをknpで構文解析して、係り受けだけ見てみよう。

いままで、係り受け解析は、二分木を作る際に使っていたが、そんなに信頼していたわけではない。しかし、これを見る限り、うまく部分知識を表現している。つまり、それぞれのブロックが、一つの部分知識を表している。Aでは、「産業用ロボットというのが、据え置き型の製造機械である」こと、Bでは、「動かない限り、自動機械だ」ということ、「人間社会に与える影響も自動機械に過ぎないと考えられていた」ということ、そして、最後がこの文章の一番の要点である。すなわち「これからの人間社会は、移動するロボットからの影響を受ける」ということである。

部分技を、あるnodeから以下を取り出したときに、部分知識になるように構成したいわけである。

二分木の作り方が混乱していた。首尾一貫した構成を実現する。