推測統計●●●●●

多重比較

Multiple Comparisons ・ たじゅうひかく

検定を繰り返すほど偽陽性が膨らむ問題と、その補正の考え方

✦ 30秒で試す — 航海5%でしか起きない偶然、何回試せば半々で起きる?20回のうち偽陽性が1つ以上出る確率は?予想してみる

概要

多重比較の問題とは、仮説検定を何度も繰り返すと、そのどこかで偽陽性(第一種の過誤)が起きる確率がどんどん膨らんでいく、という構造的な問題です。1回の検定で偽陽性が起きる確率を5%に抑えていても、独立な検定を20回行えば「少なくとも1回はどこかで偽陽性が出る」確率は約64%に達します。100回なら99%を超え、偽陽性はもはや「起きるかもしれない」ではなく「ほぼ確実に起きる」ものになります。

これは不正をしなくても自然に発生します。3群以上をペアごとに比較する、アンケートの多数の項目それぞれで群差を検定する、遺伝子発現データで数万の遺伝子を一斉に検定する、A/Bテストで多数の指標を同時に見る — 検定が複数になる場面はどこにでもあり、そのたびに「たまたま有意」を拾うリスクが積み上がります。

多重比較の補正とは、この膨張を制御するための手続きの総称です。何を「守るべき誤り率」とするかによって、Bonferroni 補正に代表される厳格な方式から、FDR(偽発見率)制御のような大規模データ向けの方式まで、複数の考え方があります。

なぜ生まれたか

検定の理論は元来「1つの仮説を1回検定する」ことを想定して作られており、有意水準5%という保証もその1回についてのものです。ところが20世紀半ば、農事試験や心理実験で分散分析が普及すると、「全体として差がある」と分かった後に「では具体的にどの群とどの群が違うのか」をペアごとに検定したくなる場面が頻発しました。5群あればペアは10組。素朴に10回検定すれば、全群に差がなくても4割の確率でどこかに「有意差」が現れてしまいます。この事後比較の必要に応えて、テューキーの方法やシェッフェの方法など、比較全体で誤り率を守る多重比較法が1950年代に整備されました。

さらに20世紀末、ゲノム解析の登場が問題のスケールを一変させます。数万の遺伝子を一斉に検定する状況では、全体で偽陽性ゼロを目指す従来型の補正は厳しすぎて、本物の発見までほぼすべて潰してしまいます。そこでベンジャミーニとホッホバーグは1995年、「偽陽性を1つも出さない」から「発見と報告したものの中の偽物の割合を制御する」へと守るべき対象を転換した FDR という基準を提案しました。探索の時代に合わせて誤り率の定義自体を作り直したこの発想は、現代の大規模データ解析の標準になっています。

詳細

偽陽性はどう膨らむか

有意水準5%の検定を、帰無仮説がすべて正しい(本当は何の差もない)状況で m 回、互いに独立に行うとします。1回の検定で偽陽性を出さない確率は0.95なので、m 回すべてで出さない確率は 0.95 の m 乗。したがって「少なくとも1回は偽陽性が出る確率」(ファミリーワイズエラー率、FWER)は 1 − 0.95^m で、m とともに急速に1へ近づきます。

100%50%0%少なくとも1回偽陽性が出る確率(FWER)補正なし: 1 − 0.95^m20回で約64%、60回で95%超Bonferroni 補正後: 5%以下を維持20406080検定の回数 m
検定回数とファミリーワイズエラー率 — 補正なしでは検定を重ねるほど「どこかで偽陽性」がほぼ確実になる

この現象を体感的に示した有名な実験に「死んだサケのfMRI」があります。死んだサケに写真を見せて脳活動を計測し、脳の数万ボクセルを無補正で検定したところ、複数の部位に「有意な活動」が検出されました。もちろん死んだサケの脳は活動していません。大量に検定すれば偽陽性は必ず出る — 補正の必要性を突きつけた、多重比較問題の象徴的なデモです。

FWER制御 — Bonferroni とその系譜

最も単純で保守的な補正が Bonferroni 補正です。m 回検定するなら、個々の検定の有意水準を α/m に下げます(あるいは同じことですが、各p値を m 倍してから α と比べます)。20回の検定なら各検定を0.25%水準で行う、という具合です。こうすると「どこか1つでも偽陽性が出る確率」全体が α 以下に抑えられます。検定間の依存関係を仮定しない完全に汎用な方法ですが、その分厳しすぎる傾向があり、検定数が多いと本物の差まで軒並み落としてしまいます。つまり検出力の犠牲が大きいのです。改良版のホルム法は、p値を小さい順に並べて段階的に緩めていく手続きで、同じFWER保証を保ちながら Bonferroni より検出力が高く、常にこちらを使ってよい上位互換です。分散分析の事後比較には、ペア比較という構造を利用してさらに効率の良いテューキーのHSD法が定番です。

FDR制御 — 探索の時代の誤り率

検定が数千・数万になる探索的解析では、「偽陽性ゼロ」の保証は目標として不適切です。そこで FDR(false discovery rate)は問いを変えます。「有意と報告したもののうち、偽物の割合を平均5%以下に抑える」— つまり100個の発見のうち5個程度の偽物は許容し、その代わり本物を大量に拾うという取引です。ベンジャミーニ・ホッホバーグ(BH)法は、m 個のp値を小さい順に並べ、k 番目のp値を「α × k/m」というスライドするしきい値と比べ、条件を満たす最大の k までをすべて発見とする簡潔な手続きで、これを実現します。ゲノム解析・大規模なA/Bテストなど「発見の候補リストを作り、後で個別に検証する」ワークフローでは、FDR制御が事実上の標準です。

BH法の保証には前提があります。p値どうしが独立であるか、「正の依存」(ある検定が有意寄りなら他も有意寄りになる、という向きの相関。PRDSと呼ばれる条件)である場合に FDR が α 以下に保たれます。遺伝子どうしのように依存の向きが読めない場合には、しきい値をさらに 1 + 1/2 + … + 1/m(m=20 なら約3.6)で割って厳しくするベンジャミーニ・イェクティエリ法が安全策です。FWERとFDRは優劣ではなく目的の違いで、少数の検定で結論を確定させたいならFWER、多数の候補から選別したいならFDR、と使い分けます。

下の部品は、ジェリービーンズ20色のそれぞれで「ニキビと関係があるか」を検定する思考実験です(有名な風刺漫画の題材)。本当はどの色も無関係なのに、20個の p 値を並べると、無補正の 0.05 の線の下にはしばしば1つか2つ落ちます。「100家族 一気に」で、無補正なら6割以上の家族で偽陽性が出ることを確かめたら、補正の線を Bonferroni と BH に切り替え、さらに「本当の効果を3つ混ぜる」で、Bonferroni が本物まで取りこぼし、BH が偽物の割合を抑えつつ本物を多く拾う様子を見比べてください。

⚡ 体験: 20回検定すれば、どれかは当たる
補正の線
10.10.010.0011e-41e-5p 値0.050.0025BH: 0.05×k/20ジェリービーンズの色 1〜20
本当は無関係偽陽性の発見本物の発見 / 選んだ補正の線
0 家族の集計無補正BonferroniBH
偽陽性が1つ以上出た家族———
発見に占める偽物の割合———
家族数0偽陽性の出た家族(いまの方法)—

20色のジェリービーンズそれぞれで「食べるとニキビが増えるか」を検定します。本当はどの色も無関係です。「1家族(20検定)」を押すと、20個の p 値が粒になって落ちてきます。

縦軸は p 値(対数目盛り、下ほど小さい)。粒は落ちたあと p の小さい順に並び替わる。線より下が「発見」(金の輪 = 本物、赤の輪 = 偽陽性)

p-hacking — 見えない多重比較

多重比較の最も厄介な形は、解析者自身に見えていないものです。「外れ値の除外基準を変えて再検定」「サブグループごとに検定して効いた層だけ報告」「有意になる指標が見つかるまで別の指標を試す」— これらは明示的に m 回の検定を並べていなくても、実質的に多数の比較から良い結果だけを選ぶ行為であり、p値ハッキング(p-hacking)と呼ばれます。報告されるのは1つのp値でも、その背後の探索空間全体が誤り率を膨らませているため、どんな補正式でも後からは直せません。対策は手続きの透明化です。仮説と解析計画を事前登録する、探索的解析と検証的解析を明確に分け、探索で見つけた仮説は新しいデータで検証する、行った比較の総数を正直に報告する。多重比較の補正式は道具にすぎず、本質は「自分がいくつの比較をしたのかを自覚し、それに見合った誤り率の管理をする」という規律にあります。

試問

効果が本当は無いのに、偶然「有意」と出てしまうことを偽陽性といいます。有意水準 5% の検定なら、1回あたりの偽陽性の確率は 5% です。

✦ 命題挑戦中

本当は何の関係もない仮説を、有意水準 5% で1つずつ(互いに独立に)検定していく。「少なくとも1つ偽陽性が出る確率」が 50% を超えるのは、およそ何回検定したときか — 数回か、十数回か、百回以上か、桁の見当をつけよ

およそ何回検定すると、偽陽性が1つ以上出る確率が 50% を超える?

2回