(57)【要約】【課題】ｎグラムを抽出するときの利便性を向上させることができる分類装置、分類方法、分類プログラムを提供すること。【解決手段】分類装置は、確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、前記潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、を備える。【選択図】図１
2015127916.tif 000002
【特許請求の範囲】
【請求項１】
確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、
前記潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、
を備えることを特徴とする分類装置。
【請求項２】
ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、
確率分布からｎグラムの単語の数を決定し、前記潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、
を備えることを特徴とする分類装置。
【請求項３】
前記潜在変数推定部は、チャイニーズ・レストラン・プロセスにより、潜在変数の数Ｋを決定すること
を特徴とする請求項１または請求項２に記載の分類装置。
【請求項４】
前記単語推定部は、Ｐｉｔｍａｎ−Ｙｏｒプロセスにより、ｎグラムの単語を推定すること
を特徴とする請求項２に記載の分類装置。
【請求項５】
前記潜在変数として、トピックを用いること
を特徴とする請求項１から請求項４のいずれか一項に記載の分類装置。
【請求項６】
確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定過程と、
前記潜在変数推定過程により推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率の推定を行う単語推定過程と、
と有することを特徴とする分類方法。
【請求項７】
ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定過程と、
確率分布からｎグラムの単語の数を決定し、前記潜在変数推定過程により推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率の推定を行う単語推定過程と、
を有すること特徴とする分類方法。
【請求項８】
分類装置のコンピュータに、
確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定ステップと、
前記潜在変数推定ステップにより推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定テップと、
を実行させるための分類プログラム。
【請求項９】
分類装置のコンピュータに、
ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定ステップと、
確率分布からｎグラムの単語の数を決定し、前記潜在変数推定ステップにより推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定ステップと、
を実行させるための分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分類装置、分類方法、及び分類プログラムに関する。
【背景技術】
【０００２】
ｎグラム（ｎ−ｇｒａｍ（ｎは整数））の抽出は、対象となる文書データをｎ単語単位でモデル化を行い、このモデル化の結果として可能となるものである。例えば、非特許文献１には、ベイズ理論に基づく階層構造の確率モデルを基本として、ｎグラム抽出を行うことが記載されている。
非特許文献１に示されるモデルでは、階層クラスにより、文書からトピックの潜在変数を取得し、トピックから単語の確率変数を取得している。また、非特許文献１に示されるモデルでは、以前の単語と以前のトピックとから次の単語間の状態を取得し、次の単語間の状態から、次の単語の確率変数を取得している。このようにして、非特許文献１では、連続するｎ単語からなるｎグラムを抽出する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｘｕｅｒｕｌ  Ｗａｎｇ、  Ｍｃ  Ｃａｌｌｕｍ  Ａ．  Ｘｉｎｇ  Ｗｅｉ、  Ｔｏｐｉｃａｌ  Ｎ−ｇｒａｍｓ：  Ｐｈｒａｓｅ  ａｎｄ  Ｔｏｐｉｃ  Ｄｉｓｃｏｖｅｒｙ、  ｗｉｔｈ  ａｎ  Ａｐｐｌｉｃａｔｉｏｎ  ｔｏ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｒｅｔｒｉｅｖａｌ、  ＩＣＤＭ２００７、  ２００７  Ｏｃｔ．  ｐｐ．６７９−７０２
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、非特許文献１に示されるモデルでは、トピックの潜在変数の数を予め決定しておく必要がある。また、非特許文献１に示されるモデルでは、最適な単語数のｎグラムを抽出することが難しい。このように、ｎグラムを抽出するときの利便性が十分でないという問題があった。
【０００５】
上述の課題を鑑みてなされたものであり、本発明は、ｎグラムを抽出するときの利便性を向上させることができる分類装置、分類方法、分類プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
（１）本発明は、上述した課題を解決するためになされたもので、本発明の一態様は、分類装置であって、確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、前記潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、を備えることを特徴とする分類装置である。
【０００７】
（２）本発明の一態様は、分類装置であって、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、確率分布からｎグラムの単語の数を決定し、前記潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、を備えることを特徴とする分類装置である。
【０００８】
（３）本発明の一態様は、上述のいずれかの分類装置であって、前記潜在変数推定部は、チャイニーズ・レストラン・プロセスにより、潜在変数の数Ｋを決定することを特徴とする分類装置である。
【０００９】
（４）本発明の一態様は、上述のいずれかの分類装置であって、前記単語推定部は、Ｐｉｔｍａｎ−Ｙｏｒプロセスにより、ｎグラムの単語を推定することを特徴とする分類装置である。
【００１０】
（５）本発明の一態様は、上述のいずれかの分類装置であって、前記潜在変数として、トピックを用いることを特徴とする分類装置である。
【００１１】
（６）本発明の一態様は、分類方法であって、確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定過程と、前記潜在変数推定過程により推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率の推定を行う単語推定過程と、と有することを特徴とする分類方法である。
【００１２】
（７）本発明の一態様は、分類方法であって、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定過程と、確率分布からｎグラムの単語の数を決定し、前記潜在変数推定過程により推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率の推定を行う単語推定過程と、を有すること特徴とする分類方法である。
【００１３】
（８）本発明の一態様は、分類プログラムであって、分類装置のコンピュータに、確率分布から潜在変数の数Ｋ（Ｋは整数）を決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定ステップと、前記潜在変数推定ステップにより推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定テップと、を実行させるための分類プログラムである。
【００１４】
（９）本発明の一態様は、分類プログラムであって、分類装置のコンピュータに、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定ステップと、確率分布からｎグラムの単語の数を決定し、前記潜在変数推定ステップにより推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定ステップと、を実行させるための分類プログラムである。
【発明の効果】
【００１５】
本発明によれば、ｎグラムを抽出するときの利便性を向上させることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係るグラフィカルモデルの一例を示す概略図である。
【図２】本実施形態に係るシンボルの一例を示す説明図である。
【図３】本実施形態に係る分類システムの構成の一例を示すシステム構成図である。
【図４】本実施形態に係る分類装置の構成の一例を示す概略ブロック図である。
【図５】本実施形態に係る分類装置における計算処理の説明の一例を示すフローチャートである。
【図６】本実施形態に係る分類装置における計算処理の処理内容の一例を説明する説明図である。
【図７】本実施形態に係る分類装置における計算処理の処理内容の一例を説明する説明図である。
【図８】本発明の比較例に係るグラフィカルモデルの一例を示す概略図である。
【図９】本実施形態に係る分類装置の効果の一例を説明する説明図である。
【発明を実施するための形態】
【００１７】
＜実施形態＞
以下、本発明の実施の形態について図面を参照しながら説明する。
図１は、本発明の実施形態に係るグラフィックモデルである。なお、本実施形態におけるシンボルとその定義については、図２に示す通りである。
【００１８】
ノード１１は、パラメータαのノードである。パラメータαは、トピックの数およびトピックを求めるための確率分布を生成するハイパーパラメータ（ディリクレパラメータ）である。
ノード１２（潜在変数推定部）は、トピックの潜在変数Ｚｉｊを求めるノードである。ここで、ｉは、トークン（単語）の番号であり、ｊは、文書の番号である。トピックの潜在変数Ｚｉｊは、ｊ番目のレビュー文書中のｉ番目のトークンを表す。本実施形態では、トピックの確率分布の生成プロセスとして、チャイニーズ・レストラン・プロセス（Ｃｈｉｎｅｓｅ  ｒｅｓｔａｕｒａｎｔ  ｐｒｏｃｅｓｓ）を導入している。チャイニーズ・レストラン・プロセスを導入することで、トピックの数（Ｋ（Ｋは整数））は、予め設定することなく、適切に決定される。
【００１９】
ノード１３は、パラメータλのノードである。パラメータλは、レイティングを求めるためのトピックごとの確率分布を生成するコンセントレーション・パラメータである。
ノード１４は、レイティングの観測変数ｖｊを求めるノードである。レビュー文書には、当該レビュー文書に付随する付随情報であるメタデータが含まれている。メタデータとは、レビュー文書に対する評価を表す情報、レビュー文書の作成日時を表す情報やレビューデータの閲覧日時を表す情報、レビュー文書の閲覧数の情報などのことである。レイティングは、レビュー文書ごとのメタデータの情報により行われる。各レビュー文書に存在する同じ単語でも、レビュー文書のトピックにより異なる意味となることがある。例えば、「小さい」や「軽い」は、トピックがモバイル装置の場合には肯定的な意味となるが、トピックが果物の場合には否定的な意味となる。ノード１４では、トピックごとのメタデータのベータ分布を使って、レビュー文書ｊごとのレイティングの観測変数ｖｊを求めている。
【００２０】
本実施形態では、レイティングを連続値として扱い、レイティングの確率分布として、ベータ分布を用いているが、レイティングを離散値として扱い、レイティングの確率分布として、多項分布を用いてもよい。
【００２１】
ノード１５１、１５２、…、１５ｎ−１は、パラメータγ（λ０、λ０、…、λｎ−１）のノードである。パラメータγ（λ０、λ０、…、λｎ−１）は、コンセントレーション・パラメータである。
ノード１６１、１６２、…、１６ｎ−１は、パラメータｄ（ｄ０、ｄ０、…、ｄｎ−１）のノードである。パラメータｄ（ｄ０、ｄ０、…、ｄｎ−１）は、ディスカウント・パラメータである。
【００２２】
ノード１７１、１７２、…、１７ｎ−１は、ｎグラムの各単語の確率分布Ｇ（Ｇｂ、Ｇｋ、…、Ｇｋｕ）を求めるノードである。本実施形態において、ノード１７１、１７２、…、１７ｎ−１は、パラメータγと、パラメータｄと、前のパラメータＧと、から、ピットマン・ユア（Ｐｉｔｍａｎ−Ｙｏｒ）プロセスを階層的に用いて、ｎグラムの各単語の確率分布を求めている。すなわち、ノード１７１は、一般の文書集合全体で使われる基本となる確率分布Ｇｂを生成する。ノード１７２、…、１７ｎ−１は、Ｐｉｔｍａｎ−Ｙｏｒプロセスを階層的に用いることで、各確率分布の確率分布により、トピックｋのｎグラムの各単語の確率分布Ｇｋ、…、Ｇｋｕを求める。
【００２３】
ノード１８（単語推定部）は、ノード１２で求められたトピックの潜在変数Ｚｊｉと、トピックｋごとの各単語の確率分布Ｇｂ、Ｇｋ、…、Ｇｋｕと、からレビュー文書ｊのトークンｉのｎグラムの単語の観測変数ｗｊｉを求める。ここで、ｎグラムの単語の数は、Ｐｉｔｍａｎ−Ｙｏｒプロセスを階層的に用い、チャイニーズ・レストラン・プロセスと同様の手法を導入することで、適切に設定される。
【００２４】
チャイニーズ・レストラン・プロセスは、ノンパラメトリックのディレクレ・プロセスで使用され、数の区切りを生成する。本実施形態では、このチャイニーズ・レストラン・プロセスを、トピックの事前確率分布として用いている。
【００２５】
チャイニーズ・レストラン・プロセスは、各テーブルが無限数個の座席キャパシティを有する無限数個の円形テーブルを備えたレストランのメタファを使って記述される。テーブルに順に番号が付けられていると仮定し、Ｚｉはｉ番目の客が座るテーブル（トピック）の番号を示すものとする。店に客が入ると、その客が、誰かが座っているテーブルを選択する可能性は、既に座っている人の数に比例し、誰も座っていないテーブルを選択する可能性は、ある定数パラメータに比例する。すなわち、最初のテーブルに最初の客が座り（Ｚｉ＝１）、それから、テーブルに座るｉ番目の客の確率分布は、（１）式に示す通りになる。
【００２６】
【数１】
2015127916.tif 000003
【００２７】
チャイニーズ・レストラン・プロセスは、レストランでテーブルに座る順番からランダムな区切りを取得する意味で、ディリクレ・プロセスの範疇の確率として記述できる。客は、テーブルを選択して座り、数の区切りを取得する。それは、ディリクレ・プロセスから得られるクラスタ構造と同様のものである。
【００２８】
このように、トピックの確率分布の生成プロセスとして、チャイニーズ・レストラン・プロセスを導入することで、トピックの数Ｋは、予め設定することなく、適切に決定されることになる。
【００２９】
次に、本実施形態におけるレイティングの推定について説明する。前述したように、本実施形態では、各レビュー文書でのレイティングの観測変数ｖｊを求めるのにベータ分布を使っている。この処理手順は、チャイニーズ・レストラン・プロセスと類似して記述できる。それは、レストランのテーブルに座る客の順番からランダムな区切りを取得する意味において、ディリクレ・プロセスと同様の確率として記述される。
【００３０】
つまり、もし、トピックＺｉｊが、レビュー文書（レストラン）ｊでのｉ番目の客により選択されたテーブルのインデックスなら、以下のような分布となる。
【００３１】
【数２】
2015127916.tif 000004
【００３２】
この式でのハイパーパラメータαは、補助可変サンプリングにより推定される。単語の提示での次元の減少と、それに対応する評価の決定と、を同時に達成するために、単語と、与えられたレイティングと、がベータ分布を使うトピックを介して結合される。したがって、レイティングの確率ｖjは、以下のように与えられる。
【００３３】
【数３】
2015127916.tif 000005
【００３４】
次に、本実施形態におけるｎグラムの単語の推定について説明する。前述したように、本実施形態では、ｎグラムの各単語の確率分布を、Ｐｉｔｍａｎ−Ｙｏｒプロセスを階層的に用いて求めている。Ｐｉｔｍａｎ−Ｙｏｒプロセスを階層的に用いることで、べき乗則をコントロールすることができる。
【００３５】
つまり、べき乗則は、二つの量の間の数学上の関係であり、言語学上、ジップの法則として知られている。例えば、十分に大きなコーパスにおいて頻度ｎｗで起こる単語ｗの確率Ｐ（ｎｗ）は、以下のように与えられる。
【００３６】
【数４】
2015127916.tif 000006
【００３７】
Ｐｉｔｍａｎ−Ｙｏｒプロセスは、ディリクレ・プロセスを定義し、無次元パラメータ空間上の確率分布の確率分布を定義することにより、ベイジアン・フレームワークでのノンパラメトリック推定を行う。Ｐｉｔｍａｎ−Ｙｏｒプロセスは、以下のように示される。
【００３８】
【数５】
2015127916.tif 000007
【００３９】
ここで、ディスカウント・パラメータｄは、べき乗則の性質をコントロールするパラメータとなる。
【００４０】
上式のＰｉｔｍａｎ−Ｙｏｒプロセスにおいて、パラメータＧ０として、確率分布Ｇｂと置き、これにより求められる確率分布をＧ０として、以下、再帰的に計算を行うことで、これに続くｎグラムの各単語の確率分布を求めることができる。
【００４１】
Ｇ〜ＰＹＰ（γ，ｄ，Ｇ０)を生成する手続きは、式（１）により、チャイニーズ・レストラン・プロセスのメタファを使って記述できる。パラメータｄ及びγは、べき乗則をスムージングする効果を生み出す。
【００４２】
つまり、最初のテーブルに最初の客が座り（ｚ１＝１）、そして、ｉ番目の客が選択するテーブルは、以下の分布に従う。
【００４３】
【数６】
2015127916.tif 000008
【００４４】
ここで、テーブルの数が、レストランに入っていく客の数と同様に増加するとき、このディスカウント・パラメータは、べき乗則を生み出す。つまり、Ｐｉｔｍａｎ−Ｙｏｒプロセスは、べき乗則分布に従った結果をもたらす。
【００４５】
また、チャイニーズ・レストラン・プロセス手法を導入することで、ｎグラム連結モデルの単語の数を適切に設定することができる。つまり、本実施形態では、Ｐｉｔｍａｎ−ｙｏｒプロセスを再帰的に用いることにより、ｎグラムの単語を生成している。ｎグラムの単語を形成するために、本実施形態では、単語を階層的にサンプルする。
【００４６】
単語の基本の確率分布Ｇｂは、トピックｋ＝０に割り当てられた基本となる単語のユニグラム（１グラム）の確率ベクトルである。確率分布Ｇｂは、以前の情報を使わずに、一般の文書集合全体で求められた確率分布である。単語の基本の確率分布Ｇｂは、以下のように取得できる。
【００４７】
【数７】
2015127916.tif 000009
【００４８】
トピック特有のユニグラムの確率分布は、与えられた単語の基本の確率分布Ｇｂ及び現在のトピックｋにより取得される。確率分布Ｇｋは、求められた確率分布Ｇｂを、次のパラメータＧ０として置くことにより取得される。
【００４９】
【数８】
2015127916.tif 000010
【００５０】
ここで、各トピックのｎグラム単語の確率分布を生成するために、各トピックをレストランオーナーとみなす。このことにより、チャイニーズ・レストラン・プロセスは、チャイニーズ・レストラン・フランチャイズ・プロセスに拡張される。
【００５１】
例えば、各単語の確率分布Ｇｋｕは、レストラン(単語の番号)ｕよりインデックスされ 、オーナー(トピック)ｋにより管理された関連するレストランを有している。ここで、確率分布Ｇｋｕは、ｕに続く条件付きｗの確率であり、ｕは、トピックｋでの以前のｎ−１単語の番号である。このレストランの客は、確率分布Ｇｋｕから取り出され、テーブルは、その確率分布の前の基本確率分布から取得され、料理は、単語から取得された値である。
【００５２】
単語の確率の事前確率分布として、Ｐｉｔｍａｎ−ｙｏｒプロセスを再帰的に置いていくことにより、各文書において同じ連続したトピックの割り当てから引き出された各ｎグラムが定義される。
【００５３】
【数９】
2015127916.tif 000011
【００５４】
式（９）を使って、以前の確率分布Ｇｋｕを再帰的に置いていくことで、次の単語の確率分布を取得できる。なお、コンセントレーション・パラメータγ及びディスカウント・パラメータｄは、そのフレーズの長さに関係する機能をもつ。この演算は、バックグランドの単語の確率分布Ｇｂが得られるまで繰り返される。
【００５５】
各レストラン(単語の数)ｕ及び料理（単語）ｗについて、ｃｋｕｗｌ及びｔｋｕｗｌを、それぞれ、ｋにより管理されたレストランｕでテーブルｌに座り料理（単語）ｗを食している客の数、及び、同じレストランｕでｋによる提供する料理ｗのテーブルの数と定義する。限界数を示すことにより、ｃｋｕｌは、ｋにより管理されるテーブルｌに座る客の数となり、ｃｋｕｗは、ｋにより経営されるｕでの食された料理ｗとなり、ｃｋｕは、ｋにより経営されたｕの客の数となり、ｔｋｕは、ｋの経営するｕのテーブルの数となる。その結果、Ｇｋｕ、Ｇｋ及びＧｂから取り出された次の単語ｗは、再帰的に以下のように計算される。
【００５６】
【数１０】
2015127916.tif 000012
【００５７】
図２は、本実施形態に係るシンボルの一例を示す説明図である。
図示するように、Ｄ（Ｋ，Ｗ）は、レビュー文書の数（トピックの数、単語の数）を表す。Ｎｊは、レビュー文書ｊでの単語トークンの数を表す。ｖｊは、レビュー文書ｊに関連数レイティングを表す。ｚｊｉは、レビュー文書ｊにおける位番目のトークンに関連するトピックを表す。ｗｊｉは、レビュー文書ｊにおけるｉ番目のトークンを表す。ｕは、単語の順（フレーズ）を表す。ｕ（／）は、単語の順を表す。Ｇｂは、与えられたコーパスでの単語の確率分布を表す。Ｇｋは、トピックｋに特有な単語の確率分布を表す。Ｇｋｕは、トピックｋにおいて、特有な単語ｕの確率分布を表す。αは、ハイパーパラメータを表す。ｄｎは、ディスカウント・パラメータを表す。γｎは、コンセントレーション・パラメータを表す。
【００５８】
次に、図１に示したようなグラフィックモデルで示される処理について、具体的に説明する。上述のように、本実施形態では、チャイニーズ・レストラン・プロセスを導入して、潜在変数Ｚｊｉの数を決定し、Ｐｉｔｍａｎ−ｙｏｒプロセスを階層的に用いることで、ｎグラム連結モデルの推定を行っている。これらの処理は、ギブスのサンプリングにより実現できる。
【００５９】
図３は、本実施形態に係る分類システムの構成の一例を示す概略図であり、図４は、分類装置の構成の一例を示す概略ブロック図である。図３に示すように、本発明の実施形態に係るシステムは、ファイルサーバ５１と、計算サーバ５２と、データベース５３と、サービスサーバ５４とから構成される。
【００６０】
ファイルサーバ５１は、図４に示すように、計算対象となるレビューデータを保存するデータファイル保存部６１を備えている。データファイル保存部６１に保存するレビューデータは、インターネット上のブログの文書や、ウェブページの文書などである。また、レビューデータは、メタデータとレビューとが関連付けられた文書データである。なお、計算対象となるレビューデータは、インターネット上の文書に限られるものではない。
【００６１】
計算サーバ５２は、ファイルサーバ５１から計算対象のレビューデータを取り出し、図１に示したグラフィックモデルで示されるような計算処理を行い、計算結果を出力する。計算サーバ５２は、図４に示すように、事前処理部７１と計算処理部７２を備えている。事前処理部７１は、計算処理対象のレビューデータを含むファイルから、単語を抽出する。そして、事前処理部７１は、テキストＩＤ及び単語ＩＤを付加し、その対応表をファイルシステムに保存する。計算処理部７２は、図１に示したグラフィックモデルに対応するような計算処理を行う。
【００６２】
データベース５３は、図４に示すように、計算結果記憶部８１を有している。計算サーバ５２の計算処理部７２の計算結果は、データベース５３に送られ、計算結果記憶部８１に保存される。
【００６３】
サービスサーバ５４は、計算結果をサービスの利用のために提供するためのサーバである。図４に示すように、サービスサーバ５４は、呼び出し部９１を備えている。ユーザ端末５５からの呼び出しに応じて、呼び出し部９１は、ユーザ端末５５に計算結果をユーザ端末５５に送る。この計算結果は、商品検索、レビュー検索、マーケティングなど、ユーザからのフィードバックや主観評価などの観測値（例えば、図２の連続値の観測変数ｖｊ）を含む文書集合を扱う各種のサービスに利用できる。
【００６４】
図５は、計算サーバ５２における計算処理の説明の一例を示すフローチャートである。
図５において、まず、計算サーバ５２の事前処理部７１は、計算対象のテキスト毎に、単語及びメタデータ（作成日時、評価等）を抽出する。そして、事前処理部７１は、各テキストにテキストＩＤを割り振り、各単語に単語ＩＤを割り振る処理を行う（ステップＳ１）。
つまり、図６のテーブルＴ１では、最初のレコードのテキストには、「テキストＡＡＡＢ」が記述され、最後のレコードのテキストには、「テキストＸＤＣＦＲ」が記述されている。最初のレコードのトークン（単語）には、「リンゴ」、「操作性」、「遺産」が記述されている。そして、最後のレコードのトークンには、「音楽」、「芸術」、「リンゴ」が記述されている。
【００６５】
図６のテーブルＴ２は、このようなデータに対して、ステップＳ１で、テキストＩＤと単語ＩＤを割り振る処理を行った場合の例である。図６のテーブルＴ２では、最初のレコードのテキストには、テキストＩＤとして「０００」が割り振られ、最後のレコードのテキストには、テキストＩＤとして「０８６」が割り振られている。また、最初のレコードのトークン（単語）には、「００００」、「０００３」、「０１２０」が単語ＩＤとして割り振られている。そして、最後のレコードのトークンには、「１２１１２３４」、「０３０４２」、「００００」が単語ＩＤとして割り振られている。
【００６６】
次に、計算サーバ５２の計算処理部７２は、乱数を発生し、その値を確率変数（Ｚ）とする（ステップＳ２）。図７のテーブルＴ３は、ステップＳ２で、テキストＩＤと単語ＩＤを割り振ったテーブルＴ２に対して、乱数を発生し、トピックの確率変数（Ｚ）としたものである。つまり、テーブルＴ３の最初のレコードでは、トピックの確率変数として、乱数「１１」、「８」、「３」が入れられている。また、最後のレコードでは、トピックの確率変数として、乱数「２」、「１」、「１１」が入れられている。
【００６７】
次に、計算サーバ５２の計算処理部７２は、ギブスサンプリングにより、潜在変数の推定を行う（ステップＳ３）。そして、サンプリングの数が予め設定されたら、処理を終了する（ステップＳ４）。これにより、トピックの潜在変数の数を最適に決定してトピックの潜在変数を推定し、推定されたトピックを用いてｎグラムを推定することができる。
【００６８】
＜比較例＞
図８は、比較例のグラフィックモデルである。図８において、ノード１０１は、ハイパーパラメータαのノードである。ハイパーパラメータαは、トピックの確率分布θｄを求めるのに用いられる。
ノード１０２は、文書データ毎に特異なトピックの確率分布θｄを求めるノードである。ここで、Ｄは、文書の数を表し、トピックの確率分布θｄは、文書毎に存在するＤ種類となる。
【００６９】
ノード１０３１、…、１０３ｉ、１０３ｉ＋１、…は、トピックの潜在変数ｚ（ｚ１、…、ｚｉ、ｚｉ＋１、…）を取得するノードである。すなわち、ノード１０３１、…、１０３ｉ、１０３ｉ＋１、…は、文書データから、ノード１０２で求められた文書毎に特異なトピックの確率分布θｄに基づき、トピックの潜在変数ｚ１、…、ｚｉ、ｚｉ＋１、…を取得する。ここで、ｚｉは、ｉ番目（ｉは任意の整数）の単語（トークン：単語の最小単位）に関連するトピックである。
【００７０】
ノード１０４は、ハイパーパラメータβのノードである。ハイパーパラメータβは、単語の確率分布φを求めるために用いられる。
ノード１０５は、トピック毎に特異な単語の確率分布φを求めるノードである。トピックの数はＺであり、ノード１０５の単語の確率分布φは、Ｚ種類となる。
【００７１】
ノード１０６は、ハイパーパラメータεのノードである。ハイパーパラメータεは、次の単語間状態の確率分布σを求めるために用いられる。
ノード１０７は、以前の単語と以前のトピック毎に特異な次の単語間状態の確率分布σを求めるためのノードである。なお、次の単語間状態の確率分布σは、（Ｚ×Ｗ）種類となる。
【００７２】
ノード１０８は、ハイパーパラメータγのノードである。ハイパーパラメータγは、次の単語の確率分布ψを求めるために用いられる。ハイパーパラメータγは、初期値としてランダム値が用いられる。
ノード１０９は、以前の単語と現在のトピック毎に特異な次の単語の確率分布ψを求めるノードである。ここで、Ｚは、トピックの数、Ｗは、単語の数を表し、次の単語の確率分布ψは、（Ｚ×Ｗ）種類となる。
【００７３】
ノード１１０１、…、１１０ｉ、１１０ｉ＋１、…は、単語の観測変数を取得するノードである。すなわち、ノード１１０１、…、１１０ｉ、１１０ｉ＋１、…は、ノード１０３１、…、１０３ｉ、１０３ｉ＋１、…で取得されたトピックｚ１、…、ｚｉ、ｚｉ＋１、…から、ノード１０５で求められた単語の確率分布φに基づき、単語の観測変数ｗ１、…、ｗｉ、ｗｉ＋１、…を取得する。また、ノード１１０ｉ、１１０ｉ＋１、…は、以前の単語と現在のトピックから、ノード１０９で求められた次単語の確率分布ψに基づき、次の単語の観測変数ｗｉ、ｗｉ＋１、…を取得する。ここで、ｗｉは、ｉ番目（ｉは任意の整数）の単語を表す。
【００７４】
ノード１１１ｉ、１１１ｉ＋１、…は、以前の単語と以前のトピックとから、次の単語間の状態を取得するノードである。すなわち、ノード１１１ｉ、１１１ｉ＋１、…は、ノード１０３１、…、１０３ｉ、１０３ｉ＋１…で取得された以前のトピックｚ１、…、ｚｉ、ｚｉ＋１、…と、ノード１１０１、…、１１０ｉ、１１０ｉ＋１、…で取得された以前の単語ｗ１、…、ｗｉ、ｗｉ＋１、…とから、ノード１０７で求められた次の単語間状態の確率分布σに基づき、次の単語間の状態の潜在変数ｘｉ、ｘｉ＋１、…を取得する。
【００７５】
図８に示すように、比較例では、トピックを潜在変数として用いる場合、トピックの数を予め決めておく必要がある。図８の例では、トピックの数はＺであり、この場合、トピック毎に特異な単語の確率分布φとして、Ｚ種類の確率分布が必要になる。また、次の単語の確率分布ψとして、（Ｚ×Ｗ）種類の確率分布が必要になる。トピックの数を多くすれば、処理数が増大する。トピックの数を少なくすれば、トピック毎の単語を精度良く推定できない。これに対して、本実施形態では、チャイニーズ・レストラン・プロセスを導入することで、トピックの数を適切に設定できる。
【００７６】
また、図８に示す比較例では、以前の単語と以前のトピックとから、次の単語間の状態を取得して、次の単語を推定している。この構成は、基本的に、２グラム連結モデルである。図８に示す比較例でｎ（ｎ＞３）グラム抽出を行っても、２グラムモデルを基本とするものとなるため、意味のあるｎグラム抽出は行えない。これに対して、本実施形態では、Ｐｉｙｍａｎ−Ｙｏｒプロセスを階層的に導入することでｎグラム連結モデルを実現できる。また、チャイニーズ・レストラン・プロセスを拡張して導入することで、ｎグラム抽出の単語の数を適切に設定できる。
【００７７】
図９は、本実施形態により抽出したフレーズ（２グラム、３グラム）と、比較例により抽出したフレーズ（２グラム、３グラム）とを比較したものである。
ここでは、ＤＶＤタイトルと、本のタイトルと、音楽のタイトルとについて、本実施形態により抽出したフレーズと、図８に示した比較例により抽出したフレーズとについて、Ｐｒｅｃｉｓｉｏｎ（適合率）とＲｅｃａｌｌ（再現率）とを比較している。
【００７８】
ここで、Ｐｒｅｃｉｓｉｏｎは、（計算結果の中の正解数／計算結果の数）を示し、Ｒｅｃａｌｌは、（計算結果の中の正解数／全ての正解数）を示す。Ｐｒｅｃｉｓｉｏｎは、抽出結果中にどれくらい間違った結果が含まれているかの指標となり、Ｒｅｃａｌｌは、抽出のとりこぼしがどれくらいあるかの指標となる。基本的に、ＰｒｅｃｉｓｉｏｎとＲｅｃａｌｌとは、トレードオフの関係にある。
【００７９】
図９に示す結果から、本実施形態では、ＰｒｅｃｉｓｉｏｎとＲｅｃａｌｌとの双方について、比較例より、良好な抽出結果が得られることが確認されている。例えば、２グラムの場合、本のタイトルでは、比較例では、Ｐｒｅｃｉｓｉｏｎが「０．６７」、Ｒｅｃａｌｌが「０．６０」であったが、本実施形態では、Ｐｒｅｃｉｓｉｏｎが「０．８７」、Ｒｅｃａｌｌが「０．９０」となり、ＰｒｅｃｉｓｉｏｎとＲｅｃａｌｌとの双方について、良好な抽出結果が得られている。また、３グラムの場合、本のタイトルでは、比較例では、Ｐｒｅｃｉｓｉｏｎが「０．４６」、Ｒｅｃａｌｌが「０．４２」であったが、本実施形態では、Ｐｒｅｃｉｓｉｏｎが「０．８２」、Ｒｅｃａｌｌが「０．８６」となり、ＰｒｅｃｉｓｉｏｎとＲｅｃａｌｌとの双方について、良好な抽出結果が得られている。
【００８０】
このように、本実施形態によれば、分類装置は、確率分布から潜在変数の数Ｋ（Ｋは整数）を自動的に決定し、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、を備える。
これにより、ｎグラムを抽出するときに予め潜在変数の数（トピックの数）を決めておく必要がなく、潜在変数の数を自動的に決定することができるため、潜在変数の数を適切に設定することができ、ｎグラムを抽出するときの利便性を向上させることができる。
【００８１】
また、本実施形態によれば、分類装置は、ｎ（ｎは整数）グラムの単語を抽出するための潜在変数を推定する潜在変数推定部と、確率分布からｎグラムの単語の数を決定し、潜在変数推定部で推定された潜在変数ごとに、ｎグラムの単語または当該ｎグラムの単語の出現確率を推定する単語推定部と、を備える。
これにより、ｎグラムの単語の抽出におけるｎを表す単語の数を適切に設定することができ、ｎグラムを抽出するときの利便性を向上させることができる。
【００８２】
また、チャイニーズ・レストラン・プロセスを導入することで、トピックを潜在変数として用いてｎグラムを推定する場合、トピックの数を予め決めておく必要がなく、トピックの数を適切に設定することができる。また、Ｐｉｙｍａｎ−Ｙｏｒプロセスを階層的に導入することでｎグラム連結モデルを実現することができ、また、チャイニーズ・レストラン・プロセスを拡張して導入することで、ｎグラム抽出の単語の数を適切に設定することができる。
【００８３】
なお、上述した実施形態では、ｎグラムの抽出を、英単語を中心して説明しているが、本発明は、英単語によるｎグラムの抽出ばかりでなく、日本語やその他の多言語においても抽出することができる。
【００８４】
また、上述した実施形態では、トピックを潜在変数としてｎグラムの抽出を行う場合について説明したが、潜在変数はトピックに限定されるものではない。また、トピック以外の潜在変数を用いる場合にも、チャイニーズ・レストラン・プロセスにより、同様にして潜在変数の数を最適に決定することができる。
【００８５】
また、本実施形態の計算サーバ５２の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、当該記録媒体に記録されたプログラムを、コンピュータシステムに読み込ませ、実行することにより、計算サーバ５２に係る上述した種々の処理を行ってもよい。
【００８６】
なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器などのハードウェアを含むものであってもよい。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリなどの書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭなどの可搬媒体、コンピュータシステムに内蔵されるハードディスクなどの記憶装置のことをいう。
【００８７】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネットなどのネットワークや電話回線などの通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置などに格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。
【００８８】
ここで、プログラムを伝送する「伝送媒体」は、インターネットなどのネットワーク（通信網）や電話回線などの通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００８９】
以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。
【符号の説明】
【００９０】
５１  ファイルサーバ
５２  計算サーバ
５３  データベース
５４  サービスサーバ
５５  ユーザ端末
６１  データファイル保存部
７１  事前処理部
７２  計算処理部
８１  計算結果記憶部
９１  呼び出し部
【図１】
2015127916.tif 000013
【図２】
2015127916.tif 000014
【図３】
2015127916.tif 000015
【図４】
2015127916.tif 000016
【図５】
2015127916.tif 000017
【図６】
2015127916.tif 000018
【図７】
2015127916.tif 000019
【図８】
2015127916.tif 000020
【図９】
2015127916.tif 000021