68-95-99.7ルール
CoddyのMachine Learningジャーニー「機械学習のための統計」セクションの一部。レッスン 10/64。
正規分布では、標準偏差(std)から、平均値からどれくらい離れた値がどの割合を占めるかがわかります。コーヒーの注出量の平均は250 ml、標準偏差は5 mlです。
これが68-95-99.7ルールです。シミュレーションしたカップ10,000個で確認しましょう。マスクは標準偏差1以内のものを数えます。
rng = np.random.default_rng(1)
cups = rng.normal(250, 5, size=10000)
within1 = (cups > 245) & (cups < 255)
print(within1.sum() / cups.size)これは次のように出力されます。
0.6868以下の任意の値について、stats.norm.cdf(x, mean, std) は x の左側の面積を返します。stats.norm.cdf(260, 250, 5) は 0.977 です。
3 stdを超える逸脱は1,000回に3回発生します。モデルに到達する前にフラグを立てるのに十分なほどまれです。
チャレンジ
簡単ある研究所で電球5,000個を切れるまで点灯させました。lifeにはその点灯時間が格納され、プログラムはhを読み込みます。lifeの平均と標準偏差(np.std)を使って、次の割合をパーセント(小数第1位まで)で出力してください。
- 平均から標準偏差1つ分の範囲内、
- 標準偏差2つ分の範囲内、
h未満(実測値)、h未満(正規曲線による値)。
別のロットで、入力が1100の場合:
Within 1 std: 67.6%
Within 2 std: 95.7%
Below 1100 hours, counted: 10.2%
Below 1100 hours, normal curve: 10.1%自分で試してみよう
import numpy as np
from scipy import stats
# 以下の行は変更しないでください
rng = np.random.default_rng(12)
life = np.round(rng.normal(1200, 100, size=5000))
h = int(input())
# 以下にコードを書いてください
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
機械学習のための統計のすべてのレッスン
自分で練習してみよう: Pythonオンラインコンパイラ