(57)【要約】【課題】階層化された分野に対して，文書を自動的に分野判定する判定装置を提供する。【解決手段】判定装置１００は，カテゴリの間の包含，被包含関係から，カテゴリの親子関係を木構造に階層的に設定し，文書が階層化されたカテゴリにて示される分野のうち，いずれの分野に属するかを判定する。詳細には，分野関連度付与部１５５は，最下層のカテゴリに含まれる単語を子カテゴリのコアワードとし，コアワードの分野関連度を子カテゴリのコアワード毎に求め，子カテゴリのコアワードの分野関連度から親カテゴリに含まれるコアワードの分野関連度を求めることをすべてのカテゴリに分野関連度が付与されるまで繰り返し，分野関連度をコアワードおよびカテゴリとともにコアワード辞書１１０ａに記憶する。分野判定部１６０は，文書に含まれるコアワードに対するカテゴリ毎の各分野関連度から文書が属する分野を判定する。【選択図】図３
2007164583.tif 000002
【特許請求の範囲】
【請求項１】
カテゴリ間の包含，被包含の関係から，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定の対象となる文書が前記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを判定する判定装置であって，
最下層のカテゴリに含まれる１または２以上の単語を子カテゴリのコアワードとし，そのコアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度を子カテゴリのコアワード毎に求め，前記カテゴリの親子関係にしたがって親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，一部またはすべてのカテゴリに含まれるコアワードに分野関連度を付与するまで繰り返す分野関連度付与部と，
前記分野関連度付与部により付与された分野関連度を，その分野関連度に関連するコアワードおよびカテゴリとともに記憶するコアワード辞書と，
前記文書に含まれる１または２以上のコアワードに対する各カテゴリの分野関連度が示す各コアワードと各カテゴリとの関連度合いから前記文書が属する分野を判定する分野判定部とを備える判定装置。
【請求項２】
前記分野判定部は，
前記１または２以上のコアワードに対する各カテゴリの分野関連度から前記文書が各分野に関連する度合いを示す値を文書の分野判定度としてカテゴリ毎に求め，求められたカテゴリ毎の文書の分野判定度から前記文書が属する分野を判定する請求項１に記載された判定装置。
【請求項３】
前記分野関連度付与部は，
予め最下層のカテゴリ毎または中間層のカテゴリ毎の少なくともいずれかに分類された文書から最下層のカテゴリに含まれる子カテゴリのコアワードを生成し，生成された子カテゴリのコアワード毎に前記分野関連度を求め，生成された子カテゴリのコアワードの分野関連度から親カテゴリに含まれるコアワードの分野関連度を求める請求項１または請求項２のいずれかに記載された判定装置。
【請求項４】
前記分野関連度付与部は，
コアワードが文書に出現する回数が増えるほど大きくなる値ｔｆと，コアワードが出現する文書に偏りがあるほど大きくなる値ｉｄｆと，を用いて前記コアワードの分野関連度を求める請求項１〜３のいずれかに記載された判定装置。
【請求項５】
前記分野関連度付与部は，
親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度のうち，所定の条件を満たすコアワードの分野関連度を除外した残りのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求める請求項１〜４のいずれかに記載された判定装置。
【請求項６】
前記所定の条件は，
前記コアワードの分野関連度の平均値からの各コアワードの分野関連度のずれの程度に基づき設定される請求項５に記載された判定装置。
【請求項７】
前記コアワードの分野関連度の平均値からの各コアワードの分野関連度のずれの程度は，
標準偏差または変動係数に基づき求められる請求項６に記載された判定装置。
【請求項８】
前記分野関連度付与部は，
前記中間層のカテゴリ毎に分類された文書から子カテゴリのコアワードを生成する場合，前記カテゴリの親子関係にしたがって前記中間層のカテゴリの下層に位置する子カテゴリの分野関連度と，その子カテゴリ以外の中間層のカテゴリを示すその他のカテゴリの分野関連度と，に基づいて親カテゴリに含まれるコアワードの分野関連度を求める請求項３〜７のいずれかに記載された判定装置。
【請求項９】
前記分野関連度付与部は，
前記１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，すべてのカテゴリに含まれるコアワードに分野関連度を付与するまで再帰的に繰り返す請求項１〜８のいずれかに記載された判定装置。
【請求項１０】
カテゴリ間の包含，被包含の関係から，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定の対象となる文書が前記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを判定する判定方法であって，
最下層のカテゴリに含まれる１または２以上の単語を子カテゴリのコアワードとし，そのコアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度を子カテゴリのコアワード毎に求め，前記カテゴリの親子関係にしたがって親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，一部またはすべてのカテゴリに含まれるコアワードに分野関連度を付与するまで繰り返し，
前記分野関連度付与部により付与された分野関連度を，その分野関連度に関連するコアワードおよびカテゴリとともにコアワード辞書に記憶し，
前記文書に含まれる１または２以上のコアワードに対する各カテゴリの分野関連度が示す各コアワードと各カテゴリとの関連度合いから前記文書が属する分野を判定する判定方法。
【請求項１１】
カテゴリ間の包含，被包含の関係から，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定の対象となる文書が前記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを判定する処理をコンピュータに実行させるための判定プログラムであって，
最下層のカテゴリに含まれる１または２以上の単語を子カテゴリのコアワードとし，そのコアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度を子カテゴリのコアワード毎に求め，前記カテゴリの親子関係にしたがって親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，一部またはすべてのカテゴリに含まれるコアワードに分野関連度を付与するまで繰り返す処理と，
前記分野関連度付与部により付与された分野関連度を，その分野関連度に関連するコアワードおよびカテゴリとともにコアワード辞書に記憶する処理と，
前記文書に含まれる１または２以上のコアワードに対する各カテゴリの分野関連度が示す各コアワードと各カテゴリとの関連度合いから前記文書が属する分野を判定する処理と，をコンピュータに実行させる判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，自然言語処理において文書が属する分野を自動的に判定する装置に関する。
【背景技術】
【０００２】
自然言語処理において日々生まれる新しい用語に対処するためには，辞書に新たな語を登録し続ける必要がある。特に，翻訳などにおいて専門的な辞書として利用する目的を達成するためには，単に登録するだけでなく，階層的に構築し，出来る限り狭い対象範囲の分野に，すなわち出来る限り下位の分野に登録するのが効果的である。なぜなら，上位をたどることで関連分野の辞書を利用できるため，上位の分野と下位の分野で共通する語は上位の分野に登録すればよく，下位の分野では同じ語を登録する必要がないからである。
【０００３】
例えば，「スポーツ」分野の下位に「野球」分野と「サッカー」分野があれば，「サッカー」分野には「スポーツ」分野と同じ語は登録する必要がなく，「サッカー」分野に必要な語のみ登録すればよい。例えば，「オリンピック」という語はどのスポーツにも使われる語であるから「スポーツ」分野に登録すればよく，「スポーツ」分野より下位の「サッカー」分野や「野球」分野に登録する必要はない。辞書の分野が階層化されていると，世の中に既存のＩＰＣコードなどの階層的な分類法に沿っているので人の直感に合っているため人が利用しやすいという利点や，共通する語をまとめるので辞書が小さくなるという利点がある。
【０００４】
しかし，階層化された分野に分類された辞書を利用するのは難しい。もし，ユーザが選択した分野が不適切であると，適切な分野を選択した場合に比べて十分な翻訳品質が発揮できないこともある。よって，このような多種多様な分野辞書をユーザが利用して翻訳することを想定した場合，ユーザは常に辞書の構成やエントリを熟知し，状況に応じて辞書を使い分ける必要がある。しかし，文書を登録あるいは翻訳する際に，ユーザが，数多くの分野から適切な分野を選択するのは負荷が高い。このため，システムが適切な分野を自動的に選択することが従来から望まれていた。
【０００５】
そこで，この問題を解決するために，従来技術の一例である特許文献１に記載された機械翻訳装置では，基本語辞書の各単語に文脈ベクトルを付与しておき，入力文中に出現する単語の文脈ベクトルより専門分野を特定していき，専門用語辞書を効率良く自動選択すること，また，専門用語辞書の自動選択と同様な方法で，分野コードを自動選択し，翻訳結果として用いる基本語辞書の訳語をその分野にあったものにするという機械翻訳が提供されている。
【０００６】
【特許文献１】特開平０６−３３２９４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし，上記従来文献に開示された発明では，階層化された分野については考慮されていなかった。また，文脈ベクトルを各単語に自動的に付与する方法がないため，単語を登録する度に人手で文脈ベクトルを付与する必要があった。更に，分野が増えると，その分野に対して単語の文脈ベクトルを付与し直す必要があった。
【０００８】
上記問題を解消するために，本発明では，階層化された分野に対して，文書を自動的に分野判定する判定装置および判定プログラムが提供される。
【課題を解決するための手段】
【０００９】
すなわち，上記課題を解決するために，本発明のある観点によれば，カテゴリ間の包含，被包含の関係から，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定の対象となる文書が上記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを判定する判定装置が提供される。
【００１０】
この判定装置は，最下層のカテゴリに含まれる１または２以上の単語を子カテゴリのコアワードとし，そのコアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度を子カテゴリのコアワード毎に求め，上記カテゴリの親子関係にしたがって親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，一部またはすべてのカテゴリに含まれるコアワードに分野関連度を付与するまで繰り返す分野関連度付与部と，上記分野関連度付与部により付与された分野関連度を，その分野関連度に関連するコアワードおよびカテゴリとともに記憶するコアワード辞書と，上記文書に含まれる１または２以上のコアワードに対する各カテゴリの分野関連度が示す各コアワードと各カテゴリとの関連度合いから上記文書が属する分野を判定する分野判定部とを備える。
【００１１】
これによれば，コアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度が子カテゴリのコアワード毎に求められ，子カテゴリのコアワードの分野関連度を用いて親カテゴリのコアワードの分野関連度が求められる。このように，前もって，分野に特徴的でかつ代表的な単語を，分野に特徴的な文書から自動的に作成して，分野関連度を計算しておく。そして，再帰的に一部またはすべてのカテゴリにおいてそれらの単語とその単語の分野関連度とが計算され，コアワード辞書に記憶される。そして，これらのコアワードの分野関連度が示す各コアワードと各カテゴリとの関連度合いに基づいて，分野判定したい文書に存在するそれらの単語の分野関連度を利用して，文書が属する分野が自動判定される。これにより，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定したい文書が上記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを精度よく判定することができる。
【００１２】
このとき，上記分野判定部は，上記１または２以上のコアワードに対する各カテゴリの分野関連度から上記文書が各分野に関連する度合いを示す値を文書の分野判定度としてカテゴリ毎に求め，求められたカテゴリ毎の文書の分野判定度から上記文書が属する分野を判定してもよい。
【００１３】
また，上記分野関連度付与部は，予め最下層のカテゴリ毎または中間層のカテゴリ毎の少なくともいずれかに分類された文書から最下層のカテゴリに含まれる子カテゴリのコアワードを生成し，生成された子カテゴリのコアワード毎に上記分野関連度を求め，生成された子カテゴリのコアワードの分野関連度から親カテゴリに含まれるコアワードの分野関連度を求めてもよい。
【００１４】
また，上記分野関連度付与部は，コアワードが文書に出現する回数が増えるほど大きくなる値ｔｆと，コアワードが出現する文書に偏りがあるほど大きくなる値ｉｄｆと，を用いて上記コアワードの分野関連度を求めてもよい。
【００１５】
また，上記分野関連度付与部は，上記１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，すべてのカテゴリに含まれるコアワードに分野関連度を付与するまで再帰的に繰り返すようにしてもよい。
【００１６】
これらにより，コアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度をより正確に算出することができる。
【００１７】
上記分野関連度付与部は，親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度のうち，所定の条件を満たすコアワードの分野関連度を除外した残りのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めてもよい。
【００１８】
これによれば，あるカテゴリにのみ突出して高かったり低かったりする分野関連度は，誤差が大きい可能性が高いので，所定の条件を満たす（たとえば，突出している）カテゴリの分野関連度は例外として除いて，親カテゴリに含まれるコアワードの分野関連度が再計算される。これにより，コアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度をより正確に算出することができる。
【００１９】
このとき，上記所定の条件を上記コアワードの分野関連度の平均値からの各コアワードの分野関連度のずれの程度に基づき設定してもよい。より具体的には，上記コアワードの分野関連度の平均値からの各コアワードの分野関連度のずれの程度を標準偏差または変動係数に基づき求めてもよい。
【００２０】
上記分野関連度付与部は，上記中間層のカテゴリ毎に分類された文書から子カテゴリのコアワードを生成する場合，上記カテゴリの親子関係にしたがって上記中間層のカテゴリの下層に位置する子カテゴリの分野関連度と，その子カテゴリ以外の中間層のカテゴリを示すその他のカテゴリの分野関連度と，に基づいて親カテゴリに含まれるコアワードの分野関連度を求めてもよい。
【００２１】
中間層に分類された文書を利用してコアワードを作成して親のコアワードとすると，子カテゴリにのみ含まれるコアワードが親カテゴリに反映されない場合がある。しかし，中間層に分類された文書を親カテゴリのコアワード作成時には利用しないで，子カテゴリのコアワードのみから親カテゴリのコアワードを作成すると，子カテゴリに含まれないコアワードが親カテゴリに反映されない場合がある。
【００２２】
そこで，中間層にある文書も利用する処理では，上記カテゴリの親子関係にしたがって上記中間層のカテゴリの下層に位置する子カテゴリの分野関連度と，その子カテゴリ以外の中間層のカテゴリを示すその他のカテゴリの分野関連度と，に基づいて親カテゴリに含まれるコアワードの分野関連度が求められる。
【００２３】
たとえば，中間層のカテゴリがスポーツ分野であり，その下層に位置する子カテゴリが野球分野およびサッカー分野である場合を考える。この場合，子カテゴリの分野関連度は，中間層の下層に位置する子カテゴリ（すなわち，野球分野およびサッカー分野）の分野関連度と，その子カテゴリ以外の中間層のカテゴリを示すその他のカテゴリ（たとえば，野球分野やサッカー分野を含まないその他の内容のスポーツ）の分野関連度とから構成される。したがって，親カテゴリに含まれるコアワードの分野関連度は，中間層の下層に位置する子カテゴリの分野関連度と，その子カテゴリ以外の中間層のカテゴリを示すその他のカテゴリの分野関連度と，に基づいて計算される。
【００２４】
これにより，子カテゴリにのみ含まれるコアワードが親カテゴリに反映されないことを回避するとともに，子カテゴリに含まれないコアワードが親カテゴリに反映されないことを回避することにより，親カテゴリのコアワードの分野関連度をより正確に算出することができる。
【００２５】
また，上記課題を解決するために，本発明の別の観点によれば，カテゴリ間の包含，被包含の関係から，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定の対象となる文書が上記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを判定する判定方法が提供される。この判定方法は，最下層のカテゴリに含まれる１または２以上の単語を子カテゴリのコアワードとし，そのコアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度を子カテゴリのコアワード毎に求め，上記カテゴリの親子関係にしたがって親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，一部またはすべてのカテゴリに含まれるコアワードに分野関連度を付与するまで繰り返し，上記分野関連度付与部により付与された分野関連度を，その分野関連度に関連するコアワードおよびカテゴリとともにコアワード辞書に記憶し，上記文書に含まれる１または２以上のコアワードに対する各カテゴリの分野関連度が示す各コアワードと各カテゴリとの関連度合いから上記文書が属する分野を判定する。
【００２６】
これによれば，前もって，分野に特徴的でかつ代表的な単語を，分野に特徴的な文書から自動的に作成して，再帰的に一部またはすべてのカテゴリにおいてそれらの単語とその単語の分野関連度とが計算され，コアワード辞書に記憶される。そして，これらのコアワードの分野関連度が示す各コアワードと各カテゴリとの関連度合いに基づいて，分野判定したい文書に存在するそれらの単語の分野関連度を利用して，文書が属する分野が自動判定される。これにより，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定したい文書が上記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを精度よく判定することができる。
【００２７】
また，上記課題を解決するために，本発明の別の観点によれば，カテゴリ間の包含，被包含の関係から，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定の対象となる文書が上記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを判定する処理をコンピュータに実行させるための判定プログラムであって，最下層のカテゴリに含まれる１または２以上の単語を子カテゴリのコアワードとし，そのコアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度を子カテゴリのコアワード毎に求め，上記カテゴリの親子関係にしたがって親カテゴリに関係づけられる１または２以上の子カテゴリのコアワードの分野関連度から，親カテゴリに含まれるコアワードの分野関連度を求めることを，一部またはすべてのカテゴリに含まれるコアワードに分野関連度を付与するまで繰り返す処理と，上記分野関連度付与部により付与された分野関連度を，その分野関連度に関連するコアワードおよびカテゴリとともにコアワード辞書に記憶する処理と，上記文書に含まれる１または２以上のコアワードに対する各カテゴリの分野関連度が示す各コアワードと各カテゴリとの関連度合いから上記文書が属する分野を判定する処理と，をコンピュータに実行させる判定プログラムが提供される。
【００２８】
これによれば，前もって，分野に特徴的でかつ代表的な単語を，分野に特徴的な文書から自動的に作成して，再帰的に一部またはすべてのカテゴリにおいてそれらの単語とその単語の分野関連度とが計算され，コアワード辞書に記憶される。そして，これらのコアワードの分野関連度が示す各コアワードと各カテゴリとの関連度合いに基づいて，分野判定したい文書に存在するそれらの単語の分野関連度を利用して，文書が属する分野が自動判定される。これにより，木構造にしたがって階層的に設定されたカテゴリの親子関係を用いて，判定したい文書が上記階層化されたカテゴリにて示される分野のうちのいずれの分野に属するかを精度よく判定することができる。
【発明の効果】
【００２９】
以上説明したように本発明によれば，階層化された分野に対して，文書を自動的に分野判定する判定装置および判定方法が提供される。
【発明を実施するための最良の形態】
【００３０】
以下に添付図面を参照しながら，本発明の好適な実施形態について詳細に説明する。なお，以下の説明及び添付図面において，同一の構成及び機能を有する構成要素については，同一符号を付することにより，重複説明を省略する。
【００３１】
（用語）
まず，本発明の一実施形態にかかる判定装置について説明する前に，その説明中で使われる各用語について説明する。「階層化された分野」とは，分野が下の階層に行くほど細かい分野を示すように階層的な木構造により示される分野のことである。例えば，図１は階層化された分野の一例である。直接上にあるのが親で，直接下にあるのが子である。ある分野の直接上にある分野がその分野の親分野であり，ある分野の直接下にある分野がその分野の子分野である。子分野がないのが最下層の分野で，親分野も子分野もあるのが中間層の分野である。子分野があって親分野がないのが最上位である。図１では，「●」で示された分野が最下層の分野である。野球分野とサッカー分野がスポーツ分野の子分野で最下層の分野であり，スポーツ分野が野球分野とサッカー分野の親分野で中間層の分野である。ＴＯＰが最上位の分野である。
【００３２】
コアワードに関する定義は，特開２００４−３３４７６６（単語分類装置，単語分類方法及び単語分類プログラム）および特開２００５−２６７３９７（語句分類システム，語句分類方法，および語句分類プログラム）の記載に基づいたものである。具体的には，分類したい分野をカテゴリと定義する。カテゴリに特徴的でかつ代表的な単語をコアワードと定義する。形態素解析して単語から不要語を除いた単語をコアワードとする。名詞，動詞，形容詞，形容動詞，未知語以外を不要語とする。
【００３３】
例えば，「人気ＳＦ映画「スターウォーズ」のキャラクタを起用する・・・」という文書に対して，形態素解析して不要語を除いた後のコアワードは，「人気」，「ＳＦ」，「映画」，「スターウォーズ」，「キャラクタ」，「起用する」となる。
【００３４】
コアワードには，カテゴリに属する度合いを示す値を付与する。カテゴリに属する度合いを示す値を分野関連度と定義し，コアワードがカテゴリに属する度合いを示す値をコアワードの分野関連度とする。コアワードの分野関連度が大きいほどコアワードがカテゴリに属する度合いが強いことを示す。例えば，図９に示したように，コアワード９０５が「広島」の場合，カテゴリ９１０が「趣味」のときのコアワードの分野関連度９１５は「０．００７」，カテゴリ９１０が「野球」のときのコアワードの分野関連度９１５は「０．０８２」である。よって，コアワード「広島」は，「野球」のカテゴリに属する度合いが「趣味」のカテゴリに属する度合いより強いことがわかる。
【００３５】
（判定装置１００のハードウエア構成）
さて，本発明の一実施形態にかかる判定装置について説明する。本発明の一実施形態にかかる判定装置では，特開２００４−３３４７６６（単語分類装置，単語分類方法及び単語分類プログラム）および特開２００５−２６７３９７（語句分類システム，語句分類方法，および語句分類プログラム）を改良して，階層化されたカテゴリ（分野）における分野判定手法が提供される。
【００３６】
具体的には，本判定装置は，前もって，分野に特徴的でかつ代表的な単語を，分野に特徴的な文書から自動的に作成して，分野関連度を計算しておく。そして，再帰的にすべての分野にそれらの単語と分野関連度を用意する。その後，本判定装置は，分野判定したい文書に存在するそれらの単語の分野関連度を利用して，文書の分野を判定する。この手法を用いて，階層化された分野に対して，文書の分野が自動的判定される。
【００３７】
まず，このような判定処理を行う判定装置のハードウエア構成について，図２を参照しながら説明する。判定装置１００は，ＲＯＭ１０５，ハードディスク（ＨＤＤ）１１０，ＣＰＵ１１５，ＲＡＭ１２０，バス１２５および内部インタフェース（内部Ｉ／Ｆ）１３０を含んで構成されている。
【００３８】
ＲＯＭ１０５には，判定装置１００を動作させるための基本的なプログラム（ＯＳ）や，判定装置１００が異常なときに起動するプログラム等が記録されている。ハードディスク１１０には，判定処理を実行するプログラム等の各種プログラムや各種データ（辞書）が蓄積されている。ハードディスク１１０は，記憶装置の一例であり，光ディスクや光磁気ディスクなどの記憶装置であってもよい。
【００３９】
ＣＰＵ１１５は，判定装置１００全体を制御する。ＣＰＵ１１５は，ハードディスク１１０等に記憶されたプログラムをワーク用のＲＡＭ１２０にロードした後，そのプログラムを実行するようになっている。バス１２５は，ＲＯＭ１０５，ハードディスク１１０，ＣＰＵ１１５，ＲＡＭ１２０および内部インタフェース１３０の各デバイス間で情報をやりとりする経路である。
【００４０】
内部インタフェース１３０は，キーボード４０５やマウス４１０から分野を判定する文書を入力し，判定結果をモニタ４１５に出力するためのインタフェースである。なお，判定装置１００は，ネットワーク等を介して分野を判定する文書を受信するための外部インタフェース（図示せず）を有していてもよい。
【００４１】
（判定装置１００の機能構成）
次に，判定装置の機能構成について，図３を参照しながら説明する。判定装置１００は，入力部１５０，分野関連度付与部１５５，分野判定部１６０および出力部１６５の機能ブロックにて示される各機能を有している。
【００４２】
入力部１５０は，利用者によるキーボード４０５またはマウス４１０の操作に応じてデータ（分野を判定する文書）を入力する。分野関連度付与部１５５は，コアワードを抽出しコアワードの分野関連度を計算する。コアワード辞書１１０ａには，カテゴリとコアワードと分野関連度の組からなる情報が格納されている。コアワード辞書１１０ａは，ハードディスク１１０に格納されている。
【００４３】
分野判定部１６０は，文書が属するカテゴリを判定する。出力部１６５は，分野判定部１６０による判定結果をモニタ４１５に出力する。その他，形態素解析処理，検索処理，抽出処理など，一般的な処理に関しては，既知の技術を用いることができる。なお，図示しない通信部により，ネットワーク等を介して外部から分野を判定する文書を受信するようにしてもよい。
【００４４】
（判定装置１００の動作）
次に，判定装置１００の動作について説明する。まず，カテゴリに分類された文書を利用して，コアワードを作成し，コアワードの分野関連度を計算してコアワード辞書１１０ａに格納しておく。コアワードの分野関連度を計算する際には，後述するように最下層のカテゴリに分類された文書のみを利用する場合と中間層のカテゴリに分類された文書も利用する場合とがある。基本的には，特開２００４−３３４７６６（単語分類装置，単語分類方法及び単語分類プログラム）に記載された方法を利用してカテゴリに分類された文書からコアワードを作成し，コアワードの分野関連度を計算する（図９参照）。
【００４５】
次に，文書から作成されたコアワード９０５とコアワードの分野関連度９１５とを利用して，最下層のカテゴリから上のカテゴリへ再帰的に，すべてのカテゴリに対してコアワードを作成しコアワードの分野関連度を計算してコアワード辞書１１０ａに格納しておく。その後，コアワード辞書１１０ａに格納した情報を利用して文書の分野判定を行う。
【００４６】
なお，本実施形態では，最下層のカテゴリから上のカテゴリへ再帰的に，すべてのカテゴリに対してコアワードを作成しコアワードの分野関連度を計算したが，最下層のカテゴリから上のカテゴリへ再帰的に，一部またはすべてのカテゴリに対してコアワードを作成しコアワードの分野関連度を計算してもよい。たとえば，図２のＴＯＰのカテゴリ以外のすべてのカテゴリに対してコアワードを作成しコアワードの分野関連度を計算してもよい。
【００４７】
図４は判定装置１００のメイン処理を示したフローチャートである。なお，以下に説明するすべてのフローチャートは，実際には，図３に示した各機能を実現するために，図２に示したＣＰＵ１１５により実行される。
【００４８】
図４のスタートから処理が開始され，利用者によるキーボード４０５またはマウス４１０等の操作に応じて，入力部１５０が，分野関連度付与処理および分野判定処理のいずれを選択した場合には（ステップ３１），その選択に応じて，分野関連度付与部１５５が分野関連度付与処理を実行するか（ステップ３２），分野判定部１６０が分野判定処理を実行する（ステップ３３）。一方，操作に応じて入力部１５０が何も選択しない場合には（ステップ３１），本ルーチンは終了する。
【００４９】
（分野関連度付与処理）
次に，ステップ３２の分野関連度付与処理の詳細について，図５のフローチャートを参照しながら説明する。図５のスタートから処理が開始されると，分野関連度付与部１５５は，文書からコアワードを作成し，コアワードの分野関連度を計算する（ステップ４１）。次に，分野関連度付与部１５５は，すべてのカテゴリでコアワードに分野関連度を付与し（ステップ４２），本ルーチンを終了する。
【００５０】
（分野関連度付与処理：コアワードの分野関連度を計算する処理）
次に，ステップ４１に示した，文書からコアワードを作成しコアワードの分野関連度を計算する処理についてその詳細を説明する。この分類済の文書からコアワードを作成しコアワードの分野関連度を計算する方法は，基本的には，特開２００４−３３４７６６（単語分類装置，単語分類方法及び単語分類プログラム）に記載された方法を利用したものである。具体的な動作を説明するフローチャートを図６に示す。
【００５１】
図６のスタートから処理が開始されると，入力部１５０は，分類済の文書を入力する（ステップ５１）。続いて，分野関連度付与部１５５が，文書をカテゴリ別に形態素解析し（ステップ５２），形態素解析結果から不要語を除いた単語を抽出してカテゴリ別にコアワードを作成し（ステップ５３），コアワードの分野関連度を計算し（ステップ５４），コアワードとコアワードの分野関連度をコアワード辞書１１０ａに格納して（ステップ５５），本ルーチンを終了する。コアワードの分野関連度を計算する方法は，以下の通りである。
【００５２】
（コアワードの分野関連度を計算する方法）
コアワードの分野関連度とは，コアワードがその分野にどれだけ関連しているかを示した値である。分野関連度の値は，次式（１）に示すようにｔｆ×ｉｄｆで計算した値ｗを利用する。ｗ（＝ｔｆ×ｉｄｆ）は，文書の自動索引付けにおいて，索引語の重みを計算する手法である。
【００５３】
ｗ（ｔ，ｄ）＝ｔｆ（ｄ，ｔ）×ｉｄｆ（ｔ）・・・（１）
上記ｗ（ｔ，ｄ）は，索引語ｔの文書ｄにおける重みを示す。
【００５４】
式（１）の各項目を以下に説明する。
ＴＦ（Ｔｅｒｍ  Ｆｒｅｑｕｅｎｃｙ）  ｔｆ（ｄ，ｔ）
このＴＦは，ある文書ｄにおける索引語ｔの生起頻度を示す。生起頻度ｔｆ（ｄ，ｔ）は，文書毎の文書中の単語数，すなわち，文書ｄ中に索引語ｔ（コアワード）が出現する回数を文書毎に示したものである。
【００５５】
ＤＦ（Ｄｏｃｕｍｅｎｔ  ｆｒｅｑｕｅｎｃｙ）  ｄｆ（ｔ）
このＤＦは，索引語ｔが一回以上生起する文書の数（ある単語を含む文書の数）を示す。
【００５６】
ＩＤＦ（Inverse  Document  frequency）  ｉｄｆ（ｔ）＝ｌｏｇ（Ｎ／ｄｆ（ｔ））
このＩＤＦは，文書の数ＮとＤＦの逆数（１／ＤＦ）とをかけて，対数をとった値である。
【００５７】
上記ｔｆは，ある文書に多数出現する語ほど大きくなる値である。このｔｆを用いるのは，文書中で繰り返し生起する語はその文書において重要な概念であると考えるためである。また，上記ｉｄｆは，特定の文書に偏って出現するほど大きくなる値である。その語がどのくらい文書を特定するかは，ｉｄｆによって反映させる。多くの文書中に現れる一般的な語の場合にはｉｄｆは小さくなり，逆に，特定の文書にしか現れない語の場合にはｉｄｆは大きくなる。
【００５８】
しかし，このように，ある文書に多数出現するほど大きくなる値ｔｆと特定の文書に偏って出現するほど大きくなる値ｉｄｆをかけたｔｆ×ｉｄｆでは，総単語数が多いほど大きい値を取り得るので，その分野との関連性を表すだけでなく，各分野のコアワード作成に利用した文書の量にも依存するという問題がある。その問題を解消するために，分野間での調整が必要である。そこで，次式（２）に示すように，分野毎に，ｔｆ×ｉｄｆをコアワード総数で割った値を分野関連度とする。
【００５９】
分野関連度（カテゴリ，コアワード）＝ｔｆ×ｉｄｆ／カテゴリ毎のコアワード総数・・・（２）
【００６０】
このようにして階層化された分野に対してコアワードを付与するには，基本的には，最下層の分野のコアワードのみを文書から作成する。親分野は子分野すべてを含むと考えてよいから，親分野のコアワードは，直下の子分野のコアワードすべてとする。
【００６１】
（階層化された分野に対して最下層以外のカテゴリでコアワードの分野関連度を計算する処理）
次に，すべてのカテゴリでコアワードに分野関連度を付与する処理について説明する。分野が階層化されていない場合の分野を最下層の分野とする。最下層のカテゴリのコアワードの分野関連度は上述した手法で計算した値そのままでよい。
【００６２】
一方，階層化された分野に対して最下層以外のカテゴリでコアワードに分野関連度を付与する処理には，最下層にある文書のみを利用する処理と中間層にある文書も利用する処理とがある。
【００６３】
（最下層にある文書のみを利用する処理）
最下層にある文書のみを利用する処理では，親分野のコアワードの分野関連度は，子分野のコアワードに付与された分野関連度の偏り具合を考慮して，コアワード毎に子分野の分野関連度から計算される。その計算処理が，分野関連度付与部１５５によりどのように実行されるかについて以下に述べる。
【００６４】
あるコアワードの分野関連度がいずれかの子分野で突出している場合には，分野関連度付与部１５５は，そのコアワードの親分野での分野関連度を，「突出している子分野」，「親分野」，「突出していない子分野」の順に値が大きくなるようにする。子分野のコアワードに付与された分野関連度に偏りがない場合には，分野関連度付与部１５５は，そのコアワードの親分野での分野関連度を，すべての子分野よりも値が大きくなるようにする。分野関連度付与部１５５により実行される計算は，以下の通りである。
【００６５】
ある親分野の直下の子分野全体で，コアワード毎に，子分野に対する分野関連度の平均値（ｍｅａｎ）と標準偏差（ｓｄ）を，正規分布と仮定して，計算する。コアワードが存在しないカテゴリの分野関連度は０として計算する。偏りがない場合は，標準偏差（ｓｄ）は，特に平均値（ｍｅａｎ）に対して，小さくなる。つまり，ｓｄ／ｍｅａｎが小さいほど偏りがないといえる。そこで，平均に対する相対誤差を示す量である変動係数（ＣＶ：coefficient  of  variation）（ＣＶ（［％］）＝ｓｄ／ｍｅａｎ（×１００））を利用する。ただし，あるカテゴリにのみ分野関連度が突出して高かったり低かったりすると，ｓｄが大きくなりすぎるので（誤差が大きい可能性が高いので），突出しているカテゴリの分野関連度は例外として除いて再計算する。
【００６６】
例えば，ｍｅａｎ±３ｓｄを超える分野関連度を例外であるとすると，親の分野関連度の値は次式（３）にて表される。
親の分野関連度の値＝ｍｅａｎ＋２ｓｄ（１−ＣＶ）・・・（３）
このようにして，上記式（３）を用いて，分野関連度付与部１５５は，そのコアワードの親分野での分野関連度を算出する。
【００６７】
これによれば，あるカテゴリにのみ突出して高かったり低かったりする分野関連度は，誤差が大きい可能性が高いので，所定の範囲外の値を持つ（すなわち，突出している）カテゴリの分野関連度は例外として除いて，親カテゴリに含まれるコアワードの分野関連度が再計算される。これにより，コアワードが属するカテゴリとそのコアワードとの関連度合いを示したコアワードの分野関連度をより正確に算出することができる。
【００６８】
（中間層にある文書も利用する処理）
中間層にある文書も利用する場合には，以下のような問題がある。もし，中間層に分類された文書を利用してコアワードを作成して親のコアワードとすると，子にのみ含まれるコアワードが親に反映されない。しかし，中間層に分類された文書を親のコアワード作成時には利用しないで，子のコアワードのみから親のコアワードを作成すると，子に含まれないコアワードが親に反映されない。そこで，中間層にある文書も利用する処理では，その計算処理が，分野関連度付与部１５５によりどのように実行されるかについて以下に述べる。
【００６９】
分野関連度付与部１５５は，下層に子があるにもかかわらず中間層の分野に分類される文書というのは，子に対して，複数の子に該当する全般的な文書であるか，いずれの子にも該当しないその他というべき文書であるか，のどちらかであると判断する。
【００７０】
例えば，スポーツ分野の下に野球分野，サッカー分野がある場合，分野関連度付与部１５５は，親であるスポーツ分野にある文書は「野球とサッカーの両方の内容を含むスポーツ」と「野球もサッカーも含まないその他の内容のスポーツ」からなっている，と判断する。前者の分野を「全般」，後者の分野を「その他」と呼ぶ。「その他」分野は下層にあるべきなので，分野関連度付与部１５５は，親にある文書は子のコアワードを作成する際に「その他」分野の文書として子に加えて，子のコアワードを作成し分野関連度を計算する。次に，親は，子のすべてを含むべきであるため，分野関連度付与部１５５は，「その他」と子すべてを利用して，コアワードを作成し分野関連度を計算する。
【００７１】
その後，「その他」は親から派生した本来存在しない分野であるから，分野関連度付与部１５５は，「その他」の分野関連度が作成した親に反映されるように，更に親の分野関連度を設定する。分野関連度付与部１５５は，「その他にした親」の分野関連度が「仮に作成した親」の分野関連度より大きい値であるならば，「新しく作成した親」の分野関連度に「その他にした親」の分野関連度の値を代入し，それ以外であれば，「仮に作成した親」の分野関連度のままにする。なお，親の値がマイナスになった場合は，分野関連度を０にするのはよくないので，分野関連度付与部１５５は，子の分野関連度の最小値を親の分野関連度の値にする。
【００７２】
（分野関連度付与処理：すべてのカテゴリでコアワードに分野関連度を付与する処理）
次に，ステップ４２に示した，すべてのカテゴリでコアワードに分野関連度を付与する処理についてその詳細を説明する。図７は，すべてのカテゴリに分野関連度を付与する処理（ステップ４２）を示したフローチャートである。
【００７３】
図７のスタートから処理が開始されると，分野関連度付与部１５５は，すべてのカテゴリに分野関連度を付与するまで再帰的に（ステップ６１），ｍｅａｎとｓｄを繰り返し計算し（ステップ６２），ｍｅａｎ±３ｓｄを超える分野関連度は例外であるとして除いて（ステップ６３），ｍｅａｎとｓｄを再計算し（ステップ６４），親の分野関連度ｍｅａｎ＋２ｓｄ（１−ＣＶ）を計算する（ステップ６５）。
【００７４】
親に文書があったならば（ステップ６６），分野関連度付与部１５５は，親の分野関連度を再計算し（ステップ６７），親の分野関連度をコアワード辞書１１０ａに格納する（ステップ６８）。親に文書がなかったならば（ステップ６６），分野関連度付与部１５５は，（親の分野関連度を再計算せずに）親の分野関連度をコアワード辞書１１０ａに格納する（ステップ６８）。すべてのカテゴリに分野関連度を付与したら（ステップ６１），本ルーチンを終了する。
【００７５】
（文書の分野自動判定処理）
次に，このようにしてすべてのカテゴリに付与された分野関連度を用いて，分野判定部１６０が行う，コアワードを利用した文書の分野自動判定方法について以下に述べる。例えば，「来季からのプロ野球参入を目指す○○は△月△日，新チーム名を××に決めたと発表した。」という文では，分野判定部１６０は，チーム名は新語であるが，「野球」という語によって，野球分野であると判定することができる。しかし，例えば，「打たれ強いボクサーのような広島の執念が，優勝マジック点灯に王手をかけているヤクルトに再び「待った」をかけた。」という文では，「ボクサー」のように他の分野の方でより特徴的である語や，「マジック」のように複数の分野で特徴的な語などがあり，野球分野に判定できるような決定的に特徴的な語はない。「広島」や「ヤクルト」もチーム名の略称であって複数の意味がある。このような場合には，「広島」「優勝」「ヤクルト」と合わせて考えて，野球分野であると判断するのが妥当である。そこで，分野判定部１６０は，以下のように判定する。
【００７６】
すなわち，分野判定部１６０は，ある文書が分野に関連する度合いを示す値を文書の分野判定度として計算する。より具体的には，以下の式（４）に示したように，分野判定部１６０は，コアワードの分野関連度９１５に出現回数９２０をかけた値をコアワードの分野判定度９２５として算出する（図９参照）。また，以下の式（５）に示したように，分野判定部１６０は，判定したい文書に存在するすべてのコアワードの分野判定度９２５を分野（カテゴリ）毎に合計した値（すなわち，カテゴリ毎の分野判定度の合計値９３０）を文書の分野判定度として算出する。よって，文書の分野判定度が高いほど，文書がその分野に関連する度合いが高い。
【００７７】
分野判定度（カテゴリ，コアワード）
＝分野関連度（カテゴリ，コアワード）×出現回数（コアワード）・・・（４）
【００７８】
文書の分野判定度（カテゴリ，コアワードのリスト）
＝Σ分野判定度（カテゴリ，コアワード）・・・（５）
【００７９】
図８は，図４のステップ３３に示した分野判定処理のフローチャートである。図９は文書の分野判定度（分野判定度の合計値９３０）を記憶したコアワード辞書１１０ａの一例である。
【００８０】
図８のスタートから処理が開始されると，入力部１５０は，分野判定対象の文書を入力し（ステップ７１），分野関連度付与部１５５は，文書を形態素解析して（ステップ７２），コアワード辞書１１０ａを用いて文書からコアワードを抽出し（ステップ７３），コアワード辞書１１０ａからコアワードの分野関連度を抽出し（ステップ７４），分野判定度を計算する（ステップ７５）。分野判定部１６０は，計算された文書の分野判定度から分野を判定する（ステップ７６）。出力部１６５は，分野を判定した結果をモニタ４１５などに出力し（ステップ７７），その後，本ルーチンは終了する。
【００８１】
たとえば，ステップ７３にて，分野を判定したい文書にコアワード９０５として「広島」「優勝」「マジック」が抽出された場合，図９に示したように，ステップ７４にて，各コアワード９０５のカテゴリ９１０毎の分野関連度９１５がそれぞれ算出され，ステップ７５にて，出現回数９２０と分野関連度９１５とを式（４）に代入することにより，各コアワード９０５のカテゴリ９１０毎の分野判定度９２５が算出される。その後，同ステップ７５にて，算出された分野判定度９２５を式（５）に代入することにより，各カテゴリ９１０の分野判定度９２５の合計値９３０が算出される。この結果，判定したい文書について，カテゴリが「野球」の分野判定度の合計値９３０は「０．２３３」，カテゴリが「趣味」の分野判定度の合計値９３０は「０．０２０」であることから，ステップ７６にて，判定したい文書の分野は「野球」と判定され，ステップ７７にてこの結果を出力した後，本ルーチンは終了する。
【００８２】
これによれば，前もってカテゴリ毎に分類済の文書からコアワードを作成して分野関連度を計算し，すべてのカテゴリにコアワードと分野関連度を付与しておくことによって，階層化された分野に対して，文書を自動的に分野判定することができる。その際，分類済の文書は最下層の分野にさえあればよいが，中間層の分野にあっても構わない。
【００８３】
以上に説明した実施形態にかかる判定装置１００によれば，自然言語の文書を翻訳する際に文書の分野を判定するのに用いると，人間が判定する手間が省け自動的に使用する辞書の分野を適切に選択することができる。
【００８４】
なお，各種の定義については，特開２００５−２６７３９７（語句分類システム，語句分類方法，および語句分類プログラム）と同様，コアワードや不要語の作成は，品詞の種類を変更したりｎグラムで切り出したりなどの別の方法で定義してもよいし，追加や削除ができるようにしてもよい。
【００８５】
また，分野関連度はｔｆ×ｉｄｆ以外の方法で計算してもよいし，分野判定度は出現回数をそのままかける以外の方法で計算してもよいし，どちらも語を指定して調整できるようにしてもよい。
【００８６】
また，分野を判定する計算は，分野判定度をそのまますべて合計したが，他の方法で計算してもよい。さらに，分野を判定した結果の出力は，分野を１つ出力するのでも上位の複数を出力するでもよいし，分野判定度を利用して確度の高い分野だけを出力させるようにしてもよい。
【００８７】
上記実施形態において，各部の動作はお互いに関連しており，互いの関連を考慮しながら，一連の動作として置き換えることができる。そして，このように置き換えることにより，判定装置の発明の実施形態を判定方法の実施形態とすることができる。
【００８８】
また，上記各部の動作を，各部の処理と置き換えることにより，プログラムの実施形態とすることができる。また，プログラムを，プログラムを記録したコンピュータ読み取り可能な記録媒体に記憶させることにより，プログラムの実施形態をプログラムに記録したコンピュータ読み取り可能な記録媒体の実施形態とすることができる。
【００８９】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明は係る例に限定されないことは言うまでもない。当業者であれば，特許請求の範囲に記載された範疇内において，各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【産業上の利用可能性】
【００９０】
本発明は，階層化された分野に対して，文書を自動的に分野判定する判定装置，判定方法および判定プログラムに適用可能である。
【図面の簡単な説明】
【００９１】
【図１】階層化された分野を説明するための図である。
【図２】本発明の一実施形態にかかる判定装置のハードウエア構成図である。
【図３】同実施形態にかかる判定装置の機能構成図である。
【図４】同実施形態にかかる判定装置１００のメイン処理を示したフローチャートである。
【図５】ステップ３２の処理の詳細を示したフローチャートである。
【図６】ステップ４１の処理の詳細を示したフローチャートである。
【図７】ステップ４２の処理の詳細を示したフローチャートである。
【図８】ステップ３３の処理の詳細を示したフローチャートである。
【図９】同実施形態にかかる文書の分野判定を記憶したコアワード辞書１１０ａの一例である。
【符号の説明】
【００９２】
１００      判定装置
１０５      ＲＯＭ
１１０      ハードディスク
１１０ａ    コアワード辞書
１１５      ＣＰＵ
１２０      ＲＡＭ
１２５      バス
１３０      内部インタフェース
１５０      入力部
１５５      分野関連度付与部
１６０      分野判定部
１６５      出力部
４０５      キーボード
４１０      マウス
４１５      モニタ
９０５      コアワード
９１０      カテゴリ
９１５      分野関連度
９２０      出現回数
９２５      分野判定度
９３０      分野判定度の合計値
【図１】
2007164583.tif 000003
【図２】
2007164583.tif 000004
【図３】
2007164583.tif 000005
【図４】
2007164583.tif 000006
【図５】
2007164583.tif 000007
【図６】
2007164583.tif 000008
【図７】
2007164583.tif 000009
【図８】
2007164583.tif 000010
【図９】
2007164583.tif 000011