3秒でわかる
データを見る前に立てておく、検証できる形にした予測。分析や施策の判断を、後付けの解釈ではなく事前の予測で決めるために使います。
もう少し詳しく
どういうものか
仮説は、検証を始める前に立てておく予測です。ただの思いつきと違うのは、外れたと分かる形になっている点です。「使いやすくする」は仮説になりませんが、「入力欄を 5 個から 3 個に減らせば、登録完了率が 12% から 15% に上がる」は仮説になります。対象、変える内容、見る指標、期待する向きと大きさが入っているからです。
統計の文脈では、差が無いという帰無仮説と、差があるという対立仮説を立て、データが帰無仮説のもとでどれだけ起こりにくいかを見て判断します。
なぜ必要か
データを先に眺めてから説明を作ると、どんな結果でも後付けで説明できてしまいます。曜日別、端末別、地域別と切り口を増やせば、偶然の凸凹はいくらでも見つかります。先に仮説を書いておくことで、たまたま見つけた凸凹と、予測が当たったことを区別できます。
チームの合意形成にも効きます。何をもって成功とするかを事前に決めておけば、結果が出た後に評価がぶれません。
具体例
A/B テストの結果を検定する例です。事前に「新デザインは登録率を上げる」という仮説を立てています。
from scipy import stats
# 旧デザイン 1200 人中 144 人が登録、新デザイン 1180 人中 189 人
table = [[144, 1056], [189, 991]]
chi2, p, dof, expected = stats.chi2_contingency(table)
print(round(p, 4)) # 0.0043 なら偶然では説明しにくいつまずきやすいところ
指標を後から選び直す行為が、最もよくある落とし穴です。登録率で差が出なかったので滞在時間を見た、という進め方をすると、どこかで必ず差が見つかります。見る指標は仮説と一緒に先に決めてください。
もうひとつ、確率の値が小さいことは「効果が大きい」ことを意味しません。人数が十分多ければ、実務では無視できる 0.1 ポイントの差でも小さな値になります。差の大きさと、その差にどれだけの幅があるかを併せて見る必要があります。
外れた仮説を消してしまうのも損失です。外れた事実は、次の仮説を絞り込む材料として残しておく価値があります。
覚え方
仮説は「何を、どう変えると、どの数字が、どちらへ、どれだけ動くか」を 1 文で言い切ったものです。この 5 つのうちひとつでも埋まらないなら、まだ検証できる形になっていません。書けない部分があるときは、測る手段が用意できていないことが多く、分析の前に計測の設計へ戻る合図になります。検証が終わったら、当たった仮説と外れた仮説をどちらも記録に残します。次に同じ領域を触る人が、同じ検証をやり直さずに済みます。