
190
■
15
章
次元を扱う
が多い。それが、単純な版から始めるのがよいと私が考える
1
つの理由である。それは
リグレッションテスト(
regression testing
)にも使える。私は、両方の版の結果をグラフ
にして、それらがほぼ等しく、反復回数を増やすと収束することを確かめた。
15.7
もう
1
つの問題
コードの最適化にはまだやることがあるが、それより先にまず片付けなければならな
い問題がある。観察した種族の個数が増えるにつれて、この版では、ノイズが増えて、
よい答えに収束させるためにさらに多くの繰り返し処理が必要となる。
問題は、ディリクレ分布から選んだ占有率
ps
が、少なくとも近似的に正しくないと
なると、観察したデータの尤度がゼロに近くなり、
n
のすべての値について、ほぼ同じ
ようにまずいことになることだ。したがって、繰り返しのほとんどが、全体尤度に対し
て有用な貢献ができない。観察した種族の個数
m
が大きくなるに連れて、無視できない
尤度を持つ
ps
を選ぶ確率が小さくなる。本当に小さくなってしまうのだ。
幸いなことに解決法がある。データの集まりを観察したら、全体データ集合で事前
確率を更新できること、あるいは、それを分割して、データの部分集合について一連
の更新を行う事ができて、どちらにしても結果は同じであることを覚えておくことだ。
この例題については、鍵となるのは、更新を一時に一種族について行うことだ。そう
すれば、
ps
のランダム集合を生成するときに、
1
つだけが計算した尤度に影響し、優れ
たものを選ぶ ...