見出し画像

有意確率とは?0.05未満なら本当に差があるの?(後編)

はじめに

分析屋の小泉と申します。

前回、確率や偶然・必然の定義について解説しました。

今回はこれを踏まえ、有意確率(p値)の定義、帰無仮説・対立仮説との関連、そして現在議論されている内容についても触れていきます。

なお、統計検定2級の対策であれば、

「検定推定量が境界値より大きい」とき、
もしくは「p値が0.05未満」のとき対立仮説を支持する

さえ覚えておけば問題ありません。
また、検定推定量さえ求められればよいので、公式さえ覚えれば大丈夫です。

とはいえ、実際のデータ分析では、試験のように電卓と分布表を使うことはまずなく、
excelやR、python、SPSSなどのソフトウェアでp値を求めます。

そこで、今回の後編では、

  ・p値(有意確率)とは何の確率なのか?
  ・帰無仮説と対立仮説の関連は?
  ・「p<0.05だから帰無仮説を棄却する」のは本当に正しいのか?
  ・p値を実際にデータ解析に用いる際の注意点

に焦点を当てます。

統計検定2級の学習を進めていれば理解できるような説明を心がけていますが、
簡略化することで誤解を与えるのも問題ですし、執筆のハードルが非常に高い内容です。

私の解説では言葉足らずだったり、解釈が異なったりということもあるはずですが、
よくある入門書籍ではあまり触れない部分を、実務者の目線で解説します。

また、以前の内容から、論理の二重否定や消極的主張を利用していきますので、
まだ読んでいない方はぜひご覧ください。




帰無仮説と偶然

以前の帰無仮説・対立仮説の解説では、
 本来の主張を帰無仮説とし、わざとそれを否定する対立仮説を立てて争わせる
という説明を行いました。

~当時の内容~
本来の主張:「カラスは黒である」と言いたい
帰無仮説:カラスは黒である  ⇔  対立仮説:カラスは黒ではない

実験結果:カラスを10羽捕獲したところ、黒が9羽、白が1羽であった
ロジック:対立仮説を棄却したほうが妥当

結論:カラスは黒ではないとは言えない(対立仮説を棄却する)

この説明は、帰無仮説・対立仮説の導出には重要ですが、誤解を生む可能性があります。
それは、「本来の主張と帰無仮説は同じベクトルである」という点です。

帰無仮説を支持したところで、事実が「無に帰す」結論にしかなりません。
そのため帰無仮説は、これまでの慣例や共通認識に従ったり、差がないことを設定します
いわば、「当たり前」の事実を主張するということです。

もう少し難しい言い方をすると、
全ての事象は独立系である(理由・要因がない限り、事象は偶然の範囲内で不変である)
ことを帰無仮説とします。

多少結果がブレても、大枠で見たら変化はない(前提認識のまま)ということです。

例えば薬の有効性を調べたいなら、
「よっぽどのものでないと有効性は存在しない」という前提から、
有効性が『ない』ことを帰無仮説とします。

前回の解説でも、カラスは黒という共通認識から、『カラスは黒い』と設定しました。

ロジックとしては、何もしなければ既知の状態のままを表す帰無仮説を設定し、
それに対して対立仮説を設定する、という流れです。

対立仮説を棄却しても、帰無仮説は「当たり前の事実」でしかないので、
【少なくとも対立仮説の内容が正しいとは言えない】という消極的な主張となります。

このような、事象の独立系という考え方が、有意確率を考えるうえで重要となります。

・・・どうしてこんなややこしいことを長々と書く必要があるのか。
それは、帰無仮説・対立仮説が「偶然」の確率を考えるために成立するからです。
前回も偶然・必然の定義を行いましたが、改めてここでも。

偶然とは:独立系での事象における範囲内でのばらつき
    →事象自身がばらつきで不安定さを持つが、その範囲内でデータがぶれる

運とは神様や仏様などのスピリチュアル、もしくは見えない外的要因による影響
    →事象以外に何らかの力が働いたと考える

もう少しかみ砕くなら、「偶然」と「運」は全く別物である、と考えるということです。
「運がよかった」というのは本当に「神様に愛された」もしくは「何か別の原因がある」と解釈します。

これを踏まえたうえで、前回も利用したソーシャルゲームでの例を考えてみましょう。


偶然か?外部要因による必然か?

前回も活用した、ソーシャルゲームでのガチャについて考えてみます。
前回、SSR(当たり)の確率が1%のガチャを100回回したときの確率をエクセルで求めました。

今回はこちらを応用します。

Aさんは、この例と同じように100回ガチャを回したところ、
SSRがなんと10回も出ました。

Aさんは喜びましたが、すぐに不安になりました。
「こんなに当たるなんて!人生の運を使い切ったんじゃないか?
 日頃の行いがいいからか?それとも運営が何か操作した(バグ)のか?」

前回エクセルで確率を求めたので、その結果を利用します。

成功確率1%の試行を100回やったとき、成功回数10回(k=10)の確率を見ると、すぐ分かります。

7.00604E-08・・・数学的に表すと、$${7.01\times10^{-8}}$$。

つまり、0.00000701%です。
「事実は小説より奇なり」なんて言葉がありますから、
この確率を、偶然に引いたことも否定はできません。

ですが、実際にこんな状況になったら、Aさんのように偶然と考えるよりも理由を探しませんか?

理由の是非はともあれ、予測確率に対して得られた結果があまりにもレア(極端)ならば、要因が何かしらあったと考えたくなります。

すなわち、結論として

SSRが10回も出た(0.00000701%を引いた)のは、
少なくとも何らかの理由による必然だろう。
じゃないと説明がつかないくらい極端だ。

ガチャの結果からこのような結論を導き出す方が自然です。


確率に対する印象の違い

さて、先の例では成功確率1%のガチャを100回回してSSRが10回出る・・・0.00000701%の結果を引き当てました。

この確率に対する印象が偶然というには厳しい(外的要因や理由がある)
のはご理解いただけるかと思います。

では、Aさんのことをつゆ知らず、
同じように100回ガチャを回したBさんを見てみましょう。

BさんはガチャでSSRを3回引き当てました。
この確率を求めるため、先ほどのエクセルの結果を見直して、
k=3の結果を見てみましょう。

よって、6.1%の確率を引き当てたことになります。

あなたはこの確率を、運営のバグや神様のおかげだと考えるでしょうか?
それとも、「100回も回してるんだから、偶然3回ぐらい当たるのもあるんじゃない?」と思いますか?

大事なのは、実際に得られた結果(ガチャのSSRの回数)よりも
結果を得られる確率に対する印象です。

起きた事象の確率が小さければ小さいほど、
「ただの偶然だ」と考えるにはレアな結果で、「何か原因がある」と考えるほうが矛盾が少ないです。

確率がそこまで小さくないと、「ただの偶然だ」「別にこういうこともあるよね」と考えていませんか?

このように、予測される確率分布に従うと仮定したとき、偶然にしてはあまりにも稀な結果が出てしまう確率が有意確率(p値)といえます。
定義を振り返ってみましょう。

有意確率とは、帰無仮説の下で実際にデータから計算された統計量よりも極端な(仮説に反する)統計量が観測される確率をいいます。

帰無仮説とは、「事象が独立系である」という前提から立てられるため、
「得られる結果は他の要因の影響を受けず、偶然得られた結果である」という仮説です。

今回の例では、当たりの確率は1%、当たりと外れの2択しかないため二項分布に従うという仮定に基づき

確率は外的要因を受けない=二項分布の確率は正しい

という帰無仮説になります。
もう少しかみ砕くなら、
二項分布を仮定して求められる確率がとても低ければ、その結果は現れる確率は非常に低い
ともいえます。

事象を確率分布に仮定し、それに従うことを帰無仮説としているわけですね。
その上で、AさんとBさんの結果を確認してみましょう。

どちらにせよ、あくまで確率に対する印象を述べているだけですから、
どちらも間違いとは言えません。

ただ、外的要因があるか(帰無仮説に従わないか)と考えると、
Aさんの結果だけを見れば

「外的要因がありそう(対立仮説の方が矛盾が少ない)」

と考えるべきですし、

Bさんの結果だけを見れば

「なんとも言えない(少なくとも対立仮説だけを信頼できない)
 =現状(帰無仮説)維持というほかない」

という結論になります。


どこからが極端なのか?

さて、確率モデル(分布)を仮定し、結果がどれくらい稀か?というのが有意確率と説明しました。
よって、

有意確率(p値)は小さいほど、
帰無仮説を支持するには矛盾が強く、対立仮説を支持した方がよい

ということになります。

・・・では、どこまで有意確率は小さければ対立仮説の支持は有効と言われるのでしょうか。

この問いに対する答えとして、一般的には5%や1%が設定されます
有意な差が生じるための要因があると判断する水準」なので、有意水準です。

p値が0.05を下回れば対立仮説を支持する

という統計的仮説検定の一般操作はここから来ています。

これはすなわち、

データから事象を読み取り推測するとき、
得られたデータは独立系という前提(帰無仮説)を棄却できるくらい極端なデータなのか?

を考えているのです。

そのため、
p値が有意水準未満でも対立仮説(=差がある)の証明ではないのです。

偶然にしてはあまりにも稀だから差があると考えて論述しているだけなのです。

ちなみに、統計検定の試験において手計算で求める検定推定量は、
標準確率分布へデータを標準化したものです。

渡される分布表は、確率密度関数と確率の微分方程式の解の一覧であり、
有意水準の位置で微分したときの値と比較することで、検定を行います。

p値を求めるのと検定推定量を求めるのは全然違うようにも思えますが、
微分と積分の動作をソフトウェアに任せるか、一覧表で読み取るかの違いしかありません。


有意水準・有意確率の落とし穴

さて、ここまでじっくりと有意確率について書いてきました。
疲れてきているかもしれませんが、もう少しだけお付き合いください。

有意確率はあくまで「前提条件(独立系)に沿う結果である確率」であり、
この確率から結論を導くために帰無仮説や対立仮説が立てられる

という流れは理解できましたでしょうか。

ところで、実際のデータ解析では全く逆で、
帰無仮説と対立仮説を設定してからp値を求めることが多いです。

なぜなら、その方が説明しやすいからです。
この記事の文章のようなことを、まるごと報告書に載せるわけにもいきませんからね。

報告書を出す際に、

「p値が小さいので、帰無仮説より対立仮説の方が支持できますから有意差がありそうに思います。でも本当に差があることの証明ではないですし、そもそも確率なので全然変な結果が今後出る可能性もあります。というか、有意確率が大きいからと言って差がないとも言えないですし、この実験結果から考えるに・・・」

めんどくさいエンジニアがよく言いそうな文量

なんて長々と話はしていられないです。
何が言いたいの?って言われますし、
「正しくないリスクがある」と警告し続けても報告された側は困るだけですよね。

しかし、分析者側が

有意確率を求めて有意水準より下回っているかを確認し、
下回っていたら対立仮説を支持する

という動作だけを行うことは、非常に危険です。

具体例を出してみましょう。
先ほどは、ガチャを100回回したAさん・Bさんの結果を考えてみました。
これを、ガチャの回す回数を10回にしたらどうでしょうか?

試行数を100から10に変えるだけなので、
前編で出したエクセルの確率の列を以下のように変えるだけで求めることが出来ます。

=BINOM.DIST([成功回数k],10,0.01,FALSE)

当然ですが、成功回数11以降の行では「10回ガチャを回して11回SSRが出る」という意味の分からない状況になるためエラーが出ます。

この結果を見ると、
対立仮説を支持する(=結果に何らかの外部要因がある)有意水準を0.05としたとき、
SSRが2回(確率0.004)出たら偶然とは言えないとなります。

ということで、このSSRが1%で出るガチャを10回引くという事象においては、
SSRが1回出た場合は偶然である(帰無仮説を支持)と判断し、
2回以上出た場合は運が良かった(対立仮説を支持)と判断されます。

本当にそれで良いのでしょうか?

確かに10回ガチャを引いて1回しかSSRが出ない確率は9.1%。
1回も出ない確率は100-9.1=90.9%です。
2回出たのは何か有意な要因があるかもしれません。

ですが、10回試行したときの1回と2回の差は、
100回ガチャを回したときより1回の差よりも結論を大きく変えてしまいます。

データが少なければ少ないほど、僅かな結果の違いで結論が変わってしまいます
「何かしらの外部要因がある」と結論づけるのが難しくなります。

しかし、データ数が多ければ多いほど、有意確率(p値)は下がりやすくなります
excelやpythonでシミュレーションすると結構簡単に分かります。

そもそも、なぜ有意水準は0.05や0.01が使われるのでしょうか。

一説によると、統計学の中でも特に有名なフィッシャーさんが、
「0.05って良いよね」と言い出したからだそうです。

0.05は正規分布で考えたとき楽に求められるメリットこそありますが、この数値に厳密な意味はありません。

ですから、
p値が0.051なら「惜しいけど残念!対立仮説が棄却されます!」でもないですし、
0.049なら「ギリギリセーフ!対立仮説を支持して有意差ありです!」とはならないのです。


有意確率・有意水準に関する議論と今後

余談として、現在巻き起こっている議論を簡単に書きます。

有意水準0.05という境界線にほとんど意味がないことは前述の通りです。

そのため、
 1, 今まで0.05でやってきたから変えたくない派閥
 2, 何の意味もない0.05よりもっと精度上げて0.005にするべき派閥
 3, もうそもそもp値が信頼できない派閥

みたいな議論がここ10年くらい巻き起こっています。

1は実務者側でよく聞く話ですね。
 有効数字の問題(何桁まで表示するべきか)が一番多いかもしれません。
 例:日本心理学学会、執筆・投稿の手びきでは小数点以下2桁もしくは3桁と指定

2は2017年7月に投稿された論文から。分野によっては0.005くらいにしないと信頼性に欠けるという主張ですね。
 一方でこの翌々月には「安易な水準の厳密化は偽陰性を招く」という論文も提出されました。

3は社会心理学系の学術誌BASPの発表です。
 なんと「再現性に欠けるからうちに掲載する論文ではp値を使わないでね」という内容。

昨今では、ビッグデータから膨大なデータ数をコンピューターの力で分析したり、
ベイズ統計などの因果分析により、単純な確率分布への近似以外の推定も行われたりします。

有意確率だけで仮説の支持・棄却を判断するのは非常に危険で、
データの取り方やデータ数、有意水準の設定、結論への導き方、主張を精査していく必要があります。

そのような中で、有意水準を超えた/超えないだけで結論を出すのは、難しいよねという話です。

私自身も理解がまだまだ甘く、専門家には全く勝てない状況ではあります。
それでも、統計学を勉強し、意思決定支援をする者として心がけていることがあります。

仮説検定の結果を鵜呑みにして、有意差・要因があると考えるだけでなく、
 
 ・実験計画や方法は正しかったか?
 ・サンプリング方法の非健全性やバイアスは排除できているか?
 ・仮に仮説検定の結果が正しくない危険性(第一種過誤、第二種過誤)を加味し、
 その後の活動にバックアップを用意できるか?

など、視点を広げていくのが、統計解析を行う者に求められると考えます。

もし有意確率が境界値(有意水準)付近・・・およそ0.10~0.01になりそうであれば、
結論で悩むよりデータ数を増やすなり、実験計画を再試行した方が結局早いというのが、
今まで実務で使ってきた私の持論です。

個人的には、確証を持つなら最低でもp<0.005というのが一番しっくりくるかな。。。

もちろん、統計的仮説検定は簡単な計算で意思決定に利用できますが、
前提を理解していないと思わぬ落とし穴にもなる、というお話でした。


終わりに

お疲れ様でした。

統計学の中でも特に解釈が難しく、人によって書き方が異なり、それによっていらぬ議論も生んでしまう内容です。

なるべく親しみを持ちつつ誤解の生まないような説明をしたつもりですが、
結局は統計を勉強し、実際にデータ解析を行う皆さんの理解・リテラシーにかかっている部分が大いにあります。

様々な文献を読み、「こういう解釈・説明の仕方がある」ということを考えつつ、
有意確率の落とし穴と実践を重ねて理解を深める一助と頂ければ幸いです。


参考文献

・統計学入門(基礎統計学Ⅰ)、東京大学教養学部統計学教室編集

・AMERICAN STATISTICAL ASSOCIATION RELEASES STATEMENT ON STATISTICAL SIGNIFICANCE AND P-VALUES
https://www.amstat.org/asa/files/pdfs/P-ValueStatement.pdf

・統計的有意性とP値に関するASA声明、日本計量生物学会国際担当理事 佐藤 俊哉 著

https://www.amstat.org/asa/files/pdfs/P-ValueStatement.pdf

・日本心理学会、執筆・投稿の手引き(2022年版)
https://psych.or.jp/wp-content/uploads/2019/02/The-JPA-Publication-Manual.pdf

・Redefine statistical significance

・Justify Your Alpha

・nature、Psychology journal bans P values




ここまでお読みいただき、ありがとうございました!
この記事が少しでも参考になりましたら「スキ」を押していただけると幸いです!

これまでの記事はこちら!

株式会社分析屋について

弊社が作成を行いました分析レポートを、鎌倉市観光協会様HPに掲載いただきました。

ホームページはこちら。

noteでの会社紹介記事はこちら。

【データ分析で日本を豊かに】
分析屋はシステム分野・ライフサイエンス分野・マーケティング分野の知見を生かし、多種多様な分野の企業様のデータ分析のご支援をさせていただいております。 「あなたの問題解決をする」をモットーに、お客様の抱える課題にあわせた解析・分析手法を用いて、問題解決へのお手伝いをいたします!

【マーケティング】
マーケティング戦略上の目的に向けて、各種のデータ統合及び加工ならびにPDCAサイクル運用全般を支援や高度なデータ分析技術により複雑な課題解決に向けての分析サービスを提供いたします。

【システム】
アプリケーション開発やデータベース構築、WEBサイト構築、運用保守業務などお客様の問題やご要望に沿ってご支援いたします。

【ライフサイエンス】
機械学習や各種アルゴリズムなどの解析アルゴリズム開発サービスを提供いたします。過去には医療系のバイタルデータを扱った解析が主でしたが、今後はそれらで培った経験・技術を工業など他の分野の企業様の問題解決にも役立てていく方針です。

【SES】
SESサービスも行っております。


この記事が参加している募集