(58)【調査した分野】(Int.Cl.,DB名)
階層構造を有する観測情報と前記観測情報の階層構造を表現する順序木とを入力として、前記入力された順序木の各節点に対応する、観測変数及び潜在変数を決定するためのモデルパラメータと、各階層について、前記階層の節点に対応する前記潜在変数の、親節点及び兄節点のそれぞれに対応する潜在変数との依存関係を調整するための構造パラメータと、を含む確率モデルを、前記構造パラメータの初期値を用いて、予め定められた方法により複数生成して、初期モデル候補集合とする初期モデル生成部と、
前記生成された初期モデル候補集合又は前回生成されたモデル候補集合に含まれる確率モデルの各々について、前記確率モデルが、前記入力された観測情報と合致する度合いを示すモデルスコアを算出して、スコア集合を生成するモデルスコア計算部と、
前記生成されたスコア集合に基づいて、前記生成された初期モデル候補集合又は前回生成されたモデル候補集合から、前記モデルスコアが上位w個の確率モデルを抽出し、前記抽出された上位w個の確率モデルの各々に対して、前記確率モデルの前記構造パラメータの何れか1つの階層の依存関係を変化させた確率モデルを生成して、モデル候補集合を生成する確率モデル候補生成部と、
前記モデルスコアに関して予め定められた反復終了条件を満たすまで、前記確率モデル候補生成部による前記モデル候補集合の生成、及び前記モデルスコア計算部による前記スコア集合の生成を繰り返し、繰り返しを終了したときに、前記モデルスコアが最も高い確率モデルを出力する反復判定部と、
を含む確率モデル生成装置。
初期モデル生成部が、階層構造を有する観測情報と前記観測情報の階層構造を表現する順序木とを入力として、前記入力された順序木の各節点に対応する、観測変数及び潜在変数を決定するためのモデルパラメータと、各階層について、前記階層の節点に対応する前記潜在変数の、親節点及び兄節点のそれぞれに対応する潜在変数との依存関係を調整するための構造パラメータと、を含む確率モデルを、前記構造パラメータの初期値を用いて、予め定められた方法により複数生成して、初期モデル候補集合とし、
モデルスコア計算部が、前記生成された初期モデル候補集合又は前回生成されたモデル候補集合に含まれる確率モデルの各々について、前記確率モデルが、前記入力された観測情報と合致する度合いを示すモデルスコアを算出して、スコア集合を生成し、
確率モデル候補生成部が、前記生成されたスコア集合に基づいて、前記生成された初期モデル候補集合又は前回生成されたモデル候補集合から、前記モデルスコアが上位w個の確率モデルを抽出し、前記抽出された上位w個の確率モデルの各々に対して、前記確率モデルの前記構造パラメータの何れか1つの階層の依存関係を変化させた確率モデルを生成して、モデル候補集合を生成し、
反復判定部が、前記モデルスコアに関して予め定められた反復終了条件を満たすまで、前記確率モデル候補生成部による前記モデル候補集合の生成、及び前記モデルスコア計算部による前記スコア集合の生成を繰り返し、繰り返しを終了したときに、前記モデルスコアが最も高い確率モデルを出力する
確率モデル生成方法。
【発明を実施するための形態】
【0013】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0014】
<概要>
まず、本発明の実施の形態の概要について説明する。
【0015】
本発明の実施の形態では、階層情報を有する観測情報からのモデルの自動生成を実現する。これにより本来専門知識を必要とするモデルの設計を簡易化し、データの解析をより容易にする。本発明の実施の形態の特徴として階層情報を利用することが挙げられる。階層情報を利用することは以下の(1)〜(3)の利点を持つ。
【0016】
(1)モデルの生成および潜在構造の抽出に利用できる情報が増加し、よりデータに適したモデルの生成、解析が可能になる。
【0017】
(2)モデル中の潜在変数とデータの階層情報を結びつけることができるため、モデルやモデルより得られた潜在構造を解釈しやすい。
【0018】
(3)階層情報として解析者が期待する構造を埋め込むことで、解析用途に適したモデルを生成できる。
【0019】
しかし、階層情報を導入することで,生成されるモデルが複雑化し、それらを利用する際に効率的に学習ができなくなるという懸念がある。そこで本発明の実施の形態では、効率的な学習法を伴うモデルの自動生成を実現する。
【0020】
<システム構成>
次に、階層構造を有する観測情報を解析して、観測情報の潜在構造を抽出するための確率モデルを生成する確率モデル生成装置に、本発明を適用した場合を例にして、本発明の実施の形態を説明する。
【0021】
図1に示すように、本発明の実施の形態に係る確率モデル生成装置は、CPUと、RAMと、後述する確率モデル生成処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
【0022】
図1に示すように、確率モデル生成装置100は、入力部1、記憶部2、演算部3、及び出力部4を備えている。演算部3は、初期モデル生成部31、モデルスコア計算部32、反復判定部33、及びモデル候補生成部34を備えている。
【0023】
入力部1は、階層構造を有する観測情報の入力を受け付ける。出力部4は、観測情報の潜在構造を抽出するための確率モデルを出力する。
【0024】
演算部3は、まず、入力データとして観測情報と階層情報を読み込む。
【0025】
次に、演算部3は、以下の手順を、反復終了条件を満たすまで繰り返す。まず、モデル候補生成部34において、入力情報と現在時点でのモデル候補集合およびスコア集合を元に新たな確率モデルの候補集合を生成する。次に、生成されたモデル候補集合を入力とし、モデルスコア計算部32において、各モデル候補がどれだけ入力された観測情報に合っているかを示すモデルスコアを計算する。反復判定部33は、反復終了条件として、モデルスコアが改善されたか否かを判定し、モデルスコアが改善されれば、モデル候補生成部34に戻り、新たなモデル候補を生成する。モデルスコアの改善がなくなれば、最もモデルスコアの高いモデル候補を最終モデルとして出力部4により出力する。このモデルスコアの計算はデータにモデルをフィットさせることで計算される。つまりモデルスコアを効率的に計算するためには、モデルの学習を効率的に行う必要がある。
【0026】
既存の確率モデルの自動生成装置も同様の構造を持つ場合があるが、本発明の実施の形態では、入力として、観測情報の持つ階層構造を受け取り、これを活用し確率モデルを生成する点が異なる。以下に具体的に階層情報がどのように利用されるかを述べる。
【0027】
入力部1で受け付ける入力は、観測列である観測情報x={x
1,...,x
N}と階層構造を表現した順序木Tとする。観測変数x
nは順序木T中の節点nに対応付けられているため、順序木Tの構造が観測情報xの持つ階層構造を表す。ここでは説明のため、順序木Tを3つ組(N;par;sib)で定義する。N={0,...,N}はT中の節点集合であり、写像par:N→Nとsib:N→NはそれぞれT中の親子関係および順序関係を表す。つまりpar(n)はnの親であり、sib(n)はnの兄である。DとDnをそれぞれTの深さ、節点nの深さとする。またNd(1≦d≦D)をd
n=dなる節点nの集合とする。以後説明のため、x
n(n∈d
n)は離散値1,...,V
dを取るとする。
【0028】
出力部4の出力は、確率モデルMである。確率モデルは確率変数間の依存関係を定めたものであり、本実施の形態で扱うモデルは観測変数xとは別に、潜在変数z=(z
n)
Nn=1を持つとする。つまり、ある具体的なモデルMはxとz間の依存関係を定めたものである。ここでは説明のため、モデルMは順序木T、構造パラメータA,モデルパラメータα=(α
d)
d=1D,β(β
d)
d=1Dによって定義されるとする。順序木T中の各節点n∈N
d(1≦d≦D)は離散潜在変数z
n∈{1,...K}を持ち、各観測変数x
nは対応する潜在変数z
nにのみ依存し、z
nはその親節点の潜在変数z
par(n)と兄節点の潜在変数z
sib(n)に依存する。以後、簡単のためl=par(n)、m=sib(n)とする。ただし、この親節点及び兄節点の潜在変数との間の依存関係は構造パラメータA≡(A
d)
Dd=1により調整可能であるとする。Aの各要素A
dを仮説変数と呼び、
図2に仮説変数A
dが表す依存関係を示す。I−detはz
nが値nを決定的にとることを意味し、P−detはz
nが親の値z
lを決定的に取ることを意味する。N−depはz
nが他の潜在変数と独立である事を意味する。P−dep,S−dep,B−depはそれぞれ、z
nが親z
l,兄z
mそしてその両方に依存することを意味する。なお節点nが親節点や兄節点を持たないとき、これをl=0、m=0と表す。また、z
0=0とする。この構造パラメータAを調整することで、様々な潜在変数モデルを表現できる。例えば、クラスタリングに利用される混合モデル、文書データの解析に広く利用されている潜在ディリクレ配分(LDA)モデル、系列データの解析に利用される隠れマルコフモデル、そしてそれらを組み合わせたモデルが表現できる。
【0029】
モデルパラメータα
d≡(α
d、k)
Kdk=1とβ
d≡(β
d,v)
Vdv=1をDirichlet分布のパラメータとし、θ
d,i,jとφ
d,kはそれぞれカテゴリカル分布のパラメータとする。ここでθ
d,i,jはz
l=iかつz
m=jのときにz
n(n∈N
d)の値を決定するためのカテゴリカル分布のパラメータであり、φ
d,kはz
n=kのときにx
nの値を決定するためのカテゴリカル分布のパラメータである。そしてα
dとβ
dはそれぞれθ
d,i,jとφ
d,kを生成するためのディリクレ分布のパラメータとする。このとき潜在変数z=(z
n)
Nn=1と観測変数x=(x
n)
Nn=1の生成過程は、以下の1〜2で表わされる。
【0030】
1. For each depth d=1,...,D
(a) Draw topic distributions θ
d,i,j〜Dir(α
d)
(b) Draw symbol distributions φ
d,k〜Dir(β
d)
2. For each depth d=1,...,D, for each node n∈N
d
(a) Choose a topic z
n by
case A
d
when I−det : z
n:=n
when P−det : z
n:=z
l
when N−dep : z
n〜Cat(θ
d,0,0)
when P−dep : z
n〜Cat(θ
d,zl,0)
when S−dep : z
n〜Cat(θ
d,0,zm)
when B−dep : z
n〜Cat(θ
d,zl,zm)
(b) Draw a symbol x
n〜Cat(φ
d,zn)
【0031】
初期モデル生成部31は、入力部1により入力された、観測情報の階層構造を表現する順序木Tに基づいて、入力された順序木の各節点に対応する、観測変数及び潜在変数を決定するためのモデルパラメータα、βと、各階層について、階層の節点に対応する潜在変数の、親節点及び兄節点のそれぞれに対応する潜在変数との依存関係を調整するための構造パラメータAと、順序木Tとの4つ組(T,A,α,β)で表現される確率モデルMを、構造パラメータAの初期値を用いて、予め定められた方法により複数生成して、初期モデル候補集合とする。例えば、初期のモデル候補の各々における構造パラメータAの初期値をランダムに決定してもよいし、既存のよく知られたモデルを表現した構造パラメータAを初期値として与えてもよい。
【0032】
モデル候補生成部34は、
図3に示すように、モデル候補読込部341及び新モデル候補計算部342を備えている。モデル候補生成部34の入力は、記憶部2に記憶されている現在のモデル候補集合Cと、モデル候補集合Cに対するスコア集合Sとであり、出力は新たなモデル候補集合C’である。
【0033】
モデル候補読込部341は、記憶部2に記憶されているモデル候補集合Cと、モデル候補集合Cに対するスコア集合Sとを読み込む。
【0034】
新モデル候補計算部342は、モデル候補読込部341によって読み込んだモデル候補集合C及びスコア集合Cに基づいて、モデル候補集合Cより、スコア集合S内でモデルスコアが上位w個の確率モデルを抽出する。新モデル候補計算部342は、w個の各確率モデルに対して、隣接モデルを計算する。新モデル候補計算部342は、計算されたすべての隣接モデルの集合を新たなモデル候補集合C’として、記憶部2に格納する。ここで、確率モデルMの隣接モデルとは、確率モデルM内の構造パラメータAの何れか1つの階層の依存関係を表す要素を変化させたものである。本実施の形態では、確率モデルMが4つ組(T,A,α,β)で表現されるため、隣接モデルは構造パラメータAの要素を丁度1箇所変更させたものである。
【0035】
モデルスコア計算部32は、
図4に示すように、モデル候補読込部321、学習部322、及び計算部323を備えている。モデルスコア計算部32の入力は、初期モデル候補集合、又は記憶部2に記憶されているモデル候補集合Cであり、出力は、確率モデルMが、入力された観測情報と合致する度合いを示すモデルスコアのスコア集合Sである。
【0036】
モデル候補読込部341は、初期モデル候補集合、又は記憶部2に記憶されているモデル候補集合Cを読み込む。
【0037】
以下に、モデル候補集合C中の各モデルMに対してモデルスコアを計算する方法について説明する。
【0038】
モデルスコアは、モデルMが、入力された観測情報xにどれだけ合っているかを表すものであり、代表例として対数周辺尤度L[M]≡p(x|M)などが挙げられる。モデルスコアはモデルを比較することができればどのようなものを選んでも良いが、本実施の形態では対数周辺尤度L[M]の下限値である変分自由エネルギーF[M]を利用する。なお、モデルパラメータαとβは、学習部322において観測情報xに合うように学習される。Jensen’s inequalityを利用することで、以下の対数尤度L[M]の下限値を得る。
【0040】
ここでqはq(z,θ,φ)=q(z)q(φ)q(φ)を満たす近似分布であり、H[q]はそのエントロピーである。Euler−Lagrange equationより、以下のqに関する更新式を得る。
【0042】
この更新式を繰り返し適用することでF[q,M]を極大化することができる。更にモデルパラメータαとβは不動点反復法により推定できる。極大化された値をF[M]と書き、変分自由エネルギーと呼ぶ。
【0043】
次にF[M]を効率的に計算する方法を述べる。q(θ)とq(φ)に対して以下を仮定する。
【0045】
ここでa
d,i,j=(a
d,i,j,k)
Kdk=1とb
d,k=(b
d,k,v)
Vdv=1は近似分布qのパラメータであり、更新式は以下で与えられる。
【0049】
ここでΨ(x)はディガンマ関数である。q(z)=p(z|x,θ
*,φ
*)が成り立つため、(7)式、(8)式中の期待値は以下のように計算できる。
【0051】
つまり近似分布qのパラメータa,bは、(14)式、(15)式の期待値計算と、(7)式、(8)式の更新式の計算とを繰り返すことで推定できる。実際に期待値を計算するにはp
n,i,j,kを計算する必要がある。確率p
n,i,j,kは、r
n,i,j,k≡p(z
l=i,z
m=j,z
n=k,x|θ
*,φ
*)を計算することで、以下のように計算できる。
【0053】
最後にr
n,i,j,kの計算法を述べる。概略を述べると、r
n,i,j,kを計算する際に、順序木T中の全節点Nを今注目しているnを中心にその上にある集合、下にある集合、前にある集合、後ろにある集合の4つに分け、各集合毎の確率を計算・統合することで、効率よくr
n,i,j,kが計算できる。
【0054】
以後簡単のため、θとφを省略し、具体的な計算法を述べる。順序木Tにおける節点nの子孫の節点の集合をDec(n)とし、Sib
−(n)をnの兄節点の集合、Sib
+(n)をnの弟節点の集合とする。このとき以下の4種の集合を導入する。
【0056】
これらの集合を利用してN=O(p)∪F(s)∪B(n)と書ける。ある集合C⊆Nに対してx
C≡(x
n)
n∈Cかつz
C≡(z
n)
n∈Cと定める。すると計算したい値r
n,i,j,kは以下のように分解できる。
【0058】
上記を計算するため、以下の4種類の確率を導入する。
【0060】
これらの確率は互いを用いて以下のような動的計画法で計算できる。
【0062】
ここでcはnの長子であり、tはnの弟である。また、φ
d,k,xn、θ
d,i,j,kは、上記(12)、(13)式に従って計算される。上記の確率を用いれば、r
n,i,j,kは以下のように計算できる。
【0064】
まとめると、確率モデルMについてのモデルスコアF[M]は、
図5に示すアルゴリズムにより計算される。
【0065】
本実施の形態では、学習部322によって、モデル候補読込部341により読み込んだ、初期モデル候補集合、又は記憶部2に記憶されているモデル候補集合Cの確率モデルMの各々について、以下に説明するように、モデルパラメータα、β及び近似分布のパラメータa、bを学習する。
【0066】
まず、学習部322は、確率モデルMの順序木Tの各節点nについて、順序木の頂点の節点から順番に、潜在変数の値k毎に、上記(28)式に従って、当該節点nの潜在変数z
nの値がkであるときの、当該節点nの子孫の節点の集合I(n)の観測変数x
I(n)の確率I
n[k]を計算すると共に、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎に、上記(33)式に従って、当該節点nの潜在変数z
nの値、当該節点nの親節点lの潜在変数z
lの値、及び兄節点mの潜在変数z
mの値が、当該組み合わせであるときの節点nの弟の節点の集合に含まれる各節点の子孫の節点の和集合B(n)の観測変数x
B(n)の確率B
n[i,j,k]を計算する。
【0067】
また、学習部322は、確率モデルMの順序木Tの各節点nについて、順序木の葉の節点から順番に、潜在変数の値k、及び親節点の潜在変数の値iの組み合わせ毎に、上記(31)式に従って、当該節点nの確率I
n[k]に基づいて、節点nの潜在変数z
nの値、及び親節点lの潜在変数z
lの値が当該組み合わせであるときの節点nの兄節点の集合に含まれる各節点の子孫の節点の和集合F(n)の観測変数x
F(n)の確率F
n[i,k]を計算すると共に、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎に、上記(30)式に従って、節点nの弟節点tの確率B
t[i,j,k]に基づいて、節点nの潜在変数z
nの値、節点nの親節点lの潜在変数z
lの値、及び兄節点mの潜在変数z
mの値が、当該組み合わせであるときの、節点nの子孫の節点を除いた節点の集合O(n)の観測変数x
O(n)の確率O
n[i,j,k]を計算する。
【0068】
また、学習部322は、確率モデルMの順序木Tの各節点nについて、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎に、上記(34)式に従って、節点nの親節点pの確率O
n[i,j,k]、節点nの兄節点sの確率F
n[i,k]、及び節点nの確率B
n[i,j,k]に基づいて、当該組み合わせに対するr
n,i,j,kを算出する。
【0069】
また、学習部322は、確率モデルMの順序木Tの各節点nについて、潜在変数の値k、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎に、上記(17)式、(18)式に従って、算出された各r
n,i,j,kに基づいて、節点nの潜在変数の値、親節点lの潜在変数z
lの値、及び兄節点mの潜在変数z
mの値が当該組み合わせとなる確率p
n,i,j,kを算出する。
【0070】
また、学習部322は、確率モデルMの順序木Tの各階層dについて、上記(14)式に従って、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎に、潜在変数zの集合の近似分布q(z)における、当該組み合わせの出現頻度の期待値E
q(z)[c
d,i,j,k(z)]を算出する。学習部322は、確率モデルMの順序木Tの各階層dについて、潜在変数の値k、及び観測変数の値vの組み合わせ毎に、上記(15)式に従って、潜在変数zの集合の近似分布q(z)における、当該組み合わせの出現頻度の期待値E
q(z)[c
d,k,v(z)]を算出する。
【0071】
また、学習部322は、確率モデルMの順序木Tの各階層dについて、上記(7)式に従って、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎に、当該組み合わせに対する期待値E
q(z)[c
d,i,j,k(z)]及びモデルパラメータα
d,kに基づいて、当該組み合わせに対する近似分布のパラメータa
d,i,j,kを更新する。
【0072】
また、学習部322は、確率モデルMの順序木Tの各階層dについて、上記(8)式に従って、潜在変数の値k、及び観測変数の値vの組み合わせ毎に、当該組み合わせに対する期待値E
q(z)[c
d,k,v(z)]及びモデルパラメータβ
d,vに基づいて、当該組み合わせに対する近似分布のパラメータb
d,k,vを更新する。
【0073】
また、学習部322は、確率モデルMの順序木Tの各階層dについて、更新された近似分布の各パラメータa
d,i,j,k、b
d,k,vに基づいて、潜在変数の値k、親節点の潜在変数の値i、及び兄節点の潜在変数の値jの組み合わせ毎のモデルパラメータα
d,k、並びに潜在変数の値k、及び観測変数の値vの組み合わせ毎のβ
d,vを更新する。
【0074】
学習部322は、確率モデルMについて、近似分布の各パラメータa
d,i,j,k、b
d,k,vが収束するまで、上記の処理を繰り返す。
【0075】
計算部323は、モデル候補読込部341により読み込んだ、初期モデル候補集合、又は記憶部2に記憶されているモデル候補集合Cの確率モデルMの各々について、上記(1)式に従って、学習部322によって最終的に更新された近似分布の各パラメータa
d,i,j,k、b
d,k,v、及び各モデルパラメータα
d,k、β
d,vに基づいて、変分自由エネルギーであるモデルスコアを計算し、スコア集合を生成して、記憶部2に格納する。
【0076】
反復判定部33は、モデルスコアに関して予め定められた反復終了条件を満たすまで、モデル候補生成部34によるモデル候補集合の生成、及びモデルスコア計算部32によるスコア集合の生成を繰り返し、繰り返しを終了したときに、モデルスコアが最も高い確率モデルを、出力部4により出力する。本実施の形態では、反復終了条件として、モデルスコアの改善がなくなったことを用いる。
【0077】
<確率モデル生成装置の作用>
次に、本実施の形態に係る確率モデル生成装置100の作用について説明する。階層構造を有する観測情報と、観測情報の階層構造を表す順序木とが、確率モデル生成装置100に入力されると、
図6に示す確率モデル生成処理ルーチンが実行される。
【0078】
まず、ステップS100において、入力された観測情報及び順序木を読み込む。ステップS102において、上記ステップS100で読み込んだ順序木に基づいて、複数の確率モデルを生成し、初期モデル候補集合とする。
【0079】
次のステップS104では、上記ステップS102で生成された初期モデル候補集合、又は後述するステップS108で前回生成されたモデル候補集合に対して、モデルスコアを計算して、スコア集合を生成する。
【0080】
ステップS106では、上記ステップS104で生成されたスコア集合に基づいて、モデルスコアに関する反復終了条件を満たすか否かを判定する。反復終了条件を満たさない場合には、ステップS108へ移行する。
【0081】
ステップS108では、上記ステップS102で生成された初期モデル候補集合、又はステップS108で前回生成されたモデル候補集合と、上記ステップ104で生成されたスコア集合に基づいて、新たなモデル候補集合を生成し、上記ステップS104へ戻る。
【0082】
上記ステップS106において、反復終了条件を満たすと判定された場合には、ステップS110へ移行し、上記ステップS108で生成されたモデル候補集合のうち、モデルスコアが最も高い確率モデルを、出力部4により出力して、確率モデル生成処理ルーチンを終了する。
【0083】
上記ステップS104は、
図7に示すモデルスコア計算処理ルーチンにより実現される。
【0084】
ステップS120において、上記ステップS102で生成された初期モデル候補集合、又はステップS108で前回生成されたモデル候補集合を読み込む。
【0085】
次のステップS122では、上記ステップ120で読み込んだ初期モデル候補集合又はモデル候補集合に含まれる確率モデルの各々について、モデルパラメータα、β、及び近似分布のパラメータa、bを学習する。
【0086】
そして、ステップS124において、上記ステップ120で読み込んだ初期モデル候補集合又はモデル候補集合に含まれる確率モデルの各々について、上記ステップS122で学習された当該確率モデルのモデルパラメータα、β、及び近似分布のパラメータa、bに基づいて、モデルスコアを計算し、計算されたモデルスコアの集合を、スコア集合として、記憶部2に格納して、モデルスコア計算処理ルーチンを終了する。
【0087】
上記ステップS108は、
図8に示すモデル候補生成処理ルーチンにより実現される。
【0088】
ステップS130において、上記ステップS102で生成された初期モデル候補集合、又はステップS108で前回生成されたモデル候補集合と、上記ステップS104で生成されたスコア集合とを読み込む。
【0089】
そして、ステップS132において、初期モデル候補集合又はモデル候補集合から、モデルスコアが上位w個の確率モデルを抽出する。
【0090】
ステップS134では、上記ステップS132で抽出されたw個の確率モデルの各々について、隣接モデルを計算する。
【0091】
そして、ステップS136において、上記ステップS134で計算された全ての隣接モデルを、新たなモデル候補集合として、記憶部2に格納して、モデル候補生成処理ルーチンを終了する。
【0092】
<実験>
本発明の実施の形態で説明した手法を評価するために、12のデータセットを用いて実験を行った。各データセットは、
図9に示される12個のモデルから生成されたものであり、各データセットはL文書、各文書はL文、各文はL単語から成る。つまりデータセットは3層の階層情報を持つL
3の単語からなる。上記
図9においてMMはMultinomial mixture、LDAはLatent dirichlet allocation、HMMはhiden Markov modelの略であり、d、s、wはそれぞれ文書レベル、文レベル、単語レベルを意味する。各データセットは順序木で与えられる。順序木中で、各単語は自身が所属する文を親として持ち、各文は所属する文書を親として持つ。本発明の実施の形態ではこれを入力とし、確率モデルの自動生成を行う。本実験では、初期モデル候補MとしてA=(P−det,P−det,P−det)なるモデルを与えた。モデルスコア計算部32においてモデル候補集合の確率モデルMのモデルスコアを計算し、モデル候補生成部34において得られたモデルスコアを元に新たなモデル候補集合を生成した。これをモデルスコアが改善されなくなるまで反復した。
図10に本実験により生成されたAを示す。なおデータサイズLとモデル候補生成部34の探索幅wをそれぞれL=10,30,50、w=1,3と変化させた。上記
図10中の矩形で囲まれた部分は、正解モデルと異なる仮説が生成された事を意味する。上記
図10よりLとwを増加させるとより正しい確率モデルを生成され、最終的には全データセットに対して正しい確率モデルを生成できたことが分かる。
【0093】
以上説明したように、本発明の実施の形態に係る確率モデル生成装置によれば、観測情報の階層構造を表現する順序木の各節点に対応する、観測変数及び潜在変数を決定するためのモデルパラメータα、βと、各階層について、親節点及び兄節点のそれぞれに対応する潜在変数との依存関係を調整するための構造パラメータAと、を含む確率モデルMの各々について、モデルスコアを算出してスコア集合を生成し、スコア集合に基づいて、確率モデルのモデル候補集合を生成することを繰り返すことにより、観測情報が有する階層構造を考慮して観測情報の潜在構造を抽出するための確率モデルを生成することができる。
【0094】
また、解析対象の観測情報が持つ階層情報を有効利用した潜在変数モデルの自動生成が可能となる。階層構造を利用することにより、確率モデルに含まれる潜在変数がどの階層に対応するかが分かるため、モデルや得られた潜在構造を解釈しやすい。また生成されたモデルを用いて潜在構造を抽出するにはモデルを学習する必要があるが、この学習を、モデルスコア計算部に内蔵される手法により効率的に行うことができる。
【0095】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0096】
例えば、上述の確率モデル生成装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
【0097】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。