(57)【要約】【課題】  単語の意味をより反映した単語配置を実現できることを目的とする。また、概念ベースを生成し直さなくても、処理対象テキスト中の概念ベースに含まれていない単語に対し、適切な単語ベクトルを、短時間で推定することができることを目的とする。【解決手段】  文書集合中の部分集合としてのカテゴリの集合をとり、上記カテゴリ内の共起関係を反映させる。また、既に生成済みの概念ベース中に存在する単語のベクトル値を固定した上で、上記生成済の概念ベースに存在しない単語の最適なベクトル値を、処理対象テキストにおけるカテゴリ内の単語共起関係に基づいて、推定する。【選択図】  図１
2006113917.tif 000002
【特許請求の範囲】
【請求項１】
単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置装置において、
文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手段と；
任意のカテゴリｃと、上記形態素解析手段が得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手段と；
各異なり単語ｔに未知ベクトルＶｔを対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求め、メモリに記憶するベクトル付与手段と；
を有することを特徴とする単語配置装置。
【請求項２】
単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置装置において、
文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手段と；
任意のカテゴリｃと、上記形態素解析手段が得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手段と；
各異なり単語ｔを検索キーとして、単語と該単語の意味を表現するベクトルの対の集合が格納されているデータベースを検索し、検索された異なり単語ｔに、異なり単語ｔのベクトルＶｔを対応付け、メモリに記憶するデータベース検索手段と；
上記データベース検索手段で検索されなかった各異なり単語ｔ’に未知ベクトルＶｔ’を対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔ’を求め、メモリに記憶するベクトル付与手段と；
を有することを特徴とする単語配置装置。
【請求項３】
単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置方法において、
文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析工程と；
任意のカテゴリｃと、上記形態素解析工程で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出工程と；
各異なり単語ｔに未知ベクトルＶｔを対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求め、メモリに記憶するベクトル付与工程と；
を有することを特徴とする単語配置方法。
【請求項４】
単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置方法において、
文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析工程と；
任意のカテゴリｃと、上記形態素解析工程で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出工程と；
各異なり単語ｔを検索キーとして、単語と該単語の意味を表現するベクトルの対の集合が格納されているデータベースを検索し、検索された異なり単語ｔに、異なり単語ｔのベクトルＶｔを対応付け、メモリに記憶するデータベース検索工程と；
上記データベース検索工程で検索されなかった各異なり単語ｔ’に未知ベクトルＶｔ’を対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔ’を求め、メモリに記憶するベクトル付与工程と；
を有することを特徴とする単語配置方法。
【請求項５】
単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置するプログラムであって、
文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手順と；
任意のカテゴリｃと、上記形態素解析手順で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手順と；
各異なり単語ｔに未知ベクトルＶｔを対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求め、メモリに記憶するベクトル付与手順と；
をコンピュータに実行させるプログラム。
【請求項６】
単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置するプログラムであって、
文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手順と；
任意のカテゴリｃと、上記形態素解析手順で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手順と；
各異なり単語ｔを検索キーとして、単語と該単語の意味を表現するベクトルの対の集合が格納されているデータベースを検索し、検索された異なり単語ｔに、異なり単語ｔのベクトルＶｔを対応付け、メモリに記憶するデータベース検索手順と；
上記データベース検索手順で検索されなかった各異なり単語ｔ’に未知ベクトルＶｔ’を対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔ’を求め、メモリに記憶するベクトル付与手順と；
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置装置、単語配置方法および単語配置プログラムに関する。
【背景技術】
【０００２】
従来、ある動詞にある助詞で係る名詞の集合を、カテゴリととらえ、この情報に基づいて、名詞の集合を距離空間上に配置することが知られている。名詞ｔに未知ベクトルＶｔを対応付け、全名詞の平均ベクトルと、１カテゴリ内での全名詞の平均ベクトルとの距離の自乗に、上記カテゴリ内での名詞の出現回数の和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求めるという手法が知られている（たとえば、非特許文献１参照）。
【非特許文献１】冨浦洋一、田中省作、日高達著「共起データに基づく名詞のｎ次元空間への配置」情報処理学会研究報告、Ｖｏｌ．ＳＩＧ−ＮＬ  １５４、ｐ．７１−７６、２００３年３月６日
【発明の開示】
【発明が解決しようとする課題】
【０００３】
一般の単語集合を、同一文書または同一文書集合内に含まれている単語集合の情報に基づいて、距離空間上に配置する技術は、これまで知られていない。
【０００４】
また、非特許文献１の手法では、実質的に１階層のカテゴリ集合しか用いていず、包含関係にあるカテゴリ群が存在するような複数階層のカテゴリ集合を用いる概念はない。複数階層のカテゴリ集合を用いることにより、より単語の意味を反映した配置ができる可能性がある。
【０００５】
さらに、複数階層のカテゴリ集合において、上位の大カテゴリ内の単語は緩やかに関係しており、下位の小カテゴリ内の単語は強固に関係していると考えられ、カテゴリの階層毎の単語間の関係性を反映する機能が必要である。
【０００６】
一方、単語配置技術によって、ある文書集合から、上記文書集合に含まれる単語集合を距離空間上に配置することによって、単語と上記単語の意味を表現するベクトルとの対の集合が格納されているデータベース（以下、「概念ベース」と呼ぶ）を生成する。
【０００７】
概念ベースの例としては他に、特開平６−１０３３１５号公報に記載されている「類似性判別装置」や、特開平７−３０２２６５号公報に記載されている「類似性判別用データ精錬方法およびこの方法を実施する装置」で開示されているデータベースがある。
【０００８】
また、Ｄｅｅｒｗｅｓｔｅｒの論文（S.Deerwester, S.T.Dumais, G.W.Furnas, T.K.Landauer and R.Harshman, “Indexing by Latent Semantic Analysis”, Journal of the American Society for Information Science, pp.391-407, 1990）では、単語の文書における頻度を記録した単語・文書間の共起行列を特異値分解によって、次元数を縮退させた行列に変換しているが、この変換後の行列も、概念ベースの一例である。
【０００９】
Ｓｃｈｕｔｚｅの論文（H.Schutze, “Dimensions of Meaning”, Proceedings of Supercomputing '92, pp.786-796, 1992）では、コーパス中の単語間の共起頻度を記録した単語・単語間の共起行列を特異値分解によって次元数を縮退させた行列に変換しているが、この変換後の行列も概念ベースの一例である。
【００１０】
概念ベースを別のテキストの言語処理に使用する際、テキスト中の各単語に対し、当該単語で概念ベースを検索し、対応するベクトルを付与する。しかし、概念ベース中に存在していない単語については、ベクトルを割り当てることができず、ベクトルを利用した言語処理において、そのような単語は全く考慮されていない。
【００１１】
テキストの話題構造化等の言語処理で概念ベースを利用する際に、話題に特徴的な単語であっても、概念ベースに存在していない単語があると、精度の低下を招く。新語が、話題に特徴的な単語であることも多く、この新語が、概念ベースの生成時には存在しないので、概念ベース中に存在していないことも多い。
【００１２】
また、概念ベースを利用した検索において、入力した検索語であって、検索対象テキストには含まれるが、概念ベースには含まれていない検索語には、ベクトルが付与されず、検索において全く考慮されないので、精度の低下を招く。
【００１３】
どんなに数多くの単語を含む概念ベースを用意しても、概念ベース中に存在していない単語が処理対象テキスト中に出てくることは、避けられない。
【００１４】
処理対象テキストそのものから概念ベースを生成する方法が考えられるが、この方法を採用した場合、処理対象テキストの分量が多くないと、単語ベクトルは、上記単語の意味を的確に表していない可能性が高く、単語配置の精度の低下は避けられない。
【００１５】
また、概念ベースの生成用テキストと処理対象テキストとを連接して得られる新たなテキストから、概念ベースを生成し直し、処理対象テキスト中の全ての単語に、単語ベクトルを割り当てる方法も考えられるが、一般に、概念ベースの生成処理は長い時間がかかるので、この方法を採用した場合、処理対象テキストを処理する度に、概念ベースを生成し直すことは、時間がかかり過ぎるという問題がある。
【００１６】
本発明は、単語の意味をより反映した単語配置を実現できる単語配置装置、単語配置方法および単語配置プログラムを提供することを目的とするものである。
【００１７】
また、本発明は、概念ベースを生成し直さなくても、処理対象テキスト中の概念ベースに含まれていない単語に、適切な単語ベクトルを、短時間で推定することができる単語配置装置、単語配置方法および単語配置プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【００１８】
請求項１記載の発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置装置において、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手段と、任意のカテゴリｃと、上記形態素解析手段が得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手段と、各異なり単語ｔに未知ベクトルＶｔを対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求め、メモリに記憶するベクトル付与手段とを有することを特徴とする単語配置装置である。
【００１９】
請求項２記載の発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置装置において、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手段と、任意のカテゴリｃと、上記形態素解析手段が得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手段と、各異なり単語ｔを検索キーとして、単語と該単語の意味を表現するベクトルの対の集合が格納されているデータベースを検索し、検索された異なり単語ｔに、異なり単語ｔのベクトルＶｔを対応付け、メモリに記憶するデータベース検索手段と、上記データベース検索手段で検索されなかった各異なり単語ｔ’に未知ベクトルＶｔ’を対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔ’を求め、メモリに記憶するベクトル付与手段とを有することを特徴とする単語配置装置である。
【００２０】
請求項３記載の発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置方法において、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析工程と、任意のカテゴリｃと、上記形態素解析工程で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出工程と、各異なり単語ｔに未知ベクトルＶｔを対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求め、メモリに記憶するベクトル付与工程とを有することを特徴とする単語配置方法である。
【００２１】
請求項４記載の発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置する単語配置方法において、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析工程と、任意のカテゴリｃと、上記形態素解析工程で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出工程と、各異なり単語ｔを検索キーとして、単語と該単語の意味を表現するベクトルの対の集合が格納されているデータベースを検索し、検索された異なり単語ｔに、異なり単語ｔのベクトルＶｔを対応付け、メモリに記憶するデータベース検索工程と、上記データベース検索工程で検索されなかった各異なり単語ｔ’に未知ベクトルＶｔ’を対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔ’を求め、メモリに記憶するベクトル付与工程とを有することを特徴とする単語配置方法である。
【００２２】
請求項５記載の発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置するプログラムであって、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手順と、任意のカテゴリｃと、上記形態素解析手順で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手順と、各異なり単語ｔに未知ベクトルＶｔを対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔを求め、メモリに記憶するベクトル付与手順とをコンピュータに実行させるプログラムである。
【００２３】
請求項６記載の発明は、単語を、該単語の意味を表現するベクトルにマッピングすることにより、単語を距離空間上に配置するプログラムであって、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力し、上記文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する形態素解析手順と、任意のカテゴリｃと、上記形態素解析手順で得た異なり単語の集合中の任意の単語ｔに対し、カテゴリｃ内における単語ｔの出現回数ｎ（ｔ｜ｃ）に、カテゴリｃに対応する重みｗ（ｃ）を乗じたｚ（ｔ｜ｃ）：＝ｗ（ｃ）＊ｎ（ｔ｜ｃ）を、単語ｔのカテゴリｃ内での重みとし、単語ｔの全カテゴリにわたるｚ（ｔ｜ｃ）の和を、単語ｔの重みとして算出し、メモリに記憶する単語重み算出手順と、各異なり単語ｔを検索キーとして、単語と該単語の意味を表現するベクトルの対の集合が格納されているデータベースを検索し、検索された異なり単語ｔに、異なり単語ｔのベクトルＶｔを対応付け、メモリに記憶するデータベース検索手順と、上記データベース検索手順で検索されなかった各異なり単語ｔ’に未知ベクトルＶｔ’を対応付け、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリ内での異なり単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、未知ベクトルＶｔ’を求め、メモリに記憶するベクトル付与手順とをコンピュータに実行させるプログラムである。
【発明の効果】
【００２４】
上述のように、本発明は、一般の単語集合を、同一文書あるいは同一文書集合内に含まれる単語集合の情報を基に、距離空間上に配置する。
【００２５】
請求項１、３、５記載の発明によれば、文書集合中の任意の部分集合をカテゴリとして、上記カテゴリ内の共起関係を反映させることができるので、階層構造をなしているカテゴリ集合をとることによって、最も粒度の高い下位のカテゴリのみならず、上位のカテゴリの共起関係も反映させることができ、このために、下位のカテゴリだけ、または上位のカテゴリだけでは捉えきれない共起関係をともに反映させることができ、したがって、単語の意味を的確に反映した単語配置をすることができるという効果を奏する。
【００２６】
また、各カテゴリ毎に、単語の重みを調節できるので、たとえば、上位カテゴリ内の単語重みを小さくすることにより、上位カテゴリ内に共起する単語同士の距離を長くし、下位カテゴリ内の単語重みを大きくすることにより、下位カテゴリ内に共起する単語同士の距離を短くすることができる。このようにして、上位カテゴリ内の単語は緩やかに関係していて、下位カテゴリ内の単語は強固に関係しているという性質を反映した配置が可能となる。
【００２７】
また、請求項２、４、６記載の発明によれば、処理対象テキスト中の異なり単語で、既に生成済みの概念ベース中に存在する単語のベクトル値を固定した上で、上記生成済の概念ベースに存在しない単語の最適なベクトル値を、処理対象テキストにおけるカテゴリ内の単語共起関係に基づいて、推定するので、概念ベースを生成し直さずに、しかも短時間で、処理対象テキスト中の概念ベースに含まれない単語について、良質なベクトル値を推定することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２８】
発明を実施するための最良の形態は、以下の実施例である。
【実施例１】
【００２９】
図１は、本発明の実施例１である単語配置装置１００を示すブロック図である。
【００３０】
単語配置装置１００は、文書集合の部分集合としてのカテゴリの集合が付随した文書集合を入力する。
【００３１】
１つの文書であっても、文書集合と考えることができるので、１つの文書がカテゴリを構成すると考えることもできる。
【００３２】
文書の単位は、典型的には、内容を完結した１つのドキュメントである。
【００３３】
また、ドキュメント中の各段落を、文書として把握するようにしてもよく、この場合、ドキュメントは、段落の集合であるので、１つのドキュメントをカテゴリであると認識してもよい。ドキュメント中の各文を文書と考えてもよく、この場合、ドキュメント、段落も、文の集合であるで、それぞれをカテゴリと見なすことができる。
【００３４】
一般に、カテゴリ間には、包含関係が存在しうる。文とそれを含む段落、該段落を含むドキュメントの間には、包含関係がある。また、あるトピックに属するドキュメントの集合を、カテゴリとして設定することができる。
【００３５】
図３は、ドキュメントを文書相当とし、各文書が、上記文書に含まれる単語の集合として設定されていることを示す図である。
【００３６】
また、図３には、文書のカテゴリとして、「国産車」、「バイク」、「病気」、「栄養」が設定され、「国産車」、「バイク」を包含するカテゴリとして「車」が設定され、また、「病気」、「栄養」を包含するカテゴリとして「健康」が設定され、これらも文書集合である。
【００３７】
「車」、「健康」は、上位カテゴリであり、「国産車」、「バイク」、「病気」、「栄養」は、下位カテゴリである。このように、一般に、カテゴリ集合は、包含関係が存在し得る階層構造を形成している。
【００３８】
単語配置装置１００は、形態素解析手段１０と、単語重み算出手段２０と、ベクトル付与手段５０とを有する。
【００３９】
形態素解析手段１０は、文書集合を入力した後に、文書集合中の各文書を、形態素解析し、単語に分割し、異なり単語を得、メモリに記憶する手段である。ここで、自立語等の内容語のみを、異なり単語として残し、それ以外の語は削除する。
【００４０】
単語重み算出手段２０は、形態素解析手段１０が得た異なり単語の集合中の任意の単語の重みを算出し、メモリに記憶する。
【００４１】
形態素解析手段１０が得た異なり単語の集合を、Ｔ＝｛ｔ１，ｔ２，…，ｔｍ｝とする。また、カテゴリの集合をＣ＝｛ｃ１，ｃ２，…，ｃｎ｝とする。
【００４２】
カテゴリｃｊには、重みｗ（ｃｊ）（＞０）が対応付けられている。複数階層のカテゴリ集合において、上位カテゴリ内の単語は、緩やかに関係し、下位カテゴリ内の単語は、強固に関係していると考えられるので、上位カテゴリには小さい重みを、下位カテゴリには大きい重みを付ける。
【００４３】
任意のカテゴリｃｊ内で、任意の異なり単語ｔｉが出現する回数ｎ（ｔｉ｜ｃｊ）を、算出する。
【００４４】
カテゴリｃｊ内での異なり単語ｔｉの重みを、ｚ（ｔｉ｜ｃｊ）：＝ｗ（ｃｊ）＊ｎ（ｔｉ｜ｃｊ）として算出する。
【００４５】
また、異なり単語ｔｉの重みを、
【００４６】
【数１】
2006113917.tif 000003
として算出する。
【００４７】
ベクトル付与手段５０は、各異なり単語にベクトルを付与し、メモリに記憶する。
【００４８】
ベクトルの次元数を、ｋ（＜＜ｍ）とし、異なり単語ｔｉのベクトルを、ｖ（ｔｉ）＝（ｔｉ１，ｔｉ２，…，ｔｉｋ）とする。
【００４９】
任意のカテゴリｃｊ内での全異なり単語の重みの和
【００５０】
【数２】
2006113917.tif 000004
を算出する。
【００５１】
また、
【００５２】
【数３】
2006113917.tif 000005
を算出する。
【００５３】
全異なり単語の重み付平均ベクトルμ＝（μ１，μ２，…，μｋ）を
【００５４】
【数４】
2006113917.tif 000006
として算出する。
【００５５】
カテゴリｃｊ内での全異なり単語の重み付平均ベクトルμ（ｃｊ）を
【００５６】
【数５】
2006113917.tif 000007
として算出する。
【００５７】
一般に、以下の関係式が成り立つ。
【００５８】
【数６】
2006113917.tif 000008
上式の左辺を、「全変動」と呼び、右辺の第１項を、「クラスタ内変動」と呼び、第２項を、「クラスタ間変動」と呼ぶ。上記実施例では、カテゴリ内の単語間の距離が近くなるように単語を配置することを目指す。したがって、カテゴリ集合がクラスタ群として最適となるように、ｖ（ｔｉ）を定めなければならない。全変動に対するクラスタ内変動の割合が最小となるときに、カテゴリ集合はクラスタ群として最適となる。
【００５９】
単語を配置するに際して、単語間の相対的な位置のみが重要となるので、以下の制約条件１、２を設定する。
【００６０】
［制約条件１］  全異なり単語の重み付平均ベクトルを０ベクトルとする。
μｒ＝０  （１≦ｒ≦ｋ）
［制約条件２］  全異なり単語のベクトルの各成分の分散を１とし、異なる成分間の共分散を０とする。
【００６１】
【数７】
2006113917.tif 000009
但し、上記制約条件２において、異なり単語数が１である場合、σｒ２＝０（１≦ｒ≦ｋ）とする。
【００６２】
次に、カテゴリの重みｗ（ｃｊ）の効用について述べる。
【００６３】
カテゴリの重みｗ（ｃｊ）が大きくなると、クラスタ内変動内のｚ（ｔｉ｜ｃｊ）が大きくなり、クラスタ内変動を最小にしようとすると、
【００６４】
【数８】
2006113917.tif 000010
が小さくなる。逆に、ｗ（ｃｊ）が小さくなると、クラスタ内変動内のｚ（ｔｉ｜ｃｊ）が小さくなる。このとき、クラスタ内変動を最小にしようとすると、
【００６５】
【数９】
2006113917.tif 000011
を大きくしてでも、重みが相対的に大きいカテゴリｃｈの
【００６６】
【数１０】
2006113917.tif 000012
を小さくする。
【００６７】
上位カテゴリに小さい重みを付け、下位カテゴリに大きい重みを付けることによって、上位カテゴリ内に共起する単語同士の距離が長くなり、下位カテゴリ内に共起する単語同士の距離が短くなる。このようにして、上位カテゴリ内の単語は、緩やかに関係し、下位カテゴリ内の単語は、強固に関係しているという性質を反映して、配置することができる。
【００６８】
全変動に対するクラスタ内変動の割合が最小であることと、全変動に対するクラスタ間変動の割合が最大であることとは、同値である。すわなち、全異なり単語の重み付平均ベクトルと、１カテゴリ内での全異なり単語の重み付平均ベクトルとの距離の自乗に、上記カテゴリの単語重み和を乗じた値を、全カテゴリにわたって加算した値が、ベクトルの分散が一定という条件下で、最大となるように、各異なり単語ｔｉのベクトルｖ（ｔｉ）を求める。
【００６９】
これは、以下の手順によって求める。
【００７０】
【数１１】
2006113917.tif 000013
とし、
【００７１】
【数１２】
2006113917.tif 000014
と置いたときに、上記Ｍの固有値を、λ０，λ１，…，λｍ−１とし、それぞれに属する大きさ１の固有ベクトルを、ｅ０，ｅ１，…，ｅｍ−１とする。Ｍの固有値には、１が存在し、λ０＝１，λ１≧λ２≧…≧λｍ−１とする。
【００７２】
クラスタ間変動を最大にする
【００７３】
【数１３】
2006113917.tif 000015
は、Ｖ＝Δ１／２・［ｅ０，ｅ１，…，ｅｋ］
として求める。
【実施例２】
【００７４】
図２は、本発明の実施例２である単語配置装置２００を示すブロック図である。
【００７５】
データベース４０（以下、「概念ベース４０」と呼ぶ）は、ある文書集合から、単語と上記単語の意味を表現するベクトルとの対を格納している。
【００７６】
概念ベース４０生成用の文書集合とは異なる文書集合で、上記文書集合の部分集合としてのカテゴリの集合が付随しているものを入力する。
【００７７】
文書集合が入力された後に、形態素解析手段１０が、文書集合中の各文書を形態素解析し単語に分割する。
【００７８】
次に、単語重み算出手段２０が、形態素解析手段１０が得た異なり単語の集合中の任意の単語の重みを算出する。
【００７９】
実施例２における処理内容は、実施例１における上記処理内容と同様である。
【００８０】
次に、データベース検索手段３０が、各異なり単語ｔｉを検索キーとして、概念ベース４０を検索し、検索されたｔｉに、ｔｉのベクトル（ｔｉ１’，ｔｉ２’，…，ｔｉｋ’）を対応付ける。
【００８１】
次に、ベクトル付与手段５０は、データベース検索手段３０で検索されなかった各異なり単語にベクトルを、付与する。
【００８２】
ここで、ベクトルの次元数は、概念ベース４０中のベクトルの次元数と同じｋであるとする。
【００８３】
検索された異なり単語の集合を、｛ｔ１，ｔ２，…，ｔｐ｝とし、検索されなかった異なり単語の集合を、｛ｔｐ＋１，ｔｐ＋２，…，ｔｍ｝とする。以下の値を算出する。
【００８４】
【数１４】
2006113917.tif 000016
入力文書集合において、検索された全異なり単語のベクトルの異なる成分間の分散は、一般に０ではない。そこで、検索された全異なり単語の重み付平均ベクトルが０ベクトルとなり、全異なり単語のベクトルの各成分の分散が１となるように、検索された異なり単語ｔｉのベクトルｖ（ｔｉ）を、以下のように変換する。
【００８５】
【数１５】
2006113917.tif 000017
これによって、
【００８６】
【数１６】
2006113917.tif 000018
が成り立つ。
【００８７】
但し、σ１ｒ’＝０のときは、ｔｉｒ＝０（１≦ｉ≦ｐ），μ１ｒ＝０，σ１ｒ２＝０とする。
【００８８】
検索された異なり単語ｔｉのベクトルは、上記により導出したベクトルｖ（ｔｉ）とし、検索されなかった異なり単語ｔｉのベクトルは、未知ベクトルｖ（ｔｉ）：＝（ｔｉ１，ｔｉ２，…，ｔｉｋ）とした上で、以下の式を定義する。
【００８９】
【数１７】
2006113917.tif 000019
次の制約条件３、４の下で、クラスタ間変動
【００９０】
【数１８】
2006113917.tif 000020
が最大となる、検索されなかった異なり単語ｔｉのベクトルｖ（ｔｉ）を求める。
【００９１】
［制約条件３］  全異なり単語の重み付平均ベクトルを０ベクトルとする。
【００９２】
μｒ＝０（１≦ｒ≦ｋ）
［制約条件４］  全異なり単語のベクトルの各成分の分散を１とする。
【００９３】
【数１９】
2006113917.tif 000021
制約条件３、４と以下の制約条件３’、４’とは、互いに同値である。
【００９４】
［制約条件３’］  検索されなかった全異なり単語の重み付平均ベクトルを０ベクトルとする。
【００９５】
μ２ｒ＝０（１≦ｒ≦ｋ）
［制約条件４’］  検索されなかった全異なり単語のベクトルの各成分の分散を１とする。
【００９６】
σ２ｒ２＝１（１≦ｒ≦ｋ）
実際は、上記制約条件３’、４’の下で、クラスタ間変動
【００９７】
【数２０】
2006113917.tif 000022
が最大となる、検索されなかった異なり単語ｔｉのベクトルｖ（ｔｉ）を求める。σ１ｒ’＝０の場合でも、制約条件４’はσ２ｒ２＝１とする。また、検索されなかった異なり単語数が１の場合は、制約条件４’はσ２ｒ２＝１（１≦ｒ≦ｋ）とする。
【００９８】
制約条件３’、４’の下でクラスタ間変動
【００９９】
【数２１】
2006113917.tif 000023
を最大にする問題は、（ｍ−ｐ）＊ｋ個の変数の最適化問題であり、逐次的な数値計算手法によって、クラスタ間変動を最大にするｖ（ｔｉ）＝（ｔｉ１，ｔｉ２，…，ｔｉｋ）（ｐ＋１≦ｉ≦ｍ）を求める。
【０１００】
ここでは、制約条件が成分間で独立であり、クラスタ間変動の式は、各成分毎の値の和であるので、各成分毎に最大となる未知数を求めることによって、計算量を抑えることができる。
【０１０１】
なお、このうようにして求めたｖ（ｔｉ）＝（ｔｉ１，ｔｉ２，…，ｔｉｋ）（ｐ＋１≦ｉ≦ｍ）を、ｖ（ｔｉ）’＝（ｔｉ１’，ｔｉ２’，…，ｔｉｋ’）＝（σ１１’ｔｉ１＋μ１１’，σ１２’ｔｉ２＋μ１２’，…，σ１ｋ’ｔｉｋ＋μ１ｋ’）と変換した上で、検索されなかった異なり単語ｔｉと、そのベクトルｖ（ｔｉ）’とを、概念ベース４０に追加登録するようにしてもよい。但し、σ１ｒ’＝０の場合、ｔｉｒ’＝ｔｉｒ＋μ１ｒ’とする。
【０１０２】
さらに、このようにして更新した概念ベース４０を用い、新たな文書集合に対して、再び、実施例２のように、概念ベース４０中に含まれない異なり単語のベクトル値を導出・変換し、上記異なり単語と上記ベクトル値とを、概念ベース４０に追加登録するという処理を繰り返すようにしてもよい。
【０１０３】
実施例２において、検索された異なり単語のベクトル値を変換することなく、制約条件として、入力文書集合中の全異なり単語の重み付平均ベクトルを、検索された全異なり単語の重み付平均ベクトルとし、入力文書集合中の全異なり単語のベクトルの各成分の分散を、検索された全異なり単語のベクトルの上記成分の分散とした上で、検索されなかった異なり単語のベクトル値を導出するようにしてもよい。この場合、検索されなかった異なり単語とそのベクトル値とを、上記ベクトル値を変換することなく、そのまま概念ベース４０に追加登録できる。
【０１０４】
また、実施例２において、検索された異なり単語のベクトル値を変換することなく、制約条件として、検索されなかった全異なり単語の重み付平均ベクトルを０ベクトルとし、検索されなかった全異なり単語のベクトルの各成分の分散を１とした上で、検索されなかった異なり単語のベクトル値を導出するようにしてもよい。この場合も、検索されなかった異なり単語とそのベクトル値とを、上記ベクトル値を変換することなく、そのまま概念ベース４０に追加登録できる。
【０１０５】
また、上記実施例において、最終的に得られた単語ベクトル（概念ベース４０中のもの、または推定処理をして得られたもの）の長さをたとえば１に正規化するようにしてもよい。
【０１０６】
これまで述べた処理をプログラムとして構築し、当該プログラムを通信回線または、記憶媒体からインストールし、ＣＰＵ等の手段で実施するようにしてもよい。
【０１０７】
上記実施例では、一般の単語集合を、同一文書あるいは同一文書集合内に含まれる単語集合の情報を基に、距離空間上に配置する。
【０１０８】
文書集合中の任意の部分集合をカテゴリとして、該カテゴリ内の共起関係を反映させることができるので、階層構造をなしているカテゴリ集合をとることにより、最も粒度の高い下位のカテゴリのみならず、上位のカテゴリの共起関係も反映させることができる。このため、下位のカテゴリだけ、あるいは上位のカテゴリだけでは捉えきれない共起関係をともに反映させることができ、単語の意味を的確に反映した配置が可能となる。
【０１０９】
また、カテゴリ毎に、単語の重みを調節できるので、たとえば、上位カテゴリ内の単語重みを小さくすることによって、上位カテゴリ内に共起する単語同士の距離を長くし、下位カテゴリ内の単語重みを大きくすることによって、下位カテゴリ内に共起する単語同士の距離を短くすることができる。このようにして、上位カテゴリ内の単語は、緩やかに関係し、下位カテゴリ内の単語は、強固に関係しているという性質を反映させて配置することができる。
【０１１０】
また、上記実施例では、処理対象テキスト中の異なり単語で、既に生成済みの概念ベース中に存在する単語のベクトル値を固定した上で、存在しない単語の最適なベクトル値を、処理対象テキストにおけるカテゴリ内の単語共起関係に基づき推定する。これにより、概念ベースを新規に生成し直すことなく、短時間で、処理対象テキスト中の概念ベースに含まれない単語の良質なベクトル値を推定することが可能となる。
【産業上の利用可能性】
【０１１１】
本発明は、単語を、上記単語の意味を表現するベクトルにマッピングすることによって、単語を距離空間上に配置する技術に適用可能である。
【図面の簡単な説明】
【０１１２】
【図１】本発明の実施例１である単語配置装置１００を示すブロック図である。
【図２】本発明の実施例２である単語配置装置２００を示すブロック図である。
【図３】カテゴリ間の関係を説明するための図である。
【符号の説明】
【０１１３】
１０…形態素解析手段、
２０…単語重み算出手段、
３０…データベース検索手段、
４０…データベース（概念ベース）、
５０…ベクトル付与手段。
【図１】
2006113917.tif 000024
【図２】
2006113917.tif 000025
【図３】
2006113917.tif 000026