特許第6265921号(P6265921)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セプト システムズ ゲゼルシャフト ミット ベシュレンクテル ハフツングの特許一覧

特許6265921テキストの意味的処理のための方法、装置および製品
<>
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000002
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000003
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000004
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000005
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000006
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000007
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000008
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000009
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000010
  • 特許6265921-テキストの意味的処理のための方法、装置および製品 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6265921
(24)【登録日】2018年1月5日
(45)【発行日】2018年1月24日
(54)【発明の名称】テキストの意味的処理のための方法、装置および製品
(51)【国際特許分類】
   G06F 17/28 20060101AFI20180115BHJP
   G06F 17/30 20060101ALI20180115BHJP
   G06N 3/08 20060101ALI20180115BHJP
【FI】
   G06F17/28 627
   G06F17/30 210D
   G06N3/08 180
【請求項の数】15
【全頁数】18
(21)【出願番号】特願2014-561350(P2014-561350)
(86)(22)【出願日】2013年2月22日
(65)【公表番号】特表2015-515674(P2015-515674A)
(43)【公表日】2015年5月28日
(86)【国際出願番号】EP2013053546
(87)【国際公開番号】WO2013135474
(87)【国際公開日】20130919
【審査請求日】2016年1月5日
(31)【優先権主張番号】12159672.0
(32)【優先日】2012年3月15日
(33)【優先権主張国】EP
【前置審査】
(73)【特許権者】
【識別番号】514232502
【氏名又は名称】コーティカル.アイオー ゲゼルシャフト ミット ベシュレンクテル ハフツング
【氏名又は名称原語表記】cortical.io GmbH
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100135633
【弁理士】
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】フランシスコ エドゥアルド デ ソウザ ウェッバー
【審査官】 長 由紀子
(56)【参考文献】
【文献】 特開2008−276768(JP,A)
【文献】 特開平11−085773(JP,A)
【文献】 一木 宏行 外2名,多層構造を有する自己組織化セマンティックマップ,電気学会論文誌C,日本,社団法人電気学会,1993年 1月20日,第113-C巻第1号,P.36-42
【文献】 NIKOLAOS AMPAZIS ET AL.,LSISOM A Latent Semantic Indexing Approach to Self-Organizing Maps of Document Collections,NEURAL PROCESSING LETTERS,米国,KLUWER ACADEMIC PUBLISHERS, BO,2004年 4月30日,P.157-173
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/20−28
G06F 17/30
G06N 3/08
(57)【特許請求の範囲】
【請求項1】
テキストをニューラルネットワーク読み取り可能な形態に変換するためのコンピュータ読み取り可能な辞書を生成する、コンピュータが実施する方法であって、
意味的文脈での1つ以上のキーワード(7)をそれぞれ含む複数の第1のテキストドキュメント(3)の第1の集合(2)を用いて、自己組織化マップ型の第1のニューラルネットワーク(4)を、各テキストドキュメント(3)を意味的クラスタリングによって自己組織化マップ(5)内の点(X/Y)にマッピングするために、トレーニングするステップと、
前記第1の集合(2)に存在する各キーワード(7)について、前記キーワード(7)と関連する点(X/Y)のパターン(6)として前記キーワード(7)を含む前記テキストドキュメント(3)がマッピングされる、前記自己組織化マップ(5)内の全ての点(X/Y)を決定するステップと、
全てのキーワード(7)および関連するパターン(6)をコンピュータ読み取り可能なパターン辞書(9)として保存するステップと、
を含む、ことを特徴とする方法。
【請求項2】
ニューラルネットワークをトレーニングするための、コンピュータが実施する方法であって、
意味的文脈での1つ以上のキーワード(7)をそれぞれ含む複数の第1のテキストドキュメント(3)の第1の集合(2)を用いて、自己組織化マップ型の第1のニューラルネットワーク(4)を、各テキストドキュメント(3)を意味的クラスタリングによって自己組織化マップ(5)内の点(X/Y)にマッピングするために、トレーニングするステップと、
前記第1の集合(2)に存在する各キーワード(7)について、前記キーワード(7)と関連する点(X/Y)のパターン(6)として前記キーワード(7)を含む前記テキストドキュメント(3)がマッピングされる、前記自己組織化マップ(5)内の全ての点(X/Y)を決定するステップと、
全てのキーワード(7)および関連するパターン(6)をコンピュータ読み取り可能なパターン辞書(9)として保存するステップと、
意味的文脈での1つ以上のキーワード(7)をそれぞれ含む第2のテキストドキュメント(13)の第2の集合(12)から、キーワード(7)の少なくとも1つの列(11)を形成するステップと、
前記キーワード(7)の少なくとも1つの列(11)を、前記パターン辞書(9)を用いて、パターン(6)の少なくとも1つの列(14)に変換するステップと、
前記パターン(6)の少なくとも1つの列(14)を用いて、第2のニューラルネットワーク(15)をトレーニングするステップと、
を含む、方法。
【請求項3】
前記第2のニューラルネットワーク(15)は、階層的でありかつ少なくとも部分的に再帰的である、請求項2記載の方法。
【請求項4】
前記第2のニューラルネットワーク(15)は、自己連想記憶理論型である、請求項2記載の方法。
【請求項5】
前記第2のニューラルネットワーク(15)は、階層的一次記憶型である、請求項2記載の方法。
【請求項6】
前記第1のニューラルネットワーク(4)は、コホネンの自己組織化マップである、請求項2から5のいずれか1項記載の方法。
【請求項7】
前記第2の集合(12)の前記第2のドキュメント(13)のそれぞれについて、キーワード(7)の個別の列(11)が形成され、パターン(6)の個別の列(14)に変換され、前記第2のニューラルネットワーク(15)は前記パターン(6)の個別の列(11)のそれぞれを用いて連続的にトレーニングされる、請求項2から6のいずれか1項記載の方法。
【請求項8】
前記第2のドキュメント(13)はソートされ、前記第2のニューラルネットワーク(15)のトレーニングの際、前記パターン(6)の個別の列(14)がそれぞれ形成され、変換される前記第2のドキュメント(13)のソート順で、前記パターン(6)の個別の列(14)が前記第2のニューラルネットワーク(15)に供給される、請求項7記載の方法。
【請求項9】
前記第2のドキュメントは複雑性の低い順にソートされ、前記第2のドキュメント(13)の複雑性は、前記第2のドキュメント(13)中の異なるキーワード(7)の数、前記第2のドキュメント(13)中の平均文長、前記第2のドキュメント(13)中の前記第1の集合の1つ以上のキーワード(7)の頻度、前記第1の集合(2)または別のテキストコーパス中の前記第2のドキュメント(13)の1つ以上のキーワード(7)の頻度の1つ以上に基づいて確認される、請求項8記載の方法。
【請求項10】
請求項2から9のいずれか1項記載の方法によってトレーニングされた前記第2のニューラルネットワーク(15)を用いて、少なくとも1つのキーワード(7)を含むテキストを処理するための方法であって、
前記少なくとも1つのキーワード(7)を前記パターン辞書(9)によって少なくとも1つのパターン(6)に変換するステップと、
前記少なくとも1つのパターン(6)を、入力パターンとして、トレーニングされた前記第2のニューラルネットワーク(15)に供給するステップと、
トレーニングされた前記第2のニューラルネットワークから少なくとも1つの出力パターン(6)を得るステップと、
前記パターン辞書(9)により、前記少なくとも1つの出力パターン(6)を少なくとも1つのキーワード(7)に変換するステップと、
を含む、方法。
【請求項11】
テキストの意味的分類のための請求項10記載の方法であって、
前記第2のニューラルネットワーク(15)は階層的であり、前記少なくとも1つの入力パターン(6)は階層の少なくとも1つの下層に供給され、前記少なくとも1つの出力パターン(6)は前記階層の少なくとも1つの上層から得られる、
請求項10記載の方法。
【請求項12】
テキストの意味的予測のための請求項10記載の方法であって、
前記第2のニューラルネットワーク(15)は階層的であり、前記少なくとも1つの入力パターン(6)は前記階層の少なくとも1つの上層に供給され、前記少なくとも1つの出力パターン(6)は前記階層の少なくとも1つの下層から得られる、
請求項10記載の方法。
【請求項13】
請求項2から9のいずれか1項記載の方法を用いて前記第2のニューラルネットワーク(15)としてトレーニングされた階層型のニューラルネットワークを含む、分類機械。
【請求項14】
請求項2から9のいずれか1項記載の方法を用いて前記第2のニューラルネットワーク(15)としてトレーニングされた階層型のニューラルネットワークを含む、予測機械。
【請求項15】
前記ニューラルネットワーク(15)が、第1の言語の第1および第2のテキストドキュメント(3、13)を用いて、請求項2から9のいずれか1項記載の方法によってトレーニングされた、請求項13記載の分類機械と、
前記ニューラルネットワーク(19)が、第2の言語の第1および第2のテキストドキュメント(3、13)を用いて、請求項2から9のいずれか1項記載の方法によってトレーニングされた、請求項14記載の予測機械と、
を備えており、
前記分類機械の前記ニューラルネットワーク(15)のノード(15’)が前記予測機械の前記ニューラルネットワーク(19)のノード(19’)に結合されている、
ことを特徴とする変換機械。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、特に、テキストの意味的処理、分類および予測のための、ニューラルネットワークのトレーニング方法に関する。本発明は、さらに、コンピュータ読み取り可能な媒体、ならびに、ニューラルネットワークに基づいた分類、予測および変換の機械に関する。
【背景技術】
【0002】
本発明の文脈において、「ニューラルネットワーク」の語は、コンピュータが実施する、人工ニューラルネットワークを指す。ニューラルネットワークの理論、種類および実施の詳細は、非特許文献1や非特許文献2に記載されている。
【0003】
本発明は、特に、ニューラルネットワークによるテキストの意味的(semantic)処理、すなわち、テキストのワードと、これらのワードが現実世界およびその文脈において表すものとの間の関係に焦点を当てることによる、テキストの意味(meaning)の分析に関する。以下では、テキストの「ワード」(字句)は、言語の通常の用語におけるワードだけでなく、テキストを形成するよう組み合わせ可能な言語の任意の単位たとえば符号や記号を含む。これらのワードからは、ここでテキストの「キーワード」と本発明者らが呼ぶものを残すため、ほぼ意味的関係性の無い、「the」、「he」、「at」などの全てのありふれたワードは無視する。
【0004】
意味的テキスト処理の分野は広く、たとえば、関連するソート、アーカイブ、データマイニングおよび情報検索を目的とする、特定キーワードを含むテキストの分類が含まれる。テキスト中のキーワードの意味(meaning)を理解し、「意味のある(meaningful)」他のキーワードのテキスト中の存在を予測することは、たとえば、検索エンジンでの意味的クエリ拡張に役立つ。最後に最も大切なことは、意味的テキスト処理によって、ソースであるテキストのワードをより広い意味的文脈で考える際に、ソースであるテキストの曖昧さを解決することにより、機械翻訳の質が高められる。
【0005】
特に検索エンジンにおけるクエリ拡張のための、意味的テキスト処理の従来の方法は、キーワードに関する大きな統計的指標、これらの見出し語(語彙的語根)およびキーワード間の統計的関係を用いて行われ、関係分析のための大きなシソーラスファイル、統計および辞書を構築する。しかし、統計的方法は、より長くより複雑なワード列を考える場合には、意味的分析の深さが制限される。
【0006】
他方、ニューラルネットワークは基本的に複雑で多様なデータ内のパターンの認識、たとえば、画像中の物体認識、あるいは、会話、音楽または測定データ中の信号認識に用いられる。ニューラルネットワークは、分析すべき「生」サンプルが供給された際に、認識タスクを満たすことができるように、膨大な量のトレーニングデータを用いて正しく「トレーニング」されなければならない。ニューラルネットワークのトレーニングとは、そのネットワークノード(「ニューロン」)間の内部結合と重みを構成することに等しい。トレーニングの結果とは、ニューラルネットワーク内の通常重み付けされた結合の特定の構成である。
【0007】
ニューラルネットワークのトレーニングはそれ自体複雑なタスクであり、たとえば反復アルゴリズムや適合アルゴリズムを用いて多数のパラメタを設定する。したがって、ニューラルネットワーク用アルゴリズムのトレーニングは、特定分野用ニューラルネットワークの構築のための技術的手段として考えることができる。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】Bishop C. M., "Neural Networks for Pattern Recognition", Oxford University Press, New York, 1995/2010
【非特許文献2】Rey, G. D., Wender K. F., "Neurale Netze", 2nd edition, Hans Huber, Hofgrefe AG, Bern, 2011
【発明の概要】
【発明が解決しようとする課題】
【0009】
ニューラルネットワークは多量の数値データ内のパターン認識のために現在広く用いられている一方、テキスト処理への適用は、現在のところ、機械読み取り可能な形態でニューラルネットワークにテキストが供給可能な形態に限られている。
【0010】
本発明の課題は、意味的テキスト処理のためのニューラルネットワークの分析能力をより活かすために、テキストとニューラルネットワークとの間のインタフェースを改善することである。
【課題を解決するための手段】
【0011】
本発明の第1の態様では、コンピュータが実施するニューラルネットワークのトレーニング方法が提供され、該方法は、
意味的文脈での1つ以上のキーワードをそれぞれ含む複数の第1のテキストドキュメントの第1の集合を用いて、自己組織化マップ型の第1のニューラルネットワークを、各ドキュメントを意味的クラスタリングによって自己組織化マップ内の点にマッピングするために、トレーニングするステップと、
第1の集合に存在する各キーワードについて、パターンとして、キーワードを含む第1のドキュメントがマッピングされる、自己組織化マップ内の全ての点を決定し、パターン辞書内の該キーワードに対する該パターンを保存するステップと、
意味的文脈での1つ以上のキーワードをそれぞれ含む複数の第2のテキストドキュメントの第2の集合から、少なくとも1つのキーワード列を形成するステップと、
パターン辞書を用いて少なくとも1つのキーワード列を少なくとも1つのパターン列に変換するステップと、
少なくとも1つのパターン列を用いて第2のニューラルネットワークをトレーニングするステップと、
を含む。
【0012】
本方法を用いてトレーニングされた第2のニューラルネットワークは、種々の用途、たとえば:
i)少なくとも1つのキーワードを含むテキストの処理であって、
パターン辞書により、少なくとも1つのキーワードを少なくとも1つのパターンに変換するステップと、
トレーニングされた第2のニューラルネットワークに少なくとも1つのパターンを入力パターンとして供給するステップと、
トレーニングされた第2のニューラルネットワークから少なくとも1つの出力パターンを得るステップと、
パターン辞書により、少なくとも1つの出力パターンを少なくとも1つのキーワードに変換するステップと、
を含む処理;
ii)階層型の第2のニューラルネットワークが用いられる場合の、テキストの意味的分類であって、少なくとも1つの入力パターンが階層の少なくとも1つの下層に供給され、少なくとも1つの出力パターンが階層の少なくとも1つの上層から得られる、意味的分類:
iii)階層型の第2のニューラルネットワークが用いられる場合の、テキストの意味的予測であって、少なくとも1つの入力パターンが階層の少なくとも1つの上層に供給され、少なくとも1つの出力パターンが階層の少なくとも1つの上層から得られる、意味的予測、
で使用されるように構成され、準備されている。
【0013】
別の態様では、本発明によれば、テキストをニューラルネットワーク読み取り可能な形態に変換するためのコンピュータ読み取り可能な辞書を生成する方法が提供され、該方法は、
意味的文脈での1つ以上のキーワードをそれぞれ含む複数の第1のテキストドキュメントの第1の集合を用いて、自己組織化マップ型の第1のニューラルネットワークを、各テキストドキュメントを意味的クラスタリングによって自己組織化マップ内の点にマッピングするために、トレーニングするステップと、
第1の集合に存在する各キーワードについて、キーワードと関連する点のパターンとしてキーワードを含むテキストドキュメントがマッピングされる、自己組織化マップ内の全ての点を決定するステップと、
全てのキーワードおよび関連するパターンをコンピュータ読み取り可能なパターン辞書として保存するステップと、
を含む。
【0014】
本発明によれば、コンピュータ読み取り可能な媒体上で実現されるこの種のコンピュータ読み取り可能な辞書が提供される。
【0015】
本発明の別の態様は、
ニューラルネットワークが、第1の言語の第1および第2のテキストドキュメントを用いて、本発明の第1の態様にかかる方法によってトレーニングされた分類機械と、
ニューラルネットワークが、第2の言語の第1および第2のテキストドキュメントを用いて、本発明の第1の態様にかかる方法によってトレーニングされた予測機械と、
第1の言語の第1および第2のテキストドキュメントを用いて自身のニューラルネットワークがトレーニングされた分類機械と、第2の言語の第1および第2のテキストドキュメントを用いて自身のニューラルネットワークがトレーニングされた予測機械と、を備えており、分類機械のニューラルネットワークのノードが予測機械のニューラルネットワークのノードに結合されている、変換機械と、
を備えている。
【0016】
全ての態様において、本発明は、3つの異なる技術、すなわち、自己組織化マップ(SOM)、SOMにおけるキーワードの逆インデックス、および、パターンのストリームに変換されたテキストが供給される目標ニューラルネットワーク、を全く新規なやり方で組み合わせる。
【0017】
本発明の基本の1つは、キーワードと2次元の(またはより多次元の)パターンとの間の関連付けを含む、新規な種類の「キーワード−パターン」辞書(「パターン辞書」と省略)の生成である。このパターンは、第1のドキュメントの集合の文脈でのキーワードの意味(semantics)を表す。以下に記載されるように、たとえば百科事典の記事といった第1のドキュメントの集合として意味的文脈の適切な集まりを選択することにより、各パターンはキーワードの意味的文脈、すなわち、キーワードの意味(meaning)を反映する。
【0018】
パターンは、SOMニューラルネットワーク、特に、「コホネンの自己組織化マップ」(「コホネンの特徴マップ」)によって生成される。SOMの詳細については、たとえば、Kohonen, T., "The Self-Organizing Map", Proceedings of the IEEE, 78(9), 1464-1480, 1990;Kohonen, T., Somervuo, P., "Self -Organizing Maps of Symbol Strings",Neurocomputing, 21(1-3), 19-30, 1998;Kaski, S., Honkela, T., Lagus, K., Kohonen, T., "Websom-Self -Organizing Maps of Document Collections", Neurocomputing, 21(1-3), 101-117, 1998;Merkl , D., "Text Classification with Self -Organizing Maps: Some Lessons Learned", Neurocomputing, 21(1-3), 61-77, 1998;Vesanto, J., Alhoniemi, E., "Clustering of the Self-Organizing Map", IEEE Transactions on Neural Networks, 11(3), 586-600, 2000;Poelzlbauer G., Dittenbach M., Rauber A.,"Advanced Visualization of Self-Organizing Maps with Vector Fields", IEEE Transactions on Neural Networks 19, 911-922, 2006が参照され、これらは参照により本明細書中に含まれる。
【0019】
SOMによって生成されたパターンは、その後、テキストドキュメントの第2の(トレーニング)集合からのキーワード列を、パターン認識のために第2の(目標)ニューラルネットワークに供給されるパターン列に変換するために用いられる。パターン認識はニューラルネットワークの強みの1つである。各パターンはキーワードの固有の意味(meaning)を表し、パターン列はキーワードの文脈上の意味(meaning)を表すことから、第2のドキュメントの集合におけるキーワードの意味(semantics)は、第1のドキュメントの集合の文脈でのキーワードの固有の意味(meaning)を参照して(そしてその背景を前にして)、目標ニューラルネットワークによって分析される。結果として、目標ニューラルネットワークはテキストの意味(semantics)を効率的かつ有意に分析することができる。
【0020】
本発明の方法および装置はあらゆる種類の目標ニューラルネットワークのトレーニングに適している。好ましい分野は階層的で(少なくとも部分的に)再帰的なニューラルネットワーク、特に、自己連想記憶理論(MPF)または階層的一時記憶(HTM)型のニューラルネットワークである。MPFおよびHTMの理論および実施の詳細は、たとえば、Hawkins, J., George, D., Niemasik, J., "Sequence Memory for Prediction, Inference and Behaviour", Philosophical Transactions of the Royal Society of London, Series B, Biological Sciences, 364(1521), 1203-9, 2009;Starzyk, J. A., He, H., "Spatio-Temporal Memories for Machine Learning: A Long-Term Memory Organization", IEEE Transactions on Neural Networks, 20(5), 768-80, 2009;Numenta, Inc., "Hierarchical Temporal Memory Including HTM Cortical Learning Algorithms", Whitepaper of Numenta, Inc., Version 0.2.1, September 12, 2011;Rodriguez A., Whitson J., Granger R., "Derivation and Analysis of Basic Computational Operations of Thalamocortical Circuits", Journal of Cognitive Neuroscience, 16:5, 856-877, 2004;Rodriguez, R. J., Cannady, J. A., "Towards a Hierarchical Temporal Memory Based Self-Managed Dynamic Trust Replication Mechanism in Cognitive Mobile Ad-hoc Networks", Proceedings of the 10th WSEAS international conference on artificial intelligence, knowledge engineering and data bases, 2011や、特許(出願)US2007/0276774A1、US2008/0059389A1、US7739208B2、US7937342B2、US2011/0225108Al、US8037010B2およびUS8103603B2が参照され、これらの論文および特許文献の開示は本明細書中に参照により含まれる。
【0021】
MPFおよびHTM型ニューラルネットワークは、入力パターンストリームの階層的な時系列表現を保存し、テキストの時間的(time-spanning)で、階層的な意味(semantics)を把握するのに特に適している。異なる階層の層にあるノード(ニューロン)は、それ自体、キーワードの階層的抽象化(分類)を表す。分類(抽象化)は、入力が階層の下から上に供給される際の、このようなネットワークの本来的作用原則であり、予測(具体化)は入力が階層の上から下に供給される際の本来的作用原則である。
【0022】
本発明の他の態様では、キーワードの全体の分類(抽象化、カテゴリ)を表すノードの概念が、分類装置のノード出力に割り当てられる予測機械として変換機械を構築するために用いられる。
【0023】
本発明の別の態様では、複数の第2のドキュメントを用いて、トレーニングパターンストリームに変換して、第2のドキュメントの特定の集合における第2のニューラルネットワークをトレーニングすることができる。
【0024】
本発明の他の実施形態では、第2のドキュメントは複雑性の低い順にソートされ、第2のニューラルネットワークのトレーニングの際には、パターンの個別の列がそれぞれ形成され、変換される第2のドキュメントのソート順で、パターンの個別の列が第2のニューラルネットワークに供給される。これは第2のニューラルネットワークのより高速なトレーニングにつながる。
【0025】
本発明の他の別の態様では、第2のドキュメントの複雑性は、第2のドキュメント中の異なるキーワードの数、第2のドキュメント中の平均文長、第2のドキュメント中の第1の集合の1つ以上のキーワードの頻度、第1の集合または別のテキストコーパス中の第2のドキュメントの1つ以上のキーワードの頻度の1つ以上に基づいて確認される。
【0026】
本発明は、添付図面を参照してより詳細に説明される。
【図面の簡単な説明】
【0027】
図1】本発明の方法の概略フローチャートを示し、これには、本発明にかかる、第1および第2のニューラルネットワーク、パターン辞書、ならびに、分類、予測および変換機械のブロック図が含まれている。
図2図1の第1のニューラルネットワークへの入力ベクトルとしての第1のドキュメントの集合のためのベクトル処理段のフローチャートである。
図3図1の第1のニューラルネットワークの出力として形成された自己組織化マップ(SOM)の例を示す。
図4図1のパターン辞書を形成する、ベクトル処理段およびSOMからの入力を受け取る、逆インデックスのフローチャートである。
図5】SOM内の2つの異なるキーワードのためのパターン例を用いた逆インデックスSOM表現を示す。
図6】ストップワード(非キーワード)のためのいくつかの所定のパターンの例を示す。
図7図1の第2のドキュメントの第2の集合のためのキーワード列抽出段のフローチャートを示す。
図8】第2の集合の第2のドキュメントのための任意選択的なドキュメントソート段の結果を示す。
図9図1のパターン列へのキーワード列の変換のステップのフローチャートを示す。
図10図1の第2のニューラルネットワークとして用いられるMPFの階層的ノード構造の例を示す。
【発明を実施するための形態】
【0028】
全体の外観として、図1は、第1のテキストドキュメント3の第1の集合2を用いて第1のニューラルネットワーク4をトレーニングする、意味的テキスト処理方法および装置を示す。第1のニューラルネットワーク4は自己組織化マップ(SOM)型であり、自己組織化マップ(SOM)5を形成する。SOM5から、第1のドキュメントの集合2に存在するキーワード7を表すパターン6が、逆インデックス段8によって形成され、パターン辞書に入れられる。
【0029】
パターン辞書9は、第2のドキュメント13の第2の集合12から抽出されたキーワード列11をパターン列14に変換するために、変換段10で用いられる。パターン列14を用いて、第2のニューラルネットワーク15がトレーニングされる。第2のニューラルネットワーク15は好ましくは(必須ではなく)、自己連想記憶理論(memory prediction framework:MPF)または階層的一時記憶(hierarchical temporal memory:HTM)型である。トレーニングされた第2のニューラルネットワーク15は、その後、パターン辞書9を用いて変換されたテキストを意味的に分類するか(経路16参照)、または、パターン辞書9を用いて変換されたテキストを意味的に予測する(経路17参照)。トレーニングされた第2のニューラルネットワーク15の別の任意選択的用途は、階層マッピングであり(経路18参照)、これは、第2のニューラルネットワーク15に構成上類似するが、第2のニューラルネットワーク15とは異なる言語でトレーニングされた、任意選択的な第3のニューラルネットワーク19へのマッピングである。したがって、ノードマッピング18は、第1の言語ネットワーク15のノード15’と、第2の言語ネットワーク19の意味的ノード19’との間の意味的な一致に対応する。
【0030】
図1に示される要素の処理と機能は、図2〜10を参照してより詳細に記載されている。
【0031】
図2は、第1のドキュメント3の第1の集合2についてインデックスを作成し、ベクトル化する事前処理およびベクトル化段ステップ20を示す。ステップ20において、第1のニューラルネットワーク(SOM)4の入力層23に用いられる入力トレーニングベクトルまたは行列(テーブル)22として、第1の集合2から入力ベクトル21の列が生成される。当業者に知られているように、SOMニューラルネットワーク4は通常、ニューロン(ノード)の入力層23と出力層24の2つの層のみを有しており、これらは、結合25によって相互結合されており、その重みは重み行列によって表すことができる。SOMニューラルネットワークは非監視学習アルゴリズムによってトレーニング可能であり、ここで、重み付け行列の重みは、入力ベクトルに自己適合化され、2次元の(またはより多次元の)マップ5における出力層24のノードの空間関係が考慮されつつ、入力層23のノードが出力層24のノードに特定的にマッピングされる。これにより、入力ベクトル21がその類似性に関してクラスタ化されたマップ5が得られ、よって、非常に類似した入力ベクトル21を含むマップ5内の領域26が得られる。SOMニューラルネットワークの詳細については、上述の参考文献を参照されたい。
【0032】
その中の第1の集合2および第1のドキュメント3は、各ドキュメント3が例えば1〜10、1〜20、1〜100、1〜1000以上、好ましくは約250〜500のキーワード7を意味的文脈中に含む、数および精度たとえば個別のドキュメント3の長さであるように選択される。第1のドキュメント3は、たとえば、キーワード7の他に、通常ストップワード、ここでは非キーワードと呼ぶ、ほぼ意味的関連性のないワード(たとえば「a」、「the」など)を含む。
【0033】
集合2中のドキュメント3の数は、キーワード7に関する意味的文脈の代表的コーパスが得られるよう選択され、例えば数千または数百万のドキュメント3である。例示的実施形態では、それぞれ約250〜500のキーワード7を含む約1,000,000のドキュメント3が第1のドキュメントの集合2として用いられる。
【0034】
ドキュメント3の長さ(キーワード数)は、全体の集合2にわたってほぼ一定であるべきであり、キーワード7は、集合2中の複数のドキュメント3にわたって均一にばらばらに分散されているべきであり、各ドキュメント3はキーワード7の良好な多様性を有しているべきである。
【0035】
キーワード7は、たとえばワードの語根(主要語)であり、したがって、たとえば、単数形および複数形(cat/cats)または異なる動詞の形態(go/going)についてただ1つのキーワード7が考慮される。キーワード7は特定のワードの形態および/またはワードの語根の両方であってもよい。ストップワードなどの、意味のあるキーワードの構築できないワードを除いた後、各ドキュメント3はキーワード7の「ワード嚢」と考えることができる。
【0036】
実際の実施形態では、適切な第1の集合2はたとえば百科事典たとえば、Wikipedia(商標)プロジェクトの「クリエイティブコモンズ帰属ライセンス」または「GNUフリードキュメンテーションライセンス」に従って得られるWikipedia(商標)の記事から生成される。このような百科事典の記事またはエントリは、たとえば、それぞれ、章、段落などに従って完全に均一な長さのドキュメント3に分解され、これにより、各ドキュメント3は意味的な(semantic)、すなわち、意味のある(meaningful)文脈でのキーワードを含む。
【0037】
ベクトル21を生成するため、全体の集合2に存在する全てのキーワード7のインデックスが生成され、行列(テーブル)22の列の項目27として横方向に展開される。逆に、全体の集合2の全てのドキュメント3のドキュメント識別(「id」)は、行列22の行の項目28として縦方向に展開される。したがって、特定のドキュメント3中の特定のキーワード7の各存在に対して、フラグまたはバイナリ「1」が行列22の各セルに入れられる。すなわち、行列22中、1つのドキュメント3についての横方向の一列は規格化された「キーワード存在」ベクトル21を表し、特定のキーワード位置(列の位置)のバイナリ「1」は、このキーワード7がこのドキュメント3の「ワード嚢」に含まれていることを示し、バイナリ「0」がこのドキュメント3中にこのキーワード7が存在しないことを示している。あるいは、他には、行列22中の各列は、特定のキーワード7についての、キーワード7を含むバイナリ「1」が付された全てのドキュメント3を示す。
【0038】
入力ベクトル21、すなわち、ドキュメント3およびそのキーワード内容を表す行列22の列は、次いで、SOMニューラルネットワーク4の入力層23に連続的に供給され、これをトレーニングする。これは、第1の集合、たとえば、1,000,000の第1のドキュメント3が用いられる場合には、1,000,000のベクトル入力のトレーニング試行が第1のニューラルネットワーク4に供給されることを意味する。
【0039】
トレーニング試行の結果として、SOMニューラルネットワーク4の出力層24がマップ5を形成し、これにおいて、ドキュメント3(ベクトル21)は、類似性によってクラスタ化されたマップ5の個々の点(「ピクセル」)X/Xにマッピングされる。図3は、マップ5の例を示す。各マップ点X/Y、X/Y、…、X/Y、…、0に対して、キーワード7の嚢を含む1つ以上のドキュメント3がマッピングされる。ドキュメント3(ベクトル21)は、たとえば行の項目28からのそのドキュメントidによって、マップ5中で識別される。このSOMクラスタ化処理によって、たとえばそのキーワードの80%または90%が一致する非常に類似したキーワード7を含む異なるドキュメント3が、相互に近い空間関係でマッピングされ、これがマップ5における意味的「領域」26、26、26、26などを形成する。
【0040】
次いで、図4の逆インデックス段8において、キーワードインデックス27からの所定キーワード7のための行列22に基づいて、当該キーワード7を含む全てのこれらのドキュメント3が識別される。これは、たとえば、行列22中の所定キーワード7の特定の列中のすべてのバイナリ「1」を検索し、行の項目28に記載されたドキュメント3のidを検索することにより容易に行える。
【0041】
所定キーワード7を含むと確認されたこれらのドキュメント3について、特定のドキュメントidを参照する全てのマップ点X/Yがマップ5から決定される。このマップ点の集合{X/Y}が、パターン6を表す。パターン6は、所定キーワード7が第1の集合2中に現れる意味的文脈を表している。パターン6中の点X/Yの空間的(すなわち、2次元的またはより多次元的)分布は、キーワード7が第1の集合2に存在する文脈での、その特定の意味的領域26、26、…を反映する。
【0042】
パターン6は、たとえば、バイナリマップ31(図4参照)として符号化され、1つのドキュメントの集まりたとえば第1の集合2におけるキーワード7の意味的意味(semantic meaning)のバイナリ「フィンガプリント」または「フットプリント」とみなすこともできる。第1の集合2が特定の言語における非常に多様な、意味のある(meaningful)テキストを含む場合、パターン6はキーワード7の高い意味的重要性がある。
【0043】
パターン6の空間解像度はSOMニューラルネットワーク4および/またはマップ5の空間解像度以下であってよい。後者の空間解像度は、必要な分析パフォーマンスに応じて選択可能である。たとえば、マップ5は、数百万のマップ点X/Y、たとえば、1000×1000の点からなり、パターン6は高精度について同じ解像度であってもよく、または、比較的低いメモリ要件のために比較的粗い解像度であってもよい。
【0044】
図5は、わかりやすいように、2つの異なるパターン(黒い点で示される)をマップ5に重ねた例を示す。この例では、領域26、26、26、26は意味的分類、たとえば、「捕食者」、「ネコ属」、「私のペット」および「イヌ属」でもって手動でラベル付与されている。これは例示に過ぎない。このようなラベル付与は本願の方法処理およびアルゴリズムの正確な機能のために必ずしも必要なものではなく、それにはマップ点X/Yの空間SOM分布が必要とされるのみである。
【0045】
図5の左に示される画像において、キーワード「猫」が現れるすべてのドキュメント3が点で示されている。図5の右に示される画像において、キーワード「犬」を含むすべてのドキュメント3が点で示されている。「猫」のドキュメントが主として、領域26(「私のペット」)および26(「ネコ属」)に分けられ(すなわちクラスタ化され)、「犬」のドキュメント3は、主として領域26(「私のペット」)および26(「イヌ属」)にクラスタ化されることが容易に見て取れる。
【0046】
図1に戻り、第1の集合2中に存在する各キーワード7について、各パターン6は、二方向マッピングの形態、すなわち、1つのキーワード7とそのパターン6とが関連づけられて、パターン辞書9に保存される。パターン辞書9は、図1の方法およびシステム1の最初の中間産物を構成する。パターン辞書9は、コンピュータ読み取り可能な媒体、たとえば、データキャリアたとえば、ハードディスク、CD−ROM、DVD、メモリチップ、インターネットサーバ、インターネット上のクラウドストレージに保存(「実現」)される。
【0047】
パターン辞書9の生成には、第1のニューラルネットワーク4のトレーニングおよびマップ5の逆インデックスのための膨大な処理能力が用いられる場合がある。したがって、パターン辞書9は、好ましくは一度事前計算され、その後に、図1の処理および機械の別の段およびモジュールにおいて繰り返し用いられる。
【0048】
たとえば用途特定的および/または言語特定的に選択される第1のドキュメント3の異なる複数の第1の集合2に基づいて、たとえば異なる複数のパターン辞書9が事前計算され、コンピュータ読み取り可能な媒体上で、その後の段を実施し、以下でより詳細に記載される、その後の処理のモジュールおよび機械を実行するものに対して頒布される。
【0049】
その後の段およびモジュールにおいて、第2のニューラルネットワーク15が、第2のドキュメント13の第2の集合に基づいて、意味的テキスト処理のためにトレーニングされる。第2の集合12は第1の集合2と同一であって良いが、実際には第2の集合12は、第1の集合2の部分集合を含むか、または、実際に全く異なる用途特定的な第2のドキュメント13を含む。たとえば、第1の集合2は膨大な数の総合的な(「百科事典的な」)ドキュメント3を含む一方で、第2の集合12は、たとえば、意味的クエリ(キーワード)拡張によって検索され、意味的分類によって分類もしくはソートされ、または、意味的変換によって変換される必要のある、ユーザドキュメント13の用途特定的ユーザデータの集合であってよい。パターン辞書9は、キーワード7の一般的な意味的意味(semantic meaning)に関する背景的な意味的知識を反映し、一方、第2のニューラルネットワーク15は、ユーザドキュメント13のユーザデータ集合12の詳細な分析を実行する。
【0050】
ユーザドキュメント13は、たとえば、製品データベース、ウェブページ、特許文書、医療記録、または、第2のニューラルネットワーク15によって分析されるべきあらゆる種類のデータの集まりからのレコードである。第2の集合12の1つの前提条件は、第1の集合2と同じ言語で記述されていることであり、そうでなければ、パターン辞書9は第2の集合12に対して意味のある使用ができないからである。さらに、好ましくは(必須ではなく)、第2の集合12の第2のドキュメント13に存在するキーワード7は、第1の集合2におけるキーワード7の集合全体、すなわち、インデックス27内に含まれており、第2の集合12のキーワード7はパターン辞書9中に列記されており、検索可能である。
【0051】
パターン辞書9において、ストップワードまたは非キーワードは、無視されるか、または、図6に示されるような予め定めたまたは予め構成された符号パターンとして組み入れられる。
【0052】
第2のニューラルネットワーク15のトレーニングのため、第1の段32において、キーワード7の列11が第2の集合12から抽出される。図1、7、8は、この抽出段を詳細に示す。基本的に、1つのみまたはいくつかの第2のドキュメント13が、通常の読み取り順33で、連続的に、ワード毎、行毎、段落毎、章毎、ドキュメント毎に読み取られる場合には、これで充分である。ストップワードまたは非キーワードは、スキップされ(または図6に記載されるように個別に処理され)、結果はキーワード7の1つの列11である。しかし、好ましくは、第2の集合12は、複数の第2のドキュメント13に分割され、キーワード7の1つ列11が1つのドキュメント13に対して生成される。列11はその後、第2のニューラルネットワーク15に対するトレーニング入力として、(たとえば、元となったドキュメント13の順序で)用いられる。
【0053】
第2のニューラルネットワーク15のトレーニングは、ドキュメント13および/または列11の任意選択的なソートが抽出段32で行われる場合に、加速できる。この任意選択的なソートのため、処理34において、「複雑性因子」CompFが第2の集合12の各ドキュメント13について計算される。複雑性因子CompFはドキュメント13の以下のパラメタの1つ以上に基づいて計算可能である:
−ドキュメント13における異なるキーワード7の数;
−ドキュメント13における文および段落の平均ワード数;
−ドキュメント13における1つ以上のキーワード7、たとえば、第1の集合2の全てのキーワード7の頻度または多様性;
−第1の集合2全体、または、口語的言語の別のテキストコーパスを表すもの、たとえば新聞のコレクションにおけるドキュメント13の1つ以上のキーワード7、たとえば、全てのキーワード7の頻度。
【0054】
その後、抽出段32において、ドキュメント13は複雑性因子CompFの低い順でソート(ランク付け)されてもよい(図8参照)。このようにして、第2のニューラルネットワーク15は、複雑性が増大するように列11が供給され、たとえば、キーワード7の多様性が低い基本的なまたは簡単な列11が最初に用いられ、複雑な意味的および言語的構造を有する列11が最後に第2のニューラルネットワーク15のトレーニングのために用いられる。
【0055】
第2のニューラルネットワーク15に供給される前に、キーワード7の列11はパターン辞書9に基づいて、変換段10において変換される。列11内の各キーワード7は、パターン辞書9において検索され、関連づけされたパターン6が検索され、結果がパターン6の列14であり、各ドキュメント13に対して1つのパターン列14である。各パターン列14は、第1のドキュメント集合2の包括的な意味的文脈におけるドキュメント13内のキーワード7の意味的文脈を表すパターン6の時間列または「ムービークリップ」とみなすことができる。
【0056】
簡単な実施形態では、パターン6のただ1つの長い列14を、第2のニューラルネットワーク15のトレーニングに用いることで充分である。好ましくは、多数のパターン列14(「複数列の列」)が用いられ、各パターン列14は第2のニューラルネットワーク15のためのタイムライン化されたトレーニングベクトル(行列)を表す。図9は、キーワード列11をパターン列14に変換する変換段10の例を示す。
【0057】
トレーニング段(図1の矢印35)において、第2のニューラルネットワーク15には、パターン6および時間にわたるその列を学習するように、パターン列14が連続的に供給される。最初に述べたように、パターンの時系列処理に適合された全ての種類のニューラルネットワークを用いてよく、たとえば、スライド窓を用いるフォードフォワードパターン処理ニューラルネットワークを用いてもよい。代替的にかつ好ましくは、再帰的または少なくとも部分的に再帰的なニューラルネットワークを、遅延ループの有無に関わらず、時間列、たとえば、自己相関または自動相関ニューラルネットワークを学習および記憶するために用いることができる。
【0058】
有利な実施形態では、第2のニューラルネットワーク15は、階層の上層は階層の下層よりも少ないノード(ニューロン)を含んでいるという点で同様に階層的である。図10は、このような階層的ネットワークの例を示し、特に、時間的列の学習のための、横方向(層内、図1参照)および縦方向(層間)のフィードバック結合を含む自己連想記憶理論(MPF)型を示す。このようなMPFアーキテクチャの好ましい形態は、階層的一時記憶(HTM)型のニューラルネットワークである。MPFおよびHTMニューラルネットワークの理論および実施の詳細は、上に挙げた論文に記載されており、その開示は本明細書中に参照により含まれる。
【0059】
MPFおよびHTMネットワークは、(トレーニングされた構成において)、階層の下層におけるニューロン(ノード)の発火パターンの抽象化(分類)を表す階層においてニューロン(ノード)を展開する。特に「行状の」副層構造のノード間の、トレーニングされた再帰的(フィードバック)層内および層間結合を用いることにより、これにより、発火パターンの時間ストリーム全体の時間挙動がモデル化される。このようにして、MPFおよびHTMネットワークは、パターンのストリームを学習、記憶および分類し、パターン列を認識しかつ過去のパターン列からありうる将来のパターンを予測することができる。
【0060】
ニューラルネットワーク15がパターン列14でトレーニングされると、新たなパターンまたは新たなパターン列14がネットワーク15の下層階層レベルにおいて「分類」入力への新たな入力として用いられ、上層階層レベルにおけるノードの出力からのパターンとして意味的分類/抽象化を得ることができる(経路16を参照);あるいは、新たなパターン6または新たなパターン列14が上層階層レベルにおける「予測」入力に供給され、予測されたパターン(意味的予測)が階層の下層レベルから得られる(経路17を参照)。
【0061】
図1からわかるように、パターン辞書9は、経路16、17の両方において用いられ、キーワード7の任意の新たな「クエリ」列を「クエリ」列14に変換し、「結果得られる」分類または予測キーワード7にニューラルネットワーク15の出力パターンを変換する。
【0062】
したがって、分類経路16は、ネットワーク15の入力インタフェースおよび出力インタフェースにおいてパターン辞書9を用いて、トレーニングされたニューラルネットワーク15によって、クエリテキストを分類するために用いられる。経路17は、クエリテキストからキーワードを予測し、たとえば、クエリキーワードフレーズをさらに、ニューラルネットワーク15の入力および出力インタフェースの両方においてパターン辞書9を用いて、意味的にクエリフレーズと一致する(予測される)キーワード7に「拡張」するために用いられる。
【0063】
トレーニングされたニューラルネットワーク15の別の使用が、図1の破線で示されている。ニューラルネットワーク15がトレーニングされたものとは異なる言語のドキュメント3、13の集合2、12を用いてトレーニングされた第3のニューラルネットワーク19が、(ネットワーク15、19内の対応する分類ノード15’、19’が識別可能である限り)、第2のネットワーク15に対してノード的にマッピングされている。第3のネットワーク19の入力38および出力39に、第3のネットワーク19の言語でドキュメント2から生成された別のパターン辞書が用いられる。このようにして、2つの言語間の意味的変換が、2つのトレーニングされたMPFまたはHTMネットワーク15、19の意味的マッピングによって得られうる。
【0064】
本発明について2次元のマップ5およびパターン6を参照して説明したが、第1のニューラルネットワーク4は3次元またはより多次元のマップ5を生成してもよく、したがって、パターン辞書9内に3次元またはより多次元のパターン6を得て、続いて、3次元またはより多次元のパターン列14および3次元またはより多次元において働く第2および第3のニューラルネットワーク15、19を得ても良い。
【0065】
本発明は実施例として詳細に説明した特定の実施形態に限定されず、添付の特許請求の範囲に含まれる、すべての変形、修正およびこれらの組み合わせを含む。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10