(57)【特許請求の範囲】
【請求項１】
複数の用語の内の任意の二つの用語間の距離であって、同じクラスに属するテキストに当該二つの用語が現れる傾向がある場合に、当該二つの用語が意味的に類似しているほど小さくなるような距離を記憶する距離記憶手段と、
前記複数の用語の重みを含み、テキストを表す重みベクトルにおける、前記複数の用語の各々の重みを、当該重みベクトルにおける各用語と各他の用語間の距離、及び、各他の用語の重みに基づいて調整する調整手段と、
を備え、
前記調整手段は、用語間の距離から前記複数の用語についての共分散行列を計算し、当該共分散行列を用いて、最大事後確率推定に基づいて、前記重みベクトルから前記複数の用語の各々の潜在的な重みを推定することにより、前記重みベクトルの各用語の重みを調整し、
前記推定することは、前記複数の用語の各々の潜在的な重みを、前記複数の用語のサブセットであって、当該用語とサブセットの用語の各々との間の距離が、当該用語とサブセット以外の用語間の距離より小さくなるようなサブセットに限定した前記共分散行列を用いて、推定される、
情報処理システム。
【請求項２】
さらに、前記任意の二つの用語間の距離を、ローカルな単語ウィンドウに関するコンテキスト情報とトピックに関するコンテキスト情報の内の少なくとも一つを含む特徴ベクトルであって、当該二つの用語間の特徴ベクトル間の距離に基づいて計算する、距離計算手段を備える、
請求項１に記載の情報処理システム。
【請求項３】
前記距離計算手段は、同じクラスに属するテキストに前記二つの用語が現れる傾向がある場合には当該二つの用語間の距離がより小さくなるように、当該二つの用語間の距離を修正する、
請求項２に記載の情報処理システム。
【請求項４】
複数の用語の内の任意の二つの用語間の距離であって、同じクラスに属するテキストに当該二つの用語が現れる傾向がある場合に、当該二つの用語が意味的に類似しているほど小さくなるような距離を記憶する距離記憶手段から、前記複数の用語の重みを含み、テキストを表す重みベクトルにおける各用語と他の用語間の距離を取得し、
前記重みベクトルにおける前記複数の用語の各々の重みを、当該重みベクトルにおける各用語と各他の用語間の距離、及び、各他の用語の重みに基づいて調整することを備え、
前記調整することは、用語間の距離から前記複数の用語についての共分散行列を計算し、当該共分散行列を用いて、最大事後確率推定に基づいて、前記重みベクトルから前記複数の用語の各々の潜在的な重みを推定することにより、前記重みベクトルの各用語の重みを調整し、
前記推定することは、前記複数の用語の各々の潜在的な重みを、前記複数の用語のサブセットであって、当該用語とサブセットの用語の各々との間の距離が、当該用語とサブセット以外の用語間の距離より小さくなるようなサブセットに限定した前記共分散行列を用いて、推定する、
情報処理方法。
【請求項５】
さらに、ローカルな単語ウィンドウに関するコンテキスト情報とトピックに関するコンテキスト情報の内の少なくとも一つを含む特徴ベクトルであって、任意の二つの用語間の特徴ベクトル間の距離に基づいて、当該二つの用語間の距離を計算する、
請求項４に記載の情報処理方法。
【請求項６】
前記計算において、同じクラスに属するテキストに前記二つの用語が現れる傾向がある場合には当該二つの用語間の距離がより小さくなるように、当該二つの用語間の距離を修正する、
請求項５に記載の情報処理方法。
【請求項７】
コンピュータに、
複数の用語の内の任意の二つの用語間の距離であって、同じクラスに属するテキストに当該二つの用語が現れる傾向がある場合に、当該二つの用語が意味的に類似しているほど小さくなるような距離を記憶する距離記憶手段から、前記複数の用語の重みを含み、テキストを表す重みベクトルにおける各用語と他の用語間の距離を取得し、
前記重みベクトルにおける前記複数の用語の各々の重みを、当該重みベクトルにおける各用語と各他の用語間の距離、及び、各他の用語の重みに基づいて調整することを備え、
前記調整することは、用語間の距離から前記複数の用語についての共分散行列を計算し、当該共分散行列を用いて、最大事後確率推定に基づいて、前記重みベクトルから前記複数の用語の各々の潜在的な重みを推定することにより、前記重みベクトルの各用語の重みを調整し、
前記推定することは、前記複数の用語の各々の潜在的な重みを、前記複数の用語のサブセットであって、当該用語とサブセットの用語の各々との間の距離が、当該用語とサブセット以外の用語間の距離より小さくなるようなサブセットに限定した前記共分散行列を用いて、推定する、
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理方法、及び、コンピュータにより読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
テキスト分類やクラスタリングのための最も効果的なベクタ表現の一つとして、テキスト文書のＢＯＷ（bag-of-words）表現が知られている。ＢＯＷ表現では、ｎを語彙（ボキャブラリ）中の単語数とした場合、各単語がｎ次元の重みベクトルの次元に相当する。重みベクトルのｉ番目の次元は、語彙のｉ番目（ｉ＝１，．．．，ｎ）の単語の重みを表す。単語の重みには、テキスト文書に単語が出現した回数（頻度）やｔｆ−ｉｄ（Term Frequency、Inverse Document Frequency）のような他の重みが用いられる。
【０００３】
しかしながら、ＢＯＷ表現の主要な欠点として、単語間の意味的な関係性を表せないことが挙げられる。例えば、単語「park」を含み「meadow」を含んでいないテキストは、実際には、単語「meadow」を含み「park」を含んでいないテキストと類似している可能性がある。しかしながら、ＢＯＷ表現では、「meadow」と「park」を同義語と考えることはできず、「I love playing soccer in the park.」と「I like playing in the meadows.」のような二つのテキストが類似していることを検出できない。
【０００４】
この問題に対する一つの解決方法は、非特許文献１に記載されているように、例えば、ＬＳＩ（Latent-Semantic-Indexing）やＬＤＡ（Latent Dirichlet Allocation）を用いて、テキスト表現をより低次元の意味的空間に写像することである。しかしながら、これらの方法では、既知である、単語の類似性情報を用いることができない。
【０００５】
単語の類似性情報を用いることができる他の解決方法として、非特許文献２には、ＢＯＣ（bag-of-clusters）表現が開示されている。ＢＯＣ表現では、与えられた単語の類似性を単語のクラスタの生成に用い、テキストをクラスタにより表現する。
【０００６】
図１０は、ＢＯＣ表現の例を示す図である。図１０の例では、語彙｛「love」，「play」，「soccer」，「park」，「baseball」，「meadows」｝に対して、四つのクラスタＣ１：＝｛「meadows」，「park」｝、Ｃ２：＝｛「soccer」，「baseball」｝、Ｃ３：＝｛「play」｝、及び、Ｃ４：＝｛「love」｝が生成されている。テキスト「I love playing soccer in the park」に対しては、ＢＯＣ表現｛ｆ＿Ｃ１＝１，ｆ＿Ｃ２＝１，ｆ＿Ｃ３＝１，ｆ＿Ｃ４＝１｝が生成される。ここで、ｆ＿Ｃｘは、クラスタｘに対する重みを示す。また、テキスト「I love playing baseball in the meadows」に対しても、同じＢＯＣ表現が生成される。ＢＯＣ表現は、図１０に示すように、グループ内のすべての単語が同じ重みを有するＢＯＷモデルとみなすことができる。
【０００７】
なお、関連技術として、特許文献１には、文書データが属するスタイルに基づき、文書データについての単語の発生頻度を抑える方法が開示されている。特許文献２には、評価表現を含む文、含まない文の特徴データを用いて、文中において欠落している評価表現を補完する技術が開示されている。特許文献３には、連続マハラノビスＤＰ（Dynamic Programming）を用いた音声認識方法が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１４−１７０３７７号公報
【特許文献２】特開２０１０−１４６１７１号公報
【特許文献３】特開平０４−２３３５９９号公報
【非特許文献】
【０００９】
【非特許文献１】P. D. Turney、P. Pantel、"From Frequency to Meaning: Vector Space Models of Semantics"、Journal of Artificial Intelligence Research、Vol. 37、pp.141-188、2010年
【非特許文献２】R. Bekkerman、R. El-Yaniv、N. Tishby、Y. Winter、"Distributional Word Clusters vs. Words for Text Categorization"、Journal of Machine Learning Research、Vol. 3、pp.1183-1208、2003年
【非特許文献３】C. E. Rasmussen, C. K. I. Williams、"Gaussian Processes for Machine Learning"、the MIT Press、2006年
【非特許文献４】"word2vec"、Google Inc.、[online]、[2015年4月10日検索]、インターネット<https://code.google.com/p/word2vec/>
【非特許文献５】P. Soucy、Guy W. Mineau、"Beyond TFIDF Weighting for Text Categorization in the Vector Space Model"、Proceedings of the 19th International Joint Conference on Artificial Intelligence (IJCAI 2005)、pp.1130-1135、2005年
【発明の概要】
【発明が解決しようとする課題】
【００１０】
非特許文献２に記載されているＢＯＣ表現では、テキスト文書によっては、単語のクラスタにより、表現が粗くなるという問題がある。このため、ＢＯＣ表現では、テキストの分類やクラスタリングに必要な情報が失われてしまう。
【００１１】
図１１は、ＢＯＣ表現の他の例を示す図である。図１１の例では、クラスタＳＰＯＲＴ：＝｛「tennis」，「baseball」，「sports」，「soccer」｝が生成されている。ここで、テキスト「After school, it is recommended that children should do some sports, like tennis or baseball. ...」に対して、一般的なスポーツについてのテキストであることを示すＢＯＣ表現が生成される。この場合、クラスタＳＰＯＲＴを用いたＢＯＣ表現は適切といえる。しかしながら、他のテキスト「In order to play tennis one needs among others, a racket and a net. ...」のように、一般的なスポーツよりむしろテニスについてのテキストであっても、単語「tennis」がクラスタＳＰＯＲＴに属するため、同じＢＯＣ表現が生成される。この場合、このテキストがテニスについてのテキストであるという情報が失われてしまう。
【００１２】
本発明の目的は、上述の課題を解決し、テキストに関連するものの当該テキストには明示的に出現しない単語の重みを増やすことができる、情報処理システム、情報処理方法、及び、コンピュータにより読み取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【００１３】
本発明の一態様における情報処理システムは、複数の用語の内の任意の二つの用語間の距離であって、二つの用語が意味的に類似しているほど小さくなるような距離を記憶する距離記憶手段と、前記複数の用語の重みを含み、テキストを表す重みベクトルにおける、前記複数の用語の各々の重みを、当該重みベクトルにおける各用語と他の用語間の距離、及び、当該他の用語の重みに基づいて調整する調整手段と、を備える。
【００１４】
本発明の一態様における情報処理方法は、複数の用語の内の任意の二つの用語間の距離であって、二つの用語が意味的に類似しているほど小さくなるような距離を記憶する距離記憶手段から、前記複数の用語の重みを含み、テキストを表す重みベクトルにおける各用語と他の用語間の距離を取得し、前記重みベクトルにおける前記複数の用語の各々の重みを、当該重みベクトルにおける各用語と他の用語間の距離、及び、当該他の用語の重みに基づいて調整する。
【００１５】
本発明の一態様におけるコンピュータが読み取り可能な記憶媒体は、コンピュータに、複数の用語の内の任意の二つの用語間の距離であって、二つの用語が意味的に類似しているほど小さくなるような距離を記憶する距離記憶手段から、前記複数の用語の重みを含み、テキストを表す重みベクトルにおける各用語と他の用語間の距離を取得し、前記重みベクトルにおける前記複数の用語の各々の重みを、当該重みベクトルにおける各用語と他の用語間の距離、及び、当該他の用語の重みに基づいて調整する、処理を実行させるプログラムを格納する。
【発明の効果】
【００１６】
本発明の効果は、テキストを表す重みベクトルにおいて、テキストに関連するものの当該テキストには明示的に出現しない単語の重みを増やすことができることである。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施形態の特徴的な構成を示すブロック図である。
【図２】本発明の第１の実施形態における、調整システム１００の構成を示すブロック図である。
【図３】本発明の第１の実施形態における、調整システム１００がコンピュータ上で実現された場合の、調整システム１００の構成を示すブロック図である。
【図４】本発明の第１の実施形態における、調整システム１００の処理を示すフローチャートである。
【図５】本発明の第１の実施形態における、重み調整の例を示す図である。
【図６】本発明の第１の実施形態における、重み調整の他の例を示す図である。
【図７】本発明の第２の実施形態における、ｔｆ−ｉｄｆ単語重みの例を示す図である。
【図８】本発明の第２の実施形態における、ｔｆ−ｉｄｆ単語重みの他の例を示す図である。
【図９】本発明の第３の実施形態における、調整システム１００の構成を示すブロック図である。
【図１０】ＢＯＣ表現の例を示す図である。
【図１１】ＢＯＣ表現の他の例を示す図である。
【発明を実施するための形態】
【００１８】
（第１の実施形態）
本発明の第１の実施形態について説明する。
【００１９】
はじめに、本発明の第１の実施形態の構成について説明する。図２は、本発明の第１の実施形態における、調整システム１００の構成を示すブロック図である。調整システム１００は、本発明の情報処理システムの一実施形態である。図２を参照すると、本発明の第１の実施形態における調整システム１００は、距離記憶部１１０、調整部１２０、及び、分類部１３０を含む。
【００２０】
距離記憶部１１０は、複数の単語（語彙）の内、任意の二つの単語（または用語とも記載する）間の距離を記憶する。ここで、二つの単語間の距離は、二つの用語が意味的に類似しているほど小さくなる。距離は、ユーザにより、例えば単語類似性マトリクスとして、距離記憶部１１０に予め設定される。
【００２１】
二つの単語間の距離には、二つの単語のそれぞれを表す特徴ベクトル間のマハラノビス距離や他の任意の距離を用いることができる。単語の特徴ベクトルには、Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇが用いられてもよい。Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇは、例えば、非特許文献４に記載されているｗｏｒｄ２ｖｅｃにより計算される。また、単語の特徴ベクトルには、各単語についてのトピック分布ｐ（ｔｏｐｉｃ｜ｗ）が用いられてもよい。トピック分布は、例えば、ＬＤＡを用いて計算される。
【００２２】
また、単語の特徴ベクトルは、ローカルな単語ウィンドウに関するコンテキスト情報、及び／または、グローバルなコンテキスト（トピックに関するコンテキスト）情報を含んでいてもよい。単語の特徴ベクトルが、ローカルな単語ウィンドウに関するコンテキスト情報を含む場合、二つの単語が同じ単語に囲まれる傾向にあれば、当該二つの単語間の距離は小さくなる。単語の特徴ベクトルが、グローバルなコンテキスト情報を含む場合、二つの単語が同じテキストで出現する傾向にあれば、当該二つの単語間の距離は小さくなる。
【００２３】
調整部１２０は、分類対象の各テキストの重みベクトルを取得する。重みベクトルは、上述のＢＯＷに相当し、テキストを表す。重みベクトルは、複数の単語（語彙）の重みを含む。
【００２４】
調整部１２０は、重みベクトルの複数の単語（語彙）の各々の重みを、各単語と他の単語間の距離、及び、当該他の単語の重みに基づいて調整する。ここで、調整部１２０は、各単語の重みを、例えば、各単語と他の単語間の距離が小さくなり、他の単語の重みが大きくなるほど、増えるように調整する。
【００２５】
分類部１３０は、調整済みの重みベクトル（調整済みＢＯＷ表現）を用いて、テキスト分類を行う。
【００２６】
なお、調整システム１００はＣＰＵ（central processing unit）とプログラムを記憶する記憶媒体を含み、当該プログラムに基づく制御に従って動作する、コンピュータでもよい。図３は、本発明の第１の実施形態における、調整システム１００がコンピュータ上で実現された場合の、調整システム１００の構成を示すブロック図である。
【００２７】
図３を参照すると、調整システム１００は、ＣＰＵ１０１、記憶デバイス１０２（記憶媒体）、通信デバイス１０３、キーボード等の入力デバイス１０４、及び、ディスプレイ等の出力デバイス１０５を含む。ＣＰＵ１０１は、調整部１２０、及び、分類部１３０を実現するためのコンピュータプログラムを実行する。記憶デバイス１０２は、距離記憶部１１０の情報を記憶する。通信デバイス１０３は、他の装置から、テキストと当該テキストの重みベクトルを受信し、当該テキストに対するテキスト分類の結果を当該装置へ送信してもよい。入力デバイス１０４は、ユーザからテキスト分類の指示を受け付けてもよい。出力デバイス１０５は、テキスト分類の結果をユーザに出力（表示）してもよい。
【００２８】
また、調整システム１００の各構成要素は、独立した論理回路で実現されてもよい。また、調整システム１００の構成要素は、有線または無線回線で相互に接続された複数の装置に、それぞれ配置されてもよい。
【００２９】
次に、本発明の第１の実施形態における調整システム１００の動作について説明する。
【００３０】
図４は、本発明の第１の実施形態における、調整システム１００の処理を示すフローチャートである。調整部１２０は、分類対象のテキストの重みベクトルを取得する（ステップＳ１０１）。調整部１２０は、距離記憶部１１０から、重みベクトルにおける各単語と他の単語間の距離を読み出し、重みベクトルにおける各単語の重みを、各単語と他の単語間の距離、及び、当該他の単語の重みに基づいて調整する（ステップＳ１０２）。分類部１３０は、調整済みの重みベクトルを用いて、テキスト分類を行う（ステップＳ１０３）。
【００３１】
図５は、本発明の第１の実施形態における、重み調整の例を示す図である。例えば、調整部１２０は、テキスト「After school, it is recommended that children should do some sports, like tennis or baseball. ...」について、図５に示すような、元の重みベクトルを取得する。当該元の重みベクトルでは、単語「soccer」、「racket」、「net」、及び、「court」がテキストに無いため、これらの単語の重みに０が設定されている。ここで、単語「sports」、「baseball」、「soccer」、及び、「tennis」が互いに近い（意味的に類似している）と仮定する。また、単語「tennis」、「racket」、「net」、及び、「court」も互いに近いと仮定する。この場合、単語「soccer」は、重みが「１」である三つの単語（「sports」、「baseball」、及び、「tennis」）に近いため、当該単語の重みは「０．９」まで増やされる。一方、単語「racket」、「net」、及び、「court」は、重みが「１」である一つの単語「tennis」だけに近いため、これらの単語の重みは０近くに保たれる。
【００３２】
図６は、本発明の第１の実施形態における、重み調整の他の例を示す図である。例えば、調整部１２０は、テキスト「In order to play tennis one needs among other, a racket and a net. ...」について、図６に示すような、他の元の重みベクトルを取得する。当該元の重みベクトルでは、単語「school」、「children」、「sports」、「baseball」、「soccer」、及び、「court」がテキストに無いため、これらの単語の重みに０が設定されている。この場合、単語「court」は、重みが「１」である三つの単語（「tennis」、「racket」、及び、「net」）に近いため、当該単語の重みは「０．９」まで増やされる。一方、単語「sports」、「baseball」、及び、「soccer」は、重みが「１」である一つの単語「tennis」だけに近いため、これらの単語の重みは０近くに保たれる。
【００３３】
このように、図５における重みベクトルは、「sports」に関連する単語の重みが増えるように調整され、図６における重みベクトルは、「tennis」に関連する単語の重みが増えるように調整される。
【００３４】
分類部１３０は、調整済みの重みベクトル（調整済みＢＯＷ表現）を用いて、これらのテキストに対して正確な分類結果を得ることができる。
【００３５】
次に、本発明の第１の実施形態の特徴的な構成を説明する。
【００３６】
図１は、本発明の第１の実施形態の特徴的な構成を示すブロック図である。
【００３７】
図１を参照すると、調整システム１００（情報処理システム）は、距離記憶部１１０、及び、調整部１２０を含む。距離記憶部１１０は、複数の用語の内の任意の二つの用語間の距離を記憶する。二つの用語間の距離は、二つの用語が意味的に類似しているほど小さくなる。調整部１２０は、複数の用語の重みを含み、テキストを表す重みベクトルにおける、複数の用語の各々の重みを、当該重みベクトルにおける各用語と他の用語間の距離、及び、当該他の用語の重みに基づいて調整する。
【００３８】
本発明の第１の実施形態によれば、テキストを表す重みベクトルにおいて、テキストに関連するものの当該テキストには明示的に出現しない単語の重みを増やすことができる。その理由は、調整部１２０が、テキストについての重みベクトルの、各用語と他の用語間の距離、及び、当該他の用語の重みに基づいて、各用語の重みを調整するためである。これにより、テキストについて、０の要素がより少なく、意味的情報をより多く含む、より豊かなＢＯＷ表現が得られる。その結果、このような豊かなＢＯＷ表現を、テキストの分類やクラスタリング用いることができる。
【００３９】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。本発明の第２の実施形態では、単語の真の重みは観測されず、ノイズによって分散される潜在的な変数であると仮定する。また、重みベクトルは、ノイズモデルに基づいて調整（推定）されると仮定する。
【００４０】
距離記憶部１１０は、ｉ番目（ｉ＝１，．．．，ｎ）の単語とｊ番目（ｊ＝１，．．．，ｎ）の単語との間の距離ｒｉ，ｊを記憶する。
【００４１】
調整部１２０は、距離記憶部１１０に記憶された単語間の距離から、すべての単語についての共分散行列を計算する。共分散行列は、任意の二つの単語間の相関関係についてのすべての情報を含む。
【００４２】
調整部１２０は、共分散行列を、単語重みの調整に用いる。ここで、真であるが観測されない（潜在的な）単語重みが、共分散行列を有する多変数ガウスから生成されていると仮定する。しかしながら、真の重みは、ノイズにより乱されている。乱された単語重みは、入力された重みベクトルの単語重みとして実際に観測される。
【００４３】
ノイズとしては、加法性、及び、乗法性といった、２種類のノイズが考えられる。
【００４４】
はじめに、加法性ノイズを仮定した、単語重みの調整について説明する。以下、関数ｆは、ｉ番目の単語ｅｉ（ｉ＝１，．．．，ｎ）の特徴ベクトルから重みｆ（ｅｉ）への写像を示す。重みｆ（ｅｉ）をｆｉ（ｉ＝１，．．．，ｎ）とも記載する。ここで、関数ｆが、固定平均ｍｉ（ｉ＝１，．．．，ｎ）、共分散関数ｋ（ｅｉ，ｅj）のガウスプロセス（ＧＰ（Gaussian Process））に従って分布すると仮定する。
【００４５】
共分散関数には、例えば、数１のような、二乗指数共分散関数を用いることができる。
【００４６】
【数１】
0006468364.tif 000002
【００４７】
ここで、ｌは、非特許文献３に記載されている、特徴的長さスケールであり、ｒｉ，ｊは数２式により定義される。
【００４８】
【数２】
0006468364.tif 000003
【００４９】
このような共分散関数を選択することにより、二つの類似した単語が類似した単語重みを持つようにできる。これを確認するために、ｋ（ｅｉ，ｅj）が共分散Ｅ［（ｆ（ｅｉ）−ｍ）（ｆ（ｅｊ）−ｍ）］に等しいと考える。また、類似した単語については、対応する単語の特徴ベクトルが類似し、距離ｒｉ，ｊが小さいと仮定する。この場合、ｋ（ｅｉ，ｅj）は大きい。
【００５０】
さらに、真の観測されない（潜在的な）単語重みｆｉが等方性ガウスノイズにより乱され、これにより観測される単語重みｙｉ（ｉ＝１，．．．，ｎ）を生じると仮定する。この場合、生成モデルは数３式のように表される。
【００５１】
【数３】
0006468364.tif 000004
【００５２】
ここで、ノイズεは、平均０、分散σ2の等方性ガウスノイズＮ（０，σ２）からサンプリングされる。
【００５３】
単語重みｙｉを有するテキストが与えられた場合、真の単語重みｆｉは、図４式により表される最大事後確率推定（ＭＡＰ（maximum-a-posteriori）推定）により推定できる。
【００５４】
【数４】
0006468364.tif 000005
【００５５】
非特許文献３を参照すると、ｐ（ｆｉ｜ｙ１，．．．，ｙｎ）が、数５式で表されるモードを有するガウス分布であることは、容易に示される。
【００５６】
【数５】
0006468364.tif 000006
【００５７】
ここで、ｍ（ｍはｎ次元ベクトル）は、ＧＰの平均である。ｍには、すべてのｉ（ｉ＝１，．．．，ｎ）について、数６式で表される、テキスト内のすべての単語重みの経験的な平均重みが設定される。ｍｉは各ｉについて同じ値を示す。
【００５８】
【数６】
0006468364.tif 000007
【００５９】
ここで、ベクトルｙ（ｙはｎ次元ベクトル）は、観測される単語重みｙ１，．．．，ｙｎを含む。共分散行列Ｋ（Ｋは、要素Ｋｉ，ｊ（ｉ＝１，．．．，ｎ，ｊ＝１，．．．，ｎ）を有するｎ×ｎ次元の行列）は、数７式により定義される。
【００６０】
【数７】
0006468364.tif 000008
【００６１】
ここで、ベクトルＫｉ（Ｋｉはｎ次元ベクトル、ｉ＝１，．．．，ｎ）は、行列Ｋのｉ番目の列ベクトルを示す。
【００６２】
調整部１２０は、数５式により潜在的な単語重みを推定することにより、調整済みの単語重みを取得する。
【００６３】
数５式の平滑化ベクトルＫｉ（Ｋ＋σ２Ｉ）−１は、すべてのテキストについて一定であるため、予め計算できる。分散σ２も、１．０や２．０のような所定値に設定できる。なお、分散σ２は、交差検証や訓練データに対しての周辺尤度の最大化により決定してもよい。
【００６４】
観測される単語重みｙｉには、いくつかの選択肢がある。例えば、テキスト分類では、単語重みとして、ｔｆ−ｉｄｆや、非特許文献５で定義されているＣｏｎｆＷｅｉｇｈｔのような監視される重みを用いることができる。
【００６５】
ここで、図５、及び、図６に示したテキストを用いた具体例を説明する。
【００６６】
図７は、本発明の第２の実施形態における、ｔｆ−ｉｄｆ単語重みの例を示す図である。ここでは、説明のため、単語の特徴ベクトル（Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇ）が１次元であると仮定する。Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇの値（１次元の値）が横軸、ｔｆ−ｉｄｆ単語重みの値（観測された重み、及び、潜在的な（観測されない）真の重み）が縦軸に示されている。
【００６７】
図７の例では、テキストに出現する単語「tennis」、「school」、「baseball」、及び、「sport」について、観測された単語重みが高い。また、テキストに出現しない単語「soccer」、「racket」、「net」、及び、「court」について、観測された単語重みが０である。単語「tennis」の特徴ベクトルは、「court」、「net」、及び、「soccer」のような、関連する他の単語の特徴ベクトルに近い。単語「soccer」は、観測された単語重みが高い単語「tennis」及び「baseball」に近いため、図７に示すように、単語「soccer」の真の単語重みの推定値は、観測された単語重みより高くなる。
【００６８】
図８は、本発明の第２の実施形態における、ｔｆ−ｉｄｆ単語重みの他の例を示す図である。
【００６９】
図８の例では、テキストに出現する単語「tennis」、「racket」、及び、「net」について、観測された単語重みが高い。また、テキストに出現しない単語「school」、「sports」、「baseball」、「soccer」、及び、「court」について、観測された単語重みが０である。この例では、単語「baseball」について、観測された単語重みが０であるため、図８に示すように、単語「soccer」の真の単語重みの推定値は、観測された単語重みよりやや高いだけである。一方、単語「court」は、観測された単語重みが高い単語「tennis」、「net」、及び、「racket」に近い。したがって、単語「court」の真の単語重みの推定値は、観測された単語重みよりかなり高くなる。
【００７０】
次に、乗法性ノイズを仮定した、単語重みの調整について説明する。この場合、観測される単語重みｙｉは、数８式により表される。
【００７１】
【数８】
0006468364.tif 000009
【００７２】
ここで、ノイズ１θ（ｆｉ）はｆｉに比例する確率で１、そうでない場合０である。このモデルは、テキストの、典型的な疎のＢＯＷ表現を明示的に説明する。関数ｆが、数９式により表される、平均重みベクトルｍ、共分散行列Ｋの多変量正規分布に従って分布すると仮定する。
【００７３】
【数９】
0006468364.tif 000010
【００７４】
ｆｉのＭＡＰ推定を見つけるための分析的な解は存在しないが、例えば、ギブスサンプリング（Gibbs sampling）を用いることで、ｆｉの近似値を見つけることができる。
【００７５】
本発明の第２の実施形態においても、重みベクトルにおいて、テキストに関連する単語の重みを増やすことができる。その理由は、調整部１２０が、単語間の距離に基づき共分散行列を計算し、当該計算した共分散行列とノイズモデルに基づき各単語の潜在的な重みを推定することによって、重みベクトルの各単語の重みを調整するためである。
【００７６】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。本発明の第３の実施形態では、単語間の距離が単語の特徴ベクトルに基づき計算される。
【００７７】
図９は、本発明の第３の実施形態における、調整システム１００の構成を示すブロック図である。図９を参照すると、本発明の第３の実施形態の調整システム１００は、さらに、距離計算部１４０を含む。距離計算部１４０は、単語の特徴ベクトルに基づき、単語間の距離を計算し、距離記憶部１１０に保存する。
【００７８】
本発明の第３の実施形態では、距離ｒｉ，ｊは、数１０式により定義される。
【００７９】
【数１０】
0006468364.tif 000011
【００８０】
ここで、Ｂは、ｎ×ｎ次元の特徴重み行列、αｉ，ｊは、クラス特異性に対して、ｉ番目の単語とｊ番目の単語間の距離を補正するための係数である。
【００８１】
はじめに、特徴重み行列Ｂについて説明する。
【００８２】
最も簡単な設定では、特徴重み行列Ｂには、単に、単位行列が設定される。
【００８３】
上述のように、単語の特徴ベクトルとして、例えば、Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇやトピック分布を用いることができる。また、ｄ１、及び、ｄ２をそれぞれＷｏｒｄ  Ｅｍｂｅｄｄｉｎｇの次元、及び、トピックの数とした場合に、Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇとトピック分布を、（ｄ１＋ｄ２）次元の特徴ベクトルとして組み合わせてもよい。例えば、Ｗｏｒｄ  Ｅｍｂｅｄｄｉｎｇの情報がトピック分布よりも重要であれば、適切な行列Ｂをさらに指定することが有益である。この場合、行列は、非特許文献３に記載されているように、交差検証や訓練データに対しての尤度の最大化により学習してもよい。
【００８４】
次に、補正係数αｉ，ｊについて説明する。
【００８５】
二つの単語のローカルコンテキストまたはトピックコンテキストがかなり類似していたとしても、二つの単語は異なるクラスに現れるかもしれない。この場合、それらの意味的な類似性は小さい。本発明の第３の実施形態では、一部のテキストが、既にクラスに割り当て済みであると仮定する。これは、特に、テキストについての最終的な表現（重みベクトル）が分類に使われるケースに相当する。例えば、最終的なタスクが「sport」に関するテキストか「politics」に関するテキストかの分類である場合、クラスに割り当て済みのテキストの訓練データセットを有していると仮定できる。
【００８６】
クラスが割り当てられて済みの二つの単語間の距離は、二つの単語と割り当てられたクラス間の相関を用いて補正される。簡単のため、二つのクラスＡ、Ｂだけがあると仮定する。この場合、クラスＡとｉ番目の単語間の相関係数ρＡ，ｉが、−１から１の範囲で計算される。補正係数αｉ，ｊは、相関係数ρＡ，ｉと相関係数ρＡ，ｊを用いて、数１１式により表される。
【００８７】
【数１１】
0006468364.tif 000012
【００８８】
相関係数ρＡ，ｉには、例えば、ピアソンの相関係数を用いることができる。テキストがクラスＡに属するかどうかを示すランダム変数をＡ、ｉ番目の単語がテキストに（１回以上）出現するかどうかを示すランダム変数をｉで表す。また、ラベルが付与された訓練データの数をＮｌで表す。さらに、テキストｔがクラスＡに属するかどうかを示す変数をＡｔ（Ａｔは０または１）で表す。同様に、ｉ番目の単語が（１回以上）テキストｔに出現するかどうかを示す変数をｉｔ（ｉｔは０または１）で表す。この場合、相関係数ρＡ，ｉは、数１２式により表される。
【００８９】
【数１２】
0006468364.tif 000013
【００９０】
距離計算部１４０は、単語間の距離を、数１０式、数１１式、及び、数１２式を用いて計算する。
【００９１】
本発明の第３の実施形態によれば、単語間の距離に基づいて調整された重みベクトルを用いて、より正確な分類結果を得ることができる。その理由は、距離計算部１４０が、二つの単語が同じクラスに属するテキストに出現する傾向があれば、当該二つの単語間の距離が小さくなるように、距離を補正するためである。
【００９２】
（第４の実施形態）
次に、本発明の第４の実施形態について説明する。本発明の第４の実施形態では、第２の実施形態で述べたガウスプロセス（ＧＰ）モデルの近似を用いる。
【００９３】
第２の実施形態で示した行列（Ｋ＋σ２Ｉ）の逆行列の計算は、ｎ＞１０４では困難になる。しかしながら、語彙の大きさは、実際には、１０５語程度、あるいはそれ以上と、さらに大きくなることがある。第４の実施形態では、語彙における固定したｉと単語ｗについて、共分散ｋ（ｅｉ，ｅｗ）が最大になるように、語彙から単語ｗ１，．．．，ｗｓ（ｓはｎに比べて十分小さい）が選択され、数１３式により表される近似が用いられる。
【００９４】
【数１３】
0006468364.tif 000014
【００９５】
ここで、語彙における単語ｗは、ｉ番目の単語と各単語間の距離（｜ｅｉ−ｅｗ｜）でソートされており、先頭のｓ個の単語が取得される。取得した単語ｗ１，．．．，ｗｓ（ｉ番目の単語についての、語彙のサブセット）をｓｕｂ（ｉ）で表し、単語ｓｕｂ（ｉ）に制限されたベクトル、行列をｙｓｕｂ（ｉ）、ｍｓｕｂ（ｉ）、Ｋｉ、ｓｕｂ（ｉ）、Ｋｓｕｂ（ｉ）で表すとする。この場合、近似は、数１４式で表される。
【００９６】
【数１４】
0006468364.tif 000015
【００９７】
数１５式で定義されるｂｉＴを用いることにより、近似は、数１６式で表される。
【００９８】
【数１５】
0006468364.tif 000016
【００９９】
【数１６】
0006468364.tif 000017
【０１００】
なお、計算コストの高いｂｉＴの計算は、訓練フェーズで事前に実行しておくことができる。さらに、行列（Ｋｓｕｂ（ｉ）＋σ２Ｉ）の逆行列の計算の代わりに、コレスキー分解を用いることができる。この場合、行列（Ｋｓｕｂ（ｉ）＋σ２Ｉ）を、Ｌをコレスキー因子としてＫｓｕｂ（ｉ）＋σ２Ｉ＝ＬＬＴに分解し、一次方程式ＬＬＴｂｉＴ＝Ｋｉ、ｓｕｂ（ｉ）を、後退代入により解くことができる。コレスキー分解の利用は、非特許文献３に示されている逆行列の計算に比べて、一般的に、より高速で、数値的により安定している。
【０１０１】
調整部１２０は、重みベクトルの各単語の重みを、数１６式に従って調整する。
【０１０２】
また、訓練では、このような近似を用いることで、計算の複雑さが、Ｏ（ｎ３）からＯ（ｎｓ３）へ低下し、空間的な複雑さが、Ｏ（ｎ２）からＯ（ｓ２）へ低下する。また、テスト、すなわち、与えられた新たなテキストｙ１，．．．，ｙｎに対するｆ１，．．．，ｆｎの計算では、計算の複雑さが、Ｏ（ｎ２）からＯ（ｓ２）へ低下する。
【０１０３】
本発明の第４の実施形態によれば、単語の重み調整における計算上の複雑性を低減できる。その理由は、調整部１２０が、重みが調整された単語に近い単語のサブセットに制限された共分散行列を用いて、重みベクトルの各単語の重みを調整するためである。
【０１０４】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【０１０５】
本発明は、テキストの分類やクラスタリングを行うシステムに適用できる。特に、本発明により、二つのテキストが意味的に類似しているが、共通の単語がわずかな場合であっても、当該二つのテキストが類似していることを検出できる。これにより、分類対象のテキストがツィートのように小さい場合であっても、高い精度でテキストを分類できる。
【符号の説明】
【０１０６】
１００    調整システム
１０１    ＣＰＵ
１０２    記憶デバイス
１０３    通信デバイス
１０４    入力デバイス
１０５    出力デバイス
１１０    距離記憶部
１２０    調整部
１３０    分類部
１４０    距離計算部
【図１】
0006468364.tif 000018
【図２】
0006468364.tif 000019
【図３】
0006468364.tif 000020
【図４】
0006468364.tif 000021
【図５】
0006468364.tif 000022
【図６】
0006468364.tif 000023
【図７】
0006468364.tif 000024
【図８】
0006468364.tif 000025
【図９】
0006468364.tif 000026
【図１０】
0006468364.tif 000027
【図１１】
0006468364.tif 000028