PsyMeasureFDR

PsyMeasure · 統計ラボ

偽発見率(FDR)シミュレーター

無料の多重検定シミュレーターで Bonferroni、Holm、Benjamini–Hochberg を比較。11 手法の偽発見率(FDR)、家族内誤り率(FWER)、検出力を実験で確かめられます。

有意な結果のうち、どれだけが単なるノイズでしょうか。すべての手法に同じ模擬実験を使い、偽発見と真の効果の見逃しのトレードオフを調べます。

結果を比較

開始できます

シミュレーションを見る

各タイルは、模擬実験の中の1つの検定です。色は真の状態を、印は手法の判定を示します。

実行後、ここに結果が表示されます。

色 = 真の効果:負なし正
明るさ:この標本で効果がどれだけ強く現れたか(|z|)
タイルの並び:

同じ実験を手法ごとに見る

多数の実験を一覧で見る

各行が1回の実験全体です。左側が真の効果、右側がノイズです。左側の明るいタイルは検出された効果、右側の黄色いタイルは偽発見です。行を選ぶと、上で詳しく確認できます。

偽発見率 (FDR)

発見のうち誤りが占める割合の平均。発見がない実験はゼロとして数えます。

統計的検出力

検出できた真の効果の割合。高いほど見逃しが少なくなります。

ファミリーワイズ誤差率 (FWER)

偽発見が1件以上ある実験の割合。

目標は手法に応じてFDRまたはFWERに適用され、検出力には適用されません。シミュレーション推定値は理論値の周辺で変動します。

詳細な結果

完了した実験全体の平均。FP=偽発見、FN=見逃した真の効果。

詳細な結果
手法FDR検出力FWER平均FP平均FN
p値の由来

帰無仮説のp値はほぼ一様に分布します。真の効果のp値はゼロに近づく傾向があります。各群は別々に正規化し、空の群には棒を表示しません。

帰無仮説(ノイズ)真の効果

このシミュレーションの前提

各実験には、互いに独立した両側の1標本z検定(分散既知)が含まれます。帰無仮説では Z ~ N(0, 1)、真の効果では Z ~ N(d√n, 1) を用います。真の効果の数は整数に丸めます。このモデルは、検定間の相関、t検定、任意停止、出版バイアスを再現しません。

これらはモンテカルロ推定値であり、1回の実験に対する保証ではありません。2,000回の反復でFWERの推定値が5%なら、標準誤差は約0.5パーセントポイントです。FDRは実験ごとの偽発見割合の平均であり、全実験で集計した偽発見数を全発見数で割ったものではありません。

FDR / FWER

多重比較:FDRとFWER

多くの仮説を検定すると偽陽性の機会が増えます。補正は有意と判断する閾値を変えます。誤りの制御と真の効果を検出する力の両方を比べる必要があります。

多重検定に補正が必要な理由

独立した真の帰無仮説が20個あり、α = 0.05なら、偽陽性が1件以上生じる確率は 1 − (1 − 0.05)²⁰ ≈ 64% です。偽陽性の期待件数は 20 × 0.05 = 1 です。前者は確率、後者は件数で、異なる量です。

偽発見率とは?

FDR = E[V / max(R, 1)]。Vは偽発見数、Rは発見総数です。5%のFDR目標は、手法の前提が成り立つとき、反復実験を通じたこの割合の平均を制御します。個々の有意な結果が偽である確率が5%という意味ではありません。

FWERとの違いは?

FWER = P(V ≥ 1):一群の検定で偽発見が1件でも生じる確率です。BonferroniとHolmはFWER、Benjamini–HochbergはFDRを目標にします。FWERを制御すればFDRにも上限を与えますが、真の効果の検出数が少なくなりがちです。

計算例:BonferroniとBH

小さい順に並べた5つのp値 0.001、0.008、0.039、0.041、0.300 を考え、α = q = 0.05 とします。Bonferroniは 0.05 / 5 = 0.01 を使い、最初の2つを棄却します。BHでは順位ごとに 0.01、0.02、0.03、0.04、0.05 と比較します。条件を満たす最大順位は2なので、BHも最初の2つを棄却します。最後のp値が0.045ならBHは5つすべてを棄却します。最初に不合格となる順位ではなく、条件を満たす最大順位を使います。

11種類の補正方法を比較

補正なし

p < α のとき各帰無仮説を棄却します。検定群全体の誤り率は制御しません。偽陽性の蓄積を見るための基準になります。

Bonferroni

Bonferroniは p < α/m で棄却します。妥当なp値なら任意の依存構造でFWERを制御しますが、検定が多いと真の効果を見逃すことがあります。

Holm

p値を小さい順に並べます。順位rを α/(m−r+1) と比較し、最初に条件を満たさなかった時点で止めます。Holmは任意の依存構造でFWERを制御し、Bonferroniが棄却する仮説はすべて棄却します。

Šidák

単一の閾値 1−(1−α)^(1/m) を使います。Šidákは独立した検定でFWERを制御し、Bonferroniよりわずかに保守性が低くなります。

Holm–Šidák

Holmの逐次的な手順に閾値 1−(1−α)^(1/(m−r+1)) を適用します。このシミュレーションでは検定は独立です。この手法が任意の依存構造に対応すると考えないでください。

Hochberg

p(r) ≤ α/(m−r+1) を満たす最大順位rを探し、rまでのすべてを棄却します。Hochbergは独立性または適切な正の依存条件のもとでFWERを制御します。

Hommel

HommelはSimes検定に基づく閉検定手順を使います。独立性またはSimesの不等式が成り立つ条件でFWERを制御し、検出力はHochberg以上ですが、計算負荷は高くなります。

Benjamini–Hochberg

p(r) ≤ (r/m)q を満たす最大順位rを探し、rまでのすべてを棄却します。Benjamini–Hochbergは独立した検定や特定の正の依存条件(PRDS)でFDRを制御します。

Benjamini–Yekutieli

qを Hm = Σ(1/k)、k = 1…m で割ってBHを実行します。Benjamini–Yekutieliは任意の依存構造でFDRを制御しますが、通常は検出力が下がります。

Storey型(探索的)

この簡略化した探索的な変種は、0.5を超えるp値の割合からπ₀を推定し、q/π̂₀でBHを実行します。完全なq値の実装ではなく、有限標本で普遍的なFDR保証もありません。

適応型BH(探索的)

この探索的な2段階の変種では、まずqでBHを実行し、m₀を max(1, m−R₁) と推定してから、q·m/m̂₀でBHを実行します。BKY手順ではなく、その有限標本保証があるとも主張しません。

よくある質問

自分のp値を入力するFDR計算機ですか?

これは教育用シミュレーターであり、p値をアップロードする計算機ではありません。真の状態が分かっている実験を生成し、偽発見と見逃しを観察できます。実際のデータだけからは、通常それらを知ることはできません。

q値が0.05なら偽陽性は必ず5%以下ですか?

いいえ。目標 q = 0.05 は、手法の前提のもとで、発見中の偽発見割合の期待値に関するものです。1回の実験ではその割合が大きくも小さくもなりえます。

どの補正方法を選べばよいですか?

研究計画でどの誤りを制御すべきか決めます。FWER法は検定群内で偽発見が1件でも生じるリスクを抑えます。FDR法は発見中の偽発見割合の平均を制御します。結果を見る前に依存性の前提を確認し、仮説の一群を定義してください。

出典と参考資料