(57)【要約】意味抽出装置(100)は、クラスタリング部(102)と、抽出ルール生成部(104)と、抽出ルール適用部(108)とを備える。クラスタリング部（102）は、特定の意味を有する単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングする。抽出ルール生成部(104)は、クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する。抽出ルール適用部(108)は、意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する。
2011118723.tif 000002
【特許請求の範囲】
【請求項１】
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングするクラスタリング手段と、
前記クラスタリング手段によりクラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新するクラスタ更新手段と、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する抽出ルール生成手段と、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する抽出ルール適用手段と、
を備えることを特徴とする意味抽出装置。
【請求項２】
前記クラスタ更新手段は、
前記各クラスタ内における特徴量ベクトルの散らばり度を示すクラスタ内分散度と、前記各クラスタへの前記特徴量ベクトルの散らばり度を示すクラスタ間分散度との少なくとも一方を算出する分散度算出手段と、
前記分散度算出手段によって算出された前記クラスタ内分散度と前記クラスタ間分散度との一方又は両方を閾値と比較することで、偏りのあるクラスタがあるか否かを判別する判別手段と、
偏りのあるクラスタがあると判別された場合に、偏りがあると判別されたクラスタのクラスタ内分散度を上げ、クラスタ間分散度を下げるように、当該クラスタ内の特徴量ベクトルを移動する処理、又は、削除する処理を行う更新手段と、
を備えることを特徴とする請求項1に記載の意味抽出装置。
【請求項３】
前記クラスタ更新手段は、
前記各クラスタ内における特徴量ベクトルの散らばり度を示すクラスタ内分散度を算出する分散度算出手段と、
算出された前記各クラスタ内分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別する判別手段と、
前記偏りのあるクラスタがあると判別された場合に、前記偏りがあると判別されたクラスタの前記クラスタ内分散度が、前記一定よりも散らばった状態を示すように前記各クラスタを更新する更新手段と、
を備えることを特徴とする請求項1又は2に記載の意味抽出装置。
【請求項４】
前記分散度算出手段は、前記各クラスタ内の特徴量ベクトルと該各クラスタ内の中心の特徴量ベクトルとの間の非類似度に基づいて前記クラスタ内分散度を算出する、
ことを特徴とする請求項2又は3に記載の意味抽出装置。
【請求項５】
前記クラスタ更新手段は、
前記各クラスタへの前記特徴量ベクトルの散らばり度を示すクラスタ間分散度を算出する分散度算出手段と、
算出された前記クラスタ間分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別する判別手段と、
前記偏りのあるクラスタがあると判別された場合に、前記偏りがあると判別されたクラスタのクラスタ間分散度が、前記一定よりも散らばった状態を示すように前記各クラスタを更新する更新手段と、
を備えることを特徴とする請求項1乃至4の何れか1項に記載の意味抽出装置。
【請求項６】
前記分散度算出手段は、前記各クラスタ内の特徴量ベクトルの数と該各クラスタ内の特徴量ベクトルの数の全クラスタでの平均値との差に基づいて前記クラスタ間分散度を算出する、
ことを特徴とする請求項2乃至5の何れか1項に記載の意味抽出装置。
【請求項７】
アノテーションが付されていない文書内の単語から作成された特徴量ベクトルを記憶するアノテーション無特徴量ベクトル記憶手段と、
前記クラスタ更新手段による処理の後も、クラスタ内の特徴量ベクトルの数が所定値未満であるクラスタに対して、該クラスタに対応する特徴量ベクトルを前記アノテーション無特徴量ベクトル記憶手段から取得し、該クラスタに対応するアノテーションを付した特徴量ベクトルとして該クラスタに追加する特徴量ベクトル追加手段と、
をさらに備えることを特徴とする請求項1乃至6の何れか1項に記載の意味抽出装置。
【請求項８】
クラスタ内の特徴量ベクトルで頻出する特徴量を特定し、特定した特徴量の値を所定の重みを付した値に更新する特徴量ベクトル変換手段を、
さらに備えることを特徴とする請求項1乃至7の何れか1項に記載の意味抽出装置。
【請求項９】
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングし、
クラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新し、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成し、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する
ことを特徴とする意味抽出方法。
【請求項１０】
コンピュータを、
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングするクラスタリング手段、
前記クラスタリング手段によりクラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新するクラスタ更新手段、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する抽出ルール生成手段、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する抽出ルール適用手段、
として機能させることを特徴とするプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単語の意味を抽出する意味抽出装置、意味抽出方法、および、記録媒体に関する。
【背景技術】
【０００２】
新聞記事やWebページなどに存在するテキストには、人名、地名、組織名などの意味（以下、「クラス」ともいう）を有する固有表現が大量に含まれる。これらの固有表現をテキスト中から認識することで、質問応答システム、文書分類、機械翻訳などにおいてテキストデータを有効に活用することができる。【０００３】
テキストから固有表現を抽出する例が非特許文献1に記載されている。非特許文献1に記載の方法は、抽出したい固有表現のクラスにアノテーション（タグ）を付したテキストデータを正解データとして事前に作成する。そして、非特許文献1に記載の方法は、事前に作成された正解データから、SVM（Support Vector Machine）を用いた機械学習を行い、固有表現を抽出するためのルールを生成する。生成された抽出ルールを用いることによって、任意のテキストから固有表現のクラスを抽出することができる。【０００４】
非特許文献1に記載の技術は、語句のクラスが同じであれば、その語句の周辺のテキスト情報が類似することを前提に機械学習を行い、クラス毎の抽出ルールを生成する。語句の周辺は、その語句の前後に位置する単語など、その語句と所定の関係にあるテキスト内の単語を含み、またテキストの種類を示す単語などを含む。テキスト情報は、語句の文字列、品詞、係り先などを示す情報である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】山田寛康、工藤  拓、松本  裕治、「Support Vector Machine を用いた日本語固有表現抽出」IPSJ 論文誌,Vol.43,No.1,pp.44-53 (2002)
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、テキストの書かれ方は多様であるため、同じ意味を有する語句であっても、その周辺の単語のテキスト情報が類似するとは限らない。例えば、クラスが「製品名」である語句「Ｖｏｉｃｅ○○」であれば、「Ｎ社はＶｏｉｃｅ○○を発売しました。」、「Ｖｏｉｃｅ○○は音声認識ソフトです。」などの書かれ方がある。【０００７】
上記非特許文献1の技術では、正解データに使用されたテキストの書かれ方が多様ではなく、その書かれ方に偏りがあると、汎化能力の乏しい抽出ルールが生成され、その結果、固有表現を抽出する精度が悪くなるという問題がある。なお、汎化能力とは、機械学習時に与えられた正解データ内にある語句以外の未知の語句に対しても正しく固有表現のクラスを抽出できる能力のことである。【０００８】
本発明は、上記実情に鑑みてなされたものであり、特定の意味を有する語句をテキストから高い精度で抽出することができる意味抽出装置、意味抽出方法、および、記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明に係る意味抽出装置は、
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングするクラスタリング手段と、
前記クラスタリング手段によりクラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新するクラスタ更新手段と、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する抽出ルール生成手段と、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する抽出ルール適用手段と、
を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、意味抽出に適用される抽出ルールは、クラスタリングされた特徴量ベクトルの偏りが改善されたクラスタ毎に生成される。そのため、正解データが示すテキストの書かれ方が偏ったものであったとしても、意味抽出をする際には、テキストの書かれ方の影響を減らすことができる。したがって、汎化能力が高い抽出ルールを生成することができ、高い精度での意味抽出を実現することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第1実施形態に係る固有表現抽出装置の構成を示す図である。
【図２】正解データの例を示す図である。
【図３】特徴量ベクトルの例を示す図である。
【図４】クラスタリングされた結果を示す図である。
【図５Ａ】クラスタリングされた特徴量ベクトルの分布の更新前の例を示した概念図である。
【図５Ｂ】クラスタリングされた特徴量ベクトルの分布の更新後の例を示した概念図である。
【図６】クラスタ更新部が行うクラスタ更新処理の条件と処理内容との関係を示した図である。
【図７】クラスを判別する処理の流れを説明するためのフローチャートである。
【図８】抽出ルール生成処理の動作を説明するためのフローチャートである。
【図９】クラスタ更新処理の動作を説明するためのフローチャートである。
【図１０】抽出ルール適用処理の動作を説明するためのフローチャートである。
【図１１】本発明の第2実施形態に係る固有表現抽出装置の構成を示す図である。
【図１２】クラスタ更新処理の動作を説明するためのフローチャートである。
【図１３】本発明の第3実施形態に係る固有表現抽出装置の構成を示す図である。
【図１４Ａ】特徴量ベクトルが変換される前の例を示した図である。
【図１４Ｂ】特徴量ベクトルが変換された後の例を示した図である。
【図１５】特徴量とその頻度との関係を示した図である。
【図１６】抽出ルール生成処理の動作を説明するためのフローチャートである。
【図１７】各実施形態に係る固有表現抽出装置をコンピュータに実装する場合の、物理的な構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、本発明は下記の実施形態及び図面によって限定されるものではない。本発明の要旨を変更しない範囲で下記の実施形態及び図面に変更を加えることが出来るのはもちろんである。また、図中同一または相当部分には同一符号を付す。
【００１３】
（第1実施形態）
本発明の第1実施形態に係る固有表現抽出装置100について説明する。固有表現抽出装置100は、図1に示すように、アノテーション付特徴量ベクトル記憶部101と、クラスタリング部102と、クラスタ更新部103と、抽出ルール生成部104と、抽出ルール記憶部105と、入力部106と、クラスタ特定部107と、抽出ルール適用部108と、出力部109とを備える。
【００１４】
アノテーション付特徴量ベクトル記憶部101は、サンプルとなるアノテーション付テキストデータ（正解データ）内に出現する単語（出現単語）毎に生成された特徴量ベクトルを示すデータ（情報）を予め記憶している。アノテーション付テキストデータは、固有表現を抽出するためのルールである抽出ルールを生成するためのサンプルとなるデータであって、アノテーション（タグ）が付されたテキストデータである。アノテーション付テキストデータは、通常、利用者などによって準備される。特徴量ベクトルは、出現単語およびその周辺単語の素性（特徴）を表す特徴量を要素としたベクトルである。
【００１５】
なお、アノテーション付特徴量ベクトル記憶部101は、特徴量ベクトルの代わりに特徴量ベクトルを生成できるデータを保持していてもよい。特徴量ベクトルを生成できるデータの一例として、正解データを挙げることができる。この場合、固有表現抽出装置100は、アノテーション付特徴量ベクトル記憶部101が記憶しているデータを取得し、そのデータに基づいて特徴量ベクトルを生成する特徴量ベクトル生成部（図示せず）を備える。
【００１６】
ここで、図2は、アノテーション付テキストデータ（正解データ）の例を示す図である。この例では、文書1〜8の8つの正解データが図示されている。正解データ内において、固有表現がある箇所は、そのクラス名のアノテーション（タグ）が付されている。例えば、文書1内は、3つの固有表現を含み、その内訳は、製品名「Web○○」が２つと技術名「Web管理統合」が１つである。
【００１７】
図3は、図2の文書1から抽出した特徴量ベクトルの一部を示した図である。この図では、（文書1，文1，N社，unknown）と（文書1，文1，Web○○，製品名）と（文書1，文1，発売，unknown）との3つの特徴量ベクトルの例が示されている。なお、本実施形態では、特徴量ベクトルは、（文書番号、文番号、表層文字列、クラス名）により表される。なお、文番号は、文書内の文を特定するための番号であり、文書内の先頭の文から順に採番されている。
【００１８】
例えば、特徴量ベクトル（文書1，文1，N社，unknown）は、文書1の文1（即ち、先頭文）に含まれる単語であって、表層文字列が"N社"である単語に関する特徴量ベクトルであることを示す。また、クラス名の"unknown"は、アノテーションが付されていない単語であることを示す。
【００１９】
本実施形態では、特徴量ベクトルは、出現単語自身及び特徴量ベクトルが作成された文書において出現単語の前後２つずつの単語（形態素）に関する特徴量を表す。特徴量ベクトルの各要素は、「特徴量名：特徴量値」として表される。
【００２０】
特徴量名は、テキスト情報（表層文字列、品詞等）の種類を示す。また、特徴量名は、その要素が出現単語自身およびこの出現単語の前後2つずつに含まれる単語のうち、いずれの単語に関する特徴であるかを示す。特徴量値は、特徴量名で表される種類のテキスト情報がその文書内で出現する頻度（出現回数）である。
【００２１】
また、本実施形態では、特徴量名に「単語内_」という接頭辞が付いている場合は当該特徴量ベクトルの作成対象となる出現単語自身に関する特徴量を示す。また、特徴量名に「文脈_」という接頭辞が付いている場合は、出現単語の前後の形態素に関する特徴量であることを示す。
【００２２】
例えば、特徴量ベクトルの1要素である「単語内_"N社"：1」は、表層文字列"N社"というテキスト情報に関する出現単語自身の特徴量であり、表層文字列が"N社"である出現単語が文書内に1つあることを表す。
【００２３】
また、特徴量ベクトルの1要素「単語内_名詞：1」は、品詞が「名詞」であるというテキスト情報に関する出現単語自身の特徴量であり、品詞が名詞である出現単語が文書内に1つあることを表す。
【００２４】
また、特徴量ベクトルの1要素「文脈_"が"：1」は、表層文字列"が"というテキスト情報に関する出現単語の周辺の単語（出現単語の前後２つずつの単語）の特徴量であり、表層文字列が”が”である周辺の単語が文書内に1つあることを表す。
【００２５】
また、特徴量ベクトルの1要素「文脈_助詞：1」は、品詞が「助詞」であるというテキスト情報に関する出現単語の周辺の単語の特徴量であり、品詞が助詞である周辺の単語が文書内に1つあることを表す。
【００２６】
なお、これらは一例にすぎない。例えば、特徴量ベクトルは、名詞以外の語句の出現に対して生成されてもよい。また、特徴量ベクトルは、周辺の単語に関する情報として、文書内の所定の特徴語に関するテキスト情報、文書に付随する分類情報などを含んでも良い。また、テキスト情報は、係り元の情報などを含んでも良い。
【００２７】
図1に戻り、クラスタリング部102は、アノテーション付特徴量ベクトル記憶部101に記憶されている各特徴量ベクトルを、凝集法やK-MEANS法などの手法を用いてクラスタリングする。
【００２８】
例えば、凝集法を用いてクラスタリングした場合を考える。この場合、まず、クラスタリング部102は、各特徴量ベクトルを単一要素のクラスタとしたクラスタ集合C＝｛C1，C2，，，Cn｝を形成する。C1〜Cnは、それぞれ、1個の特徴量ベクトルを要素とするクラスタである。
【００２９】
次に、クラスタリング部102は、クラスタ集合C内の各クラスタ間の類似度を求める。例えば、類似度を求めるために最短距離法、最長距離法を用いることができる。最短距離法を用いる場合、クラスタペアの類似度は、ペアを構成する各クラスタ内の特徴量ベクトル同士のうち最も類似度が高い特徴量ベクトル間の類似度により定まる。最長距離法を用いる場合、クラスタペアの類似度は、ペアを構成する各クラスタ内の特徴量ベクトル同士のうち最も類似度が低い特徴量ベクトル間の類似度により定まる。
【００３０】
なお、特徴量ベクトル間の類似度は、コサイン類似度などを用いればよい。コサイン類似度は、特徴量ベクトル間の成す角を類似度とする指標である。例えば、図2の例の場合、特徴量ベクトル（文書1、文1、N社、unknown）と（文書2、文1、N社、unknown）との間の類似度は、語句の特徴量も周辺のテキスト情報も似ているため高くなる。また、特徴量ベクトル（文書1、文1、Web○○、製品名）と（文書7、文1、Note○○、製品名）との間の類似度は、語句の特徴量も周辺のテキスト情報も異なるため低くなる。
【００３１】
次に、クラスタリング部102は、クラスタ間で最も類似度が高いクラスタのペアCi、Cjを特定し、そのクラスタのペアCi、Cjを併合した新しいクラスタCnewをクラスタ集合Cに追加し、クラスタCi、Cjを削除する。そして、クラスタ集合Cのクラスタ数が、あらかじめシステムに設定されている値と同じになるまで、類似するクラスタのペアの併合を繰り返していくことで、特徴量ベクトルをクラスタリングする。
【００３２】
クラスタ更新部103は、クラスタリング部102がクラスタリングしたクラスタのうち、データの偏りがあるクラスタの有無を判別する。そして、偏りがある場合は、クラスタ更新部103は、この偏りが改善されるように、特徴量ベクトルの他のクラスタへの移動や削除を行う。
【００３３】
具体的には、まず、クラスタ更新部103は分散度算出部103aを備え、分散度算出部103aはクラスタ内分散度とクラスタ間分散度とを算出する。
【００３４】
クラスタ内分散度は、各クラスタ内における特徴量ベクトルの散らばり度（分散の度合い）を示す値である。本実施形態のクラスタ内分散度は、後述するように、各クラスタ内の特徴量ベクトルと各クラスタ内の中心の特徴量ベクトルとの間の非類似度に基づいて算出されるデータ類似分散度である。
【００３５】
クラスタ間分散度は、各クラスタへの特徴量ベクトルの散らばり度（分散の度合い）を示す値である。本実施形態のクラスタ間分散度は、後述するように、各クラスタ内の特徴量ベクトルの数と各クラスタ内の特徴量ベクトルの数の全クラスタでの平均値との差に基づいて算出されるデータ量分散度である。
【００３６】
データ類似分散度は、クラスタ内の特徴量ベクトルが、クラスタの中心からどの程度散らばって分布しているかを示す指標であり、クラスタ内のデータの偏りを表す。データ類似分散度が高いほど、このクラスタ内の特徴量ベクトルは、クラスタの中心から遠い距離に散らばって分布していることがわかる。
【００３７】
データ量分散度は、クラスタ内の特徴量ベクトルの数が、全クラスタでの平均数と比較してどれだけ差があるかを示す指標であり、クラスタ間のデータの偏りを表す。データ量分散度が高いほど、このクラスタ内のデータ数が、全クラスタでの平均データ数と離れている（即ち、全クラスタでの平均データ数より多いか少ない）ことがわかる。
【００３８】
ここで、データ類似分散度の計算方法について具体的に説明する。データ類似分散度は以下の式で表される。
データ類似分散度（C）＝1/n × Σ｛非類似度（co,ci）｝^2
Cはデータ類似分散度が算出されるクラスタを表す。nは、クラスタC内の特徴量ベクトルの数を表す。coはクラスタCの中心の特徴量ベクトル、ciはクラスタC内のi番目の特徴量ベクトルを表す。
【００３９】
なお、中心の特徴量ベクトルは例えば、クラスタ内の全ての特徴量ベクトルとの類似度（例えば、コサイン類似度）の合計が最大になる特徴量ベクトルである。又は、中心の特徴量ベクトルは例えば、クラスタ内の各特徴量ベクトルから求められるクラスタの重心から最も近い位置にある特徴量ベクトルであってもよい。
【００４０】
非類似度（co,ci）は、特徴量ベクトルcoと特徴量ベクトルciとの間の非類似度を表す。非類似度は、特徴量ベクトル同士が似ていれば小さな値をとり、似ていない場合は大きな値をとる。また、Σは、クラスタC内の全ての特徴量ベクトルでの和を計算することを表す。
【００４１】
なお、この式は一例であり、データ類似分散度は例えば、クラスタ内の各特徴量ベクトルと中心の特徴量ベクトルとの間の非類似度の平均であってもよい。
【００４２】
また、データ量分散度は以下の式で表される。
データ量分散度（C）＝|u-n|／N
Cはデータ量分散度が算出されるクラスタを表す。uは各クラスタ内の特徴量ベクトルの数の平均、nはクラスタC内の特徴量ベクトルの数、Nは全クラスタ内の特徴量ベクトルの数を表す。
なお、この式は一例であり、例えば、(u-n)^2／N等をデータ量分散度としてもよい。
【００４３】
続いて、データ類似分散度とデータ量分散度とについて、具体例を挙げて説明する。例えば、図4に示すように5つのクラスタが生成されている場合を考える。全データ数（全ての特徴量ベクトルの数）は384、クラスタのデータ数の平均は76.8である。
【００４４】
この場合、クラスタ2のデータ間類似分散度は以下のように計算される。なお、クラスタ2の中心の特徴量ベクトルは（文書1、文1、N社、unknown）であるとする。
データ間類似分散度（クラスタ2）＝1/100×Σ{非類似度（（文書1、文1、N社、unknown）,ci）}^2
＝1/100×｛非類似度（（文書1、文1、N社、unknown），（文書1、文1、N社、unknown））
＋非類似度（（文書1、文1、N社、unknown），（文書5、文1、N社、unknown））
＋非類似度（（文書1、文1、N社、unknown），（文書6、文1、N社、unknown））
＋非類似度（（文書1、文1、N社、unknown），（文書8、文1、N社、unknown））
＋…｝
【００４５】
ここで、非類似度を、1からコサイン類似度を引いた値であると定義すると、上式内の非類似度は以下のように算出される。
非類似度（（文書1、文1、N社、unknown），（文書1、文1、N社、unknown））
＝1-コサイン類似度（（文書1、文1、N社、unknown），（文書1、文1、N社、unknown））
＝1−内積（（文書1、文1、N社、unknown），（文書1、文1、N社、unknown））／｜（文書1、文1、N社、unknown）｜×｜（文書1、文1、N社、unknown）｜
＝０
非類似度（（文書1、文1、N社、unknown），（文書6、文1、N社、unknown））＝０
非類似度（（文書1、文1、N社、unknown），（文書5、文1、N社、unknown））＝1−内積（（文書1、文1、N社、unknown），（文書5、文1、N社、unknown））／｜（文書1、文1、N社、unknown）｜×｜（文書5、文1、N社、unknown）｜
＝1−6／√6×√10)＝1−0.775＝0.225
非類似度（（文書1、文1、N社、unknown），（文書8、文1、N社、unknown））
＝1−6／√6×√10)＝1−0.775＝0.225
このように、周辺のテキスト情報（表層文字列、品詞）が似ているほど、非類似度は小さな値となる。
【００４６】
上式で示した以外のクラスタ2の他の96個の特徴量ベクトルの非類似度も0.225だとすると、クラスタ2のデータ間類似分散度は以下のように算出される。
データ間類似分散度（クラスタ2）＝1/100×Σ{非類似度（（文書1、文1、N社、unknown）,ci）}^2
＝1/100×｛0＋0＋0.225^2＋0.225^2＋0.225^2×96｝
＝0.049
【００４７】
このように、非類似度の小さな特徴量ベクトル集合から成るクラスタは、データ間類似分散度が小さな値となる。すなわち、周辺のテキスト情報が似たものばかりが集まっているクラスタは、データ間類似分散度が小さな値となる。
【００４８】
また、もし、非類似度の大きな特徴量ベクトルを含んでクラスタが構成される場合、例えば、上述したクラスタ2に、非類似度が0.225の特徴量ベクトルに代わって、非類似度が0.5（半分くらい同じデータ）と比較的大きな非類似度を持つ特徴量ベクトルが50個混じっている場合、データ間類似分散度は以下のように算出される。
データ間類似分散度（クラスタ2）＝1/100×(0.225^2×48＋0.5^2×50)
= 0.149
従って、非類似度の大きな特徴量ベクトルが混じっているクラスタの場合、データ間類似分散度が大きな値となる。すなわち、周辺テキスト情報が似たものばかりでなく、ある程度分散しているクラスタは、データ間類似分散度が大きな値となる。
【００４９】
また、図4に示すクラスタ1とクラスタ2のデータ量分散度は、以下のように算出される。
データ量分散度（クラスタ1）＝｜平均データ量−クラスタ1のデータ量｜／全データ数
＝｜76.8−200｜／384＝0.32
データ量分散度（クラスタ2）＝｜平均データ量−クラスタ2のデータ量｜／全データ数
＝｜76.8−100｜／384＝0.06
このように、クラスタリングされた特徴量ベクトルの数にクラスタ間で偏り（平均データ量とのずれ）が大きいクラスタ1のデータ量分散度は、クラスタ２のデータ量分散度よりも大きくなる。
【００５０】
続いて、クラスタ更新部103は、算出したデータ類似分散度と第１閾値とを比較し、また、データ量分散度と第２閾値とを比較することで、データに偏りがあるクラスタがあるか否かを判別する判別部103bを備える。判別部103bは例えば、全クラスタでデータ間類似分散度が0.125（第１閾値）以上であり、且つ、全クラスタのデータ量分散度の平均が0.1（第２閾値）以下である場合にデータの偏りがないと判別すればよい。
【００５１】
なお、クラスタ更新部103は、各クラスタのデータ類似分散度と第１閾値とを比較し、比較した結果、第１閾値未満である類似分散度が含まれる場合に、データの偏りがあると判断してもよい。また、クラスタ更新部103は、全クラスタのデータ量分散度の平均と第２閾値とを比較し、その平均が第２閾値より大きい場合に、データの偏りがあると判断してもよい。
【００５２】
図5A及びBはそれぞれ、クラスタリングされた特徴量ベクトルの分布の更新前及び更新後の例を示した概念図である。この図において、○は一つの特徴量ベクトルを表す。また、点線で囲む領域はクラスタを表し、点線領域内の○が、このクラスタ内に含まれる特徴量ベクトルを表す。この図においては、クラスタa〜cの3つのクラスタが形成されている。また、各クラスタの中心は×で表す。
【００５３】
例えば、図5Aに示すように特徴量ベクトルがクラスタリングされている場合を考える。この場合、各クラスタ内のデータは、中心近辺に集中しているためデータ間類似分散度が低い。従って、このまま各クラスタから抽出ルールを作成した場合、正解データ内の単語と全く同じ単語しか抽出できない、汎化能力が悪いものとなってしまう。
【００５４】
また、クラスタcのデータ数が他のクラスタa,bと比べて極端に少ないため、クラスタcのデータ量分散度が高く、各クラスタ間のデータ数に偏りが見られる。従って、このまま各クラスタから抽出ルールを作成した場合、クラスタ毎に精度が異なる抽出ルールが作成されてしまう。
【００５５】
従って、クラスタ更新部103の判別部103bは、図5Aでは、クラスタの偏りがあるものと判別する。
【００５６】
クラスタ更新部１０３は、さらに、判別部103bにより偏りがあると判別された場合に、偏りを改善するように各クラスタにクラスタリングされた特徴量ベクトルを更新する更新部103cを備える。本実施形態の更新部103cは、データ類似分散度を上げ、データ量分散度を下げるように、クラスタ内の特徴量ベクトルの移動や削除等を行い、これによってデータの偏りを改善する。
【００５７】
具体的には、データ量が多いためにデータ量分散度が高いクラスタの場合、クラスタ更新部103の更新部103cは、そのクラスタ内の特徴量ベクトルを削除または他のクラスタへ移動する。また、データ量が少ないためにデータ量分散度が高いクラスタの場合、クラスタ更新部103の更新部103cは、そのクラスタに他のクラスタの特徴量ベクトルを追加する。
【００５８】
さらに、データ間類似分散度が低いクラスタ内の特徴量ベクトルを削除する場合、クラスタ更新部103の更新部103cは、そのクラスタの中心に近い特徴量ベクトルを削除する。また、データ間類似分散度が低いクラスタに特徴量ベクトルを追加する場合、クラスタ更新部103の更新部103cは、このクラスタの範囲外にあり、且つ、このクラスタの中心に最も近い特徴量ベクトルを追加する。
【００５９】
従って、クラスタ更新部103の更新部103cは、図6に示すような条件で、クラスタに対して処理を行うこととなる。
【００６０】
即ち、データ間類似分散度が低く、データ量が多いためにデータ量分散度が高いクラスタの場合、クラスタ更新部103の更新部103cは、このクラスタ内の特徴量ベクトルの削除、または他のクラスタへの移動を行う。なお、この際、移動又は削除の対象となる特徴量ベクトルは、望ましくは、このクラスタの中心に近い特徴量ベクトルである。このような処理を行う理由は、このクラスタ内の特徴量ベクトルは中心に近い同じようなものばかりであり、かつ、他のクラスタと比較してデータ量も多いためである。
【００６１】
また、データ間類似分散度が低く、データ量が少ないためにデータ量分散度が高いクラスタの場合、クラスタ更新部103の更新部103cは、このクラスタに他のクラスタの特徴量ベクトルを追加する。なお、この際、移動又は削除の対象となる特徴量ベクトルは、望ましくは、このクラスタ内のどの特徴量ベクトルよりも所定距離以上離れ、且つ、このクラスタの中心に最も近い特徴量ベクトルである。このような処理を行う理由は、このクラスタ内の特徴量ベクトルは中心に近い同じようなものばかりであり、かつ、他のクラスタと比較してデータ量も少ないためである。
【００６２】
また、データ間類似分散度は高いが、データ量が多いためにデータ量分散度が高い場合、クラスタ更新部103の更新部103cは、このクラスタ内の特徴量ベクトルの削除、または、他クラスタへの移動を行う。このような処理を行う理由は、他のクラスタと比較して、このクラスタ内のデータ量が多いためである。
【００６３】
また、データ間類似分散度は高いが、データ量が少ないためにデータ量分散度が高い場合、クラスタ更新部103の更新部103cは、このクラスタへ特徴量ベクトルを追加する。このような処理を行う理由は、他のクラスタと比較して、このクラスタ内のデータ量が少ないためである。
【００６４】
クラスタ更新部103がこのようなクラスタ更新処理を行うことで、閾値以上までデータ間類似分散度を上げ、且つ、閾値以下までデータ量分散度を下げて、クラスタ内のデータの偏りを改善することが可能となる。
【００６５】
例えば、上述した図5Aに示すようにクラスタリングされたデータは、クラスタ更新処理によって図5Bに示すような状態となる。
【００６６】
図5Bでは、図5Aと比較して、各クラスタのカバーする範囲（図の点線で囲む範囲）が大きくなっており、データ間類似分散度が高くなっている。従って、各クラスタから、より汎化能力の高い抽出ルールを作成することができる。また、図5Aと比較して、各クラスタ内のデータ量も均一になっており、データ量分散度が低くなっていることがわかる。従って、クラスタ毎で作成される抽出ルールの精度が大きく異なることを防ぐことができる。
【００６７】
続いて、図4に示すようなクラスタが形成されている場合を例に、クラスタ更新部103の更新部103cが実行するクラスタ更新処理についてより具体的に説明する。
【００６８】
まず、クラスタ更新部103の更新部103cは、移動、又は削除の候補となる移動元クラスタ群を検出する。例えば、更新部103cは、データ間類似分散度が他のクラスタより低く、データ量が多いためデータ量分散度が他のクラスタより高いクラスタを移動元クラスタとして検出すればよい。図4の例では、クラスタ1とクラスタ2とが移動元クラスタ群として検出されたとする。
【００６９】
続いて、クラスタ更新部103の更新部103cは、移動先の候補となる移動先クラスタ群を検出する。例えば、更新部103cは、データ間類似分散度が他のクラスタより低く、データ量が少ないためデータ量分散度が他のクラスタより高いクラスタを移動先クラスタ群として検出すればよい。図4の例では、クラスタ4とクラスタ5とが移動先クラスタ群として検出されたとする。
【００７０】
続いて、クラスタ更新部103の更新部103cは、検出した移動元クラスタ群と移動先クラスタ群との間で、類似度が最も高いクラスタのペア（移動元クラスタと移動先クラスタ）を特定する。これは、類似しているクラスタ間で特徴量ベクトルを移動させるためである。図4の例では、クラスタ1とクラスタ4とが、周辺テキスト情報が似ているため類似度が最も高い。したがって、移動元クラスタにクラスタ1、移動先クラスタにクラスタ4が選ばれる。
【００７１】
続いて、クラスタ更新部103の更新部103cは、移動元クラスタ内の特徴量ベクトルのうち、移動先クラスタの中心からの距離が所定値以内にある特徴量ベクトルを１つ選択して、移動先クラスタに移動させる。また、所定値以内にある特徴量ベクトルがない場合、更新部103cは、移動元クラスタ内の特徴量ベクトルを１つ削除する（移動元クラスタから除外する）。図4の例では、クラスタ4の中心からの距離が所定値以内にあるクラスタ1の特徴量ベクトルが1つクラスタ4に移動する。
【００７２】
なお、所定値以内にある特徴量ベクトルを移動させる理由は、あまりに離れすぎている特徴量ベクトルを移動先クラスタに移動させると、移動先クラスタから作成される抽出ルールの精度が悪くなるためである。
【００７３】
このような処理を行うことで、移動先クラスタにとっては、異なるクラスタのデータが追加されるため、データ間類似分散度を高くすることができる。また、移動元クラスタにとっては、データ量が減るため、データ量分散度を減らすことができる。
【００７４】
図4の例の場合、移動先クラスタであるクラスタ4は、「○○Voice」という表層文字列のみをもつ特徴量ベクトルしかないため、この単語のみしか抽出できない汎化能力の低い抽出ルールが生成されてしまう。しかし、クラスタ更新処理によりクラ「○○Voice」以外の表層文字列を有するクラスタ1の特徴量ベクトルが追加される。従って、クラスタ4内の特徴量ベクトルから「○○Voice」以外の単語を抽出するための抽出ルールを学習でき、汎化能力の高い抽出ルールを生成することが可能となる。
【００７５】
なお、移動または削除対象となる特徴量ベクトルは、以下の基準で選んでも良い。
例えば、移動元クラスタのデータ間類似分散度が他のクラスタに比べて低い場合、移動または削除の対象となる特徴量ベクトルは、移動元クラスタの中心に最も近い特徴量ベクトルである。その理由は、クラスタ内の学習データの偏りを抑制するためである。
【００７６】
また、移動元クラスタのデータ間類似分散度が他のクラスタに比べて低くない場合、移動または削除の対象となる特徴量ベクトルは、ランダムに選ばれてもよく、そのクラスタの中心に遠い特徴量ベクトルが選ばれてもよく、または、unknownクラスの特徴量ベクトルが優先的に選ばれてもよい。その理由は、unknownクラスの特徴量ベクトルはアノテーション付テキストデータ（正解データ）の中に非常に多く、unknownデータが多すぎるとデータ不均衡となり精度が悪化するためである。
【００７７】
図1に戻り、抽出ルール生成部104は、クラスタ更新部103によって更新されたクラスタ毎に、クラスタ内の特徴量ベクトルの集合を入力にした機械学習を行い、クラスを抽出するための抽出ルールを生成する。例えば、抽出ルール生成部104は、クラスタ毎に、抽出ルールを生成したいクラスのアノテーション部分から作成された特徴量ベクトルを正例、それ以外の部分から作成された特徴量ベクトルを負例としたSVMを用いた機械学習を行う。そして、抽出ルール生成部104は、正例と負例とを分けるルールをこのクラスの抽出ルールとして生成する。そして、抽出ルール生成部104は、生成した抽出ルールを、この抽出ルール生成の元となった特徴量ベクトルおよびクラスタの識別情報と対応付けて抽出ルール記憶部105に保存する。
【００７８】
入力部106は、クラス抽出の対象となるアノテーションが付されていないテキスト内の出現単語毎に生成された特徴量ベクトルをクラスタ特定部107に入力する。
【００７９】
クラスタ特定部107は、抽出ルール記憶部105を参照して、入力部106から入力された特徴量ベクトルと最も類似するクラスタを特定する。
【００８０】
例えば、クラスタ特定部107は、入力部106から入力された特徴量ベクトルと各特徴量ベクトルとの間の類似度を求め、入力された特徴量ベクトルと最も類似する特徴量ベクトルを含むクラスタを類似するクラスタとして特定する。また例えば、クラスタ特定部107は、入力された特徴量ベクトルとの類似度が所定値以上である特徴量ベクトルを最も多く含むクラスタを類似するクラスタとして特定してもよい。
【００８１】
抽出ルール適用部108は、クラスタ特定部107が特定したクラスタから生成された抽出ルールを用いて、入力された特徴量ベクトルのクラスを判別（抽出）する。
出力部109は、抽出ルール適用部108によって判別されたクラスを、表示装置等に出力する。
【００８２】
続いて、固有表現抽出装置100で実施される処理の動作について説明する。
図7は、固有表現抽出装置100がクアノテーション無しテキスト内の語句のクラスを判別する処理の流れを示したフローチャートである。
【００８３】
まず、固有表現抽出装置100は、抽出ルール生成処理を実施し、クラスのアノテーションが付されたテキスト（正解データ）から抽出された特徴量ベクトルを元に、クラスを抽出するための抽出ルールを生成する（ステップS10）。続いて、固有表現抽出装置100は、抽出ルール適用処理を実施し、クラスを抽出したいアノテーション無しテキスト内の単語から抽出された特徴量ベクトルに作成した抽出ルールを適用して、その単語のクラスを判別する（ステップS20）。
【００８４】
続いて、抽出ルール生成処理（ステップS10）の詳細について、図8のフローチャートを参照して説明する。なお、予め、固有表現抽出装置100は、アノテーション付特徴量ベクトル記憶部101に正解データから抽出した特徴量ベクトルを記憶しておく。
【００８５】
ユーザや外部システムなどからの処理開始の指示を受けて、固有表現抽出装置100は抽出ルール生成処理を行う。まず、クラスタリング部102は、アノテーション付特徴量ベクトル記憶部101に記憶されている特徴量ベクトルをクラスタリングする（ステップS11）。
【００８６】
続いて、クラスタ更新部103の分散度算出部103aは、クラスタ毎に、データ間類似分散度とデータ量分散度とを算出する（ステップS12）。そして、クラスタ更新部103の判別部103bは、算出したこれらの値を閾値と比較することで、データの偏りがあるクラスタの有無を判別する（ステップS13）。
【００８７】
データの偏りがあるクラスタがあると判別した場合（ステップS13；Yes）、クラスタ更新部103の更新部103cは、データ類似分散度を上げ、データ量分散度を下げるように、クラスタ内の特徴量ベクトルの移動や削除等を行ってデータの偏りを改善するクラスタ更新処理を行う（ステップS14）。
【００８８】
ここで、図9のフローチャートを参照してこのクラスタ更新処理（ステップS14）の詳細について説明する。まず、更新部103cは、移動元、又は削除候補となるクラスタの集合である移動元クラスタ群を特定する（ステップS141）。続いて、更新部103cは、移動先の候補となるクラスタの集合である移動先クラスタ群を特定する（ステップS142）。そして、更新部103cは、両クラスタ群のクラスタ間の類似度に基づいて、移動元クラスタと移動先クラスタを特定する（ステップS143）。そして、更新部103cは、移動元クラスタから移動先クラスタへの特徴量ベクトルの移動、又は、移動元クラスタからの特徴量ベクトルの削除を行う（ステップS144）。以上で、クラスタ更新処理は終了する。このクラスタ更新処理により、クラスタの偏りが改善される。
【００８９】
図8に戻り、クラスタ更新処理（ステップS14）が終了すると、クラスタ更新部103の判別部103bは、再度、クラスタ毎にデータ間類似分散度とデータ量分散度とを求めて（ステップS12）、偏りがあるクラスタの有無を判別する（ステップS13）。
【００９０】
データの偏りがあるクラスタが無いと判別した場合（ステップS13；No）、抽出ルール生成部104は、クラスタ毎に、クラスタ内の特徴量ベクトルを用いた機械学習を行い、クラスを抽出するための抽出ルールを作成して、結果を抽出ルール記憶手段に記憶する（ステップS15）。以上で抽出ルール生成処理は終了する。
【００９１】
続いて、抽出ルール適用処理（ステップS20）の詳細について、図10のフローチャートを参照して説明する。
【００９２】
入力部106を介して、アノテーション無しテキストデータ内の単語から作成された特徴量ベクトルを受け取ると（ステップS21）、クラスタ特定部107は、抽出ルール記憶部105を参照して、入力された特徴量ベクトルと最も類似するクラスタを特定する（ステップS22）。そして、抽出ルール適用部108は、特定されたクラスタ内の特徴量ベクトルから生成した抽出ルールを用いて、入力された特徴量ベクトルのクラスを判別し（ステップS23）、出力部109がその判別結果を出力する（ステップS24）。以上で抽出ルール適用処理は終了する。
【００９３】
このように、第1実施形態によれば、クラスタ内のデータの偏りを示すデータ間類似分散度と、クラスタ間のデータの偏りを示すデータ量分散度とに基づいて、データの偏りを軽減するようにクラスタ内の特徴量ベクトルを移動、または、削除する。これにより、データの偏りがないようにクラスタリングされた特徴量ベクトルから抽出ルールを作成でき、その抽出ルールを用いて精度のよい意味クラスの抽出が実現できる。
【００９４】
（第2実施形態）
次に、本発明の第2実施形態に係る固有表現抽出装置200について説明する。
【００９５】
第2実施形態に係る固有表現抽出装置200は、図11に示すように、第1実施形態に係る固有表現抽出装置100に、アノテーション無特徴量ベクトル記憶部201、および、特徴量ベクトル追加部202が追加された構成である。なお、下記及び図面では、第1実施形態と同様のものについては、同一の符号を付す。また、第1実施形態と同様の構成要素の詳細な説明は、上記第1実施形態の説明に準じるため、ここでは詳細な説明を省略する。
【００９６】
アノテーション無特徴量ベクトル記憶部201には、アノテーションの付されていないテキストデータ内の出現単語から作成された特徴量ベクトルが記憶されている。
【００９７】
特徴量ベクトル追加部202は、アノテーション無特徴量ベクトル記憶部201に記憶されている特徴量ベクトルをクラスタに追加する。
【００９８】
なお、その他の各部（アノテーション付特徴量ベクトル記憶部101、クラスタリング部102、クラスタ更新部103、抽出ルール生成部104、抽出ルール記憶部105、入力部106、クラスタ特定部107、抽出ルール適用部108、出力部109）は、第１実施形態と同様の処理を行うため、ここでは説明を省略する。但し、抽出ルール生成部104は、クラスタ更新部103によって更新され、特徴量ベクトル追加部202によって特徴量ベクトルが新たに追加されている状態のクラスタ毎に、抽出データを作成する。
【００９９】
続いて、第2実施形態に係る固有表現抽出装置200で実施される処理の動作について説明する。第2実施形態に係る固有表現抽出装置200では、図9のフローチャートで説明したクラスタ更新処理以外の処理は基本的に第1実施形態と同様である。図12は、第2実施形態に係る固有表現抽出装置200で実施されるクラスタ更新処理の動作を示すフローチャートである。
【０１００】
クラスタ更新部103は、第1実施形態と同様に、移動元クラスタ群と移動先クラスタ群とを特定し（ステップS141、ステップS142）、両クラスタ群から移動元クラスタと移動先クラスタとを特定する（ステップS143）。そして、クラスタ更新部103は、第1実施形態と同様に、移動元クラスタから移動先クラスタへの特徴量ベクトルの移動、又は、移動元クラスタからの特徴量ベクトルの削除を行う（ステップS144）。
【０１０１】
続いて、特徴量ベクトル追加部202は、特徴量ベクトルの移動や削除をしてもなおデータ量が他よりも少ないクラスタにアノテーション無特徴量ベクトル記憶部201に記憶されている特徴量ベクトルを追加する（ステップS145）。以上で、クラスタ更新処理は終了する。
【０１０２】
具体的には、以下のような処理を行うことで、特徴量ベクトルを追加すればよい。
【０１０３】
まず、特徴量ベクトル追加部202は、追加対象のクラスタとして、データ数が所定値未満であるクラスタを特定する。この際、データ数が所定値未満であるクラスタが複数ある場合、データ分散度が高いクラスタが優先的に追加対象のクラスタとして特定されてよい。
【０１０４】
例えば、データ数が所定値未満であるクラスタのうち、データ分散度の上位3つのクラスタが追加対象のクラスタとして特定されてよい。なお、データ数が所定値未満であるクラスタがない場合、ステップS145の処理は終了する。
【０１０５】
続いて、特徴量ベクトル追加部202は、追加対象として特定したクラスタ内の特徴量ベクトルでクラスが付与されているもの（即ち、unknownではないもの）のリストを作成する。
【０１０６】
そして、特徴量ベクトル追加部202は、作成したリスト中の各特徴量ベクトルと最も類似する特徴量ベクトルをアノテーション無特徴量ベクトル記憶部201から抽出する。そして、特徴量ベクトル追加部202は、抽出した特徴量ベクトルのクラスをリスト中の特徴量ベクトルと同じクラスに変更した後、追加対象のクラスタに追加する。
【０１０７】
このように、本実施形態では、学習データ（特徴量ベクトル）が少ないクラスタにアノテーション無特徴量ベクトルを追加して学習データを増やすことができる。したがって、クラスタ間の学習データの偏りをより低減させることができる。
【０１０８】
（第3実施形態）
次に、本発明の第3実施形態に係る固有表現抽出装置300について説明する。
【０１０９】
第3実施形態に係る固有表現抽出装置は、図13に示すように、第1実施形態に係る固有表現抽出装置300に、特徴量ベクトル変換部301が追加された構成である。なお、下記及び図面では、第1実施形態と同様のものについては、同一の符号を付す。また、第1実施形態と同様の構成要素の詳細な説明は、上記第1実施形態の説明に準じ、ここでの詳細な説明は省略される。
【０１１０】
特徴量ベクトル変換部301は、各クラスタの特徴量ベクトルを入力に、クラスタ内の特徴量ベクトルで頻繁に出現する特徴量を特定する。そして、特徴量ベクトル変換部301は、特定した特徴量の値に所定の重みを付けることで、特徴量ベクトルを変換（更新）する。なお、この際、負の重み（特徴量の値が小さくなる重み）を付けるのが望ましい。
【０１１１】
また、特徴量ベクトル変換部301は、クラスタ内の特徴量ベクトルで頻繁に出現するが、他のクラスタでは頻繁に出現しない特徴量を特定して、その値に重みを付けるようにしてもよい。
【０１１２】
なお、その他の各部（アノテーション付特徴量ベクトル記憶部101、クラスタリング部102、クラスタ更新部103、抽出ルール生成部104、抽出ルール記憶部105、入力部106、クラスタ特定部107、抽出ルール適用部108、出力部109）は、第１実施形態と同様の処理を行うため、ここでは説明を省略する。但し、抽出ルール生成部104は、クラスタ更新部103によって更新され、特徴量ベクトル変換部301によって特徴量ベクトルが変換された状態のクラスタ毎に、抽出データを作成する。
【０１１３】
続いて、図14Aに示す4つの特徴量ベクトルから構成されるクラスタを例に、クラスタ内の特徴量ベクトルを変換する処理について具体的に説明する。
【０１１４】
この場合、このクラスタ内の特徴量ベクトルの各特徴量の値（頻度）は、図15に示すようになる。なお、この例では、上位2つの特徴量が頻繁に出現する特徴量であると仮定する。従って、特徴量ベクトル変換部301は、特徴量「文脈_助詞」と「文脈_名詞」とが、このクラスタ内の特徴量ベクトル内で頻出する特徴量であると特定する。そして、特徴量ベクトル変換部301は、この頻出する２つの特徴量「文脈_助詞」と「文脈_名詞」の値を、重み0.5を掛けた値に更新する。従って、このクラスタ内の特徴量ベクトルは、図14Bに示すような特徴量値に変換（更新）される。
【０１１５】
なお、この例では、特徴量の上位2つを頻出する特徴量としたが、これは一例であり、上位3つの特徴量を頻出する特徴量としてもよいし、上位10％を頻出する特徴量としてもよい。また、重みも0.5に限らず任意の所定値が設定可能である。
【０１１６】
続いて、第3実施形態に係る固有表現抽出装置300で実施される処理の動作について説明する。第3実施形態に係る固有表現抽出装置300では、図8のフローチャートで説明した抽出ルール生成処理以外の処理は基本的に第1実施形態と同様である。図16は、第3実施形態に係る固有表現抽出装置300で実施される抽出ルール生成処理の動作を示すフローチャートである。
【０１１７】
まず、クラスタリング部102は、第1実施形態と同様に、アノテーション付特徴量ベクトル記憶部101に記憶されている特徴量ベクトルをクラスタリングする（ステップS11）。そして、クラスタ更新部103は、第1実施形態と同様に、クラスタ毎に、データ間類似分散度とデータ量分散度とを算出し（ステップS12）、算出したこれらの値を閾値と比較してデータの偏りがあるクラスタの有無を判別する（ステップS13）。そして、偏りがある場合（ステップS13；Yes）、クラスタ更新部103は、第1実施形態と同様に、特徴量ベクトルを移動したり削除したりするクラスタ更新処理を行う（ステップS14）。そして、再度、データ間類似分散度とデータ量分散度とを算出し、データの偏りがあるクラスタの有無を判別する処理を繰り返す（ステップS12、ステップS13）。
【０１１８】
偏りがない場合（ステップS13；No）、特徴量ベクトル変換部301は、クラスタリングされているクラスタ毎に、クラスタ内の特徴量ベクトルの特徴量のうちで、頻出する特徴量を特定する（ステップS16）。そして、特徴量ベクトル変換部301は、特定した特徴量の値を所定の重みを付した値に変換（更新）する（ステップS17）。そして、抽出ルール生成部104は、特徴量ベクトルが変換されている状態のクラスタ毎に、抽出ルールを生成する（ステップS15）。以上で抽出ルール生成処理は終了する。
【０１１９】
一般的に、クラスタ内の特徴量ベクトルで頻出する特徴量は「文脈_助詞」や「文脈_動詞」などであり、そのクラスタを特徴付けるものではない。従って、そのような頻出する特徴量の値をそのまま用いて抽出ルールを作成した場合、他の特徴的な特徴量から生成されるパターンの相対的なバリエーションが小さくなり、作成される抽出ルールの精度は悪くなる。本実施形態では、上述したように、頻出する特徴量に対して所定の重みを付すことで、その影響を抑制する。従って、そのクラスタから、より精度の高い抽出ルールを作成することができる。
【０１２０】
なお、上記各実施形態は種々の変形、および、応用が可能である。
例えば、上記各実施形態では固有表現のクラスを抽出する例を示したが、本発明は固有表現に限らず、任意の意味（クラス）を識別するためのアノテーションが付された語の意味抽出に適用可能である。
【０１２１】
図17は、本発明の各実施形態に係る固有表現抽出装置100，200，300をコンピュータに実装する場合の、物理的な構成の一例を示すブロック図である。本発明の各実施形態に係る固有表現抽出装置100，200，300は、一般的なコンピュータ装置と同様のハードウエア構成によって実現することができる。固有表現抽出装置100，200，300は、制御部21、主記憶部22、外部記憶部23、操作部24、表示部25および入出力部26を備える。主記憶部22、外部記憶部23、操作部24、表示部25および入出力部26はいずれも内部バス20を介して制御部21に接続されている。
【０１２２】
制御部21はCPU（Central Processing Unit）等から構成され、外部記憶部23に記憶されている制御プログラム30に従って、前述した各実施形態における辞書作成処理を実行する。
【０１２３】
主記憶部22はRAM（Random-Access Memory）等から構成され、外部記憶部23に記憶されている制御プログラム30をロードし、制御部21の作業領域として用いられる。
【０１２４】
外部記憶部23は、フラッシュメモリ、ハードディスク、DVD-RAM（Digital Versatile Disc Random-Access Memory）、DVD-RW（Digital Versatile Disc ReWritable）等の不揮発性メモリから構成され、上述の処理を制御部21に行わせるための制御プログラム30や閾値等のデータを予め記憶する。また、外部記憶部23は、制御部21の指示に従って、この制御プログラム30が記憶するデータを制御部21に供給し、制御部21から供給されたデータを記憶する。また、外部記憶部23は、上述した各実施形態におけるアノテーション付特徴量ベクトル記憶部101、抽出ルール記憶部105、および、アノテーション無特徴量ベクトル記憶部201を物理的に実現する。
【０１２５】
操作部24はキーボードおよびマウスなどのポインティングデバイス等と、キーボードおよびポインティングデバイス等を内部バス20に接続するインターフェース装置等から構成されている。操作部24を介して、意味を抽出したいアノテーション無テキストから作成された特徴量ベクトルや各処理の開始の指示が制御部21に供給される。
【０１２６】
表示部25は、CRT（Cathode Ray Tube）またはLCD（Liquid Crystal Display）などから構成され、種々の情報を表示する。例えば、表示部25は、抽出したクラスを、入力された特徴量ベクトルの作成の元となった単語名とともに表示する。
【０１２７】
入出力部26は、無線送受信機、無線モデムまたは網終端装置、およびそれらと接続するシリアルインタフェースまたはLAN（Local Area Network）インタフェース等から構成されている。例えば、入出力部26を介して、アノテーション付テキストから抽出した特徴量ベクトルを収集してもよい。
【０１２８】
図1、図11、および図13に示す固有表現抽出装置100，200，300のクラスタリング部102、クラスタ更新部103、抽出ルール生成部104、入力部106、クラスタ特定部107、抽出ルール適用部108、出力部109、特徴量ベクトル追加部202、および、特徴量ベクトル更新部301が実施する処理は、制御プログラム30が、制御部21、主記憶部22、外部記憶部23、操作部24、表示部25および入出力部26などを資源として用いて処理することによって実行する。
【０１２９】
なお、前記のハードウエェア構成やフローチャートは一例であり、任意に変更および修正が可能である。
【０１３０】
また、制御部21、主記憶部22、外部記憶部23、操作部24、入出力部26および内部バス20などから構成される固有表現抽出装置100，200，300の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体（フレキシブルディスク、CD-ROM、DVD-ROM等）に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行する固有表現抽出装置100，200，300を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで固有表現抽出装置100，200，300を構成してもよい。
【０１３１】
また、固有表現抽出装置100，200，300の機能を、OS（オペレーティングシステム）とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【０１３２】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS, Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【０１３３】
その他、前記のハードウエア構成やフローチャートは一例であり、任意に変更および修正が可能である。
【０１３４】
上記の各実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１３５】
（付記1）
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングするクラスタリング手段と、
前記クラスタリング手段によりクラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新するクラスタ更新手段と、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する抽出ルール生成手段と、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する抽出ルール適用手段と、
を備えることを特徴とする意味抽出装置。
【０１３６】
（付記2）
前記クラスタ更新手段は、
前記各クラスタ内における特徴量ベクトルの散らばり度を示すクラスタ内分散度と、前記各クラスタへの前記特徴量ベクトルの散らばり度を示すクラスタ間分散度との少なくとも一方を算出する分散度算出手段と、
前記分散度算出手段によって算出された前記クラスタ内分散度と前記クラスタ間分散度との一方又は両方を閾値と比較することで、偏りのあるクラスタがあるか否かを判別する判別手段と、
偏りのあるクラスタがあると判別された場合に、偏りがあると判別されたクラスタのクラスタ内分散度を上げ、クラスタ間分散度を下げるように、当該クラスタ内の特徴量ベクトルを移動する処理、又は、削除する処理を行う更新手段と、
を備えることを特徴とする付記1に記載の意味抽出装置。
【０１３７】
（付記3）
前記クラスタ更新手段は、
前記各クラスタ内における特徴量ベクトルの散らばり度を示すクラスタ内分散度を算出する分散度算出手段と、
算出された前記各クラスタ内分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別する判別手段と、
前記偏りのあるクラスタがあると判別された場合に、前記偏りがあると判別されたクラスタの前記クラスタ内分散度が、前記一定よりも散らばった状態を示すように前記各クラスタを更新する更新手段と、
を備えることを特徴とする付記1又は2に記載の意味抽出装置。
【０１３８】
（付記4）
前記分散度算出手段は、前記各クラスタ内の特徴量ベクトルと該各クラスタ内の中心の特徴量ベクトルとの間の非類似度に基づいて前記クラスタ内分散度を算出する、
ことを特徴とする付記2又は3に記載の意味抽出装置。
【０１３９】
（付記5）
前記クラスタ更新手段は、
前記各クラスタへの前記特徴量ベクトルの散らばり度を示すクラスタ間分散度を算出する分散度算出手段と、
算出された前記クラスタ間分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別する判別手段と、
前記偏りのあるクラスタがあると判別された場合に、前記偏りがあると判別されたクラスタのクラスタ間分散度が、前記一定よりも散らばった状態を示すように前記各クラスタを更新する更新手段と、
を備えることを特徴とする付記1乃至4の何れか1つに記載の意味抽出装置。
【０１４０】
（付記6）
前記分散度算出手段は、前記各クラスタ内の特徴量ベクトルの数と該各クラスタ内の特徴量ベクトルの数の全クラスタでの平均値との差に基づいて前記クラスタ間分散度を算出する、
ことを特徴とする付記2乃至5の何れか1つに記載の意味抽出装置。
【０１４１】
（付記7）
前記判別手段は、前記特徴量ベクトルが一定よりも集中しているために、前記クラスタ間分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別し、
前記更新手段は、前記偏りのあるクラスタがあると判別された場合に、前記特徴量ベクトルが一定よりも集中しているクラスタの前記特徴量ベクトルを削除すること、又は当該特徴量ベクトルを他のクラスタへ移動させることによって、前記各クラスタを更新する、
ことを特徴とする付記5又は6に記載の意味抽出装置。
【０１４２】
（付記8）
前記判別手段は、前記特徴量ベクトルが一定よりも不足しているために、前記クラスタ間分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別し、
前記更新手段は、前記偏りのあるクラスタがあると判別された場合に、前記特徴量ベクトルが一定よりも不足しているクラスタに他のクラスタの特徴量ベクトルを追加することによって、前記各クラスタを更新する、
ことを特徴とする付記5乃至7の何れか1つに記載の意味抽出装置。
【０１４３】
（付記9）
分散度算出手段は、さらに、前記各クラスタ内における前記特徴量ベクトルの散らばり度を示すクラスタ内分散度を算出し、
前記判別手段は、さらに、算出された前記各クラスタ内分散度が一定よりも散らばった状態を示さないクラスタがある場合に、前記偏りのあるクラスタがあると判別し、
前記更新手段は、前記偏りのあるクラスタがあると判別された場合に、前記偏りがあると判別されたクラスタの前記クラスタ内分散度及び前記クラスタ間分散度のそれぞれが、前記一定よりも散らばった状態を示すように、前記各クラスタを更新する、
ことを特徴とする付記5乃至8の何れか1つに記載の意味抽出装置。
【０１４４】
（付記10）
前記更新手段は、前記偏りのあるクラスタがあると判別された場合であって、前記特徴量ベクトルが一定よりも集中しているために、前記クラスタ間分散度が一定よりも散らばった状態を示さず、かつ、前記各クラスタ内分散度が一定よりも散らばった状態を示さないクラスタがあるときに、当該クラスタの中心に近い特徴量ベクトルを削除すること、又は、当該特徴量ベクトルを他のクラスタへ移動させることによって、前記各クラスタを更新する、
ことを特徴とする付記9に記載の意味抽出装置。
【０１４５】
（付記11）
前記更新手段は、前記偏りのあるクラスタがあると判別された場合であって、前記特徴量ベクトルが一定よりも不足しているために、前記クラスタ間分散度が一定よりも散らばった状態を示さず、かつ、前記各クラスタ内分散度が一定よりも散らばった状態を示さないクラスタがあるときに、当該クラスタ内のすべての特徴量ベクトルから所定距離以上離れ、かつ、当該クラスタの中心に最も近い他のクラスタの特徴量ベクトルを当該クラスタに追加することによって、前記各クラスタを更新する、
ことを特徴とする付記9又は10に記載の意味抽出装置。
【０１４６】
（付記12）
アノテーションが付されていない文書内の単語から作成された特徴量ベクトルを記憶するアノテーション無特徴量ベクトル記憶手段と、
前記クラスタ更新手段による処理の後も、クラスタ内の特徴量ベクトルの数が所定値未満であるクラスタに対して、該クラスタに対応する特徴量ベクトルを前記アノテーション無特徴量ベクトル記憶手段から取得し、該クラスタに対応するアノテーションを付した特徴量ベクトルとして該クラスタに追加する特徴量ベクトル追加手段と、
をさらに備えることを特徴とする付記1乃至11の何れか1つに記載の意味抽出装置。
【０１４７】
（付記13）
クラスタ内の特徴量ベクトルで頻出する特徴量を特定し、特定した特徴量の値を所定の重みを付した値に更新する特徴量ベクトル変換手段を
さらに備えることを特徴とする付記1乃至12の何れか1つに記載の意味抽出装置。
【０１４８】
（付記14）
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングし、
クラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新し、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成し、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する
ことを特徴とする意味抽出方法。
【０１４９】
（付記15）
コンピュータを、
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングするクラスタリング手段、
前記クラスタリング手段によりクラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新するクラスタ更新手段、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する抽出ルール生成手段、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する抽出ルール適用手段、
として機能させることを特徴とするプログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１５０】
なお、本願については、２０１０年３月２６日に出願された日本国特許出願２０１０−０７１８５７号を基礎とする優先権を主張し、本明細書中に日本国特許出願２０１０−０７１８５７号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。
【符号の説明】
【０１５１】
100      固有表現抽出装置
101      アノテーション付特徴量ベクトル記憶部
102      クラスタリング部
103      クラスタ更新部
103a      分散度算出部
103b      判別部
103c      更新部
104      抽出ルール生成部
105      抽出ルール記憶部
106      入力部
107      クラスタ特定部
108      抽出ルール適用部
109      出力部
【図１】
2011118723.tif 000003
【図２】
2011118723.tif 000004
【図３】
2011118723.tif 000005
【図４】
2011118723.tif 000006
【図５Ａ】
2011118723.tif 000007
【図５Ｂ】
2011118723.tif 000008
【図６】
2011118723.tif 000009
【図７】
2011118723.tif 000010
【図８】
2011118723.tif 000011
【図９】
2011118723.tif 000012
【図１０】
2011118723.tif 000013
【図１１】
2011118723.tif 000014
【図１２】
2011118723.tif 000015
【図１３】
2011118723.tif 000016
【図１４Ａ】
2011118723.tif 000017
【図１４Ｂ】
2011118723.tif 000018
【図１５】
2011118723.tif 000019
【図１６】
2011118723.tif 000020
【図１７】
2011118723.tif 000021
【手続補正書】
【提出日】平成24年9月26日(2012.9.26)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、単語の意味を抽出する意味抽出装置、意味抽出方法、および、プログラムに関する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
本発明は、上記実情に鑑みてなされたものであり、特定の意味を有する語句をテキストから高い精度で抽出することができる意味抽出装置、意味抽出方法、および、プログラムを提供することを目的とする。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１０
【補正方法】変更
【補正の内容】
【請求項１０】
コンピュータを、
特定の意味を有する単語に該意味を識別するためのアノテーションが付された正解データ内に出現する単語毎に生成された、該単語およびその周辺単語の特徴を示す特徴量を要素とする特徴量ベクトルを取得し、取得した特徴量ベクトルを、特徴量ベクトル間の類似度に基づいて複数のクラスタにクラスタリングするクラスタリング手段、
前記クラスタリング手段によりクラスタリングされた各特徴量ベクトルが前記各クラスタにおいて偏りがあるか否かを判別し、偏りのあるクラスタがあると判別した場合に、偏りを改善するように前記各クラスタにクラスタリングされた前記各特徴量ベクトルを更新するクラスタ更新手段、
クラスタ毎にクラスタ内の特徴量ベクトルを元にした機械学習を行い、特定の意味を有する単語を抽出するための抽出ルールを生成する抽出ルール生成手段、
意味抽出の対象となる文書内の単語から作成された特徴量ベクトルを受け取り、該特徴量ベクトルに最適な抽出ルールを特定し、特定した抽出ルールを該特徴量ベクトルに適用することにより該特徴量ベクトルの作成元の単語の意味を抽出する抽出ルール適用手段、
として機能させるためのプログラム。
【国際調査報告】
2011118723.tif 000022
2011118723.tif 000023
2011118723.tif 000024
2011118723.tif 000025