betalike
負のベータ対数尤度
構文
nlogL = betalike(params,data)
[nlogL,AVAR] = betalike(params,data)
説明
nlogL = betalike(params,data)
は、ベクトル params
で指定されたベータ パラメーター a および b と列ベクトル data
で指定された観測値に対して、ベータ対数尤度関数の負数を返します。
data
の要素は、ベータ分布が定義されている開区間 (0, 1) 内に存在していなければなりません。ただし、正確な 0 または 1 を含んでいるデータにベータ分布を当てはめることが必要な場合もあります。このようなデータの場合、ベータ尤度関数は境界がないため、標準的な最尤推定法は利用できません。この場合、betalike
は、0 を sqrt(realmin)
で左側打ち切りした値、1 を 1-eps
/2 で右側打ち切りした値として扱うことにより 0 または 1 を組み込んで、修正した尤度を計算します。
また、[nlogL,AVAR] = betalike(params,data)
は、params
の値が最尤推定である場合にパラメーター推定の漸近的分散共分散行列である AVAR
も返します。AVAR
はフィッシャー情報行列の逆行列です。AVAR
の対角要素は各パラメーターの漸近分散です。
関数 betalike
は、ベータ分布の最尤推定を行うための関数です。尤度は、データ標本内のすべての要素が、互いに独立であると仮定しています。関数 betalike
は、ベータ対数尤度関数に負の符号を付けたものを返すため、関数 fminsearch
を使用して関数 betalike
を最小にすることは、尤度を最大にすることと等しくなります。
例
この例は、関数 betafit
の例の続きで、無作為に発生させた、ベータ分布するデータのベータ パラメーターを推定したものです。
r = betarnd(4,3,100,1); [nlogl,AVAR] = betalike(betafit(r),r) nlogl = -27.5996 AVAR = 0.2783 0.1316 0.1316 0.0867
拡張機能
バージョン履歴
R2006a より前に導入