(57)【特許請求の範囲】
【請求項１】
テキストデータに対する複数のトピックの候補の適切さを指標値として表すトピック情報と、当該テキストデータとの関係を記述するトピックモデルを、テキストデータから得られる教師なし学習データを用いて学習する事前処理部と、
抽出対象の文字列である正例エンティティを含む前記テキストデータのトピックに対応して前記トピックモデルから抽出した正例トピック情報を前記正例エンティティの素性の少なくとも一部とし、抽出対象としない文字列である負例エンティティを含むテキストデータのトピックに対応して前記トピックモデルから抽出した負例トピック情報を前記負例エンティティの素性の少なくとも一部とするトピック情報抽出部と、
前記正例エンティティの素性と前記負例エンティティの素性とを教師あり学習データとした学習処理によって、任意のエンティティの素性を入力として当該エンティティが正例エンティティか負例エンティティかを識別するための情報を出力する関数である識別モデルを生成する識別学習部と、
テキストデータの集合から選択したテキストデータが含む文字列であるエンティティを対象エンティティとし、当該選択した前記テキストデータのトピックに対応して前記トピックモデルから抽出したトピック情報を当該対象エンティティの素性の少なくとも一部とし、当該対象エンティティの素性を前記識別モデルに入力して前記対象エンティティが正例エンティティか負例エンティティかを識別し、前記対象エンティティが正例エンティティであると識別した場合に前記対象エンティティを前記正例エンティティとし、前記対象エンティティが負例エンティティであると識別した場合に前記対象エンティティを前記負例エンティティとするエンティティ識別部と、
を有するデータ抽出装置。
【請求項２】
請求項１のデータ抽出装置であって、
前記正例エンティティの素性は、前記正例エンティティを含む文字列であって当該正例エンティティを含むテキストデータに含まれるものに対応し、当該文字列と当該正例エンティティとの関係を表す情報を含み、
前記負例エンティティの素性は、前記負例エンティティを含む文字列であって当該負例エンティティを含むテキストデータに含まれるものに対応し、当該文字列と当該負例エンティティとの関係を表す情報を含み、
前記対象エンティティの素性は、前記対象エンティティを含む文字列であって当該対象エンティティを含むテキストデータに含まれるものに対応し、当該文字列と当該対象エンティティとの関係を表す情報を含む、
ことを特徴とするデータ抽出装置。
【請求項３】
請求項２のデータ抽出装置であって、
前記テキストデータが含む文字列には、当該テキストデータが含む文字列のトピックの候補と、当該トピックの候補それぞれの当該テキストデータが含む文字列に対する適切さを表すトピック候補スコアとが対応し、同一の前記トピックの候補に対応する前記トピック候補スコアを集計して得られる当該トピックの候補ごとの集計結果が当該トピックの候補それぞれの正例トピックスコアとされ、当該トピックの候補の中から当該正例トピックスコアが特定の基準を満たすものが正例基準トピックとされ、
前記識別学習部は、前記正例基準トピックの何れかと同一のトピックの候補に対応する前記テキストデータが含む文字列であり、なおかつ、当該同一のトピックの候補に対応する前記トピック候補スコアが特定の基準を満たす文字列に対応する前記正例エンティティの素性を前記教師あり学習データとする、
ことを特徴とするデータ抽出装置。
【請求項４】
請求項２又は３のデータ抽出装置であって、
前記テキストデータが含む文字列には、当該テキストデータが含む文字列のトピックの候補と、当該トピックの候補それぞれの当該テキストデータが含む文字列に対する適切さを表すトピック候補スコアとが対応し、同一の前記トピックの候補に対応する前記トピック候補スコアを集計して得られる当該トピックの候補ごとの集計結果が当該トピックの候補それぞれの正例トピックスコアとされ、当該トピックの候補の中から当該正例トピックスコアが特定の基準を満たすものが正例基準トピックとされ、
前記エンティティ識別部は、前記正例基準トピックの何れかと同一のトピックの候補に対応する前記テキストデータが含む文字列であり、なおかつ、当該同一のトピックの候補に対応する前記トピック候補スコアが特定の基準を満たす文字列が含むエンティティを前記対象エンティティとする、
ことを特徴とするデータ抽出装置。
【請求項５】
請求項１から４の何れかのデータ抽出装置であって、
前記エンティティ識別部は、
前記識別学習部で前記教師あり学習データとして用いられた前記正例エンティティの素性及び前記負例エンティティの素性のうち、それらから生成された前記識別モデルへの影響度の大きさを表す指標が特定の基準を満たす素性を選択し、選択した素性に対応する文字列を含む前記テキストデータが含む文字列であるエンティティを前記対象エンティティとする、
ことを特徴とするデータ抽出装置。
【請求項６】
抽出対象の文字列である正例エンティティの集合から選択した第１正例エンティティと前記正例エンティティの属性を表す文字列である正例属性の集合から選択した第１正例属性との組である第１正例エンティティ−正例属性ペアと、抽出対象としない文字列である負例エンティティの集合から選択した第１負例エンティティと前記負例エンティティの属性を表す文字列である負例属性の集合から選択した第１負例属性との組である第１負例エンティティ−負例属性ペアとを生成し、テキストデータの集合から、前記第１正例エンティティと前記第１正例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第１正例エンティティ−正例属性ペアの特徴を表す情報を当該第１正例エンティティ−正例属性ペアの素性の少なくとも一部とし、前記テキストデータの集合から、前記第１負例エンティティと前記第１負例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第１負例エンティティ−負例属性ペアの特徴を表す情報を当該第１負例エンティティ−負例属性ペアの素性の少なくとも一部とする属性識別用素性抽出部と、
前記第１正例エンティティ−正例属性ペアの素性と前記第１負例エンティティ−負例属性ペアの素性とを教師あり学習データとした学習処理によって、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該エンティティ−属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である第１識別モデルを生成する属性識別学習部と、
前記テキストデータの集合から何れかの前記テキストデータを選択し、選択した当該テキストデータが含む文字列を第１対象エンティティとして選択し、選択した当該テキストデータから当該第１対象エンティティと異なる文字列を第１対象属性として選択し、前記第１対象エンティティと前記第１対象属性との組を第１対象エンティティ−対象属性ペアとし、選択した当該テキストデータ内での前記第１対象エンティティ−対象属性ペアの特徴を表す情報を当該第１対象エンティティ−対象属性ペアの素性の少なくとも一部とし、当該第１対象エンティティ−対象属性ペアの素性を前記第１識別モデルに入力して当該第１対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別し、当該第１対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアであると識別した場合に、前記第１対象属性を前記正例属性の集合に追加し、当該第１対象エンティティ−対象属性ペアが負例エンティティ−負例属性ペアであると識別した場合に、前記第１対象属性を前記負例属性の集合に追加する属性識別部と、
前記正例エンティティの集合から選択した第２正例エンティティと前記正例属性の集合から選択した第２正例属性との組である第２正例エンティティ−正例属性ペアと、前記負例エンティティの集合から選択した第２負例エンティティと前記負例属性の集合から選択した第２負例属性との組である第２負例エンティティ−負例属性ペアとを生成し、前記テキストデータの集合から、前記第２正例エンティティと前記第２正例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第２正例エンティティ−正例属性ペアの特徴を表す情報を当該第２正例エンティティ−正例属性ペアの素性の少なくとも一部とし、前記テキストデータの集合から、前記第２負例エンティティと前記第２負例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第２負例エンティティ−負例属性ペアの特徴を表す情報を当該第２負例エンティティ−負例属性ペアの素性の少なくとも一部とするエンティティ識別用素性抽出部と、
前記第２正例エンティティ−正例属性ペアの素性と前記第２負例エンティティ−負例属性ペアの素性とを教師あり学習データとした学習処理によって、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該エンティティ−属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である第２識別モデルを生成するエンティティ識別学習部と、
前記テキストデータの集合から何れかの前記テキストデータを選択し、選択した当該テキストデータが含む文字列を第２対象エンティティとして選択し、選択した当該テキストデータから当該第２対象エンティティと異なる文字列を第２対象属性として選択し、前記第２対象エンティティと前記第２対象属性との組を第２対象エンティティ−対象属性ペアとし、選択した当該テキストデータ内での前記第２対象エンティティ−対象属性ペアの特徴を表す情報を当該第２対象エンティティ−対象属性ペアの素性の少なくとも一部とし、当該第２対象エンティティ−対象属性ペアの素性を前記第２識別モデルに入力して当該第２対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別し、当該第２対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアであると識別した場合に、前記第２エンティティを前記正例エンティティの集合に追加し、当該第２対象エンティティ−対象属性ペアが負例エンティティ−負例属性ペアであると識別した場合に、前記第２対象エンティティを前記負例エンティティの集合に追加するエンティティ識別部と、
を有するデータ抽出装置。
【請求項７】
請求項６のデータ抽出装置であって、
前記第１正例エンティティ−正例属性ペアの素性は、前記第１正例エンティティ及び前記第１正例属性を含む文字列であって当該第１正例エンティティ及び当該第１正例属性を含むテキストデータに含まれるものと当該第１正例エンティティ及び当該第１正例属性との関係を表す情報を含み、
前記第１負例エンティティ−負例属性ペアの素性は、前記第１負例エンティティ及び前記第１負例属性を含む文字列であって当該第１負例エンティティ及び当該第１負例属性を含むテキストデータに含まれるものと当該第１負例エンティティ及び当該第１負例属性との関係を表す情報を含み、
前記第１対象エンティティ−対象属性ペアの素性は、前記第１対象エンティティ及び前記第１対象属性を含む文字列であって当該第１対象エンティティ及び当該第１対象属性を含むテキストデータに含まれるものと当該第１対象エンティティ及び当該第１対象属性との関係を表す情報を含み、
前記第２正例エンティティ−正例属性ペアの素性は、前記第２正例エンティティ及び前記第２正例属性を含む文字列であって当該第２正例エンティティ及び当該第２正例属性を含むテキストデータに含まれるものと当該第２正例エンティティ及び当該第２正例属性との関係を表す情報を含み、
前記第２負例エンティティ−負例属性ペアの素性は、前記第２負例エンティティ及び前記第２負例属性を含む文字列であって当該第２負例エンティティ及び当該第２負例属性を含むテキストデータに含まれるものと当該第２負例エンティティ及び当該第２負例属性との関係を表す情報を含み、
前記第２対象エンティティ−対象属性ペアの素性は、前記第２対象エンティティ及び前記第２対象属性を含む文字列であって当該第２対象エンティティ及び当該第２対象属性を含むテキストデータに含まれるものと当該第２対象エンティティ及び当該第２対象属性との関係を表す情報を含む、
ことを特徴とするデータ抽出装置。
【請求項８】
請求項６又は７のデータ抽出装置であって、
前記正例エンティティを含むテキストデータの集合から当該正例エンティティ以外の何れかの文字列を正例属性候補として選択し、前記正例エンティティを含む文字列の集合内に当該正例属性候補が含まれる頻度とすべてのテキストデータからなる集合内に当該正例属性候補が含まれる頻度との違いの大きさを表す指標が大きいものから所定数の正例属性候補を前記正例属性の初期値とし、
前記負例エンティティを含むテキストデータの集合から当該負例エンティティ以外の何れかの文字列を負例属性候補として選択し、前記負例エンティティを含む文字列の集合内に当該負例属性候補が含まれる頻度とすべてのテキストデータからなる集合内に当該負例属性候補が含まれる頻度との違いの大きさを表す指標が大きいものから所定数の負例属性候補を前記負例属性の初期値とする初期属性集合生成部をさらに有する、
ことを特徴とするデータ抽出装置。
【請求項９】
請求項６から８の何れかのデータ抽出装置であって、
前記属性識別部は、
前記属性識別学習部で前記教師あり学習データとして用いられた前記第１正例エンティティ−正例属性ペアの素性と前記第１負例エンティティ−負例属性ペアの素性のうち、それらから生成された前記第１識別モデルへの影響度の大きさを表す指標が特定の基準よりも大きな素性を選択し、選択した素性に対応する文字列を含む前記テキストデータを選択し、当該選択したテキストデータが含む文字列を前記第１対象エンティティ及び前記第１対象属性とする、
ことを特徴とするデータ抽出装置。
【請求項１０】
請求項６から９の何れかのデータ抽出装置であって、
前記エンティティ識別部は、
前記エンティティ識別学習部で前記教師あり学習データとして用いられた前記第２正例エンティティ−正例属性ペアの素性と前記第２負例エンティティ−負例属性ペアの素性のうち、それらから生成された前記第２識別モデルへの影響度の大きさを表す指標が特定の基準よりも大きな素性を選択し、選択した素性に対応する文字列を含む前記テキストデータを選択し、当該選択したテキストデータが含む文字列を前記第２対象エンティティ及び前記第２対象属性とする、
ことを特徴とするデータ抽出装置。
【請求項１１】
請求項６から１０の何れかのデータ抽出装置であって、
前記第１正例エンティティ−正例属性ペアの素性は、前記第１正例エンティティと前記第１正例属性との組を含むテキストデータのトピックに対応するトピック情報を含み、
前記第１負例エンティティ−負例属性ペアの素性は、前記第１負例エンティティと前記第１負例属性との組を含むテキストデータのトピックに対応するトピック情報を含み、
前記第１対象エンティティ−対象属性ペアの素性は、前記第１対象エンティティと前記第１対象属性との組を含むテキストデータのトピックに対応するトピック情報を含み、
前記第２正例エンティティ−正例属性ペアの素性は、前記第２正例エンティティと前記第２正例属性との組を含むテキストデータのトピックに対応するトピック情報を含み、
前記第２負例エンティティ−負例属性ペアの素性は、前記第２負例エンティティと前記第２負例属性との組を含む前記テキストデータのトピックに対応するトピック情報を含み、
前記第２対象エンティティ−対象属性ペアの素性は、前記第２対象エンティティと前記第２対象属性との組を含む前記テキストデータのトピックに対応するトピック情報を含む、
ことを特徴とするデータ抽出装置。
【請求項１２】
請求項１から５の何れかのデータ抽出装置であって、
正例シードエンティティを含むテキストデータの集合に含まれる全エンティティの出現確率分布である正例確率分布を表す情報を得る正例分布処理部と、
同一のトピック情報に対応するテキストデータの集合が含む全エンティティの出現確率分布であるトピック確率分布を表す情報を前記トピック情報ごとに得て、前記正例確率分布を表す情報及び前記トピック確率分布を表す情報を用いて得られる前記正例確率分布と前記トピック確率分布との距離に基づいて、少なくとも一部の前記トピック情報を前記負例トピック情報として選択する負例トピック決定部と、
前記負例トピック決定部で選択された前記負例トピック情報に対応するエンティティを負例シードエンティティとして選択する負例シードエンティティ生成部と、を有し、
前記トピック情報抽出部と前記識別学習部と前記エンティティ識別部とによる処理は１回以上繰り返され、
前記正例シードエンティティは、前記トピック情報抽出部による初回の処理における前記正例エンティティであり、
前記負例シードエンティティは、前記トピック情報抽出部による初回の処理における前記負例エンティティである、データ抽出装置。
【請求項１３】
請求項１から５の何れかのデータ抽出装置であって、
正例シードエンティティを含むテキストデータに対する各トピックの適切さを表すシード正例トピック情報を当該トピックごとに集計し、それによって得られる当該トピックごとの集計結果を当該トピックのシード正例トピックスコアとして得るシード正例トピックスコア作成部と、
前記トピックのシード正例トピックスコアの大きさに基づいて選択したトピックに対応するトピック情報を前記負例トピック情報とする負例トピック決定部と、
前記負例トピック決定部で選択された前記負例トピック情報に対応するエンティティを負例シードエンティティとして選択する負例シードエンティティ生成部と、を有し、
前記トピック情報抽出部と前記識別学習部と前記エンティティ識別部とによる処理は１回以上繰り返され、
前記正例シードエンティティは、前記トピック情報抽出部による初回の処理で使用される前記正例エンティティであり、
前記負例シードエンティティは、前記トピック情報抽出部による初回の処理で使用される前記負例エンティティである、データ抽出装置。
【請求項１４】
データ抽出装置が実行するデータ抽出方法であって、
事前処理部が、テキストデータに対する複数のトピックの候補の適切さを指標値として表すトピック情報と、当該テキストデータとの関係を記述するトピックモデルを、テキストデータから得られる教師なし学習データを用いて学習する事前処理ステップと、
トピック情報抽出部が、抽出対象の文字列である正例エンティティを含む前記テキストデータのトピックに対応して前記トピックモデルから抽出した正例トピック情報を前記正例エンティティの素性の少なくとも一部とし、抽出対象としない文字列である負例エンティティを含むテキストデータのトピックに対応して前記トピックモデルから抽出した負例トピック情報を前記負例エンティティの素性の少なくとも一部とするトピック情報抽出ステップと、
識別学習部が、前記正例エンティティの素性と前記負例エンティティの素性とを教師あり学習データとした学習処理によって、任意のエンティティの素性を入力として当該エンティティが正例エンティティか負例エンティティかを識別するための情報を出力する関数である識別モデルを生成する識別学習ステップと、
エンティティ識別部が、テキストデータの集合から選択したテキストデータが含む文字列であるエンティティを対象エンティティとし、当該選択した前記テキストデータのトピックに対応して前記トピックモデルから抽出したトピック情報を当該対象エンティティの素性の少なくとも一部とし、当該対象エンティティの素性を前記識別モデルに入力して前記対象エンティティが正例エンティティか負例エンティティかを識別し、前記対象エンティティが正例エンティティであると識別した場合に前記対象エンティティを前記正例エンティティとし、前記対象エンティティが負例エンティティであると識別した場合に前記対象エンティティを前記負例エンティティとするエンティティ識別ステップと、
を有するデータ抽出方法。
【請求項１５】
データ抽出装置が実行するデータ抽出方法であって、
属性識別用素性抽出部が、抽出対象の文字列である正例エンティティの集合から選択した第１正例エンティティと前記正例エンティティの属性を表す文字列である正例属性の集合から選択した第１正例属性との組である第１正例エンティティ−正例属性ペアと、抽出対象としない文字列である負例エンティティの集合から選択した第１負例エンティティと前記負例エンティティの属性を表す文字列である負例属性の集合から選択した第１負例属性との組である第１負例エンティティ−負例属性ペアとを生成し、テキストデータの集合から、前記第１正例エンティティと前記第１正例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第１正例エンティティ−正例属性ペアの特徴を表す情報を当該第１正例エンティティ−正例属性ペアの素性の少なくとも一部とし、前記テキストデータの集合から、前記第１負例エンティティと前記第１負例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第１負例エンティティ−負例属性ペアの特徴を表す情報を当該第１負例エンティティ−負例属性ペアの素性の少なくとも一部とする属性識別用素性抽出ステップと、
属性識別学習部が、前記第１正例エンティティ−正例属性ペアの素性と前記第１負例エンティティ−負例属性ペアの素性とを教師あり学習データとした学習処理によって、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該エンティティ−属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である第１識別モデルを生成する属性識別学習ステップと、
属性識別部が、前記テキストデータの集合から何れかの前記テキストデータを選択し、選択した当該テキストデータが含む文字列を第１対象エンティティとして選択し、選択した当該テキストデータから当該第１対象エンティティと異なる文字列を第１対象属性として選択し、前記第１対象エンティティと前記第１対象属性との組を第１対象エンティティ−対象属性ペアとし、選択した当該テキストデータ内での前記第１対象エンティティ−対象属性ペアの特徴を表す情報を当該第１対象エンティティ−対象属性ペアの素性の少なくとも一部とし、当該第１対象エンティティ−対象属性ペアの素性を前記第１識別モデルに入力して当該第１対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別し、当該第１対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアであると識別した場合に、前記第１対象属性を前記正例属性の集合に追加し、当該第１対象エンティティ−対象属性ペアが負例エンティティ−負例属性ペアであると識別した場合に、前記第１対象属性を前記負例属性の集合に追加する属性識別ステップと、
エンティティ識別用素性抽出部が、前記正例エンティティの集合から選択した第２正例エンティティと前記正例属性の集合から選択した第２正例属性との組である第２正例エンティティ−正例属性ペアと、前記負例エンティティの集合から選択した第２負例エンティティと前記負例属性の集合から選択した第２負例属性との組である第２負例エンティティ−負例属性ペアとを生成し、前記テキストデータの集合から、前記第２正例エンティティと前記第２正例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第２正例エンティティ−正例属性ペアの特徴を表す情報を当該第２正例エンティティ−正例属性ペアの素性の少なくとも一部とし、前記テキストデータの集合から、前記第２負例エンティティと前記第２負例属性との組を含む文字列を選択し、選択した当該文字列に対する前記第２負例エンティティ−負例属性ペアの特徴を表す情報を当該第２負例エンティティ−負例属性ペアの素性の少なくとも一部とするエンティティ識別用素性抽出ステップと、
エンティティ識別学習部が、前記第２正例エンティティ−正例属性ペアの素性と前記第２負例エンティティ−負例属性ペアの素性とを教師あり学習データとした学習処理によって、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該エンティティ−属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である第２識別モデルを生成するエンティティ識別学習ステップと、
エンティティ識別部が、前記テキストデータの集合から何れかの前記テキストデータを選択し、選択した当該テキストデータが含む文字列を第２対象エンティティとして選択し、選択した当該テキストデータから当該第２対象エンティティと異なる文字列を第２対象属性として選択し、前記第２対象エンティティと前記第２対象属性との組を第２対象エンティティ−対象属性ペアとし、選択した当該テキストデータ内での前記第２対象エンティティ−対象属性ペアの特徴を表す情報を当該第２対象エンティティ−対象属性ペアの素性の少なくとも一部とし、当該第２対象エンティティ−対象属性ペアの素性を前記第２識別モデルに入力して当該第２対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別し、当該第２対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアであると識別した場合に、前記第２エンティティを前記正例エンティティの集合に追加し、当該第２対象エンティティ−対象属性ペアが負例エンティティ−負例属性ペアであると識別した場合に、前記第２対象エンティティを前記負例エンティティの集合に追加するエンティティ識別ステップと、
を有するデータ抽出方法。
【請求項１６】
請求項１から１３の何れかのデータ抽出装置の各部としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストデータの集合からデータを抽出する技術に関し、特に、特定の内容と関連を持つ文字列を入力として同じような関連を持つ文字列をテキストデータの集合から抽出する技術に関する。
【背景技術】
【０００２】
現在様々な自然言語処理技術の研究開発が進み、WEBのような膨大な知識源から必要な情報を抽出する手法が多く存在している。そのような手法の一つに、特定の内容と何らかの関連を持つ文字列（例えば<広島>や<阪神>など）を入力として、大量のテキストデータ（例えば文書データ）から同じような関連を持つ文字列（例えば<ヤクルト>など）を収集するものがある。このような手法を「set expansion」と呼ぶ。また、set expansionで扱われる文字列を「エンティティ」と呼び、抽出対象のエンティティを「正例エンティティ」と呼び、抽出しない（抽出対象としない）エンティティを「負例エンティティ」と呼ぶ。さらに、set expansionにおいて最初に入力されるエンティティを「シードエンティティ」と呼び、正例のシードエンティティを「正例シードエンティティ」と呼び、負例のシードエンティティを「負例シードエンティティ」と呼ぶ。
【０００３】
以下、従来のset expansionの一例を概説する。
ステップI：正例エンティティ（例えば<広島>や<阪神>など）を含むテキストデータを用いて当該正例エンティティの素性を抽出し、負例エンティティ（例えば<彗星>）を含むテキストデータを用いて当該負例エンティティの素性を抽出（素性化）する。なお、正例エンティティの初期値は正例シードエンティティであり、負例エンティティの初期値は負例シードエンティティである。
ステップII：ステップIで得られた正例エンティティの素性と負例エンティティの素性とを学習データとし、任意のエンティティが正例エンティティであるか負例エンティティであるかを識別するための識別モデルを生成する。
ステップIII：テキストデータから識別前のエンティティ(例えば<ヤクルト>)とその素性と抽出し、ステップIIで得られた識別モデルを用いて当該未知のエンティティの識別を行う。
ステップIV：正例エンティティであると識別されたエンティティのうち信頼度の高いものの素性と、負例エンティティであると推定されたエンティティのうち信頼度の低いものの素性とを学習データに加える。
ステップV：収束条件を満たすか否かを判定し、満たさない場合はステップIに戻って処理を繰り返す。収束条件を満たす場合は処理を終了する。このように一度学習したモデルに基づいて識別を行い、それを新たな学習データとして用いていく繰り返し学習の枠組みをブートストラップ法と呼ぶ。
【０００４】
次に、set expansionの他の例であるTChai（例えば、非特許文献１参照）を概説する。TChaiでは、リソースとして検索クエリログ（以下クエリログ）が用いられる。クエリログとは、キーワード検索に用いられるユーザからのクエリ（数単語からなるキーワード）の集合である。
ステップA：正例シードエンティティと共起する単語であるパターンpをクエリログから抽出し、それらを正例シードエンティティの素性とする。このステップは最初の一回のみ行う。
ステップB：正例エンティティであるかが未知のエンティティeとそれと共起するパターンpとの２項におけるPMI(Pointwise Mutual Information)を計算する。
【数１】
0005542732.tif 000002
ここで|e, p|はエンティティeとそれと共起するパターンpとの組のクエリログ中での出現頻度を表す。また、*はp又はeのワイルドカードを表す。すなわち、|e, *|はエンティティeと何れかのパターン*との組のクエリログ中での出現頻度を表し、|*, p|は何れかのエンティティ*とパターンpとの組のクエリログ中での出現頻度を表す。
また、このエンティティeに対し、エンティティ信頼度rEとパターン信頼度rPを計算する。rE, rPは以下で定義される。
【数２】
0005542732.tif 000003
ここで|E|及び|P|はそれぞれエンティティe及びパターンpの総数を表す。また、maxe pmiはエンティティをeに固定した場合のPMIの最大値を表し、maxppmiはパターンをpに固定した場合のPMIの最大値を表す。
ステップC：エンティティ信頼度rEに基づきエンティティｅを新たな正例エンティティとするか否かを判定する。
ステップD：必要な数の正例エンティティが得られていない場合にはステップBに戻って処理を繰り返す。必要な数の正例エンティティが得られた場合には処理を終了する。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】小町守，鈴木久美，「検索ログからの半教師あり意味知識獲得の改善」，人工知能学会論文誌，Vol. 23，No. 3，2008，p. 217-225
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来のset expansionにはセマンティックドリフトという課題が存在する。
例えば球団名を表す<広島><阪神>という正例シードエンティティに対して、従来のset expansionにより正例エンティティ<ヤクルト>が獲得できたとする。<ヤクルト>は飲料名でもあるので、<ヤクルト>を新たに正例エンティティに追加することで次のイテレーションでは<コーラ>等の飲料系のエンティティが正例エンティティとして獲得されるようになり、獲得される正例エンティティの話題がシフトしていく可能性がある。このように獲得される正例エンティティの話題がシフトしていく現象をセマンティックドリフトと呼ぶ。
TChaiではセマンティックドリフトの影響を抑えるために、前述した信頼度を用い、どのクエリにも共通して出やすい一般性の強いエンティティ及びパターンを選択しないアルゴリズムとなっている。しかし、TChaiにおいてもなおセマンティックドリフトは起こり得るため、別な観点からのセマンティックドリフト軽減が望まれる。
【０００７】
本発明はこのような点に鑑みてなされたものであり、セマンティックドリフトを軽減することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１態様では、テキストデータに対する複数のトピックの候補の適切さを指標値として表すトピック情報と、当該テキストデータとの関係を記述するトピックモデルを、テキストデータから得られる教師なし学習データを用いて学習し、抽出対象の文字列である正例エンティティを含むテキストデータのトピックに対応してトピックモデルから抽出した正例トピック情報を正例エンティティの素性の少なくとも一部とし、抽出対象としない文字列である負例エンティティを含むテキストデータのトピックに対応してトピックモデルから抽出した負例トピック情報を負例エンティティの素性の少なくとも一部とし、正例エンティティの素性と負例エンティティの素性とを教師あり学習データとした学習処理によって、任意のエンティティの素性を入力として当該エンティティが正例エンティティか負例エンティティかを識別するための情報を出力する関数である識別モデルを生成し、テキストデータの集合から選択したテキストデータが含む文字列であるエンティティを対象エンティティとし、当該選択したテキストデータのトピックに対応してトピックモデルから抽出したトピック情報を当該対象エンティティの素性の少なくとも一部とし、当該対象エンティティの素性を識別モデルに入力して対象エンティティが正例エンティティか負例エンティティかを識別し、対象エンティティが正例エンティティであると識別した場合に対象エンティティを正例エンティティとし、対象エンティティが負例エンティティであると識別した場合に対象エンティティを負例エンティティとする。
【０００９】
本発明の第２態様では、抽出対象の文字列である正例エンティティの集合から選択した第１正例エンティティと正例エンティティの属性を表す文字列である正例属性の集合から選択した第１正例属性との組である第１正例エンティティ−正例属性ペアと、抽出対象としない文字列である負例エンティティの集合から選択した第１負例エンティティと負例エンティティの属性を表す文字列である負例属性の集合から選択した第１負例属性との組である第１負例エンティティ−負例属性ペアとを生成し、テキストデータの集合から、第１正例エンティティと第１正例属性との組を含む文字列を選択し、選択した当該文字列に対する第１正例エンティティ−正例属性ペアの特徴を表す情報を当該第１正例エンティティ−正例属性ペアの素性の少なくとも一部とし、テキストデータの集合から、第１負例エンティティと第１負例属性との組を含む文字列を選択し、選択した当該文字列に対する第１負例エンティティ−負例属性ペアの特徴を表す情報を当該第１負例エンティティ−負例属性ペアの素性の少なくとも一部とし、第１正例エンティティ−正例属性ペアの素性と第１負例エンティティ−負例属性ペアの素性とを教師あり学習データとした学習処理によって、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該エンティティ−属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である第１識別モデルを生成し、テキストデータの集合から何れかのテキストデータを選択し、選択した当該テキストデータが含む文字列を第１対象エンティティとして選択し、選択した当該テキストデータから当該第１対象エンティティと異なる文字列を第１対象属性として選択し、第１対象エンティティと第１対象属性との組を第１対象エンティティ−対象属性ペアとし、選択した当該テキストデータ内での第１対象エンティティ−対象属性ペアの特徴を表す情報を当該第１対象エンティティ−対象属性ペアの素性の少なくとも一部とし、当該第１対象エンティティ−対象属性ペアの素性を第１識別モデルに入力して当該第１対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別し、当該第１対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアであると識別した場合に、第１対象属性を正例属性の集合に追加し、当該第１対象エンティティ−対象属性ペアが負例エンティティ−負例属性ペアであると識別した場合に、第１対象属性を負例属性の集合に追加し、正例エンティティの集合から選択した第２正例エンティティと正例属性の集合から選択した第２正例属性との組である第２正例エンティティ−正例属性ペアと、負例エンティティの集合から選択した第２負例エンティティと負例属性の集合から選択した第２負例属性との組である第２負例エンティティ−負例属性ペアとを生成し、テキストデータの集合から、第２正例エンティティと第２正例属性との組を含む文字列を選択し、選択した当該文字列に対する第２正例エンティティ−正例属性ペアの特徴を表す情報を当該第２正例エンティティ−正例属性ペアの素性の少なくとも一部とし、テキストデータの集合から、第２負例エンティティと第２負例属性との組を含む文字列を選択し、選択した当該文字列に対する第２負例エンティティ−負例属性ペアの特徴を表す情報を当該第２負例エンティティ−負例属性ペアの素性の少なくとも一部とし、第２正例エンティティ−正例属性ペアの素性と第２負例エンティティ−負例属性ペアの素性とを教師あり学習データとした学習処理によって、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該エンティティ−属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である第２識別モデルを生成し、テキストデータの集合から何れかのテキストデータを選択し、選択した当該テキストデータが含む文字列を第２対象エンティティとして選択し、選択した当該テキストデータから当該第２対象エンティティと異なる文字列を第２対象属性として選択し、第２対象エンティティと第２対象属性との組を第２対象エンティティ−対象属性ペアとし、選択した当該テキストデータ内での第２対象エンティティ−対象属性ペアの特徴を表す情報を当該第２対象エンティティ−対象属性ペアの素性の少なくとも一部とし、当該第２対象エンティティ−対象属性ペアの素性を第２識別モデルに入力して当該第２対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別し、当該第２対象エンティティ−対象属性ペアが正例エンティティ−正例属性ペアであると識別した場合に、第２エンティティを正例エンティティの集合に追加し、当該第２対象エンティティ−対象属性ペアが負例エンティティ−負例属性ペアであると識別した場合に、第２対象エンティティを負例エンティティの集合に追加する。
【発明の効果】
【００１０】
上述のように本発明では、トピック情報及び属性の少なくとも一方がエンティティの識別に反映されるため、セマンティックドリフトを軽減できる。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１実施形態のデータ抽出装置の機能構成を例示するためのブロック図である。
【図２】図２Ａ及び図２Ｂは、自動生成部の機能構成を例示するためのブロック図である。
【図３】図３は、第１実施形態のデータ抽出装置のデータ抽出処理を例示するための図である。
【図４】図４は、記憶部に格納されたテキストデータの集合Dを例示した図である。
【図５】図５Ａは、トピック情報付きテキストデータの集合D'を例示した図である。図５Ｂは、トピック情報抽出部が出力する組(fPej, <+1>)及び組(fNej, <-1>)を例示した図である。
【図６】図６は、第２実施形態のデータ抽出装置の機能構成を例示するためのブロック図である。
【図７】図７は、第２実施形態のデータ抽出装置のデータ抽出処理を例示するための図である。
【図８】図８Ａは、属性識別用素性抽出部が出力する組(fPaj, <+1>)及び組(fNaj, <-1>)を例示した図である。図８Ｂは、エンティティ識別用素性抽出部が出力する組(fPej, <+1>)及び組(fNej, <-1>)を例示した図である。
【図９】図９は、第３実施形態のデータ抽出装置３の機能構成を例示するためのブロック図である。
【図１０】図１０は、第３実施形態のデータ抽出装置３のデータ抽出処理を例示するための図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態を説明する。
〔第１実施形態〕
＜構成＞
図１は、第１実施形態のデータ抽出装置１の機能構成を例示するためのブロック図である。
図１に例示するように、データ抽出装置１は、記憶部１１ａ−１１ｅ、トピック付与部１２、素性抽出部１３、トピック情報抽出部１４、識別学習部１５、エンティティ識別部１６、収束判定部１７、出力部１８、及び制御部１９を有し、制御部１９の制御のもと各処理を実行する。なお、データ抽出装置１は、例えば、CPU(central processing unit)、RAM(random-access memory)及びROM(read-only memory)等を含む公知又は専用のコンピュータに特別なプログラムが読み込まれて構成される特別な装置である。例えば、記憶部１１ａ−１１ｅは、ハードディスクや半導体メモリなどであり、トピック付与部１２、素性抽出部１３、トピック情報抽出部１４、識別学習部１５、エンティティ識別部１６、収束判定部１７、出力部１８、及び制御部１９は、特別なプログラムが読み込まれたCPUなどである。また、これらの少なくとも一部が集積回路などによって構成されてもよい。また、図１に表記された矢印は情報の流れを表すが、表記の都合上一部の矢印が省略されている（以降に述べる他のブロック図も同様）。
【００１３】
＜事前処理＞
事前処理として、記憶部１１ａにテキストデータの集合Dが格納され、記憶部１１ｂにトピックモデルTM0が格納される。
テキストデータとは、文字テキストを含むデータを意味する。テキストデータの例は、文書データ、クエリ、語句を含む図表データ、フレーズデータ、単語列データなどである。本形態では、形態素解析、固有表現抽出、係り受け解析、文境界同定などの前処理を行った後の文書データをテキストデータとした例を示す。
【００１４】
「トピックモデルTM0」とは、テキストデータに対応するトピックに対応するトピック情報とそのテキストデータが含む文字列との関係を記述するモデル（関数、数式）を意味する。「文字列」の具体例は、単語、単語列、フレーズ、文、文字、記号などである。テキストデータに対応するトピックとは、テキストデータのトピック（題目、話題、事柄、出来事、論題、分類など）を意味する。テキストデータがトピックを表す単語そのものを含んでいるとは限らない。また、トピック情報は、テキストデータに対応するトピックに対応する情報であればどのようなものであってもよい。例えば、テキストデータに対応するトピックの候補（例えば<球団名>や<企業名>など）ごとに、当該テキストデータに対する各トピックの候補の適切さを表す指標（例えば、確率、重み係数、確率や重み係数の関数値であるスコアなど）が与えられ、それらの指標の少なくとも一部が当該テキストデータのトピック情報とされてもよい。
【００１５】
トピックモデルは、事前に教師なし学習データ（トピック情報との関係が特定されていないテキストデータから得られる学習データ）から獲得しておく。例えば、WEB上の100万個の文書データから所望のエンティティを獲得したい場合には、これら100万個の文書データから得られた学習データを用いてトピックモデルを学習しておく。
トピックモデルTM0の具体例は、UM(Unigram Mixtures)（Andrew K. McCallum, Kamal Nigam, "Employing EM and Pool-Based Active Learning for Text Classification", ICML'98, 1998等参照）、LDA(Latent Dirichlet Allocation)、DM(Dirichlet Mixtures)などである。以下にトピックモデルTM0としてUMを用いる例を示す。
この場合のトピックモデルTM0は以下の形で定義される。
【数３】
0005542732.tif 000004
ここでdはテキストデータの集合Dに属するテキストデータd∈Dを表し、p(d)はテキストデータの集合Dにおけるテキストデータdの出現確率を表す。z∈Zは隠れ変数であり、各zが１つのトピックの候補に対応する。Zは隠れ変数zの集合を表す。以下ではｚを1以上Z以下の自然数とし、Zを隠れ変数の総数（トピックの候補の総数）とする。p(z)は隠れ変数zに対する確率であり、
【数４】
0005542732.tif 000005
を満たす。vは文字列を表し、Vは文字列vの集合を表す。p(v|z)は隠れ変数zにおける文字列vの生成確率（隠れ変数zが与えられたときの文字列vの事後確率）であり、
【数５】
0005542732.tif 000006
を満たす。ndvはテキストデータd中に文字列vが出現した回数である。
【００１６】
トピックモデルTM0の学習は繰り返し最適化手法の１種であるEMアルゴリズムを用いて行われ、学習によってパラメータp(z), p(v|z)が得られる。得られた各パラメータp(z), p(v|z)はトピックモデルTM0を特定する情報として記憶部１１ｂに格納される。これはトピックモデルTM0が記憶部１１ｂに格納されることと同等である。
【００１７】
なお、本形態ではテキストデータが含む文字列を「エンティティ」と呼び、抽出対象のエンティティを「正例エンティティ」と呼び、抽出しない（抽出対象としない）エンティティを「負例エンティティ」と呼ぶ。また、最初に入力されるエンティティを「シードエンティティ」と呼び、正例のシードエンティティを「正例シードエンティティ」と呼び、負例のシードエンティティを「負例シードエンティティ」と呼ぶ。
【００１８】
＜データ抽出処理＞
図３は、第１実施形態のデータ抽出装置１のデータ抽出処理を例示するための図である。以下、図３を用いてデータ抽出装置１のデータ抽出処理を例示する。
《初期化：ステップＳ１１》
制御部１９がjの値をj=1に初期化する。
《トピック付与：ステップＳ１２》
トピック付与部１２が、記憶部１１ｂに格納されたトピックモデルTM0を用い、記憶部１１ａに格納されたテキストデータの集合Dが含む各テキストデータのトピックに対応するトピック情報をそれぞれ生成する。トピック付与部１２は、生成した各トピック情報をそれに対応する各テキストデータに対応付け、テキストデータとトピック情報とを含むトピック情報付きテキストデータを生成する。生成されたトピック情報付きテキストデータの集合D'は記憶部１１ｃに格納される。なお、各テキストデータのトピックに対応する情報であれば、どのような情報をトピック情報としてもよい。以下に、UMをトピックモデルTM0として生成されるトピック情報を例示する。
【００１９】
[トピック情報の例]
トピック付与部１２は、記憶部１１ｂに格納されたトピックモデルTM0のパラメータp(z), p(v|z)とテキストデータd及び文字列vから得られるndvを用い、式(4)に従って、記憶部１１ａに格納されたテキストデータの集合Dに属するテキストデータdに対応するp(d)を計算できる。また、確率の乗法定理より、トピック付与部１２は、p(z), p(v|z)を用い、z, vについての同時確率p(z,v)を以下のように求めることができる。
p(z,v)=p(z)p(v|z)        …(5)
また、トピック付与部１２は、p(z,v)及びndvを用い、z, dについての同時確率p(z,d)を以下のように求めることができる。
【数６】
0005542732.tif 000007
さらに、確率の乗法定理より、トピック付与部１２は、p(z,d)及びp(z)を用い、隠れ変数zが与えられたときのテキストデータdの事後確率p(d|z)を、以下のように求めることができる。
p(d|z)=p(z,d)/p(z)        …(7)
またさらに、ベイズの定理より、トピック付与部１２は、得られたp(d), p(d|z)及びp(z)を用い、テキストデータdが与えられたときの隠れ変数zの事後確率p(z|d)を以下のように求めることができる。
p(z|d)=p(d|z)p(z)/p(d)        …(8)
【００２０】
すなわち、トピック付与部１２は、記憶部１１ｂに格納されたトピックモデルTM0のパラメータp(z), p(v|z)を用い、任意のテキストデータdに対する隠れ変数zの事後確率p(z|d)を計算できる。なお、事後確率p(z|d)の計算手順は上記のものに限定されない。最終的にp(z|d)が得られるのであればどのような計算手順で事後確率p(z|d)が計算されてもよい。
【００２１】
事後確率p(z|d)はトピックの候補の適切さを表す指標であり、これらをトピック情報とすることができる。以下、このようなトピック情報を例示する。
トピック情報の例１：各トピックの候補に対応する各隠れ変数znに対応する各事後確率p(zn|d)(n=1,...,Z)のうち、事後確率の大きな上位N個の隠れ変数zn'とそれらにそれぞれ対応する事後確率p(zn'|d)又は当該事後確率p(zn'|d)の写像との組をテキストデータdのトピック情報とする。なお、Nは1以上Z以下の自然数定数である。例えば、N=1であり、p(z5|d)=0.95が最大の事後確率である場合、隠れ変数z5と事後確率p(z5|d)=0.95との組をテキストデータdのトピック情報とする。
【００２２】
トピック情報の例２：各トピックの候補に対応する各隠れ変数znに対応する各事後確率p(zn|d)(n=1,...,Z)のうち、事後確率の大きな上位N個の隠れ変数zn'又は当該隠れ変数zn'の写像をテキストデータdのトピック情報とする。例えば、N=1であり、p(z5|d)=0.95が最大の事後確率である場合、隠れ変数z5をテキストデータdのトピック情報とする。
【００２３】
トピック情報の例３：各トピックの候補に対応する各隠れ変数znに対応する各事後確率p(zn|d)(n=1,...,Z)のうち、上位N個の事後確率p(zn'|d)又は当該事後確率p(zn'|d)の写像をそれぞれn'次元目の要素とし、他のZ-N個の要素を0としたZ次元ベクトルをテキストデータdのトピック情報とする。例えばN=1であり、p(z2|d)=0.95が最大の事後確率である場合、Z次元ベクトル(0, 0.95, 0,...,0)をテキストデータdのトピック情報とする。
【００２４】
トピック情報の例４：各トピックの候補に対応する各隠れ変数znに対応する各事後確率p(zn|d)(n=1,...,Z)のうち、上位N個の事後確率p(zn'|d)にそれぞれ対応するn'次元目の要素を第１定数（例えば1）とし、他のZ-N個の要素を第２定数（例えば0）としたZ次元ベクトルをテキストデータdのトピック情報とする。例えばN=1であり、p(z2|d)=0.95が最大の事後確率である場合、Z次元ベクトル(0, 1, 0,...,0)をテキストデータdのトピック情報とする。
【００２５】
トピック情報の例５：トピック情報の例１又は２において、「事後確率の大きな上位N個の隠れ変数zn'」を「事後確率が閾値以上となる隠れ変数zn'」に置換した方法でテキストデータdのトピック情報を定める。
【００２６】
トピック情報の例６：トピック情報の例３又は４において、「上位N個の事後確率p(zn'|d)」を「閾値以上の事後確率p(zn'|d)」に置換した方法でテキストデータdのトピック情報を定める。
【００２７】
図４は、記憶部１１ａに格納されたテキストデータの集合Dを例示した図であり、図５Ａは、トピック情報付きテキストデータの集合D'を例示した図である。図４に例示したテキストデータの集合Dは、前処理を行った後の文書データであるテキストデータと当該テキストデータのIDとが対応付けされたデータである。また、図５Ａに例示したトピック情報付きテキストデータの集合D'は、テキストデータと、当該テキストデータのIDと、当該テキストデータに対してトピック情報の例１によって生成されたトピック情報とが対応付けされたデータである。このように、トピック情報はテキストデータごとに付与されており、同じテキストデータ内に表れるエンティティには同じトピック情報が対応する。
なお、予めテキストデータにトピック情報が付与されている場合には、そのトピック情報を用いればよい。また、事前にトピック情報付きテキストデータの集合D'が生成されている場合にはステップＳ１２の処理を実行しなくてもよい（[トピック情報の例]の説明終わり）。
【００２８】
《素性抽出：ステップＳ１３》
ユーザが欲するエンティティの例が正例シードエンティティRPe0として素性抽出部１３に入力される。例えば、<広島>などが正例シードエンティティとして入力される。また、負例シードエンティティRNe0が素性抽出部１３に入力される。例えば、<日本>などが負例シードエンティティとして入力される。正例シードエンティティRPe0は初回の処理（j=1）における正例エンティティであり、負例シードエンティティRNe0は初回の処理（j=1）における負例エンティティである。
【００２９】
正例シードエンティティRPe0は、ユーザによって選択されたものである。負例シードエンティティRNe0は、ユーザによって選択されたものであってもよいし、テキストデータの集合Dから半自動または全自動で生成されたものであってもよい。以下に負例シードエンティティRNe0を半自動または全自動で生成する方法を例示する。
【００３０】
[負例シードエンティティRNe0の半自動生成方法の例]
負例シードエンティティ生成部（図示せず）が、テキストデータの集合Dから、何れの正例シードエンティティRPe0も含まないテキストデータを所定個数抽出し、抽出した各テキストデータから１つずつランダムに名詞を選択し、それらを負例エンティティ候補として出力する。表示部（図示せず）はこれらの負例エンティティ候補を表示し、これらから負例シードエンティティを選択するようにユーザに促す表示を行う。ユーザによる選択内容は負例シードエンティティ生成部に入力され、負例シードエンティティ生成部は、選択された負例エンティティ候補を負例シードエンティティRNe0として出力する（[負例シードエンティティRNe0の半自動生成方法の例]の説明終わり）。
【００３１】
［負例シードエンティティRNe0の自動生成方法の例］
＜方法１＞
この例のデータ抽出装置１は、負例シードエンティティRNe0を自動生成する自動生成部１１０を有する（図１）。自動生成部１１０は、正例分布処理部１１１、負例トピック決定部１１２、及び負例シードエンティティ生成部１１３を有する（図２Ａ）。
【００３２】
まず、正例分布処理部１１１が、記憶部１１ａに格納されたテキストデータの集合Dのうち、正例シードエンティティRPe0を含むテキストデータの集合PDに含まれる全エンティティの出現確率分布である正例確率分布を表す情報（パラメータ）を得る。正例確率分布の代表例は、Bag-of-Wordsの仮定に従う全エンティティの多項分布である。以下に単語などの文字列をエンティティとし、Bag-of-Wordsの仮定に従う全エンティティの多項分布を正例確率分布とする例を示す。
この例での正例確率分布を表すパラメータは、エンティティである文字列vの生成確率p(v)である。生成確率p(v)は以下の関係を満たす。
【数７】
0005542732.tif 000008
ここでdはPDに含まれるある１テキストデータを示し、P(PD)はテキストデータの集合PDの出現確率を表す。vは単語などの文字列を表し、Vは文字列vの集合を表す。p(v)は文字列vの生成確率であり、以下の関係を満たす。
【数８】
0005542732.tif 000009
ここでndvはテキストデータd中に文字列vが出現した回数である。この生成確率p(v)（正例確率分布を表すパラメータ）は最尤推定法を用いて容易に求めることができる。具体的には、生成確率p(v)は以下の式によって計算され得る。
【数９】
0005542732.tif 000010
ここでnPDvはテキストデータの集合PD中に文字列vが出現した回数を表す。NPDはテキストデータの集合PDに含まれる文字列の総数（例えば、総単語数）を表し、NPD＝Σv nPDvである。これらの値は、記憶部１１ａに格納されたテキストデータの集合Dから得ることができる。
この例のデータ抽出装置１は、各文字列v=v1,...,vV∈Vに対応する各生成確率p(v1),..., p(vV)を正例確率分布のパラメータβp={p(v1),..., p(vV)}として出力する。
【００３３】
次に、負例トピック決定部１１２が、同一のトピック情報に対応するテキストデータの集合が含むエンティティの出現確率分布であるトピック確率分布を表す情報をトピック情報ごとに得て、正例確率分布を表す情報及びトピック確率分布を表す情報を用いて得られる正例確率分布とトピック確率分布との距離に基づいて、少なくとも一部のトピック情報を負例トピック情報として選択する。すなわち、負例トピック決定部１１２は、正例確率分布とトピック確率分布との情報量距離を求めて、情報量距離の大きなトピック確率分布に対応するトピック情報の中から負例トピック情報を選択する。
【００３４】
以下に正例確率分布のパラメータが上述したβp={p(v1),..., p(vV)}であり、トピック確率分布を表す情報（パラメータ）がβt={p(v1|zt),..., p(vV|zt)}(t=1,...,T、Tは正整数)である場合の例を示す。確率分布間の距離尺度にはKL-divergenceやJS-divergenceが用いられるが、ここでは距離の対称性のあるJS-divergenceが用いられる。２つの確率分布p,qの間のJS-divergence DJS(q||p)は以下のように定義される。
【数１０】
0005542732.tif 000011
ただし、0≦λ≦1であり、DKLはKL-divergenceを表す。確率分布p,qの間のKL-divergenceは以下のように定義される。
【数１１】
0005542732.tif 000012
ただし、xは確率変数を表す。
この場合、負例トピック決定部１１２は、p=βP、q∈{β1, β2, … , βT}とし、βPと各βt(t=1,2,…,T)との間のJS-divergenceを計算する。負例トピック決定部１１２は、例えば、(1)正例確率分布とのJS-divergenceがある一定の閾値以上のパラメータβtに対応するトピック情報、或いは(2)正例確率分布とのJS-divergenceの大きな方から順にN個のパラメータβtに対応するトピック情報を負例トピック情報とする。負例トピック決定部１１２は、負例トピック情報を特定する情報（例えばt）を出力する。
【００３５】
負例トピック情報を特定する情報は、負例シードエンティティ生成部１１３に入力される。負例シードエンティティ生成部１１３は、負例トピック決定部１１２で選択された負例トピック情報に対応するエンティティを負例シードエンティティRNe0として選択する。このような負例シードエンティティRNe0の選択方法の例は以下の通りである。
（選択方法１）単語などの文字列が負例シードエンティティRNe0として選択される。
（選択方法２）文書などのテキストデータが負例シードエンティティとして選択される。
何れの選択方法の場合も負例トピック情報との関連性が強い（負例トピックの寄与度の高い）エンティティが負例シードエンティティRNe0とされる。以下に選択方法１，２の具体例を示す。
（選択方法１）単語などの文字列vが負例シードエンティティRNe0として選択される場合、負例シードエンティティ生成部１１３は、負例トピック情報に対応するパラメータβtからp(zt|v)を以下のように計算する。
p(zt|v)=p(vt|z)p(z)/Σz p(v|z)p(z)
負例シードエンティティ生成部１１３は、この値p(zt|v)の大きな文字列vを負例シードエンティティRNe0として選択する。例えば、負例シードエンティティ生成部１１３は、p(zt|v)の大きい順に所定個のp(zt|v)を選択し、選択したp(zt|v)に対応する文字列vを負例シードエンティティRNe0とする。或いは、負例シードエンティティ生成部１１３は、例えば、閾値よりも大きなp(zt|v)を選択し、選択したp(zt|v)に対応する文字列vを負例シードエンティティRNe0とする。
（選択方法２）文書などのテキストデータが負例シードエンティティRNe0として選択される場合、例えば、あらかじめ全テキストデータdに対応するトピック情報である事後確率p(z|d)を計算しておき、トピックごと（隠れ変数zごと）にp(z|d)の値の大きなテキストデータdを記憶部１１ａに格納しておく。例えば、トピックごとにp(z|d)の大きい順に所定個のテキストデータdを選択しておき、それらを記憶部１１ａに格納しておく、又は、トピックzごとに閾値よりも大きなp(z|d)に対応するテキストデータdを選択しておき、それらを記憶部１１ａに格納しておく。負例シードエンティティ生成部１１３は、このように記憶部１１ａに格納しておいたテキストデータdから、負例トピック決定部１１２で得られた負例トピック情報に対応するp(zt|d)に対応するテキストデータdを負例シードエンティティRNe0として選択する（＜方法１＞の説明終わり）。
【００３６】
＜方法２＞
この例のデータ抽出装置１は、負例シードエンティティRNe0を自動生成する自動生成部１２０を有する（図１）。自動生成部１２０は、シード正例トピックスコア生成部１２１、負例トピック決定部１２２、及び負例シードエンティティ生成部１１３を有する（図２Ｂ）。
【００３７】
まずシード正例トピックスコア作成部１２１が、正例シードエンティティRPe0を含むテキストデータdに対する各トピックzの適切さを表すシード正例トピック情報を当該トピックごと（隠れ変数zごと）に集計し、それによって得られる当該トピックごと（隠れ変数zごと）の集計結果を当該トピックのシード正例トピックスコアとして得る。例えば、シード正例トピックスコア作成部１２１は、トピック付与部１２で得られた事後確率p(z|d)のうち正例文書PDに対応するものの和、すなわちΣ_d∈PD p(z|d)をトピックごと（隠れ変数zごと）に計算し、それを当該トピック（隠れ変数z）に対するシード正例トピックスコアとする。或いは、例えばΣ_d∈PD p(z|d)の単調増加関数値が当該トピック（隠れ変数z）に対するシード正例トピックスコアとされてもよい。
【００３８】
次に、負例トピック決定部１２２は、トピックのシード正例トピックスコアの大きさに基づいて選択したトピックに対応するトピック情報を負例トピック情報とする。例えば、負例トピック決定部１２２は、シード正例トピックスコアの低い順に所定個のトピック（隠れ変数z）を選択し、選択したトピックに対応するトピック情報を負例トピック情報とする。或いは、負例トピック決定部１２２は、シード正例トピックスコアが所定の閾値以下となるトピック（隠れ変数z）を選択し、選択したトピックに対応するトピック情報を負例トピック情報とする。負例トピック決定部１２２は、負例トピック情報を特定する情報（例えば隠れ変数ztに対応するt）を出力する。
【００３９】
その後、＜方法１＞と同様に、負例シードエンティティ生成部１１３が、負例トピック決定部１２２で選択された負例トピック情報に対応するエンティティを負例シードエンティティRNe0として選択する（＜方法２＞の説明終わり）。
【００４０】
以上の負例シードエンティティRNe0の自動生成方法によれば、正例エンティティとの関連性が低いトピック情報から負例の初期集合（負例シードエンティティ）が自動生成されるため、早期にセマンティックドリフトが起こる可能性を減らすことができ、結果として最終的に得られるエンティティ集合の精度を高めることができる。
【００４１】
素性抽出部１３は、記憶部１１ａに格納されたテキストデータの集合Dから、何れかの正例エンティティRPej-1（初期の正例エンティティRPe0は正例シードエンティティRPe0）を含む文字列である「正例テキスト」を抽出する。正例テキストの例は、テキストデータが含む文、フレーズ、単語列などでである。正例テキストは、正例エンティティRPej-1とテキストデータとの組に対して１個以上抽出される。素性抽出部１３は、抽出した正例テキストとの関係で定まる正例エンティティRPej-1の特徴を表す素性fP'ejを抽出する。この例では、正例エンティティRPej-1を含む正例テキストごとに当該正例エンティティRPej-1の素性fP'ejが抽出される。以下に、正例エンティティRPej-1の素性fP'ejを例示する。
【００４２】
[正例エンティティRPej-1の素性fP'ejの例]
正例エンティティRPej-1の素性fP'ejは、正例テキスト（正例エンティティRPej-1を含む文字列であってテキストデータが含むもの）に対応し、正例テキストと当該正例エンティティRPej-1との関係を表す情報を含む。このような情報であればどのようなものを素性として用いてもよい。
例えば、何れかの正例エンティティRPej-1を含むテキストデータ内における当該正例エンティティRPej-1に一致するエンティティ（一致エンティティ）から前後所定単語数以内（正例テキスト内）に位置する単語（周辺単語）の表記と当該一致エンティティに対する当該周辺単語の相対位置を表す情報との組（表層素性）、一致エンティティ又は周辺単語の品詞情報（品詞素性）や固有名詞情報（固有名詞素性）や構文情報（構文素性）、テキストデータ内での正例エンティティRPej-1の出現回数やテキストデータの集合D内での正例エンティティRPej-1の出現回数（出現回数素性）のうち、少なくとも一つに対応する情報を素性fP'ejとすることができる。
【００４３】
表層素性の例は「ex+1="は"」「ex-1="で"」などであり、これらは周辺単語（前者の例では「は」）と一致エンティティに対する周辺単語の相対位置（前者の例では「ex+1」）を表す情報との組を特定する情報である。「ex」は一致エンティティを表し、「ex+β」は一致エンティティexのβ単語後の単語を表し、「ex-β」は一致エンティティexのβ単語前の単語を表す。品詞素性の例は「ex+1=POS：助詞」「ex=POS：名詞」などであり、これらは一致エンティティに対する周辺単語の相対位置（前者の例では「ex+1」、後者の例では「ex」）と一致エンティティ又は周辺単語の品詞との組を特定する情報である。固有名詞素性の例は「ex=ORG」「ex-1=ORG」などであり、これらは一致エンティティに対する周辺単語の相対位置と一致エンティティ又は周辺単語の固有名詞との組を特定する情報である。構文素性の例は、正例テキスト内での一致エンティティの「係り受けの階層」を表す情報である。出現回数素性の例は、テキストデータやテキストデータの集合Dが含む正例エンティティRPej-1の個数である（[正例エンティティRPej-1の素性fP'ejの例]の説明終わり）。
【００４４】
同様に、素性抽出部１３は、記憶部１１ａに格納されたテキストデータの集合Dから、何れかの負例エンティティRNej-1（初期の負例エンティティRNe0は負例シードエンティティRNe0）を含む文字列である「負例テキスト」を抽出する。負例テキストの例は、テキストデータが含む文、フレーズ、単語列などである。負例テキストは、負例エンティティRNej-1とテキストデータとの組に対して一つ以上抽出される。素性抽出部１３は、抽出した負例テキストとの関係で定まる負例エンティティRNej-1の特徴を表す素性fN'ejを抽出する。負例エンティティRNej-1の素性fN'ejは、負例テキスト（負例エンティティRNej-1を含む文字列であってテキストデータが含むもの）に対応し、負例テキストと当該負例エンティティRNej-1との関係を表す情報を含む。この例では、負例エンティティRNej-1を含む負例テキストごとに当該負例エンティティRNej-1の素性fN'ejが抽出される。負例エンティティRNej-1の素性fN'ejの具体例は、上述した正例エンティティRPej-1の素性fP'ejの場合と同様である。例えば、上述した正例エンティティRPej-1の素性fP'ejの具体例の「正例」が「負例」に「RPej-1」が「RNej-1」に「fP'ej-1」が「fN'ej-1」にそれぞれ置換されたものである。
素性抽出部１３は、正例エンティティRPej-1の素性fP'ejと正例を表すラベル<+1>との組(fP'ej, <+1>)、及び、負例エンティティRNej-1の素性fNejと負例を表すラベル<-1>との組(fN'ej, <-1>)を出力する。
【００４５】
《トピック情報抽出：ステップＳ１４》
正例エンティティRPej-1、負例エンティティRNej-1、正例エンティティRPej-1の素性fP'ejと正例を表すラベル<+1>との組(fP'ej, <+1>)、及び、負例エンティティRNej-1の素性fNejと負例を表すラベル<-1>との組(fN'ej, <-1>)がトピック情報抽出部１４に入力される。
トピック情報抽出部１４は、記憶部１１ｃに格納されたトピック情報付きテキストデータの集合D'から、正例エンティティRPej-1を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報（正例エンティティRPej-1を含むテキストデータに対応するトピック情報）を選択する。このように選択されたトピック情報を、正例エンティティRPej-1とテキストデータとの組に対応する「正例トピック情報」と呼ぶことにする。なお、トピック情報はテキストデータごとに与えられているため、同一のテキストデータが含む各正例テキストには、同じ正例トピック情報が対応する。トピック情報抽出部１４は、正例エンティティRPej-1とテキストデータとの組に対応する正例トピック情報を、当該テキストデータが含む各正例テキストに対応する各正例エンティティRPej-1の素性fP'ejに加え、各正例テキストに対応する各正例エンティティRPej-1の素性をfPejに更新する。すなわち、正例テキストに対応する正例エンティティRPej-1の素性fPejは、当該正例テキストに対応する正例エンティティRPej-1の素性fP'ejと正例トピック情報とを含む。このように正例トピック情報は素性fPejの一部とされる。
【００４６】
同様に、トピック情報抽出部１４は、記憶部１１ｃに格納されたトピック情報付きテキストデータの集合D'から、負例エンティティRNej-1を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報（負例エンティティRNej-1を含むテキストデータに対応するトピック情報）を選択する。このように選択されたトピック情報を、負例エンティティRNej-1とテキストデータとの組に対応する「負例トピック情報」と呼ぶことにする。なお、トピック情報はテキストデータごとに与えられているため、同一のテキストデータが含む各負例テキストには、同じ負例トピック情報が対応する。トピック情報抽出部１４は、負例エンティティRNej-1とテキストデータとの組に対応する負例トピック情報を、当該テキストデータが含む各負例テキストに対応する各負例エンティティRNej-1の素性fN'ejに加え、各負例テキストに対応する各負例エンティティRNej-1の素性をfNejに更新する。すなわち、負例テキストに対応する負例エンティティRNej-1の素性fNejは、負例テキストに対応する負例エンティティRNej-1の素性fN'ejと負例トピック情報とを含む。このように負例トピック情報は素性fNejの一部とされる。
【００４７】
なお、トピック情報付きテキストデータの集合D'が含むすべての正例テキストや負例テキストに対応する素性fPej,fNejが生成されてもよいし、一部の正例テキストや負例テキストに対応する素性fPej,fNejのみが生成されてもよい。以下に、一部の正例テキストや負例テキストに対応する素性fPej,fNejのみが生成される例を示す。
[一部の正例テキストや負例テキストに対応する素性のみが生成される例]
多義的な正例エンティティRPej-1が素性抽出部１３に入力される場合がある。例えば<阪神>のような正例エンティティRPej-1は、球団名として用いられる場合もあれば、企業名として用いられる場合もある。この例では、トピック情報付きテキストデータの集合D'において正例エンティティRPej-1がどのような意味で使用されることが多いのかを推定し、当該推定された意味で正例エンティティRPej-1が使用されていると推定される文字列（正例テキスト及び負例テキスト）のみを対象として正例トピック情報及び負例トピック情報を選択し、正例エンティティRPej-1の素性fPejや負例エンティティRNej-1の素性fNejを生成する。これにより、後述する識別学習部１５での学習精度やエンティティ識別部１６での識別精度の向上が見込まれる。
【００４８】
まず、トピック情報付きテキストデータの集合D'において正例エンティティRPej-1がどのような意味で使用されているかを推定するために、素性抽出部１３は、トピック情報付きテキストデータの集合D'が含む各テキストデータが含む文字列（正例テキスト及び負例テキスト）に、当該文字列のトピックの候補と、当該トピックの候補それぞれの当該文字列に対する適切さを表すトピック候補スコアとを与える。トピック候補スコアは、例えば、前述のトピックモデルTM0を用いて計算されるか、前述のステップＳ１２の過程で得られた情報から計算され、記憶部１１ｃに格納される。以下に、各トピックの候補に対応するzn(n=1,...,Z)とテキストデータが含む文字列vとに対応するトピック候補スコアs(zn,v)を例示する。
s(zn,v)=p(zn|v)=p(v|zn)p(zn)/p(v)      …(9)
なお、p(v|zn), p(zn)は、z=znでのトピックモデルTM0のパラメータとして得られ、p(v)は、z=znでの式(5)の同時確率p(zn,v)とパラメータp(zn)=Σz p(v|z)p(zn)とから得られる。
【００４９】
また、以下のトピック候補スコアs(zn,v)を用いてもよい。
【数１２】
0005542732.tif 000013
その他、式(9)(10)の写像をトピック候補スコアs(zn,v)としてもよい。
【００５０】
次に素性抽出部１３は、同一のトピックの候補に対応するトピック候補スコアを集計し、当該トピックの候補ごとの集計結果を当該トピックの候補それぞれの正例トピックスコアとする。例えば、素性抽出部１３は、式(11)に従ってトピックの候補のそれぞれに対応する各正例トピックスコアS(zn) (n=1,...,Z)を計算し、記憶部１１ｃに格納する。なお、Vpは正例テキストの集合を表す。
【数１３】
0005542732.tif 000014
その他、トピック候補スコアs(zn,v)(v∈Vp)の単調増加関数値を各正例トピックスコアS(zn)(n=1,...,Z)とするなど、その他の集計方法で正例トピックスコアS(zn)が計算されてもよい。
【００５１】
次に素性抽出部１３は、各正例トピックスコアS(zn)(n=1,...,Z)が特定の基準を満たすトピックの候補を選択し、それを正例基準トピックSeとして記憶部１１ｃに格納する。選択される正例基準トピックSeの個数は１個であってもよいし２個以上であってもよい。例えば、最も値の大きな正例トピックスコアS(zn)に対応するトピックの候補が正例基準トピックSeとされてもよいし、値の大きな順に選択された所定個の正例トピックスコアS(zn)にそれぞれ対応するトピックの候補が正例基準トピックSeとされてもよいし、基準値以上の正例トピックスコアS(zn)に対応するトピックの候補が正例基準トピックSeとされてもよい。
【００５２】
素性抽出部１３は、例えば、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキスト（テキストデータが含む文字列）であり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが特定の基準を満たす正例テキストに対応する正例エンティティRPej-1の素性fPejを生成するが、それ以外の正例テキストに対応する正例エンティティの素性を生成しない。また、素性抽出部１３は、例えば、正例基準トピックSeの何れかと同一のトピックの候補に対応する負例テキスト（テキストデータが含む文字列）であり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが特定の基準を満たす負例テキストに対応する負例エンティティRNej-1の素性fNejを生成するが、それ以外の負例テキストに対応する負例エンティティの素性を生成しない。
【００５３】
以下に具体的な素性生成例を示す。
素性生成例１：素性抽出部１３は、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが当該正例テキストに対応するトピック候補スコアの中で最大となる正例テキストに対応する正例エンティティRPej-1の素性fPejを生成するが、それ以外の正例テキストに対応する正例エンティティの素性を生成しない。また、例えば、素性抽出部１３は、正例基準トピックSeの何れかと同一のトピックの候補に対応する負例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが当該負例テキストに対応するトピック候補スコアの中で最大となる負例テキストに対応する負例エンティティRNej-1の素性fNejを生成するが、それ以外の負例テキストに対応する負例エンティティの素性を生成しない。
【００５４】
素性生成例２：素性抽出部１３は、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが基準値以上となる正例テキストに対応する正例エンティティRPej-1の素性fPejを生成するが、それ以外の正例テキストに対応する正例エンティティの素性を生成しない。また、例えば、素性抽出部１３は、正例基準トピックSeの何れかと同一のトピックの候補に対応する負例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが基準値以上となる負例テキストに対応する負例エンティティRNej-1の素性fNejを生成するが、それ以外の負例テキストに対応する負例エンティティの素性を生成しない。
【００５５】
素性生成例３：素性抽出部１３は、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが当該正例テキストに対応するトピック候補スコアの中で最大となる正例テキストに対応する正例エンティティRPej-1の素性fPejを生成するが、それ以外の正例テキストに対応する正例エンティティの素性を生成しない。一方、負例エンティティRNej-1の素性fNejについては、すべての負例テキストに対応する負例エンティティRNej-1の素性fNejが生成される。
【００５６】
素性生成例４：素性抽出部１３は、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが基準値以上となる正例テキストに対応する正例エンティティRPej-1の素性fPejを生成するが、それ以外の正例テキストに対応する正例エンティティの素性を生成しない。一方、負例エンティティRNej-1の素性fNejについては、すべての負例テキストに対応する負例エンティティRNej-1の素性fNejが生成される（[一部の正例テキストや負例テキストに対応する素性のみが生成される例]の説明終わり）。
【００５７】
トピック情報抽出部１４は、正例エンティティRPej-1の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、負例エンティティRNej-1の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)を出力する。
【００５８】
図５Ｂは、トピック情報抽出部１４が出力する組(fPej, <+1>)及び組(fNej, <-1>)を例示した図である。なお、「POS」は品詞素性を表し、「BOS」は対応する位置に単語が存在しないことを表す。例えば、テキストデータ<T1>が含む正例テキストに対応する正例エンティティex=<広島>の素性はfPej=（ex-2="ヤクルト", ex-2=POS：名詞, ex-1="VS", ex-1=POS：名詞, ex+1="の", ex+1=POS：助詞, ex+2="ヤクルト", ex+2=POS：助詞, トピック情報=(z2,08))である。
【００５９】
《識別学習：ステップＳ１５》
正例エンティティRPej-1の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、負例エンティティRNej-1の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)は識別学習部１５に入力される。正例エンティティRPej-1の素性fPejは正例に対する教師あり学習データとして利用でき、負例エンティティRNej-1の素性fNejは負例に対する教師あり学習データとして利用できる。識別学習部１５は、正例エンティティRPej-1の素性fPejと負例エンティティRNej-1の素性fNejとを教師あり学習データとした学習処理によって、識別モデルMEejを生成する。この識別モデルMEejは、任意のエンティティの素性を入力として当該エンティティが正例エンティティか負例エンティティかを識別するための情報を出力する関数である。このような識別モデルMEejであればどのようなモデルであってもよい。
識別モデルMEejの例は、正則化項付き最大エントロピーモデル（参考文献１「Berger, A.L. , Pietra, V.J.D. and Pietra, "A maximum entropy approach to natural language processing", S.A.D. 1996.」）、正則化項付きの条件付きランダム場(CRFs、参考文献２「Lafferty, J. and McCallum, A. and Pereira, F. "Conditional random fields: Probabilistic models for segmenting and labeling sequence data", MACHINE LEARNING, pp. 282-289, 2001.」、サポートベクタマシン(SVMs、参考文献３「Vapnik, V. N. "The nature of statistical learning theory", Springer Verlag, 1995.」)などである。各例の識別モデルMEejの学習では、教師あり学習データとして用いられた正例エンティティRPej-1の素性fPej及び負例エンティティRNej-1の素性fNejに対し、当該識別モデルMEejへの影響度の大きさを表す指標（素性に対する重み）が付され、これらが識別モデルMEejを特定するパラメータとなる。特に参考文献１−３で例示したようなモデルは、すべての素性に対して重みが付されるモデル（例えば正則化項のない最大エントロピーモデル)ではなく、識別に有効と判断された素性のみについて重みが付される。以下、正則化項付き最大エントロピーモデルの具体例を示す。
【００６０】
正則化項付き最大エントロピーモデルが用いられる場合、識別学習部１５は、(x,y)∈{(fPej, <+1>), (fNej, <-1>)}を学習データとして用い、条件付確率
【数１４】
0005542732.tif 000015
に対するエントロピー
【数１５】
0005542732.tif 000016
を最大化する各重み（パラメータ）λqに対応するPλ(y|x)であるP(y|x)を識別モデルMEejとする。ただし、
【数１６】
0005542732.tif 000017
であり、qは各学習データ(x,y)の組にそれぞれ対応するラベルであり、p'(x)は学習データ(x,y)におけるxの出現頻度であり、fq(x,y)はqに対応する素性関数(feature function)である。
【００６１】
ここで、各重みλqはqに対応する学習データ(x,y)の素性fPej又はfNejの識別モデルMEejへの影響度の大きさを表す指標となる。また、正則化項付き最大エントロピーモデルの例では、すべての学習データ(x,y)の素性fPej又はfNejに対して重みλqが付されるわけではなく、重要度の低い素性に対応する重みλqは付されない。すなわち、重要度の低い素性に対応する重みλqは0とされる。
【００６２】
また、ステップＳ１４で一部の正例テキストや負例テキストに対応する素性fPej,fNejのみが生成されていた場合には、一部の正例テキストや負例テキストに対応する素性fPej,fNejに対応する(x,y)∈{(fPej, <+1>), (fNej, <-1>)}のみが学習データとされる。例えば、前述した「一部の正例テキストや負例テキストに対応する素性のみが生成される例」のように素性fPej,fNejが生成された場合には、前述した正例基準トピックの何れかと同一のトピック候補に対応する正例テキスト（テキストデータが含む文字列）であり、なおかつ、当該同一のトピック候補のトピック候補スコアが特定の基準を満たす正例テキストに対応する正例エンティティ及び／又は負例エンティティの素性のみが教師あり学習データとされる。
学習処理によって生成された識別モデルMEejは記憶部１１ｄに格納される。例えば、学習処理によって生成された識別モデルMEejのパラメータが記憶部１１ｄに格納される。
【００６３】
《エンティティ識別：ステップＳ１６》
エンティティ識別部１６は、記憶部１１ｃに格納されたトピック情報付きテキストデータの集合D'から何れかのトピック情報付きテキストデータを選択し、選択したトピック情報付きテキストデータが含むテキストデータが含む文字列であるエンティティを対象エンティティRDejとする。
【００６４】
なお、トピック情報付きテキストデータの集合D'からすべてのトピック情報付きテキストデータが選択されてもよいが、すべてのテキストデータを識別対象とすることは計算効率上好ましくない。そのため、特定の方法で識別対象を限定して選択を行うことが望ましい。以下にその具体例を示す。
【００６５】
[選択方法の例]
選択方法の例１：
選択方法の例１では、エンティティ識別部１６は、識別学習部１５で教師あり学習データとして用いられた正例エンティティRPej-1の素性fPej及び負例エンティティRNej-1の素性fNejのうち、それらから生成された識別モデルMEejへの影響度の大きさを表す指標（例えば前述の重みλq）が特定の基準を満たす素性、つまり、当該識別モデルMEejへの影響度が大きな素性fPej及び／又はfNejを選択する。例えば、エンティティ識別部１６は、前述の重みλqの絶対値が閾値よりも大きな素性fPej及び／又はfNejを選択する。
また、エンティティ識別部１６は、選択した素性fPej及び／又はfNejに対応する文字列を含むテキストデータを含むトピック情報付きテキストデータを選択し、当該選択したトピック情報付きテキストデータが含むテキストデータが含む文字列であるエンティティを対象エンティティRDejとする。例えば、エンティティ識別部１６は、選択した素性fPej及び／又はfNejから表層素性の単語を抽出し、当該表層素性の単語を含むテキストデータを含むトピック情報付きテキストデータを選択する。一例を挙げると、選択された素性がエンティティexの前２単語が表層素性と品詞素性の組み合わせで成り立つ素性FNC(x−2=“POS:名詞”, x−1=“で”)（FNCは関数）であった場合、エンティティ識別部１６は、選択した素性FNC(x−2=“POS:名詞”, x−1=“で”)から表層素性の単語“で”を抽出し、単語“で”を含むテキストデータを含むトピック情報付きテキストデータを選択する。
【００６６】
選択方法の例２：
選択方法の例２では、エンティティ識別部１６は、前述した正例基準トピックSeの何れかと同一のトピック候補に対応する正例テキスト（テキストデータが含む文字列）であり、なおかつ、当該同一のトピック候補のトピック候補スコアが特定の基準を満たす正例テキストが含むエンティティを対象エンティティRDejとする。
例えば、エンティティ識別部１６は、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが当該正例テキストに対応するトピック候補スコアの中で最大となる正例テキストが含むエンティティを対象エンティティRDejとする。
或いは、例えば、エンティティ識別部１６は、正例基準トピックSeの何れかと同一のトピックの候補に対応する正例テキストであり、なおかつ、当該同一のトピックの候補に対応するトピック候補スコアが基準値以上となる正例テキストが含むエンティティを対象エンティティRDejとする（[選択方法の例]の説明終わり）。
【００６７】
素性抽出部１３は、記憶部１１ａに格納されたテキストデータの集合Dから、対象エンティティRDejを含む文字列である「対象テキスト」を抽出する。対象テキストの例は、テキストデータが含む文、フレーズ、単語列などである。対象テキストは、対象エンティティRDejとテキストデータとの組に対して１個以上抽出される。
素性抽出部１３は、抽出した対象テキストとの関係で定まる対象エンティティRDejの特徴を表す素性fD'ejを抽出する。対象エンティティRDejの素性fD'ejは、対象テキスト（対象エンティティRDejを含む文字列であってテキストデータに含まれるもの）に対応し、対象テキストと当該対象エンティティRDejとの関係を表す情報を含む。具体的な処理は、前述した正例エンティティRPej-1の素性fP'ejを抽出する場合と同様である。例えば、「正例エンティティRPej」が「対象エンティティRDej」に「素性fP'ej」が「素性fD'ej」に「正例テキスト」が「対象テキスト」に置換される以外は、前述した正例エンティティRPej-1の素性fP'ejを抽出する処理と同じである。
【００６８】
対象テキストに対応する対象エンティティRDejの素性fD'ejは、トピック情報抽出部１４に入力される。トピック情報抽出部１４は、記憶部１１ｃから、対象テキストを含むトピック情報付きテキストデータが含むトピック情報（対象テキストに対応するトピック情報）を選択する。このように選択されたトピック情報を、対象エンティティRDejとテキストデータとの組に対応する「対象トピック情報」と呼ぶことにする。なお、トピック情報はテキストデータごとに与えられているため、同一のテキストデータが含む各対象テキストには、同じ対象トピック情報が対応する。トピック情報抽出部１４は、対象エンティティRDejとテキストデータとの組に対応する対象トピック情報を、当該テキストデータが含む各対象テキストに対応する各対象エンティティRDejの素性fD'ejに加え、各対象テキストに対応する各対象エンティティRDejの素性をfDejに更新する。すなわち、対象テキストに対応する対象エンティティRDejの素性fDejは、当該対象テキストに対応する対象エンティティRDejの素性fD'ejと対象トピック情報とを含む。このように対象トピック情報は素性fDejの一部とされる。
【００６９】
対象エンティティRDejの素性fDejは、エンティティ識別部１６に入力される。エンティティ識別部１６は、対象エンティティRDejの素性fDejを記憶部１１ｄから読み出した識別モデルMEejに入力し、対象エンティティRDejが正例エンティティか負例エンティティかを識別する。例えば、識別モデルMEejとして正則化項付き最大エントロピーモデルが用いられる場合には、x=fDejを識別モデルMEejであるP(y|x)に代入してP(1|x)とP(-1|x)とを求め、それらに対応する指標（信頼度など）と閾値とを比較することで、対象エンティティRDejが正例エンティティか負例エンティティかを識別する。
【００７０】
ここで、対象エンティティが正例エンティティであると識別された場合、エンティティ識別部１６は、対象エンティティRDejを新たな正例エンティティRPejとして記憶部１１ｅに格納する。一方、対象エンティティが負例エンティティであると識別された場合、エンティティ識別部１６は、対象エンティティRDejを新たな負例エンティティRNejして記憶部１１ｅに格納する。
【００７１】
《収束判定：ステップＳ１７−Ｓ１９》
収束判定部１７は、収束条件を満たしたかを判定する。以下に収束条件を例示する。
[収束条件の例]
収束条件の例１：この例の収束判定部１７は、正例エンティティRPejに新たに割り当てられる対象エンティティRDejが存在しない場合に、収束条件を満たしたと判断する。
収束条件の例２：この例の収束判定部１７は、ステップＳ１３からＳ１７のイテレーションを基準回数以上繰り返しても新たに割り当てられる対象エンティティRDej-1が存在しない場合に、収束条件を満たしたと判断する。
収束条件の例３：この例の収束判定部１７は、jの値が基準値以上となった場合に収束条件を満たしたと判断する（[収束条件の例]の説明終わり／ステップＳ１７）。
収束判定部１７が収束条件を満たしたと判断した場合、ステップＳ１３からＳ１７のイテレーションが終了し、出力部１８が記憶部１１ｅに格納されているすべての正例エンティティRPjeを出力して処理を終了する（ステップＳ１９）。それ以外の場合は、制御部１９がj+1を新たなjの値とし（ステップＳ１８）、記憶部１１ｅに格納されている正例エンティティRPje 及び負例エンティティRNje を素性抽出部１３に入力し、ステップＳ１３からＳ１６のイテレーションが実行される。
【００７２】
＜識別事例＞
第１実施形態における具体的な識別事例を例示する。
この例では２つのトピックの候補に対応するトピックモデルTM0を用いる。具体的には「球団名」と「企業名」とがトピックの候補とされたトピックモデルTM0を用いる。また、正例シードエンティティが<広島>であり、負例シードエンティティが<毎日新聞>であり、ユーザは球団名についてのエンティティのセットを要求していると仮定する。
また、トピックモデルTM0を用いて計算された、正例シードエンティティ<広島>を含むテキストデータd1に対するトピック「球団名」の事後確率がp(球団名|d1)=0.9であり、当該テキストデータd1に対するトピック「企業名」の事後確率がp(企業名|d1)=0.1であったとする。一方、負例シードエンティティ<毎日新聞>を含むテキストデータd2に対するトピック「球団名」の事後確率がp(球団名|d2)=0.1であり、当該テキストデータd2に対するトピック「企業名」の事後確率がp(企業名|d2)=0.9であったとする。ここで前述の「トピック情報の例１(N=2)」のようにトピック情報が定められていたとすると、テキストデータd1に対するトピック情報は((球団名,0.9), (企業名,0.1))となり、テキストデータd2に対するトピック情報は((球団名,0.1), (企業名,0.9))となる（ステップＳ１２）。
【００７３】
この例ではステップＳ１３の素性抽出が行われず、トピック情報のみが素性として用いられたとする。その場合、正例シードエンティティ<広島>の素性は((球団名,0.9), (企業名,0.1))となり、負例シードエンティティ<毎日新聞>の素性は((球団名,0.1), (企業名,0.9))となる。よって、学習データは
(((球団名,0.9), (企業名,0.1)), <+1>)
(((球団名,0.1), (企業名,0.9)), <-1>)
となる（ステップＳ１４）。
このような学習データを元に識別モデルを学習する（ステップＳ１５）。学習の結果、「球団名」に対して正例側の重みが大きく、「企業名」に対して正例側の重みの小さな識別モデルが得られるであろう。
【００７４】
次に、シードエンティティに含まれない対象エンティティ<阪神>が入力されたとする。ここで、上記と同様に計算された、対象エンティティ<阪神>を含むテキストデータd3に対するトピック「球団名」の事後確率がp(球団名|d1)=0.8であり、当該テキストデータd3に対するトピック「企業名」の事後確率がp(企業名|d1)=0.2であったとする。その場合、対象エンティティ<阪神>の素性は((球団名,0.8), (企業名,0.2))となる。この素性((球団名,0.8), (企業名,0.2))を上記の識別モデルに識別させてみると、その結果から素性((球団名,0.8), (企業名,0.2))は正例エンティティに対応すると判断できる（ステップＳ１６）。
【００７５】
このようにトピック情報を素性の少なくとも一部として用いることで、ユーザの要求を表した正例シードエンティティ及び負例シードエンティティに沿った識別が適切に行われ、セマンティックドリフトを抑えたエンティティの抽出が可能となる。これがトピック情報を用いるメリットである。特にset expansionでは表した正例シードエンティティの数が少ない場合が多く、利用できる情報が非常に限られるため、周辺文脈だけを素性としたのではデータが疎となり、識別精度が低下する場合が多い。トピック情報は、このように利用可能なデータの少ない場面での識別において有効な素性として作用する。
【００７６】
＜第１実施形態の特徴＞
以上のように、本形態の方法ではトピック情報を素性の少なくとも一部として用いたため、セマンティックドリフトを抑制することができる。また、本形態の方法はリソースであるテキストデータの種類によらず利用でき、適用範囲が広い。
【００７７】
〔第２実施形態〕
第２実施形態は第１実施形態の変形例であり、エンティティの属性を用いてセマンティックドリフトを抑制する。「属性」とは、エンティティの特徴を表すテキストデータ中の文字列である。このような文字列の例は、名詞、単語、単語列、フレーズ、文などである。属性の具体例はエンティティの前後W単語以内に存在する名詞である。なお、Wはウィンドウサイズを表す1以上の整数である。例えば「阪神の試合速報・・・」というテキストデータ中の<阪神>がエンティティであり、ウィンドウサイズをW=3とした場合、<試合>と<速報>がエンティティ<阪神>の属性の候補とされる。
【００７８】
互いに関連のある複数のエンティティには同一の属性が対応する。例えば、球団名であるエンティティ<広島>と同じく球団名であるエンティティ<ヤクルト>とは、同じ<試合>や<投手>などの属性が対応する。そのため、属性は探索対象となるエンティティが満たすべき制約条件となる。このことを利用し、第２実施形態では、エンティティとその属性との組を用いてエンティティの識別を行う。例えば、正例シードエンティティを球団名である<広島>とし、同じく球団名である<ヤクルト>というエンティティを獲得することを狙っていると仮定する。この場合、これらのエンティティに共通する属性は<試合>や<投手>などであり、例えば、正例シードエンティティ<広島>とその属性<試合>との組を用いてエンティティの識別が行われる。ここで、球団名である<ヤクルト>は正例エンティティであるが、<ヤクルト>には飲料名としての意味もある（例えば、図５ＡのT5）。よって<ヤクルト>はセマンティックドリフトが起こりやすいエンティティである。しかしながら、飲料名であるエンティティ<ヤクルト>の属性は<試合>や<投手>などではなく<乳酸菌>や<飲料>などである。本形態では、エンティティとその属性との組を用いることでエンティティがどのような意味を指すかを特定でき、セマンティックドリフトを軽減できる。
以下では第１実施形態の相違点を中心に説明し、第１実施形態と共通する事項については説明を省略する。また、第１実施形態と共通する部分については第１実施形態と同じ参照番号を用いる。
【００７９】
＜構成＞
図６は、第２実施形態のデータ抽出装置２の機能構成を例示するためのブロック図である。
図６に例示するように、データ抽出装置２は、記憶部１１ａ,１１ｄ,１１ｅ,２１ｄ,２１ｅ、初期属性集合生成部２２、属性識別用素性抽出部２３ａ、エンティティ識別用素性抽出部２３ｂ、属性識別学習部２５ａ、エンティティ識別学習部２５ｂ、属性識別部２６ａ、エンティティ識別部２６ｂ、収束判定部１７、出力部１８、及び制御部１９を有し、制御部１９の制御のもと各処理を実行する。
なお、データ抽出装置２は、例えば、公知又は専用のコンピュータに特別なプログラムが読み込まれて構成される特別な装置である。例えば、記憶部１１ａ,１１ｄ,１１ｅ,２１ｄ,２１ｅは、ハードディスクや半導体メモリなどであり、初期属性集合生成部２２、属性識別用素性抽出部２３ａ、エンティティ識別用素性抽出部２３ｂ、属性識別学習部２５ａ、エンティティ識別学習部２５ｂ、属性識別部２６ａ、エンティティ識別部２６ｂ、収束判定部１７、出力部１８、及び制御部１９は、特別なプログラムが読み込まれたCPUなどである。また、これらの少なくとも一部が集積回路などによって構成されてもよい。
【００８０】
＜事前処理＞
事前処理として、記憶部１１ａにテキストデータの集合Dが格納される。テキストデータの集合Dは第１実施形態と同様である。
【００８１】
＜データ抽出処理＞
図７は、第２実施形態のデータ抽出装置２のデータ抽出処理を例示するための図である。本形態では、エンティティと属性の更新を交互に行うco-training方式を用いる。すなわち、ステップＳ２２−Ｓ２４では正例及び負例エンティティの更新は行われず、正例及び負例属性の更新のみが行われる。一方ステップＳ２５−Ｓ２７では正例及び負例属性の更新は行われず、正例及び負例エンティティの更新のみが行われる。以下、図７を用いてデータ抽出装置２のデータ抽出処理を例示する。
【００８２】
《初期化：ステップＳ１１》
制御部１９がjの値をj=1に初期化する。
《初期属性集合生成：ステップＳ２１》
正例シードエンティティRPe0と負例シードエンティティRNe0とが初期属性集合生成部２２に入力される。例えば、正例シードエンティティとしてRPe0=<広島>、負例シードエンティティとしてRNe0=<日本>が入力される。正例シードエンティティRPe0は、ユーザによって選択されたものである。負例シードエンティティRNe0は、ユーザによって選択されたものであってもよいし、テキストデータの集合Dから半自動で生成されたものであってもよい。以下に負例シードエンティティRNe0を半自動で生成する方法を例示する。
【００８３】
[負例シードエンティティRNe0の半自動生成方法の例]
負例シードエンティティ生成部（図示せず）が、テキストデータの集合Dから、何れの正例シードエンティティRPe0も後述する正例属性RPa0も含まないテキストデータを所定個数抽出し、抽出した各テキストデータから１つずつランダムに名詞を選択し、それらを負例エンティティ候補として出力する。表示部（図示せず）はこれらの負例エンティティ候補を表示し、これらから負例シードエンティティを選択するようにユーザに促す表示を行う。ユーザによる選択内容は負例シードエンティティ生成部に入力され、負例シードエンティティ生成部は、選択された負例エンティティ候補を正例シードエンティティRPe0として出力する（[負例シードエンティティRNe0の半自動生成方法の例]の説明終わり）。
初期属性集合生成部２２は、入力された正例シードエンティティRPe0と負例シードエンティティRNe0と記憶部１１ａに格納されたテキストデータの集合Dとを用い、正例シードエンティティRPe0の属性を表す文字列である正例属性RPa0の集合と、負例シードエンティティRNe0の属性を表す文字列である負例属性RNa0の集合とを生成する。
【００８４】
（Ａ）まず初期属性集合生成部２２が、正例シードエンティティRPe0を含むテキストデータの集合から当該正例エンティティRPe0以外の何れかの文字列を正例属性候補として選択する。例えば、初期属性集合生成部２２は、記憶部１１ａから正例シードエンティティRPe0を含む正例テキストを所定数取得し、各正例テキストにおいて正例シードエンティティRPe0と直接又は１文節を挟む係り受け関係にある単語のみを正例属性候補として抽出する。
【００８５】
（Ｂ）次に初期属性集合生成部２２は、正例シードエンティティRPe0を含む文字列の集合内に当該正例属性候補が含まれる頻度とすべてのテキストデータからなる集合D内に当該正例属性候補が含まれる頻度との違いの大きさを表す指標（統計量）を求め、当該指標が大きいものから所定数の正例属性候補、つまり、これらの頻度の違いが大きい当該正例属性候補を正例属性RPa0（正例属性の初期値）とする。これらの頻度の違いが大きい正例属性候補ほど正例シードエンティティRPe0との関連が強く、正例シードエンティティRPe0の正例属性RPa0にふさわしいといえる。以下にこのような指標を例示するが、その他の統計量を用いてもかまわない。
【００８６】
[指標の例]
指標の例１：
指標の例１では、以下のχ2値を指標として用いる。
【数１７】
0005542732.tif 000018
【数１８】
0005542732.tif 000019
χ2値が高い正例属性候補αほど、正例シードエンティティRPe0と関係の深い、即ち属性としてふさわしいといえる。よって、この例の初期属性集合生成部２２は、χ2値が高い正例属性候補αを正例属性RPa0として抽出する。例えば、χ2値が基準値以上となる正例属性候補αを正例属性RPa0とする。
【００８７】
指標の例２：
指標の例２では、正例シードエンティティRPe0と正例属性候補αとの２項における以下のPMIを指標として用いる。
【数１９】
0005542732.tif 000020
ここで|RPe0, α|は正例シードエンティティRPe0の集合と正例属性候補αとの組の出現頻度を表す。また、*はRPe0又はαのワイルドカードを表す。
PMI値が大きい正例属性候補αほど、正例シードエンティティRPe0と関係の深い、即ち属性としてふさわしいといえる。よって、この例の初期属性集合生成部２２は、PMI値が大きな正例属性候補αを正例属性RPa0として抽出する。例えば、PMI値が基準値以上となる正例属性候補αを正例属性RPa0とする（[指標の例]の説明終わり）。
【００８８】
この方法では、まず（Ａ）で構文情報を用いて正例属性候補を粗く絞り込むため、（Ｂ）での計算時間を大幅に削減することができる。また、上記（Ａ）,（Ｂ）により正例属性RPa0（正例属性の初期値）を抽出した後、適切な属性が選択されているか否かを人手によりチェックし、最終的な正例属性RPa0を決定してもよい。
【００８９】
初期属性集合生成部２２は、負例シードエンティティRNe0についても同様の処理を行い、負例属性RNa0を抽出する。すなわち、初期属性集合生成部２２は、負例シードエンティティRNe0を含むテキストデータの集合から当該負例シードエンティティRNe0以外の何れかの文字列を負例属性候補として選択し、負例シードエンティティRNe0を含む文字列の集合内に当該負例属性候補が含まれる頻度とすべてのテキストデータからなる集合D内に当該負例属性候補が含まれる頻度との違いの大きさを表す指標が条件を満たす負例属性候補、つまり、これらの頻度の違いが大きな当該負例属性候補を負例属性RNa0（負例属性の初期値）とする。
【００９０】
また、上述した方法の代わりに、初期属性集合生成部２２が、負例シードエンティティRNe0とそれに対応する負例属性RNa0とを半自動で選択してもよい。例えば、初期属性集合生成部２２は、テキストデータの集合Dから、何れの正例シードエンティティRPe0も正例属性RPa0も含まないテキストデータを所定個数抽出し、抽出した各テキストデータから２つずつランダムに名詞を選択し、一方を負例エンティティ候補、他方を負例属性候補として出力する。表示部（図示せず）はこれらを表示し、これらから負例シードエンティティRNe0とそれに対応する負例属性RNa0とを選択するようにユーザに促す表示を行う。ユーザによる選択内容は初期属性集合生成部２２に入力され、初期属性集合生成部２２は選択された負例シードエンティティRNe0及び負例属性RNa0の集合を出力する。
【００９１】
初期属性集合生成部２２は、正例シードエンティティRPe0の集合、負例シードエンティティRNe0の集合、抽出した正例属性RPa0の集合、及び負例属性RNa0の集合を出力する。例えば、初期属性集合生成部２２は、図４のテキストデータの中から、正例シードエンティティRPe0を含むテキストとしてT1，T2，T10に対応するものを取得し、上記の処理によってT1,T2に対応するテキストが含む正例属性RPa0の集合{<VS>，<第１戦>，<投手>}を抽出して出力する。同様に初期属性集合生成部２２は、例えば、負例シードエンティティRNe0を含むテキストとしてT7に対応するものを取得し、負例属性RNa0の集合R{<人口>}を抽出して出力する。
【００９２】
《属性識別用素性抽出：ステップＳ２２》
正例エンティティRPej-1の集合、負例エンティティRNej-1の集合、正例属性RPaj-1の集合、及び負例属性RNaj-1の集合が、属性識別用素性抽出部２３ａに入力される。
属性識別用素性抽出部２３ａは、正例エンティティRPej-1の集合から選択した第１正例エンティティと正例属性RPaj-1の集合から選択した第１正例属性との組である第１正例エンティティ−正例属性ペアPP1（RPej-1,RPaj-1）と、負例エンティティRNej-1の集合から選択した第１負例エンティティと負例属性RNaj-1の集合から選択した第１負例属性との組である第１負例エンティティ−負例属性ペアPN1（RNej-1,RNaj-1）とを生成する。PP1（RPej-1,RPaj-1）やPN1（RNej-1,RNaj-1）は、RPej-1とRPaj-1やRNej-1とRNaj-1の採り得るすべての組み合わせについて生成されてもよいし、それらの一部の組み合わせのみについて生成されてもよい。
次に属性識別用素性抽出部２３ａは、記憶部１１ａに格納されたテキストデータの集合Dから、PP1（RPej-1,RPaj-1）の正例エンティティRPej-1と正例属性RPaj-1との組を含む文字列である「第１正例テキスト」を選択する。第１正例テキストの例は、テキストデータが含む文、フレーズ、単語列などである。第１正例テキストは、第１正例エンティティ−正例属性ペアPP1（RPej-1,RPaj-1）とテキストデータとの組に対して１個以上抽出される。
属性識別用素性抽出部２３ａは、第１正例テキストに対する第１正例エンティティ−正例属性ペアPP1（RPej-1,RPaj-1）の特徴を表す情報を当該第１正例エンティティ−正例属性ペアPP1（RPej-1,RPaj-1）の素性fPajとする。この例では、第１正例テキストごとにPP1（RPej-1,RPaj-1）の素性fPajが抽出される。PP1（RPej-1,RPaj-1）の素性fPajの例は、第１正例テキスト（正例エンティティRPej-1及び正例属性RPaj-1を含む文字列であってテキストデータに含まれるもの）と当該第１正例エンティティRPej-1及び第１正例属性RPaj-1との関係を表す情報である。
【００９３】
例えば、何れかの正例エンティティRPej-1及び正例属性RPaj-1を含むテキストデータ内における当該正例属性RPaj-1に一致する文字列（一致属性）から前後所定単語数以内（第１正例テキスト内）に位置する単語（周辺単語）の表記と当該一致属性に対する当該周辺単語の相対位置を表す情報との組（表層素性）、一致属性又は周辺単語の品詞情報（品詞素性）や固有名詞情報（固有名詞素性）や構文情報（構文素性）、テキストデータ内での一致属性の出現回数やテキストデータの集合D内での一致属性の出現回数（出現回数素性）のうち、少なくとも一つに対応する情報を素性fPajとすることができる。この具体例は、正例属性を基準とする以外、第１実施形態の[正例エンティティRPej-1の素性fP'ejの例]と同様である。例えば、正例エンティティRPej-1がex=<阪神>であり、正例属性RPaj-1がey=<投手>であり、第１正例テキストが「阪神/は/投手/陣/が/好調」であるとすると、抽出される素性fPajの例は以下のようになる。ここでは素性抽出の範囲をエンティティ及び属性の前後２単語以内と仮定している。
表層素性：「ex+1="は"」「ex+2=ey」「ey−2=ex」，「ey−1="は"」，「ey+1="陣"」，「ey+2="が"」
品詞素性：「ex+1=助詞」「ey−1=助詞」，「ey + 1=名詞」，「ey + 1=助詞」
固有名詞素性：「ex=ORG(組織名)」「ey−2=ORG(組織名)」
構文素性：「exの階層=eyの階層」(両方「好調」に係る)
【００９４】
同様に、属性識別用素性抽出部２３ａは、記憶部１１ａに格納されたテキストデータの集合Dから、PN1（RNej-1,RNaj-1）の負例エンティティRNej-1と負例属性RNaj-1との組を含む文字列である「第１負例テキスト」を選択する。第１負例テキストの例は、テキストデータが含む文、フレーズ、単語列などである。第１負例テキストは、第１負例エンティティ−負例属性ペアPN1（RNej-1,RNaj-1）とテキストデータとの組に対して１個以上抽出される。
属性識別用素性抽出部２３ａは、第１負例テキストに対する第１負例エンティティ−負例属性ペアPN1（RNej-1,RNaj-1）の特徴を表す情報を当該第１負例エンティティ−負例属性ペアPN1（RNej-1,RNaj-1）の素性fNajとする。この例では、第１負例テキストごとにPN1（RNej-1,RNaj-1）の素性fNajが抽出される。PN1（RNej-1,RNaj-1）の素性fNajの例は、第１負例テキスト（負例エンティティRNej-1及び負例属性RNaj-1を含む文字列であってテキストデータに含まれるもの）と当該第１負例エンティティRNej-1及び第１負例属性RNaj-1との関係を表す情報である。その具体例は、上述した正例に対応するPP1（RPej-1,RPaj-1）の素性fPajの場合と同様である。
【００９５】
属性識別用素性抽出部２３ａは、PP1（RPej-1,RPaj-1）の素性fPajと正例を表すラベル<+1>との組(fPaj, <+1>)、及び、PN1（RNej-1,RNaj-1）の素性fNajと負例を表すラベル<-1>との組(fNaj, <-1>)を出力する。
図８Ａは、属性識別用素性抽出部２３ａが出力する組(fPaj, <+1>)及び組(fNaj, <-1>)を例示した図である。この例では、エンティティ(ex)と属性(ey)の前後２単語の表記を素性としている。
【００９６】
《属性識別学習：ステップＳ２３》
PP1（RPej-1,RPaj-1）の素性fPajと正例を表すラベル<+1>との組(fPaj, <+1>)、及び、PN1（RNej-1,RNaj-1）の素性fNajと負例を表すラベル<-1>との組(fNaj, <-1>)が属性識別学習部２５ａに入力される。属性識別学習部２５ａは、PP1（RPej-1,RPaj-1）の素性fPajとPN1（RNej-1,RNaj-1）の素性fNajとを教師あり学習データとした学習処理によって、第１識別モデルMEajを生成する。この第１識別モデルMEajは、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である。このような識別モデルMEejであればどのようなモデルであってもよい。例えば、前述の識別モデルMEejと同様に第１識別モデルMEajを生成すればよい。
学習処理によって生成された第１識別モデルMEajは記憶部２１ｄに格納される。例えば、学習処理によって生成された第１識別モデルMEajのパラメータが記憶部２１ｄに格納される。
【００９７】
《属性識別：ステップＳ２４》
属性識別部２６ａは、記憶部１１ａに格納されたテキストデータの集合Dから何れかのテキストデータを選択し、選択した当該テキストデータが含む文字列を第１対象エンティティRDejとして選択する。また属性識別部２６ａは、選択した当該テキストデータから当該第１対象エンティティRDejと異なる文字列を第１対象属性RDajとして選択する。そして属性識別部２６ａは、第１対象エンティティRDejと第１対象属性RDajとの組を第１対象エンティティ−対象属性ペアPD1（RDej,RDaj）とする。
【００９８】
なお、テキストデータの集合Dからすべてのテキストデータが選択されてもよいが、すべてのテキストデータを対象とすることは計算効率上好ましくない。そのため、特定の方法で対象を限定して選択を行うことが望ましい。以下にその具体例を示す。
【００９９】
[選択方法の例]
第１条件：
属性識別部２６ａは、何れかの正例エンティティRPj-1e又は負例エンティティRNj-1eを含み、かつ当該エンティティRPj-1e又RNj-1eから任意のウィンドウサイズ内（ここでは３単語とする）に名詞を含むテキストデータを選択し、当該ウィンドウサイズ内の名詞を属性候補とする。
【０１００】
第２条件：
第１条件だけでは対象の数が膨大になる場合があるため、属性識別部２６ａは、属性識別学習部２５ａで教師あり学習データとして用いられたPP1（RPej-1,RPaj-1）の素性fPajとPN1（RNej-1,RNaj-1）の素性fNajのうち、それらから生成された第１識別モデルMEajへの影響度の大きさを表す指標（例えば前述の重みλq）が特定の基準を満たす素性、つまり、当該第１識別モデルMEajへの影響度が大きな素性fPaj及び／又はfNajを選択する。例えば、属性識別部２６ａは、前述の重みλqの絶対値が閾値よりも大きな素性fPaj及び／又はfNajを選択する。
【０１０１】
属性識別部２６ａは、選択した素性fPaj及び／又はfNajに対応する文字列を含むテキストデータを、第１条件で選択されたテキストデータの集合から選択する。属性識別部２６ａは、当該選択したテキストデータが含む文字列を第１対象エンティティRDej及び第１対象属性RDajとする。例えば、属性識別部２６ａは、選択した素性fPaj及び／又はfNajから表層素性の単語を抽出し、当該表層素性の単語を含むテキストデータを第１条件で選択されたテキストデータの集合から選択し、当該選択したテキストデータが含む文字列を第１対象エンティティRDej及び第１対象属性RDajとする。
【０１０２】
一例を挙げると、選択された素性がエンティティexの前２単語が表層素性と品詞素性の組み合わせで成り立つ素性FNC(x−2=“POS:名詞”, x−1=“VS”)であった場合、属性識別部２６ａは、選択した素性FNC(x−2=“POS:名詞”, x−1=“VS”)から表層素性の単語“VS”を抽出し、第１条件で選択されたテキストデータの集合から、単語“VS”を含むテキストデータを選択する（[選択方法の例]の説明終わり）。
【０１０３】
属性識別用素性抽出部２３ａは、記憶部１１ａに格納されたテキストデータの集合Dから、第１対象エンティティRDejと第１対象属性RDajとの組を含む文字列である「第１対象テキスト」を選択する。第１対象テキストの例は、テキストデータが含む文、フレーズ、単語列などである。第１対象テキストは、第１対象エンティティ−対象属性ペアPD1（RDej,RDaj）とテキストデータとの組に対して1個以上抽出される。
【０１０４】
属性識別用素性抽出部２３ａは、第１対象テキストに対する第１対象エンティティ−対象属性ペアPD1（RDej,RDaj）の特徴を表す情報を当該第１対象エンティティ−対象属性ペアPD1（RDej,RDaj）の素性fDajとする。この例では、第１対象テキストごとにPD1（RDej,RDaj）の素性fDajが抽出される。PD1（RDej,RDaj）の素性fDajの例は、第１対象テキスト（第１対象エンティティRDej及び第１対象属性RDaj-1を含む文字列であってテキストデータに含まれるもの）と第１対象エンティティRDej及び第１対象属性RDaj-1との関係を表す情報である。その具体例は、上述した正例に対応するPP1（RPej-1,RPaj-1）の素性fPajの場合と同様である。
【０１０５】
第１対象テキストに対応するPD1（RDej,RDaj）の素性fDajは、属性識別部２６ａに入力される。属性識別部２６ａは、PD1（RDej,RDaj）の素性fDajを記憶部２１ｄから読み出した第１識別モデルMEajに入力し、PD1（RDej,RDaj）が正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別する。
ここで、属性識別部２６ａは、PD1（RDej,RDaj）を正例エンティティ−正例属性ペアであると識別した場合、当該PD1（RDej,RDaj）の第１対象属性RDajを正例属性RPajとして記憶部２１ｅに格納し、正例属性RPajの集合に追加する。また、属性識別部２６ａは、PD1（RDej,RDaj）が負例エンティティ−負例属性ペアであると識別した場合、当該PD1（RDej,RDaj）の第１対象属性RDajを負例属性RNajとして記憶部２１ｅに格納し、負例属性RNajの集合に追加する。すなわち、ステップＳ２２−Ｓ２４では正例及び負例エンティティの更新は行われず、正例及び負例属性の更新のみが行われる。
【０１０６】
例えば、属性識別部２６ａが図４のテキストデータの集合Dから、T10のテキストデータを選択し、当該テキストデータが含む単語<広島>を第１対象エンティティRDejとし、単語<戦>を第１対象属性RDajとして選択したとする。この場合、属性識別用素性抽出部２３ａは、例えば、<広島>と<戦>との組を含むT10のテキストデータを第１対象テキストとし、T10のテキストデータに対するPD1（RDej,RDaj）="<広島>−<戦>"の素性fDajを抽出する。属性識別部２６ａは、PD1（RDej,RDaj）="<広島>−<戦>"の素性fDajを第１識別モデルMEajに入力し、PD1（RDej,RDaj）が正例エンティティ−正例属性ペアであるか負例エンティティ−負例属性ペアであるかが識別される。例えば、"<広島>−<戦>"が正例エンティティ−正例属性ペアであると識別したとすると、<戦>という属性が正例属性RPajの集合に追加される。なお、正例又は負例と識別されたPD1（RDej,RDaj）のうち、閾値を超える信頼度が付与されたものの第１対象属性RDajのみを、正例属性RPaj又は負例属性RNajの集合に追加してもよい。上述の例では｛<VS>，<第１戦>，<投手>，<戦>｝が正例属性RPjaの集合に追加される。
【０１０７】
《エンティティ識別用素性抽出：ステップＳ２５》
正例エンティティRPej-1の集合、負例エンティティRNej-1の集合、上記のように更新された正例属性RPajの集合及び負例属性RNajの集合がエンティティ識別用素性抽出部２３ｂに入力される。
エンティティ識別用素性抽出部２３ｂは、正例エンティティRPej-1の集合から選択した第２正例エンティティと正例属性RPajの集合から選択した第２正例属性との組である第２正例エンティティ−正例属性ペアPP2（RPej-1,RPaj）と、負例エンティティRNej-1の集合から選択した第２負例エンティティと負例属性RNajの集合から選択した第２負例属性との組である第２負例エンティティ−負例属性ペアPN2（RNej-1,RNaj）とを生成する。PP2（RPej-1,RPaj）やPN2（RNej-1,RNaj）は、RPej-1とRPajやRNej-1とRNajの採り得るすべての組み合わせについて生成されてもよいし、それらの一部の組み合わせのみについて生成されてもよい。
次にエンティティ識別用素性抽出部２３ｂは、記憶部１１ａに格納されたテキストデータの集合Dから、PP2（RPej-1,RPaj）の正例エンティティRPej-1と正例属性RPajとの組を含む文字列である「第２正例テキスト」を選択する。第２正例テキストの例は、テキストデータが含む文、フレーズ、単語列などである。第２正例テキストは、第２正例エンティティ−正例属性ペアPP2（RPej-1,RPaj）とテキストデータとの組に対して１個以上抽出される。
エンティティ識別用素性抽出部２３ｂは、第２正例テキストに対する第２正例エンティティ−正例属性ペアPP2（RPej-1,RPaj）の特徴を表す情報を当該第２正例エンティティ−正例属性ペアPP2（RPej-1,RPaj）の素性fPejとする。この例では、第２正例テキストごとにPP2（RPej-1,RPaj）の素性fPejが抽出される。PP2（RPej-1,RPaj）の素性fPejの例は、第２正例テキスト（正例エンティティRPej-1及び正例属性RPajを含む文字列であってテキストデータに含まれるもの）と当該第２正例エンティティRPej-1及び第２正例属性RPajとの関係を表す情報である。その具体例は、前述（ステップＳ２２）したPP1（RPej-1,RPaj-1）の素性fPajの場合と同様である。
【０１０８】
同様に、エンティティ識別用素性抽出部２３ｂは、記憶部１１ａに格納されたテキストデータの集合Dから、何れかの負例エンティティRNej-1と負例属性RNajとの組を含む文字列である「第２負例テキスト」を選択する。第２負例テキストの例は、テキストデータが含む文、フレーズ、単語列などである。第２負例テキストは、第２負例エンティティ−負例属性ペアPN2（RNej-1,RNaj）とテキストデータとの組に対して１個以上抽出される。
エンティティ識別用素性抽出部２３ｂは、第２負例テキストに対する第２負例エンティティ−負例属性ペアPN2（RNej-1,RNaj）の特徴を表す情報を当該第２負例エンティティ−負例属性ペアPN2（RNej-1,RNaj）の素性fNejとする。この例では、第２負例テキストごとにPN2（RNej-1,RNaj）の素性fNejが抽出される。PN2（RNej-1,RNaj）の素性fNejの例は、第２負例テキスト（負例エンティティRNej-1及び負例属性RNajを含む文字列であってテキストデータに含まれるもの）と当該第２負例エンティティRNej-1及び第２負例属性RNajとの関係を表す情報である。その具体例は、前述（ステップＳ２２）したPP1（RPej-1,RPaj-1）の素性fPajの場合と同様である。
【０１０９】
エンティティ識別用素性抽出部２３ｂは、PP2（RPej-1,RPaj）の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、PN2（RNej-1,RNaj）の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)を出力する。
【０１１０】
図８Ｂは、エンティティ識別用素性抽出部２３ｂが出力する組(fPej, <+1>)及び組(fNej, <-1>)を例示した図である。この例では、エンティティ(ex)と属性(ey)の前後２単語の表記を素性としている。
《エンティティ識別学習：ステップＳ２６》
PP2（RPej-1,RPaj）の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、PN2（RNej-1,RNaj）の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)がエンティティ識別学習部２５ｂに入力される。エンティティ識別学習部２５ｂは、PP2（RPej-1,RPaj）の素性fPejとPN2（RNej-1,RNaj）の素性fNejとを教師あり学習データとした学習処理によって、第２識別モデルMEejを生成する。この２識別モデルMEejは、任意の文字列であるエンティティと当該エンティティの属性との組であるエンティティ−属性ペアの素性を入力として当該ペアが正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別するための情報を出力する関数である。このような第２識別モデルMEejであればどのようなモデルであってもよい。例えば、前述の識別モデルMEejと同様に第２識別モデルMEejを生成すればよい。
学習処理によって生成された第２識別モデルMEejは記憶部１１ｄに格納される。例えば、学習処理によって生成された第２識別モデルMEejのパラメータが記憶部１１ｄに格納される。
【０１１１】
《エンティティ識別：ステップＳ２７》
エンティティ識別部２６ｂは、記憶部１１ａに格納されたテキストデータの集合Dから何れかのテキストデータを選択し、選択した当該テキストデータが含む文字列を第２対象エンティティRDejとして選択する。またエンティティ識別部２６ｂは、選択した当該テキストデータから当該第２対象エンティティRDejと異なる文字列を第２対象属性RDajとして選択する。そしてエンティティ識別部２６ｂは、第２対象エンティティRDejと第２対象属性RDajとの組を第２対象エンティティ−対象属性ペアPD2（RDej,RDaj）とする。
【０１１２】
なお、テキストデータの集合Dからすべてのテキストデータが選択されてもよいが、すべてのテキストデータを対象とすることは計算効率上好ましくない。そのため、特定の方法で対象を限定して選択を行うことが望ましい。以下にその具体例を示す。
【０１１３】
[選択方法の例]
第１条件：
エンティティ識別部２６ｂは、何れかの正例属性RPja又は負例属性RNjaを含み、かつ当該属性RPja又RNjaから任意のウィンドウサイズ内（ここでは３単語とする）に名詞を含むテキストデータを抽出し、ウィンドウサイズ内の名詞をエンティティ候補とする。
【０１１４】
第２条件：
第１条件だけでは対象の数が膨大になる場合があるため、エンティティ識別部２６ｂは、エンティティ識別学習部２５ｂで教師あり学習データとして用いられたPP2（RPej-1,RPaj）の素性fPejとPN2（RNej-1,RNaj）の素性fNejのうち、それらから生成された第２識別モデルMEejへの影響度の大きさを表す指標（例えば前述の重みλq）が特定の基準を満たす素性、つまり、当該第２識別モデルMEejへの影響度が大きな素性fPej及び／又はfNejを選択する。例えば、エンティティ識別部２６ｂは、前述の重みλqの絶対値が閾値よりも大きな素性fPej及び／又はfNejを選択する。
【０１１５】
エンティティ識別部２６ｂは、選択した素性fPej及び／又はfNejに対応する文字列を含むテキストデータを、第１条件で選択されたテキストデータの集合から選択する。エンティティ識別部２６ｂは、当該選択したテキストデータが含む文字列を第２対象エンティティRDej及び第２対象属性RDajとする。例えば、エンティティ識別部２６ｂは、選択した素性fPej及び／又はfNejから表層素性の単語を抽出し、当該表層素性の単語を含むテキストデータを第１条件で選択されたテキストデータの集合から選択する。（[選択方法の例]の説明終わり）。
【０１１６】
エンティティ識別用素性抽出部２３ｂは、記憶部１１ａに格納されたテキストデータの集合Dから、第２対象エンティティRDejと第２対象属性RDajとの組を含む文字列である「第２対象テキスト」を選択する。第２対象テキストの例は、テキストデータが含む文、フレーズ、単語列などである。第２対象テキストは、第２対象エンティティ−対象属性ペアPD2（RDej,RDaj）とテキストデータとの組に対して1個以上抽出される。
【０１１７】
エンティティ識別用素性抽出部２３ｂは、第２対象テキストに対する第２対象エンティティ−対象属性ペアPD2（RDej,RDaj）の特徴を表す情報を当該第２対象エンティティ−対象属性ペアPD2（RDej,RDaj）の素性fDejとする。この例では、第２対象テキストごとにPD2（RDej,RDaj）の素性fDejが抽出される。PD2（RDej,RDaj）の素性fDejの例は、第２対象テキスト（第２対象エンティティRDej及び第２対象属性RDaj-1を含む文字列であってテキストデータに含まれるもの）と第２対象エンティティRDej及び第２対象属性RDaj-1との関係を表す情報である。その具体例は、前述（ステップＳ２２）したPP1（RPej-1,RPaj-1）の素性fPajの場合と同様である。
【０１１８】
第２対象テキストに対応するPD2（RDej,RDaj）の素性fDejは、エンティティ識別部２６ｂに入力される。エンティティ識別部２６ｂは、PD2（RDej,RDaj）の素性fDejを記憶部１１ｄから読み出した第２識別モデルMEejに入力し、PD2（RDej,RDaj）が正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別する。
【０１１９】
ここで、エンティティ識別部２６ｂは、PD2（RDej,RDaj）を正例エンティティ−正例属性ペアであると識別した場合、当該PD2（RDej,RDaj）の第２対象エンティティRDejを正例エンティティRPejとして記憶部１１ｅに格納し、正例エンティティRPejの集合に追加する。また、エンティティ識別部２６ｂは、PD2（RDej,RDaj）が負例エンティティ−負例属性ペアであると識別した場合、当該PD2（RDej,RDaj）の第２対象エンティティRDejを負例エンティティRNejとして記憶部１１ｅに格納し、負例エンティティRNejの集合に追加する。すなわち、ステップＳ２５−Ｓ２７では正例及び負例属性の更新は行われず、正例及び負例エンティティの更新のみが行われる。
【０１２０】
《収束判定：ステップＳ１７−Ｓ１９》
収束判定部１７は、第１実施形態と同様に、収束条件を満たしたかを判定する（ステップＳ１７）。
収束判定部１７が収束条件を満たしたと判断した場合、ステップＳ２２からＳ２７のイテレーションが終了し、出力部１８が記憶部１１ｅに格納されているすべての正例エンティティRPjeを出力して処理を終了する（ステップＳ１９）。それ以外の場合は、制御部１９がj+1を新たなjの値とし（ステップＳ１８）、記憶部１１ｅに格納されている正例エンティティRPje 及び負例エンティティRNje 、記憶部２１ｅに格納されている正例属性RPja 及び負例属性RNjaを属性識別用素性抽出部２３ａに入力し、ステップＳ２２からＳ２７のイテレーションが実行される。
【０１２１】
＜第２実施形態の特徴＞
以上のように、本形態の方法ではエンティティとその属性との組を用いて識別を行うこととしたため、セマンティックドリフトを抑制することができる。例えばエンティティ<阪神>には曖昧性があり、エンティティ<阪神>の素性のみでは、エンティティ<阪神>が鉄道名と球団名のどちらを指すか識別できない。しかし、<試合>や<乗務員>の属性を付加した<阪神>−<試合>や<阪神>−<乗務員>を制約条件とすれば、それぞれの<阪神>が異なる意味で用いられていることを識別できる。
【０１２２】
また、本形態では、co-training方式を用いるため、精度の高い識別が可能となる。なお、上記では正例及び負例属性の更新（ステップＳ２２−Ｓ２４）を行った後に、正例及び負例エンティティの更新（Ｓ２５−Ｓ２７）を行う例を示した。しかし、正例及び負例エンティティの更新を行った後に正例及び負例属性の更新を行ってもよい。
【０１２３】
なお、エンティティ−属性ペアを扱う関係抽出技術としてespressoが知られている（参考文献４「Patrick Pantel and Marco Pennacchiotti., "Espresso: Leveraging Generic Patterns for Automatically Harvesting Semantic Relations.", COLING-ACL, 2006.」）。espressoの場合は、エンティティ−属性ペアを獲得するのが目的であるため、予めエンティティ−属性ペアを正例及び負例として与えておく必要がある。これに対し、本形態はエンティティ獲得のために属性を用いるので、初期値としてはエンティティだけを与えれば良い。
【０１２４】
また、espressoはエンティティと属性のペアについての信頼度を計算するイテレーションと、素性に対する信頼度計算のイテレーションから構成されるのに対し、本形態ではエンティティの信頼度を計算するイテレーションと属性の信頼度を計算するイテレーションから構成されている。今我々が欲しているのはエンティティのみであり、属性情報は付加的に獲得されるにすぎない。つまり属性についての網羅性は高い必要がなく、十分に信頼でき、かつセマンティックドリフトを抑えるに足る量の属性のみを用いれば良い。本形態の目的からすれば、espressoのようにペアで信頼度を得るよりも、エンティティ/属性それぞれの信頼度を直接評価できる本形態の手法の方が適切であると言える。
【０１２５】
さらに、espressoで100個の新規エンティティ-属性ペアを獲得しようとした場合、その中には新規エンティティ、新規属性がそれぞれいくつ含まれるかを制御できない。例えば、1エンティティ×100属性といった適切でない状況も起こり得る。本形態の手法では、エンティティの信頼度を計算するイテレーションと属性の信頼度を計算するイテレーションとが別個に実行されるため、エンティティの数と属性の数を別個に自由に制御できる。本形態では、例えば、エンティティを100個、属性を10個といったように細かく制御することも可能である。
その他、第１実施形態と同様、本形態の方法はリソースであるテキストデータの種類によらず利用でき、適用範囲が広い。
【０１２６】
〔第３実施形態〕
第３実施形態は、第１実施形態と第２実施形態とを組み合わせた形態である。つまり、トピック情報と属性の両方を用いて識別モデルの学習及び識別モデルによる識別を行う。以下では、第１及び第２実施形態との相違点を中心に説明する。また、第１及び第２実施形態と共通する部分については第１及び第２実施形態と同じ参照番号を用いる。
【０１２７】
＜構成＞
図９は、第３実施形態のデータ抽出装置３の機能構成を例示するためのブロック図である。
図９に例示するように、データ抽出装置３は、記憶部１１ａ−１１ｅ,２１ｄ,２１ｅ、初期属性集合生成部２２、属性識別用素性抽出部２３ａ、エンティティ識別用素性抽出部２３ｂ、トピック情報抽出部３４ａ,３４ｂ、属性識別学習部３５ａ、エンティティ識別学習部３５ｂ、属性識別部３６ａ、エンティティ識別部３６ｂ、収束判定部１７、出力部１８、及び制御部１９を有し、制御部１９の制御のもと各処理を実行する。なお、データ抽出装置３は、例えば、公知又は専用のコンピュータに特別なプログラムが読み込まれて構成される特別な装置である。
【０１２８】
＜事前処理＞
第１実施形態と同様である。
＜データ抽出処理＞
図１０は、第３実施形態のデータ抽出装置３のデータ抽出処理を例示するための図である。
まず、第１及び第２実施形態のステップＳ１１,Ｓ１２,Ｓ２１,Ｓ２２と同じ処理が実行される。
【０１２９】
《トピック情報抽出：ステップＳ３２１》
ステップＳ２２で生成されたPP1（RPej-1,RPaj-1）の素性fPajと正例を表すラベル<+1>との組(fPaj, <+1>)、及び、PN1（RNej-1,RNaj-1）の素性fNajと負例を表すラベル<-1>との組(fNaj, <-1>)がトピック情報抽出部３４ａに入力される。混乱を避けるため、以下ではこれらを組(fP''aj, <+1>)及び組(fN''aj, <-1>)と表記する。
【０１３０】
トピック情報抽出部３４ａは、前述したステップＳ１４と同様な処理により、第１正例エンティティRPej-1と第１正例属性RPaj-1との組を含むテキストデータに対応する第１正例トピック情報を抽出する。トピック情報抽出部３４ａは、当該テキストデータが含む各第１正例テキストに対応するPP1（RPej-1,RPaj-1）の素性fP''ajに当該第１正例トピック情報加えたものを、各第１正例テキストに対応する各PP1（RPej-1,RPaj-1）の新たな素性fPajとする。すなわち、トピック情報抽出部３４ａによって生成された当該PP1（RPej-1,RPaj-1）の素性fPajは、トピック情報付きテキストデータの集合D'から選択された、第１正例エンティティRPej-1と第１正例属性RPaj-1との組を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報を含む（例えば図５Ａ参照）。
【０１３１】
同様に、トピック情報抽出部３４ａは、前述したステップＳ１４と同様な処理により、負例エンティティRNej-1と第１負例属性RNaj-1との組を含むテキストデータに対応する第１負例トピック情報を抽出する。トピック情報抽出部３４ａは、当該テキストデータが含む各第１負例テキストに対応するPN1（RNej-1,RNaj-1）の素性fN''ajに当該第１負例トピック情報を加えたものを、各第１負例テキストに対応する各PN1（RNej-1,RNaj-1）の新たな素性fNajとする。すなわち、トピック情報抽出部３４ａによって生成された当該PN1（RNej-1,RNaj-1）の素性fNajは、トピック情報付きテキストデータの集合D'から選択された、第１負例エンティティRNej-1と第１負例属性RNaj-1との組を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報を含む。
トピック情報抽出部３４ａは、生成したPP1（RPej-1,RPaj-1）の素性fPajと正例を表すラベル<+1>との組(fPaj, <+1>)、及び、PN1（RNej-1,RNaj-1）の素性fNajと負例を表すラベル<-1>との組(fNaj, <-1>)を出力する。
【０１３２】
《属性識別学習：ステップＳ３３》
PP1（RPej-1,RPaj-1）の素性fPajと正例を表すラベル<+1>との組(fPaj, <+1>)、及び、PN1（RNej-1,RNaj-1）の素性fNajと負例を表すラベル<-1>との組(fNaj, <-1>)が属性識別学習部３５ａに入力される。属性識別学習部３５ａはこれらを教師あり学習データとし、前述のステップＳ２３と同様に第１識別モデルMEajを生成し、記憶部２１ｄに格納する。
【０１３３】
《属性識別：ステップＳ３４》
属性識別部３６ａは、まず、ステップＳ２４と同様に第１対象テキストに対応するPD1（RDej,RDaj）の素性fDajを生成する。以下では、混乱を避けるため、ステップＳ２４と同様に作成された第１対象テキストに対応するPD1（RDej,RDaj）の素性fDajをfD''ajと表記する。次に、属性識別部３６ａは、ステップＳ１５と同様に、対象エンティティRDejと第１対象属性RDajとの組を含むテキストデータに対応する第１対象トピック情報を抽出する。属性識別部３６ａは、当該テキストデータが含む各第１対象テキストに対応する各PD1（RDej,RDaj）の素性fD''ajに当該第１対象トピック情報を加えたものを、各第１対象テキストに対応する各PD1（RDej,RDaj）の素性fDejとする。すなわち、属性識別部３６ａによって生成されたPD1（RDej,RDaj）の素性fDejは、トピック情報付きテキストデータの集合D'から選択された、第１対象エンティティRDejと第１対象属性RDajとの組を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報を含む（例えば図５Ａ参照）。
【０１３４】
属性識別部３６ａは、ステップＳ２４と同様に、PD1（RDej,RDaj）の素性fDajを記憶部２１ｄから読み出した第１識別モデルMEajに入力し、PD1（RDej,RDaj）が正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別する。属性識別部３６ａは、PD1（RDej,RDaj）を正例エンティティ−正例属性ペアであると識別した場合、当該PD1（RDej,RDaj）の第１対象属性RDajを正例属性RPajとして記憶部２１ｅに格納し、正例属性RPajの集合に追加する。また、属性識別部３６ａは、PD1（RDej,RDaj）が負例エンティティ−負例属性ペアであると識別した場合、当該PD1（RDej,RDaj）の第１対象属性RDajを負例属性RNajとして記憶部２１ｅに格納し、負例属性RNajの集合に追加する。
【０１３５】
《トピック情報抽出：ステップＳ３５１》
次に、前述したステップＳ２５の処理が実行され、それによって得られたPP2（RPej-1,RPaj）の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、PN2（RNej-1,RNaj）の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)がトピック情報抽出部３４ｂに入力される。混乱を避けるため、以下ではこれらを組(fP''ej, <+1>)及び組(fN''ej, <-1>)と表記する。
【０１３６】
トピック情報抽出部３４ｂは、前述したステップＳ１４と同様な処理により、第２正例エンティティRPej-1と第２正例属性RPajとの組を含むテキストデータとの組に対応する第２正例トピック情報を抽出する。トピック情報抽出部３４ｂは、当該テキストデータが含む各第２正例テキストに対応するPP2（RPej-1,RPaj）の素性fP''ejに当該第２正例トピック情報を加えたものを、各第２正例テキストに対応する各PP2（RPej-1,RPaj）の新たな素性fPejとする。すなわち、トピック情報抽出部３４ｂによって生成された当該PP2（RPej-1,RPaj）の素性fPejは、トピック情報付きテキストデータの集合D'から選択された、第２正例エンティティRPej-1と第２正例属性RPajとの組を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報を含む（例えば図５Ａ参照）。
【０１３７】
同様に、トピック情報抽出部３４ｂは、前述したステップＳ１４と同様な処理により、第２負例エンティティRNej-1と第２負例属性RNajとの組を含むテキストデータに対応する第２負例トピック情報を抽出する。トピック情報抽出部３４ｂは、当該テキストデータが含む各第２負例テキストに対応するPN2（RNej-1,RNaj）の素性fN''ejに当該第２負例トピック情報を加えたものを、各第２負例テキストに対応する各PN2（RNej-1,RNaj）の新たな素性fNejとする。すなわち、トピック情報抽出部３４ｂによって生成された当該PN2（RNej-1,RNaj）の素性fNejは、トピック情報付きテキストデータの集合D'から選択された、第２負例エンティティRNej-1と第２負例属性RNajとの組を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報を含む。
【０１３８】
トピック情報抽出部３４ｂは、生成したPP2（RPej-1,RPaj）の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、PN2（RNej-1,RNaj）の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)を出力する。
【０１３９】
《エンティティ識別学習：ステップＳ３６》
PP2（RPej-1,RPaj）の素性fPejと正例を表すラベル<+1>との組(fPej, <+1>)、及び、PN2（RNej-1,RNaj）の素性fNejと負例を表すラベル<-1>との組(fNej, <-1>)がエンティティ識別学習部３５ｂに入力される。エンティティ識別学習部３５ｂはこれらを教師あり学習データとし、前述のステップＳ２６と同様に第２識別モデルMEejを生成し、記憶部１１ｄに格納する。
【０１４０】
《エンティティ識別：ステップＳ３７》
エンティティ識別部３６ｂは、まず、ステップＳ２７と同様に第２対象テキストに対応するPD2（RDej,RDaj）の素性fDejを生成する。以下では、混乱を避けるため、ステップＳ２７と同様に作成された第２対象テキストに対応するPD2（RDej,RDaj）の素性fDejをfD''ejと表記する。
【０１４１】
次に、エンティティ識別部３６ｂは、ステップＳ１５と同様に、対象エンティティRDejと第２対象属性RDajとの組を含むテキストデータに対応する第２対象トピック情報を抽出する。エンティティ識別部３６ｂは、当該テキストデータが含む各第２対象テキストに対応する各PD2（RDej,RDaj）の素性fD''ejに当該第２対象トピック情報を加えたものを、各第２対象テキストに対応する各PD2（RDej,RDaj）の素性fDejとする。すなわち、エンティティ識別部３６ｂによって生成されたPD2（RDej,RDaj）の素性fDejは、トピック情報付きテキストデータの集合D'から選択された、第２対象エンティティRDejと第２対象属性RDajとの組を含むテキストデータを含むトピック情報付きテキストデータが含むトピック情報を含む（例えば図５Ａ参照）。
【０１４２】
エンティティ識別部３６ｂは、ステップＳ２７と同様に、PD2（RDej,RDaj）の素性fDejを記憶部１１ｄから読み出した第２識別モデルMEejに入力し、PD2（RDej,RDaj）が正例エンティティ−正例属性ペアか負例エンティティ−負例属性ペアかを識別する。エンティティ識別部３６ｂは、PD2（RDej,RDaj）を正例エンティティ−正例属性ペアであると識別した場合、当該PD2（RDej,RDaj）の第２対象エンティティRDejを正例エンティティRPejとして記憶部１１ｅに格納し、正例エンティティRPejの集合に追加する。また、エンティティ識別部３６ｂは、PD2（RDej,RDaj）が負例エンティティ−負例属性ペアであると識別した場合、当該PD2（RDej,RDaj）の第２対象エンティティRDejを負例エンティティRNejとして記憶部１１ｅに格納し、負例エンティティRNejの集合に追加する。
その後、前述したステップＳ１７−Ｓ１９の処理が実行される。
【０１４３】
〔その他の変形例等〕
なお、本発明は上述の実施の形態に限定されるものではない。例えば、第１実施形態においてステップＳ１３を実行せず、トピック情報のみを素性としてもよい。また、トピックモデルや学習モデルが上述した具体例に限定されないのは上述の通りである。また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【０１４４】
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体は、非一時的な（non-transitory）記録媒体である。このような記録媒体の例は、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等である。
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０１４５】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【０１４６】
１−３  データ抽出装置
【図１】
0005542732.tif 000021
【図２】
0005542732.tif 000022
【図３】
0005542732.tif 000023
【図４】
0005542732.tif 000024
【図５】
0005542732.tif 000025
【図６】
0005542732.tif 000026
【図７】
0005542732.tif 000027
【図８】
0005542732.tif 000028
【図９】
0005542732.tif 000029
【図１０】
0005542732.tif 000030