2005年08月17日

数値計算テクニック

logAとlogBが与えられたときの、log(A+B)の計算の仕方

log(A+B)=logA+log(1+exp(logB-logA))

単純には、log(A+B)=log(exp(logA)+exp(logB))であるが、
Aが非常に小さい場合、アンダーフローを起こしてしまい、NANになってしまう。
上の方法により、対数logAをAに変換することなく和を計算することができる。

HMMや混合正規分布などを扱っていると非常に小さい確率が出てくることが多
く、そのような場面で使える。

posted by xi at 18:59| Comment(0) | TrackBack(2) | コンピュータ | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。