
111
111
8.3 標本分布
print('mean error biased', MeanError(estimates1, sigma**2))
print('mean error unbiased', MeanError(estimates2, sigma**2))
ここでも
n
は標本のサイズ、
m
はゲームの実行回数です。
np.var
はデフォルト
では
S
2
を、もし「デルタ自由度(
delta degrees of freedom
)」を意味する引数が
ddof=1
であるとき、
S
2
n
−
1
を計算します。この用語についてここでは説明しないので、
http://en.wikipedia.org/wiki/Degrees_of_freedom_(statistics)
を読んでください
†
。
MeanError
は、推定値と実際の値との差の平均を計算します。
def MeanError(estimates, actual):
errors = [estimate-actual for estimate in estimates]
return np.mean(errors)
このコードを実行すると、
S
2
の平均誤差は−
0.13
でした。予期したとおり、この偏っ
た推定量では低すぎます。
S
2
n
−
1
では、平均誤差は
0.014
で、約
10
倍小さくなります。
m
が増えると、
S
2
n
−
1
の平均誤差は
0
に近づきます。
MSE
やバイアスのような特性は、推定ゲームを何回も反復した結果に基づき長期
的に期待されるものです。本章で述べたシミュレーション実行では、推定量を比較し ...