Title: KNC(Knowledge Nebula Crystallizer)の原理

KNC(Knowledge Nebula Crystallizer)の原理をざっと書いてみます(専門家向けです)。

text(テクスト)は、cohesion(結束構造)により結合されています。cohesionの典型的な例は、anaphora(前方照応)です。

KNCでは、まず、この結合をいったん壊してtextをばらばらの断片にしてやります。ただし、単にばらばらにするのではなく、text断片間の新たな結合可能性を示す結合の手を付与してやることにします。結合の手は、原理的には、discourse theory(談話理論)で言うところのcoherence(結束性)に基づいて定まることになります。また、relevance theory(関連性理論)の用語で言えば、implicated premise, bridging assumption, bridging reference, implicated conclusionなどを手作業で表出する作業です。 この結合手の付与をともなう断片化のプロセスを液状化と呼ぶことにします。

この液状化のプロセスは、Derrida(デリダ)のdeconstruction(脱構築)についての、Staten(ステーテン)による下のような説明とも合致するプロセスであると考えられます。
「彼がとりわけ力を込めて主張しているのは、「哲学的議論の直接的かつ無歴史的読解可能性を信ずることは誤りだ」ということである。内在的にはもとよりその哲学史との関係をも含めて、哲学的テクストのあらゆる分節を考慮に入れる 「先決的にして高度に複雑な作業」が、言語学的であろうと精神分析的であろうと、 あるいはその他のどんな性格のものであろうと、なんらかの解釈「格子」を哲学的テクストに適用する作業に先行しなければならないのである。」

KNCについて国際会議で発表した時に、ヨーロッパの哲学者から、「あらゆる分節を考慮に入れる」などというのは不可能、と指摘されました。哲学的にはその通りですが、我々はエンジニアですので、我々の目標の達成のために必要な範囲で、可能な分節を考慮に入れる作業を行うことになる、とお答えしました。

また、関連性理論の用語を使って言えば、text断片とtext断片が与えられたときにそれらをつなぐbridging assumptionやbridging referenceを分析するというのは可能かもしれないけど、単独のtext断片に対して、そのまわりに存在しうるbridging assumptionやbridging referenceをすべて列挙しておくというのは不可能、ということになると思われます。が、これまた、工学的センスでえいやっ、と可能なものを列挙しておく、ということにします。「えいやっ」ではなく、もっと真剣にやれば、それはオントロジーの構築の問題につながっていきます。

さて、こうして液状化された断片を作成しておくことができたならば、それらを文脈に応じて新たに再構成することは比較的容易にいろいろな方法で行うことができます。その再構成のプロセスを結晶化と呼ぶことにします。

余談ですが、ハイパーテクストの概念を作ったTed Nelsonからは、「Knowledge Nebula Crystallizer! What a fascinating name!」とほめてもらいました:-)

KNC11の場合、おおざっぱに言うと、次のようにして計算を行っています。(このページの下のほうの、「(別の方法で計算した)現在の文脈で関連しそうな項目(関連度)」というところにその計算結果が表示されています。):

Each representation unit has a socket vector and a plug vector. The socket vector and the plug vector are keyword vectors.
The initial context is a zero vector.
current_context_vector = previous_context_vector * decay_constant + current_unit_socket_vector.
For each unit_i in the set of all representation units,
relevance_score_i = current_context_vector (inner product) unit_i_plug_vector.


液状化と結晶化のいろいろな方法については、堀浩一の方法、赤石美奈の方法、佐藤真の方法、網谷重樹の方法、などを発表してきています。

以上が、ごくおおざっぱなKNCの原理の説明ですが、今このページをお見せしているKNC11では、上の説明よりも、液状化と結晶化のレベルがひとつ上になっています。すなわち、過去に書いた原稿そのものをばらばらに分解する液状化を行うのではなく、過去に書いた原稿(たとえば現代思想誌に書いた解説論文)をその原稿のまわりの文脈(たとえば1991年当時の「現代思想」という哲学の雑誌の「教育に何ができるか特集号」の中に置かれていたという文脈)から切り離して、他の私の原稿との結合可能性の手を与える、という液状化を行っています。

2012年の正月に作成したKNC12(現在御覧いただいているこのページを出力しているシステム)では、新たに2次元空間中に読者の御興味の推定位置とその移動予測を示す方法を考えて実装しました。その原理については、後日、御紹介したいと存じます。

追記2013年8月17日: その原理を最初に考えた佐藤真君が論文にするのを待っていましたが、佐藤君が(実験と評価が難しくて)論文にできそうにないと言いますので、ざっとここに書いてしまいます。まず、液状化された表現ユニットたちを2次元空間に結晶化します。この空間をトピック空間と呼ぶことにします。上述したとおり、各表現ユニットは結合手を持っていますので、ある表現ユニットと別の表現ユニットが結合しうるかどうかの度合いを、表現ユニット間の結合手の共有度によって計算することができます。それらの度合いを、すべての表現ユニット間の組合せについて並べて、行列を作ります。2012年の正月に作ったKNC12では、その行列についてPCA(Principal Component Analysis, 主成分分析)を適用して、2次元空間を作りました。さらに、読者の興味地点がこの空間の上を移動するというモデルを考えます。KNC12では、興味地点の移動の運動方程式を仮定し、カルマンフィルタを用いて、興味地点の位置と移動速度を推定するという方法を採用しています。BleiたちのDynamic Topic Modelsが基本的にはガウシアンのゆらぎでのtopic transitionを仮定しているのに対して、我々のシステムでは、topic transitionを陽に運動方程式としてモデル化していることになります。

さらに追記2013年8月17日: 上記のとおり、トピック空間はPCAを用いて作成しましたが、これまで、公開版のKNC12(今御覧いただいているこのサイトです)では、その空間の変形は行っていませんでした。2013年8月17日より、公開版のKNC12でも、ユーザの行動履歴に従ってトピック空間を変形することを試みることにしました。ひとつの方法としては、著者(私)の与えた液状化の結合手に加えて、ユーザが共参照した表現ユニット間に結合手を追加するという方法が考えられます。それに相当することを実装してみました。これの効果は、大勢のユーザの行動が蓄積された後に、徐々にあらわれるはずです。さらに、各表現ユニットの参照回数の情報も利用することにして、参照回数の高い表現ユニットほど空間の中心近くに位置し、参照回数の低い表現ユニットほど空間の周辺部分に位置するようにする、という変形もリアルタイムで行うようにしてみました。


参考文献:

松井智子: "関連性理論: 認知語用論の射程", 人工知能学会誌, Vol.18, No.5, pp. 592-602, 2003.

H. Staten: "Wittgenstein and Derrida", the University of Nebraska Press, 1984. 高橋哲哉訳: "ウィトゲンシュタインとデリダ"、産業図書、1987.

赤石美奈: "文書群に対する物語構造の動的分解・再構成フレームワーク", 人工知能学会論文誌, Vol. 21, No. 5, pp. 428-438, 2006.

K. Hori, K. Nakakoji, Y. Yamamoto, and J. Ostwald: “Organic perspecives of knowledge management: Knowledge evolution through a cycle of knowledge liquidization and crystallization,” Jounal of Universal Computer Science, vol. 10, no. 3, pp. 252–261, 2004.

堀浩一: "創造活動支援の理論と応用"、オーム社、2007.

Makoto Sato, Mina Akaihisi, Koichi Hori: "Analyzing Topic Transitions using TermContext-dependent Attractiveness", Information Modelling and Knowledge Bases XXI, Frontier in Artificial Intelligence and Application, IOS Press, Vol.206, pp. 324-331, 2010.

S. Amitani, M. Mori, and K. Hori: “An approach to a knowledge reconstruction engine for supporting event planning,” in Proc. of KES2002 (E. D. et al., ed.), pp. 1281–1285, IOS Press, 2002.

S. Amitani and K. Hori: “Knowledge nebula crystallizer for knowledge liquidization and crystallization - from a theory to methodology of knowledge management,” in Proceedings of Expertise In Design, Design Thinking Research Symposium 6, 2003.

網谷重紀 and 堀浩一: “知識創造過程を支援するための方法とシステムの研究,” 情報処理学会論文誌, vol. 46, no. 1, pp. 89–102, 2005.

Blei, D. M. & Lafferty, J. D. : Dynamic Topic Models, Proceedings of the 23rd International Conference on Machine Learning, pp. 113-120, 2006.


         2011年3月 堀 浩一
         2012年1月 堀 浩一
         2013年8月 堀 浩一



Author: Koichi Hori


堀浩一の紹介

堀浩一の紹介:
(これは著者が手で作成した空間です)
(上の空間の中でクリックしていただけますと、各項目にアクセスできます。)
(「堀 浩一」という項目から始めて、関連する話題を、ざっとではありますが、抽象的な問題は右へ、具体的な問題は左へ、一般的な話題は上へ、人工知能研究関連の話題は下へ、という方針で、配置してみました。ただし、すべての項目の配置がその方針を満たしているわけではありません。)

堀浩一の略歴と連絡先は「堀 浩一」にあります。 詳細な履歴は「堀 浩一 詳細履歴」にあります。
たまに「堀 浩一 の ひとりごと」を更新しています。なぜかこのひとりごとへのアクセスが比較的多いのですが、読んで下さっている皆様に感謝申し上げます。
堀は人工知能の研究者です。時々堀洋一先生と間違われることがありますが、 「堀洋一さんと堀浩一は別人です」
堀研究室は東京大学大学院工学系研究科航空宇宙工学専攻にあります。 研究室では、航空宇宙工学への人工知能の応用だけでなく、学生諸君の自主的なテーマ設定を尊重して、幅広くいろいろなテーマの研究を行っています(「堀研究室所属を希望する皆さんへ」「活躍する教え子たち」)。

私自身は、人工知能研究の中でもやや特殊な「創造活動支援システムの研究」を行ってきました。 なんだか怪しい響きの研究テーマだと思われるかもしれませんが、いつのまにか仲間も増えました(「ことばと発想のテクノロジー 」)。
創造活動支援システムの一例として「堀の自作ソフトKNC(Knowledge Nebula Crystallizer)」を作りつづけています。このサイトもそのKNCで動いています。「KNC(Knowledge Nebula Crystallizer)の原理 」にやや専門的な説明を書きました。このサイトを動かしているKNCは「Rails + MySQL」で実装しています。

研究者が何をめざして研究をおこなっているのかの本音について、「事業仕分けをきっかけに思う」に書きました。研究者の本音を身も蓋もない言い方で言ってしまうならば、面白くて仕方ないので研究しているということになるでしょう。
しかし、学問ごとに目標とするところに少しずつ違いはあって、 我々工学の研究者がめざしているのは、おおげさな言い方をするならば、人類の幸福です(「工学と理学の違い」)。
理想と現実の狭間で、研究をどうやって評価すべきかは、重要で難しい問題です(「評価」から「解説」へ 」「人工知能学会創立25周年にあたって 」)。
できれば、産学連携も、理想に向かって「志高き産学連携」を行いたいものです。

最近再び人工知能の研究が注目されるようになってきています。 そもそも知識とは何なのだろうという問題については、昔々現代思想誌にも書かせていただいたことがあります(「知識の姿 − 人工知能研究者の立場から」)。
「機械が心を持つようになるか?」 「人工知能倫理(AI Ethics)について」 「機械との競争について」 「集合知とは何か」等々、私も考え続けています。
学会の果たすべき役割についても考え直す必要がありそうです(「人工知能学会創立25周年にあたって 」)。
それらすべてに関係する「人工知能とは」という解説記事を書きましたので、それも掲載しておきます。


最終的に私がめざしているのは、恩師からの宿題の「文化国家としての技術立国 」に少しでも貢献することです。


automatically generated story 6.18.33.37

This is an automatically generated story.
これは自動的に生成された空間です。
「起承転結」の関係になるような項目をシステムが自動的にさがして上から下に並べました。
上の空間の中でクリックすると各項目にアクセスできます。


 

現在の御興味の推定位置と御興味の移動予測

(これは、トピック間のキーワードの共有度とユーザの行動履歴をもとに自動的に作成した空間です。)

御興味移動先予測地点に近い項目から遠い項目まで一覧(距離):


堀 浩一のホームページへ

現在位置 x = 0.07, y = 0.72
現在誤差 sigma = 0.0
予測位置 x = 0.07, y = 0.72
予測誤差 sigma = 0.07


(別の方法で計算した)現在の文脈で関連しそうな項目(関連度):
relevant in the current context (relevance score):


堀 浩一のホームページへ