(57)【要約】【課題】ラベル付き学習データ及びラベル無し学習データの双方を効率よく利用した学習により高精度なテキスト解析を実現できるテキスト解析学習装置を提供する。【解決手段】ラベル付き学習データに付与されたラベルで示される解析結果の尤度を算出し、ラベル無し学習データに対する解析結果と同じカテゴリに属する入力文に対する解析結果との整合性の度合を示す評価値を算出し、尤度及び整合性の評価値に基づく目標関数が最大化するように素性データに対応するモデルパラメータの値を更新し、当該モデルパラメータの更新値を用いて算出された尤度及び評価値に基づく当該モデルパラメータの更新を、当該モデルパラメータの更新値が所定の収束条件を満たすまで実行して、所定の収束条件を満たしたモデルパラメータ、素性データ及びラベルの一覧を用いて、テキスト解析器が使用する解析用辞書を生成する。【選択図】図２
2010238043.tif 000002
【特許請求の範囲】
【請求項１】
テキスト解析器に対する入力文、前記入力文の正しい解析結果を示すラベル及び当該入力文が属するカテゴリを示すカテゴリ情報の組み合わせを、ラベル付き学習データとして格納するラベル付き学習データ格納部と、
テキスト解析器に対する入力文及び当該入力文が属するカテゴリを示すカテゴリ情報の組み合わせを、ラベル無し学習データとして格納するラベル無し学習データ格納部と、
前記ラベルの一覧を格納するラベル格納部と、
入力文に対する照合条件と当該入力文の前記ラベルとの組み合わせを、当該入力文に対応する素性データとして格納する素性データ格納部と、
前記照合条件の一部及び前記ラベルを変数とした素性テンプレートを格納する素性テンプレート格納部と、
前記ラベル付き学習データ、前記ラベル無し学習データ、前記ラベルの一覧及び前記素性テンプレートを入力し、前記ラベル付き学習データ及び前記ラベル無し学習データと前記ラベルの一覧とから前記照合条件の一部及び前記ラベルにそれぞれ対応する文字列及びラベルを抽出して前記素性テンプレートの変数を書き換えることにより、前記素性データを生成する素性生成部と、
前記素性データに対応するモデルパラメータを格納するモデルパラメータ格納部と、
前記ラベル付き学習データの入力文を、前記素性データ、前記モデルパラメータ及び前記ラベルの一覧に基づいて解析し、当該ラベル付き学習データに付与されたラベルで示される解析結果の尤度を算出する尤度評価手段と、
前記ラベル無し学習データの入力文を、前記素性データ、前記モデルパラメータ及び前記ラベルの一覧に基づいて解析し、当該ラベル無し学習データに対する解析結果と、同じカテゴリに属する入力文に対する解析結果との整合性の度合を示す評価値を算出する整合性評価手段と、
前記尤度評価手段で算出された尤度及び前記整合性評価手段で算出された評価値に基づく目標関数が最大化するように前記モデルパラメータの値を更新し、当該モデルパラメータの更新値を用いて算出された前記尤度及び前記評価値に基づく当該モデルパラメータの更新を、当該モデルパラメータの更新値が所定の収束条件を満たすまで実行する更新手段と、
前記素性データ、前記所定の収束条件を満たしたモデルパラメータ及び前記ラベルの一覧を用いて、前記テキスト解析器が使用する解析用辞書を生成する解析辞書出力手段とを備えたテキスト解析学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、テキスト解析学習装置に関するものである。
【背景技術】
【０００２】
一般にテキスト解析と呼ばれる処理の中には、入力データに対して構造化ラベルを付与する問題と見なすことができる処理がある。例えば、日本語文の単語区切り処理は、入力データである文字列に対し、単語区切り位置の有無を示すラベルを付与する問題と捉えることができる。
【０００３】
図１４は、ラベル付与による日本語単語区切り処理の例を示す図である。図１４では、入力文が「アイビーキャリアカレッジ」であり、ラベル「１」は、当該文字の直後が単語区切り位置であることを示している。反対に、ラベル「０」は、単語区切り位置ではないことを示している。従って、当該入力文は「アイビー」「キャリア」「カレッジ」と３つの単語に分割される。
【０００４】
このようなテキスト解析処理は、従来、人手で記述した解析規則により実現されてきたが、記述のスケーラビリティ（網羅性やメンテナンス性）に限界があるために、近年は、統計的な手法により、図１４のようなラベル付き学習データを用意し、解析規則を自動的に獲得する場合が多い。
【０００５】
統計的な手法では、個々の解析規則の抽出や、解析規則間の依存性の問題を機械が自動処理してくれるため、対象分野を十分カバーするラベル付き学習データを大量に用意さえすれば、自動的に高精度なテキスト解析器を得られるという利点がある。
【０００６】
従って、統計的な手法においては、従来のルール記述の問題が、十分な量のラベル付き学習データの確保という問題に置き換わっている。しかし、ラベル付与作業においても、対象ドメイン、文法双方の専門知識が必要である点では変わらず、高コストな作業となっているため、構築しようとするテキスト解析器の対象分野に合わせて、十分な量のラベル付き学習データを用意することは難しい。
【０００７】
統計的手法によるテキスト解析器の構築において、学習に要するラベル付き学習データの確保は大きな課題となっている。このようなラベル付き学習データの問題に対しては、正解ラベルを付与していない学習データ（ラベル無し学習データ）を併用する半教師付き学習のアプローチがあり、本発明も半教師付き学習の一種である。
【０００８】
前述の単語区切りの例において、ラベル無し学習データとは、単語区切りを与えていないプレーンな生データである。例えば、「アーツカレッジヨコハマ」「アートカレッジ専門学校」「アートガレージかわさき」といった、テキスト解析器への入力文を列挙したリストに相当する。こうした生データは、ラベル付き学習データと比較して低コストで大量に入手・利用可能である。
【０００９】
このようなラベル無し学習データを利用する従来の技術として、例えば特許文献１に開示されるものがある。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００８−２２５９０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ラベル無し学習データを利用する従来の技術では、性質の異なる２種類のモデル（識別モデルと生成モデル）を学習に使った一種のハイブリッド学習法により、一方のモデルによるラベル無し学習データの解析結果を、他方のモデルの教師付き学習に利用している。このように、本質的にモデルの補間特性の違いから生じる尤度差を利用するため、解析タスクやデータに対して一般性が高いという利点がある。
【００１２】
しかしながら、先験的な知識に頼らない上記従来の手法では、ラベル無し学習データの利用効率が悪く、精度が上がりにくいという課題があった。
【００１３】
この発明は、上記のような課題を解決するためになされたもので、ラベル付き学習データ及びラベル無し学習データの双方を効率よく利用した学習により高精度なテキスト解析を実現できるテキスト解析学習装置を得ることを目的とする。
【課題を解決するための手段】
【００１４】
この発明に係るテキスト解析学習装置は、テキスト解析器に対する入力文、入力文の正しい解析結果を示すラベル及び当該入力文が属するカテゴリを示すカテゴリ情報の組み合わせを、ラベル付き学習データとして格納するラベル付き学習データ格納部と、テキスト解析器に対する入力文及び当該入力文が属するカテゴリを示すカテゴリ情報の組み合わせを、ラベル無し学習データとして格納するラベル無し学習データ格納部と、ラベルの一覧を格納するラベル格納部と、入力文に対する照合条件と当該入力文のラベルとの組み合わせを、当該入力文に対応する素性データとして格納する素性データ格納部と、照合条件の一部及びラベルを変数とした素性テンプレートを格納する素性テンプレート格納部と、ラベル付き学習データ、ラベル無し学習データ、ラベルの一覧及び素性テンプレートを入力し、ラベル付き学習データ及びラベル無し学習データとラベルの一覧とから照合条件の一部及びラベルにそれぞれ対応する文字列及びラベルを抽出して素性テンプレートの変数を書き換えることにより、素性データを生成する素性生成部と、素性データに対応するモデルパラメータを格納するモデルパラメータ格納部と、ラベル付き学習データの入力文を、素性データ、モデルパラメータ及びラベルの一覧に基づいて解析し、当該ラベル付き学習データに付与されたラベルで示される解析結果の尤度を算出する尤度評価手段と、ラベル無し学習データの入力文を、素性データ、モデルパラメータ及びラベルの一覧に基づいて解析し、当該ラベル無し学習データに対する解析結果と、同じカテゴリに属する入力文に対する解析結果との整合性の度合を示す評価値を算出する整合性評価手段と、尤度評価手段で算出された尤度及び整合性評価手段で算出された評価値に基づく目標関数が最大化するようにモデルパラメータの値を更新し、当該モデルパラメータの更新値を用いて算出された尤度及び評価値に基づく当該モデルパラメータの更新を、当該モデルパラメータの更新値が所定の収束条件を満たすまで実行する更新手段と、素性データ、所定の収束条件を満たしたモデルパラメータ及びラベルの一覧を用いて、テキスト解析器が使用する解析用辞書を生成する解析辞書出力手段とを備えるものである。
【発明の効果】
【００１５】
この発明によれば、ラベル付き学習データに付与されたラベルで示される解析結果の尤度を算出し、ラベル無し学習データに対する解析結果と同じカテゴリに属する入力文に対する解析結果との整合性の度合を示す評価値を算出し、尤度及び整合性の評価値に基づく目標関数が最大化するように素性データに対応するモデルパラメータの値を更新し、当該モデルパラメータの更新値を用いて算出された尤度及び評価値に基づく当該モデルパラメータの更新を、当該モデルパラメータの更新値が所定の収束条件を満たすまで実行して、所定の収束条件を満たしたモデルパラメータ、素性データ及びラベルの一覧を用いて、テキスト解析器が使用する解析用辞書を生成する。このようにすることで、ラベル付き学習データにおけるラベルの尤度に加え、同じカテゴリのデータが互いに類似したラベルを持つ傾向があることも考慮してラベル無し学習データからも効率的に知識を獲得でき、これにより生成された解析辞書を利用することにより、テキスト解析器の解析精度を向上させることができるという効果がある。
【図面の簡単な説明】
【００１６】
【図１】この発明によるテキスト解析学習処理の概要を示す図である。
【図２】この発明の実施の形態１によるテキスト解析学習装置の構成を示すブロック図である。
【図３】実施の形態１による素性生成処理の流れを示すフローチャートである。
【図４】ラベル付き学習データの一例を示す図である。
【図５】素性テンプレートの一例を示す図である。
【図６】素性テンプレートの変数値を置き換えた結果の一例を示す図である。
【図７】素性データの一例を示す図である。
【図８】ラベル無し学習データの一例を示す図である。
【図９】実施の形態１による尤度評価処理の流れを示すフローチャートである。
【図１０】単語区切り仮説グラフの一例を示す図である。
【図１１】図１０中の単語区切り仮説グラフに部分グラフを明記した場合を示す図である。
【図１２】整合性評価処理の流れを示すフローチャートである。
【図１３】テキスト解析用辞書の一例を示す図である。
【図１４】ラベル付与による日本語単語区切り処理の例を示す図である。
【発明を実施するための形態】
【００１７】
実施の形態１．
以降では、テキスト解析処理の一例として、施設名相当の日本語文字列（入力文）を、単語単位に分割する解析処理を取り上げ、この解析処理を学習する場合における、この発明によるテキスト解析学習装置の構成及び動作について説明する。ただし、この発明は、学習対象が単語分割処理に限定されるものではなく、品詞同定を含む形態素解析や、固有表現抽出、構文解析等、多様なテキスト解析にも適用可能である。
【００１８】
図１は、この発明によるテキスト解析学習処理の概要を示す図である。この発明によるテキスト解析学習処理で最終的に生成されるものは、テキスト解析用の確率的な規則が記述されたテキスト解析用辞書である。なお、この実施の形態１では、確率推定モデルとしてＣＲＦ（Conditional Random Fields）（参考文献１参照）を用いるが、これに限定するものではなく、最大エントロピー法やベイジアンネットワークなど、他の確率モデルを用いても構わない。
参考文献１；
Lafferty, J., et al., "Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data", Proc. of ICML-2001, pp. 282-289 (2001).
【００１９】
テキスト解析器は、この発明によるテキスト解析学習装置で生成されたテキスト解析用辞書を用いると、図１に示すように、入力文が「アイビーキャリアカレッジ」であると、この入力文を適切に単語単位に分割し、解析結果として「アイビー／キャリア／カレッジ」を出力する。
【００２０】
また、図１において、テキスト解析学習処理に用いた学習データは、施設名リスト（元データ）である。このリストの一部に対し、人手で正しい単語区切り位置を付与する（単語分割タグ付け）ことで、ラベル付き学習データが生成される。なお、図１中のラベル付き学習データのスラッシュ「／」は単語区切り位置を示している。ラベル付け作業は人手を要するため、構築可能なラベル付き学習データの量（少量）が限定される。一方、ラベルを付与していない元データは大量にあるため、この発明のテキスト解析学習装置では、これを学習データ（ラベル無し学習データ）として利用する。
【００２１】
施設名リストには、図１に示すように、元のアプリケーションが利用している属性情報（業種、住所など）が付与されている。ここでは、業種を施設名のカテゴリ情報として、ラベル無し学習データから単語分割規則を抽出する際の手がかりとされる。なお、本発明によるカテゴリ情報とは、アプリケーションから取得可能な学習データの属性情報や、データの抽出元に関する情報等である。
【００２２】
図２は、この発明の実施の形態１によるテキスト解析学習装置の構成を示すブロック図である。図２において、実施の形態１によるテキスト解析学習装置１は、ラベル付き学習データ格納部２、素性テンプレート格納部３、ラベル無し学習データ格納部４、素性生成部５、素性データ格納部６、ラベル格納部７、モデルパラメータ格納部８、正解ラベル尤度評価手段（尤度評価手段）９、カテゴリ内整合性評価手段（整合性評価手段）１０、パラメータ更新手段（更新手段）１１及び解析辞書出力手段１２を備える。
【００２３】
ラベル付き学習データ格納部２は、テキスト解析器に入力される入力文のサンプル、この入力文のカテゴリ及びこの入力文の正しい単語区切り位置（ラベル）の複数の組み合わせが予め与えられ、ラベル付き学習データとして格納する記憶部である。図１の例では、施設名の入力文サンプル、この入力文のカテゴリ（業種）及びこの入力文の単語区切り位置（ラベル）の組み合わせが格納される。
【００２４】
素性テンプレート格納部３は、予め与えられた素性を生成するためのひな形となる素性テンプレートを格納する記憶部である。ここで、素性とは、テキスト解析器に入力される入力文に対する照合条件とラベルとの組み合わせであり、正解ラベル尤度評価手段９及びカテゴリ内整合性評価手段１０が内部的に生成する単語区切り位置仮説の特徴（どんなところで切ろうとしているか）を表す。また、素性テンプレートには、図７を用いて後述するように、入力文に対する照合条件の一部及びラベルが変数として定義されている。
【００２５】
ラベル無し学習データ格納部４は、テキスト解析器に入力される入力文のサンプルと、この入力文のカテゴリとの組み合わせが予め与えられ、ラベル無し学習データとして格納する記憶部である。図１の例では、施設名の入力文サンプルとこの入力文のカテゴリ（業種）との組み合わせが格納される。このラベル無し学習データには、正しい単語区切り位置を示すラベルが付与されていない。
【００２６】
素性生成部５は、ラベル付き学習データ、ラベル無し学習データ、及びラベル格納部７から読み出したラベルの一覧表を用いて、素性テンプレートの変数を書き換えることで、素性を生成する手段である。素性データ格納部６は、素性生成部５により生成された素性を格納して保持する記憶部である。
【００２７】
ラベル格納部７は、単語区切り位置の有無を示すラベル（テキスト解析器での正しい解析結果を示すラベル）の一覧を格納する記憶部であり、このラベル一覧はテキスト解析器が解析結果を出力する際に使用される。モデルパラメータ格納部８は、パラメータ更新手段１１による処理の開始時には初期値を保持し、処理開始以降はパラメータ更新手段１１によって逐次更新されるモデルパラメータ（素性に対応する実数値パラメータ）を保持する記憶部である。
【００２８】
正解ラベル尤度評価手段９は、素性、モデルパラメータ及びラベルの一覧に基づいて、ラベル付き学習データの入力文を解析し、このラベル付き学習データに付与されたラベルが示す単語区切り位置の尤度（入力サンプルの正しい解析結果の尤度）を計算する手段である。
【００２９】
カテゴリ内整合性評価手段１０は、素性、モデルパラメータ及びラベルの一覧に基づいて、ラベル無し学習データの入力文の単語区切りを解析し、このラベル無し学習データに対する単語区切り解析結果（ラベル無し学習データに対する解析結果）が、同じカテゴリに属するラベル無し学習データ（入力サンプル）に対する解析結果と、どの程度整合しているかを評価する手段である。
【００３０】
パラメータ更新手段１１は、ラベル付き学習データに付与されたラベルが示す単語区切り位置の尤度（入力サンプルの正しい解析結果の尤度）と、ラベル無し学習データにおける単語区切り解析結果（ラベル無し学習データに対する解析結果）の同一カテゴリ内での整合性とに基づいて、モデルパラメータを更新する手段である。ここで、更新したモデルパラメータが所定の収束条件を満たしていない場合、このモデルパラメータを反復して用いて、正解ラベル尤度評価手段９でラベル付き学習データの解析結果の尤度計算を行い、カテゴリ内整合性評価手段１０で整合性計算を行い、これらの結果に基づいてパラメータ更新手段１１が、上記モデルパラメータを更新する。
【００３１】
解析辞書出力手段１２は、素性データ格納部６から読み出した素性、モデルパラメータ格納部８から読み出したモデルパラメータ、及びラベル格納部７から読み出したラベルの一覧を用いて、テキスト解析用の確率的な規則が記述されたテキスト解析用辞書を生成し出力する手段である。
【００３２】
次に動作について説明する。
実施の形態１によるテキスト解析学習装置は、三段階の処理で目的とするテキスト解析用辞書を生成する。第一段階は学習の前処理であり、素性生成部５によって、素性データが生成される。第二段階は実際の学習処理であり、正解ラベル尤度評価手段９、カテゴリ内整合性評価手段１０及びパラメータ更新手段１１によって、モデルパラメータが生成される。第三段階は学習の後処理であり、解析辞書出力手段１２によって、モデルパラメータがフォーマット変換され、テキスト解析用辞書が生成される。
【００３３】
（１）学習の前処理（第一段階）
図３は、実施の形態１による素性生成処理の流れを示すフローチャートであり、この図に沿って処理の詳細を説明する。
先ず、素性生成部５は、ラベル付き学習データ格納部２から未処理のラベル付き学習データを１つ取り出す（ステップＳＴ１）。ここでは、図４に示すようなラベル付き学習データが取り出されたものとする。図４の例では、入力文（施設名）である文字列「アースビジネスカレッジ」と、その正しい単語区切り位置「／」が複数格納されている。また、各エントリには、副次的な情報として「各種学校」、「自動車整備」等の施設のカテゴリ情報が付与されている。この後、素性生成部５は、取り出したラベル付き学習データにおける未処理の文字位置を区切り注目点とする（ステップＳＴ２）。ラベル付き学習データでは、ラベルで特定される単語区切り位置が単語区切り注目点と規定される。
【００３４】
次に、素性生成部５は、素性テンプレート格納部３から素性テンプレートを取り出し、当該素性テンプレートを使って現在の注目点で素性を生成する（ステップＳＴ３）。ここでは、例えば、図５に示す素性テンプレートが取り出される。この素性テンプレートは、テキスト解析器の設計者などが予め定義して素性テンプレート格納部３に保持しておく。
【００３５】
図５において、最も左端の列に記載される数値１，２，・・・は、各素性テンプレートに付与された通し番号に相当する素性テンプレート番号である。図５の例では、２６種類の素性テンプレートが定義されている。また、％ｌ［０］等のように、「％」で始まっている部分は素性テンプレートの変数部分であり、［  ］内の数値は注目点となる単語からの相対位置（字数単位）を示している。％ｌ［  ］は、単語区切りの有無を表すラベルである。％ｃ［  ］は［  ］内の数値で特定される位置の文字を表している。％ｓ［  ］は［  ］内の数値で特定される位置の文字の字種を表す変数である。素性生成部５は、これら素性テンプレートの変数部分をラベル付き学習データから抽出した値で置き換えることにより、素性を生成する。
【００３６】
例えば、図４に示した２番目のラベル付き学習データである「アート／ＰＣ／教室」において、アートの「ト」の直後の単語区切りを注目点とした場合、素性生成部５は、図５で示した素性テンプレートの変数部分の値を、上記の学習データ「アート／ＰＣ／教室」から抽出された値で、図６に示すように置き換える。図６において、ｔは単語区切り注目点からの相対位置（字数単位）である。％ｌ［ｔ］は単語区切りの有無を表すラベルであり、％ｌ［ｔ］＝１は単語区切りがあることを表し、％ｌ［ｔ］＝０は単語区切りがないことを表している。また、％ｃ［ｔ］は位置ｔの文字を表している。％ｓ［ｔ］は位置ｔの文字の字種を表す変数であって、「カ」はカタカナを示しており、「Ａ」はアルファベットを示し、「漢」は漢字を示している。
【００３７】
素性生成部５は、図６に示すように素性テンプレートの変数値を置き換えることで、図５に示した素性テンプレートから、図７に示す素性データを生成する。図７において、変数である％ｌ［  ］（ラベル）、％ｃ［  ］、％ｓ［  ］（照合条件の一部）が、図６で示した学習データ「アート／ＰＣ／教室」から抽出した値で置換されている。
【００３８】
素性生成部５は、上述した手順で素性を生成する度に、ラベル付き学習データにおける全ての文字位置（単語区切り）で素性生成処理を完了したか否かを判定する（ステップＳＴ４）。ここで、全ての文字位置で処理が完了していなければ、ステップＳＴ２の処理に戻って、未処理の文字位置に対しステップＳＴ２及びステップＳＴ３の処理を繰り返す。
【００３９】
ステップＳＴ４で全ての文字位置での処理完了を判定した場合、素性生成部５は、ラベル付き学習データ格納部２に格納される全ての未処理のラベル付き学習データを処理したか否かを判定する（ステップＳＴ５）。このとき、未処理のラベル付き学習データがあれば、ステップＳＴ１の処理に戻り、未処理のラベル付き学習データに対しステップＳＴ１からステップＳＴ４までの処理を繰り返す。
【００４０】
全ての未処理のラベル付き学習データを処理した場合、素性生成部５は、生成した全ての素性データに対して使用頻度による予備選択を行い、頻度上位２０％までの素性を採用し、素性集合Ｆ１として保持する（ステップＳＴ６）。
【００４１】
続いて、素性生成部５は、ラベル無し学習データ格納部４から未処理のラベル無し学習データを１つ取り出す（ステップＳＴ７）。ここでは、図８に示すようなラベル付き学習データが取り出されたものとする。図８の例では、入力文（施設名）である文字列と、各エントリのカテゴリ情報が付与されている。ただし、図４で示したラベル付き学習データと異なり、単語区切り位置「／」は付与されていない。
【００４２】
素性生成部５は、取り出したラベル無し学習データにおける未処理の文字位置を区切り注目点とする（ステップＳＴ８）。ラベル無し学習データでは、ラベルが付与されていないため、ラベル無し学習データの文字列における単語を順次区切り注目点とする。
【００４３】
次に、素性生成部５は、素性テンプレート格納部３から素性テンプレートを取り出し、当該素性テンプレートを使って現在の注目点で素性を生成する（ステップＳＴ９）。ここで、ラベル無し学習データにはラベルが付与されていないため、０、１の両ラベルを使って素性を生成する。つまり、注目点に対応するラベル％ｌ［  ］が０である場合と、１である場合の双方がアサインされ、それぞれの素性データが生成される。
【００４４】
この後、素性生成部５は、上述した手順で素性を生成する度に、ラベル無し学習データにおける全ての文字位置で素性生成を完了したか否かを判定する（ステップＳＴ１０）。ここで、全ての文字位置で処理が完了していなければ、ステップＳＴ８の処理に戻って、未処理の文字位置に対しステップＳＴ８及びステップＳＴ９の処理を繰り返す。
【００４５】
一方、全ての文字位置での処理が完了した場合、素性生成部５は、ラベル無し学習データ格納部４に格納される全ての未処理のラベル無し学習データを処理したか否かを判定する（ステップＳＴ１１）。このとき、未処理のラベル無し学習データがあれば、ステップＳＴ７の処理に戻り、未処理のラベル無し学習データに対してステップＳＴ７からステップＳＴ１０までの処理を繰り返す。
【００４６】
全ての未処理のラベル無し学習データを処理した場合、素性生成部５は、ラベル無し学習データから生成した全ての素性データに対し頻度による予備選択を行い、頻度上位２０％までの素性を採用して、素性集合Ｆ２として保持する（ステップＳＴ１２）。
【００４７】
最後に、素性生成部５は、ステップＳＴ６で保持した素性集合Ｆ１とステップＳＴ１２で保持した素性集合Ｆ２とを合わせ、素性データとして素性データ格納部６に格納する（ステップＳＴ１３）。
【００４８】
（２）学習処理（第二段階）
この学習処理では、正解ラベル尤度評価手段９による尤度評価処理と、カテゴリ内整合性評価手段１０による整合性評価処理とが行われ、これらの結果に応じてパラメータ更新手段１１が、第１段階で生成された各素性に対応する実数値パラメータであるモデルパラメータを生成する。
【００４９】
（２−１）尤度評価処理
図９は、実施の形態１による尤度評価処理の流れを示すフローチャートであり、この図に沿って尤度評価の詳細を説明する。
先ず、正解ラベル尤度評価手段９は、ラベル付き学習データ格納部２から未処理のラベル付き学習データを１つ取り出す（ステップＳＴ１ａ）。ここでは、図４に示すラベル付き学習データが取り出されたものとする。続いて、正解ラベル尤度評価手段９は、取り出したラベル付き学習データに対応する単語区切り仮説グラフを生成する（ステップＳＴ２ａ）。
【００５０】
図１０は、単語区切り仮説グラフの一例を示す図であり、図４に示した２番目のラベル付き学習データである「アートＰＣ教室」に関する単語区切り仮説グラフを示している。ここで、図１０中の黒丸ノードは入力であり、文中の文字を示している。左端と右端の「＃」はそれぞれ文頭及び文末を示す疑似入力文字である。また、白丸ノードは、入力文字位置に対応した単語区切り仮説であり、Ｓは開始位置に対応する疑似ラベルであり、Ｅは終了位置に対応する疑似ラベルである。太線のパスは、正解仮説「アート／ＰＣ／教室」を表している。
【００５１】
なお、入力文字の黒丸ノードと出力ラベルの白丸ノードとを繋ぐリンクは、その位置でのラベルの値を推定する際に考慮される入力文字を表している。図１０の例では、表記上の都合により、ラベルの値が０である白丸ノードとのリンクを記載していないが、ラベルの値が１である白丸ノードと同様のリンクが存在する。
【００５２】
正解ラベル尤度評価手段９は、生成した単語区切り仮説グラフ上の出力側の各白丸ノード（各出力ノード）及び白丸ノード間（出力ノード間）のリンクに対して、素性の照合を行いながら、ＣＲＦ確率計算式に従って尤度を算出する（ステップＳＴ３ａ）。尤度の計算には、動的計画法の一種であるフォワード・バックワードアルゴリズムを用いる。ＣＲＦによる確率計算式は、下記式（１）で与えられる。
ここで、ｐΛ（ｙ｜ｘ）は、入力ｘ（例えば「アートＰＣ教室」）が与えられるとき、その単語区切りが、出力ｙ（例えば００１０１０１、つまりアート／ＰＣ／教室）であるときの条件付き確率（モデルパラメータΛのときの推定値）を表している。
また、ｃはｃｌｉｑｕｅと呼ばれる仮説グラフの部分グラフであり、ここでは出力ｙ（＝パス）を構成する全ての辺Ｅｙ及び頂点Ｖｙを表している。ｆｉは素性データであり、条件に一致するときは値１となり、一致しないときは値０となる関数である。ｙ｜ｃは、出力ラベル系列の中でｃ（ある頂点又は辺）に該当するラベルである。さらに、λｉは、ｉ番目の素性に対応する実数値重みであって、Λ＝｛λ０，・・・，λｉ，・・・｝は、モデルパラメータ（ベクトル）である。このモデルパラメータの値は、パラメータ更新手段１１により逐次更新されるが、最初は初期値∀ｉλｉ＝０を用いる。Ｚ（ｘ）は、下記式（２）で表される。
【数１】
2010238043.tif 000003
【数２】
2010238043.tif 000004
【００５３】
図１１は、図１０中の単語区切り仮説グラフに部分グラフを明記した場合を示す図である。図１１において、辺ｃ１，ｃ３，・・・，や、頂点ｃ２，ｃ４，・・・は、太線で示したパスの部分グラフである。図１１に示す太線のパスは、入力「アートＰＣ教室」における正しい単語区切りを表している。このパスの尤度（正解ラベル尤度）は、部分グラフｃ１，ｃ２，・・・，ｃ１４において発火する（値１を取る）素性ｆｉを調べ、その素性に対応する実数値重みλｉを上記式（１）に従って足し込むことにより求められる。
【００５４】
例えば、図７で示した２６種類の素性がある場合、部分グラフの辺ｃ５で発火する素性は、左端の素性番号が２，８，９，１３，１４，２０の６種類となる。また、部分グラフの頂点ｃ６で発火する素性は、素性番号が１，３，４，５，６，９，１０，１１，１２，１５，１６，１８，１９，２１，２２，２３，２４，２５，２６の２０種類となる。このようにして、正解ラベル尤度評価手段９が、現在のモデルパラメータΛによる、入力ｘに対応する正解ラベル系列ｙの尤度ｐΛ（ｙ｜ｘ）を算出する。
【００５５】
ステップＳＴ４ａでは、正解ラベル尤度評価手段９が、ラベル付き学習データ格納部２に格納される全てのラベル付き学習データに対して、上述した正解ラベル尤度の計算処理を実施したか調べる。ここで、実施していたらステップＳＴ５ａの処理に移行する。実施が未完の場合は、ステップＳＴ１ａに戻って、未処理の学習データに対する処理を継続する。
【００５６】
ステップＳＴ５ａでは、正解ラベル尤度評価手段９が、下記式（３）を用いて、全てのラベル付き学習データｄ∈ＤＬに対する対数尤度の総和を算出する。なお、ｐΛ（ｙｄ｜ｘｄ）は上記式（１）で定義される尤度である。
【数３】
2010238043.tif 000005
【００５７】
（２−２）整合性評価処理
図１２は、整合性評価処理の流れを示すフローチャートであり、この図に沿って処理の詳細を説明する。
先ず、カテゴリ内整合性評価手段１０は、ラベル無し学習データ格納部４から未処理のラベル無し学習データを１つ取り出す（ステップＳＴ１ｂ）。続いて、カテゴリ内整合性評価手段１０は、取り出したラベル無し学習データに対応する単語区切り仮説グラフを生成する（ステップＳＴ２ｂ）。
【００５８】
カテゴリ内整合性評価手段１０は、生成された単語区切り仮説グラフ上の各出力ノード及び出力ノード間のリンクに対し素性の照合を行いながら、上述した尤度評価処理と同様に、ＣＲＦ確率計算式に従って尤度を算出する（ステップＳＴ３ｂ）。
【００５９】
ステップＳＴ４ｂでは、カテゴリ内整合性評価手段１０が、ラベル無し学習データ格納部４に格納される全てのラベル無し学習データに対して、上述した正解ラベル尤度の計算処理を実施したか調べる。ここで、実施していたらステップＳＴ５ｂの処理に移行する。実施が未完の場合は、ステップＳＴ１ｂに戻って、未処理の学習データに対する処理を継続する。
【００６０】
次に、カテゴリ内整合性評価手段１０は、正解ラベルが付与されていないラベル無し学習データに対して、モデルパラメータΛによる推定の「よさ」を評価するため、下記式（４）で得られるエントロピーを評価値として算出する（ステップＳＴ５ｂ）。なお、この式（４）は、各カテゴリκ∈Ｋにおけるラベル無し学習データｄ∈Ｄｕに対して、部分グラフｃを推定するときの条件付きエントロピーを表している。ただし、ｐチルダは、学習データにおける観測確率であり、ｐΛは、モデルパラメータΛを用いた推定確率である。
【数４】
2010238043.tif 000006
【００６１】
（２−３）モデルパラメータ更新処理
パラメータ更新手段１１は、正解ラベル尤度評価手段９が上記式（３）で算出した、ラベル付き学習データに対する尤度ＬＤＬ（Λ）と、カテゴリ内整合性評価手段１０が上記式（４）で算出した部分グラフのエントロピーＨΛ（ｃ｜ＤＵ，Ｋ）とを用いて、下記式（５）で表される目標関数Ｇ（Λ）が最大化するようにモデルパラメータΛを更新する。下記式（５）において、α、βは実験的に定める定数である。また、右辺第２項は、モデルパラメータΛの大きさに応じたペナルティを与える項であり、過学習を防ぐために導入している。なお、｜｜Λ｜｜は、下記式（６）で与えられるユークリッドノルムである。
【数５】
2010238043.tif 000007
【数６】
2010238043.tif 000008
【００６２】
目標関数Ｇ（Λ）を最大化するモデルパラメータΛは、公知の山登り法によって求めることができる。すなわち、正解ラベル尤度評価手段９によるＬＤＬの計算、カテゴリ内整合性評価手段１０によるＨΛ（ｃ｜ＤＵ，Ｋ）の計算とともに反復して、モデルパラメータΛを逐次更新し、モデルパラメータΛの更新量が所定値以下となったら収束と見なし、処理を完了する。
【００６３】
なお、目標関数Ｇ（Λ）は微分可能であるから勾配を求めて、上記山登り法の代わりに準ニュートン法（例えば、ＢＦＧＳ法）を適用すれば、収束までの反復処理の回数を減らすことが可能である。
【００６４】
目標関数Ｇ（Λ）を最大化するパラメータ推定では、ラベル付き学習データに対しては上記式（５）の右辺第１項の尤度の最大化が基準とされ、ラベル無し学習データに対しては上記式（５）の右辺第３項のエントロピーが小さくなる構造推定（カテゴリ内で一貫性のある構造推定）が増えるように学習される。後者では人手でタグ付け作業をする際の指針に直観的に近いため、教師なし学習において有用な規則獲得が可能となっている。
このようにして得られたモデルパラメータΛは、パラメータ更新手段１１によりモデルパラメータ格納部８に格納される。
【００６５】
（３）学習の後処理（第三段階）
解析辞書出力手段１２は、パラメータ更新手段１１によるモデルパラメータ推定処理が完了すると、当該モデルパラメータと、素性データ格納部６に格納される素性データと、ラベル格納部７に格納されるラベルの一覧表とを統合し、テキスト解析用辞書として所定のフォーマットで出力する。
【００６６】
図１３は、テキスト解析用辞書の一例を示す図である。図１３に示すデータフォーマットは、＠ＬＡＢＥＬＳ、＠ＦＥＡＴＵＲＥＳ、＠ＷＥＩＧＨＴＳの３つのセクションから構成されている。＠ＬＡＢＥＬＳのセクションには、ラベル格納部７が保持するラベルが列挙される。＠ＦＥＡＴＵＲＥＳのセクションには、素性データ格納部６が保持する素性が列挙される。図１３に示す例では、各行が素性番号ｉ及び素性ｆｉの定義から構成されている。なお、図１３においては、素性番号２７番目以降の素性の記載を省略している。＠ＷＥＩＧＨＴＳのセクションには、モデルパラメータ格納部８に保持されるモデルパラメータの値が列挙される。図１３では、各行が素性番号ｉ及び当該素性ｆｉの重みパラメータλｉから構成されている。重みパラメータについても素性と同様に素性番号２６までの一部のみを例示し、省略部分を「・・・」で示している。
【００６７】
解析辞書出力手段１２から出力されたテキスト解析用辞書は、図１に示すように、電子ファイル等のデータとして保存され、テキスト解析器に読み込まれてテキスト解析に利用される。
【００６８】
以上のように、この実施の形態１によれば、ラベル付き学習データに付与されたラベルで示される解析結果の尤度を算出し、ラベル無し学習データに対する解析結果と同じカテゴリに属する入力文に対する解析結果との整合性の度合を示す評価値を算出し、尤度及び整合性の評価値に基づく目標関数が最大化するように素性データに対応するモデルパラメータの値を更新し、当該モデルパラメータの更新値を用いて算出された尤度及び評価値に基づく当該モデルパラメータの更新を、当該モデルパラメータの更新値が所定の収束条件を満たすまで実行して、所定の収束条件を満たしたモデルパラメータ、素性データ及びラベルの一覧を用いて、テキスト解析器が使用する解析用辞書を生成する。
このように、ラベル付き学習データとラベル無し学習データを併用する半教師付き学習の枠組みにおいて、データソースやアプリケーションから容易に取得可能なデータの副次的属性（カテゴリ情報）を利用することにより、ラベル付き学習データに対しては一般的な最尤推定を実施しつつ、ラベル無し学習データに対してはカテゴリ内で可能な限り一貫した推定を行うように学習される。ここで、この発明におけるラベル無し学習データに対する学習指針は、カテゴリ内のデータの類似性やラベルの共通性を仮定するものであるが、この仮定は、コーパス作成時に人手でラベル付け作業を行う際の明示的若しくは暗黙的な指針に直観的に近く、自然な仮定と考えられる。従って、このような先験的な知識を学習基準に取り込むことにより、ラベル無し学習データから効率的な学習を行うことができ、解析精度を向上させることが可能である。
【符号の説明】
【００６９】
１  テキスト解析学習装置、２  ラベル付き学習データ格納部、３  素性テンプレート格納部、４  ラベル無し学習データ格納部、５  素性生成部、６  素性データ格納部、７  ラベル格納部、８  モデルパラメータ格納部、９  正解ラベル尤度評価手段（尤度評価手段）、１０  カテゴリ内整合性評価手段（整合性評価手段）、１１  パラメータ更新手段（更新手段）、１２  解析辞書出力手段。
【図１】
2010238043.tif 000009
【図２】
2010238043.tif 000010
【図３】
2010238043.tif 000011
【図４】
2010238043.tif 000012
【図５】
2010238043.tif 000013
【図６】
2010238043.tif 000014
【図７】
2010238043.tif 000015
【図８】
2010238043.tif 000016
【図９】
2010238043.tif 000017
【図１０】
2010238043.tif 000018
【図１１】
2010238043.tif 000019
【図１２】
2010238043.tif 000020
【図１３】
2010238043.tif 000021
【図１４】
2010238043.tif 000022