1. はじめに
IPW(Inverse Probability Weighting)とは
IPWは、観察データから因果効果を推定するための統計手法です。日本語では「逆確率重みづけ法」と呼ばれます。この手法は、傾向スコアを使って各サンプルに「重み」をつけることで、ランダム化比較試験のような公平な比較を実現します。
この記事で学べること
この記事では、IPWがどのように「重み」を調整することで仮想的な集団を作り出すのか、その補正ロジックを初心者向けに解説します。特に、ATE(集団全体での効果)とATT(処置群での効果)という2つの推定目的で、重みづけの方法がどう変わるのかを理解できるようになります。
2. なぜ「仮想的な集団」が必要なのか
観察データの問題点:交絡因子の存在
実務のデータ分析では、ランダム化されていない観察データを扱うことが多くあります。例えば、ロイヤル顧客向けキャンペーンの効果を測定する場合、キャンペーンに参加した顧客と参加しなかった顧客を単純に比較しても、正確な効果は測定できません。
なぜなら、キャンペーン参加者には元々購買意欲が高い人が多く含まれている可能性があるからです。このような背景要因を交絡因子と呼びます。
ランダム化比較試験との違い
ランダム化比較試験では、処置の割り当てが完全にランダムなので、処置群と対照群の背景特性は自動的に均等になります。しかし観察データでは、処置を受けるかどうかが個人の特性に依存してしまいます。
IPWで実現すること
IPWは、観察データに適切な重みをつけることで、「もしランダムに処置を割り当てたらどうなっていたか」という仮想的な状況を作り出します。これにより、交絡因子の影響を調整した因果効果の推定が可能になります。
3. 傾向スコア(PS)の基礎知識
傾向スコアとは何か
傾向スコアは、個人の背景特性から「その人が処置を受ける確率」を予測した値です。一般的にロジスティック回帰などの機械学習モデルで推定します。
処置を受ける確率を表す指標
傾向スコアは0から1の間の値をとり、各個人について1つの数値で表されます。年齢、性別、購買履歴など複数の背景特性を考慮した上で、処置を受ける確率を1つの指標に集約できるのが傾向スコアの利点です。
PSの値の意味
- PSが1に近い:背景特性から見て、処置を受ける可能性が非常に高い
- PSが0.5付近:処置を受けるかどうか、どちらともいえない
- PSが0に近い:背景特性から見て、処置を受ける可能性が非常に低い
例えば、ロイヤル顧客向けキャンペーンの場合、過去の購買頻度が高く、会員歴が長い人ほどPSが高くなります。
4. IPWの基本原理:重みづけの考え方
なぜ「逆数」を使うのか
IPWの核心は、傾向スコアの「逆数」を重みとして使う点にあります。これは一見不思議に思えるかもしれませんが、理にかなった仕組みです。
処置を受ける確率が高い人が実際に処置を受けても、それは「当然の結果」です。一方、処置を受ける確率が低いのに実際に処置を受けた人は「珍しいケース」となります。IPWでは、この珍しいケースにより大きな重みを与えることで、バランスを取ります。
重みが大きい人・小さい人の意味
処置群の場合:重み = 1/PS
- PSが小さい(処置を受けにくい人)→ 重みが大きい
- PSが大きい(処置を受けやすい人)→ 重みが小さい
対照群の場合:重み = 1/(1-PS)
- PSが大きい(処置を受けやすいのに受けなかった人)→ 重みが大きい
- PSが小さい(元々処置を受けにくい人)→ 重みが小さい
仮想的な集団を作るメカニズム
この重みづけによって、処置群と対照群の背景特性の分布が揃います。例えば、処置群に若い人が多く、対照群に年配の人が多い場合、重みづけ後は両群の年齢分布が近くなります。
結果として、「もしランダムに処置を割り当てたら」という仮想的な状況を作り出すことができるのです。
5. IPWの「重み」による補正ロジック
IPWは、分析の目的に応じて重みの計算方法を変えることで、異なる仮想集団を作り出します。ここでは代表的な2つのケースを見ていきましょう。
5-1. ATE:集団全体での効果を知りたい場合
目的と想定する仮想集団
ATEは「Average Treatment Effect」の略で、集団全体での平均的な処置効果を推定します。
想定する仮想集団は、「もし集団全体でランダムに処置を割り振ったら」という状況です。つまり、処置群・対照群の両方を調整して、全体として均一な背景特性を持つ集団を作り出します。
重みの計算式
- 処置群の重み:$\frac{1}{PS}$
- 対照群の重み:$\frac{1}{1-PS}$
補正の仕組み
この重みづけによって、以下のような補正が行われます。
処置群の補正:
- PSが大きい人(処置を受けやすい人)の重みを小さくする
- PSが小さい人(処置を受けにくい人)の重みを大きくする
対照群の補正:
- PSが小さい人(元々処置を受けにくい人)の重みを小さくする
- PSが大きい人(処置を受けやすいのに受けなかった人)の重みを大きくする
この結果、両群の背景特性が均等に揃い、公平な比較が可能になります。
5-2. ATT:処置群での効果を知りたい場合
目的と想定する仮想集団
ATTは「Average Treatment Effect on the Treated」の略で、実際に処置を受けた人たちでの平均的な処置効果を推定します。
想定する仮想集団は、処置群を基準として、対照群を「もし処置群の人たちが処置を受けなかったら」という仮想集団に作り替えるものです。
重みの計算式
- 処置群の重み:1(基準として固定)
- 対照群の重み:$\frac{PS}{1-PS}$
補正の仕組み
ATTでは処置群には何も調整を加えず、対照群のみを調整します。
処置群:
- すべての人の重みを1とする(そのまま)
- 処置群の背景特性が基準となる
対照群の補正:
- PSが大きい人(処置群に似ている人)の重みを大きくする
- PSが小さい人(処置群に似ていない人)の重みを小さくする
この操作により、重みづけ後の対照群は処置群と背景がそっくりな集団となり、「処置群の人たちが処置を受けなかった場合の仮想的な結果」を表現できます。
6. 具体例で理解する
ロイヤル顧客施策の効果測定
あるECサイトが、ロイヤル顧客向けに特別クーポンを配布したとします。この施策の効果を測定したいという状況を考えてみましょう。
データの状況:
- 処置群(クーポン受取者):購買頻度が高く、会員歴が長い人が多い
- 対照群(クーポン非受取者):購買頻度が低く、会員歴が短い人が多い
このまま2群を比較すると、元々の購買傾向の差なのか、クーポンの効果なのか判別できません。
ATEとATTの使い分け
ATEを使う場合:
「もし全顧客にランダムにクーポンを配ったら、平均的にどれくらいの効果があるか」を知りたいとき。新規顧客を含む全体への施策展開を検討する際に有用です。
ATTを使う場合:
「実際にクーポンを受け取ったロイヤル顧客において、クーポンの効果はどれくらいあったか」を知りたいとき。今回の施策対象者での実際の効果を評価したい場合に適しています。
重みづけ前後の比較
重みづけ前:
| グループ | 平均購買頻度 | 平均会員歴 |
|---|---|---|
| 処置群 | 月15回 | 3年 |
| 対照群 | 月5回 | 1年 |
この状態では背景特性に大きな差があり、公平な比較ができません。
ATTの重みづけ後:
| グループ | 平均購買頻度 | 平均会員歴 |
|---|---|---|
| 処置群 | 月15回 | 3年 |
| 対照群(重みづけ後) | 月14回 | 2.8年 |
対照群の背景特性が処置群に近づき、より公平な比較が可能になりました。
7. まとめ
IPWで実現できること
IPWは傾向スコアの逆数を重みとして使うことで、観察データから因果効果を推定する強力な手法です。重みの計算式を変えることで、ATE(集団全体での効果)とATT(処置群での効果)という異なる推定目的に対応できます。
ATEの特徴:
- 処置群・対照群の両方を調整
- 集団全体での平均的な効果を推定
- 施策の全体展開を検討する際に有用
ATTの特徴:
- 対照群のみを調整し、処置群は基準として固定
- 実際の処置対象者での効果を推定
- 実施済み施策の評価に適している