読了: Buelen, Burger, & van den Brakel (2018) 非確率標本で機械学習して母集団特性を当てますコンテスト

Buelens, B., Burger, J., & van den Brakel (2018) Comparing Inference Methods for Non-probability Samples. International Statistical Review, 86(2).

 仕事の都合で調べ物をしていて読んだ奴。非確率標本に基づいて母集団特性をモデルベース推測するのに機械学習を使い、手法間で成績を比較しました、という話。

1. イントロダクション
 […] というわけで、本論文では選択バイアスを修正するための既存の推論手法についてレビューし、非確率標本における誤表現を扱うための方法として機械学習を取り入れることを推奨する。具体的には、K最近隣法、回帰木、ANN、SVMである。

2. 文献レビュー
 [約3ページにわたってひたすら文章が続く。デザインベース推論とモデルベース推論の違いとか。非確率標本についてのレビューとしては、AAPORタスクフォースの奴(Baker et al., 2010 POQ, Baker et al, 2013 J.Surv.Stat.Methods; Japec et al. 2015 POQ)と、Pfeffermann et al.(2015 J.Surv.Stat.Methods)の公的統計とビッグデータについてのレビューがお勧めだそうである]

3. 非確率抽出
3.1 データソースの勃興
[任意参加型調査パネルとビッグデータが増えてきたという話]

3.2 正確性
 統計量の分散とバイアスは、確率抽出ならばデザインベースで評価するわけだけど、非確率データでは標本抽出分散って概念に意味がなくなり、分散はモデルから導出することになるし、ビッグデータだと分散はどうでもよくなる。
 バイアスには選択バイアスと測定バイアスがあるけれど、ビッグデータというのはたいてい行動の直接測定なので調査票由来のバイアスはない。むしろ選択バイアスが深刻である。

3.3 実世界シミュレーション
 これから使うデータの説明。
 Netherlands Vehicle Authority [オランダの自動車免許発行機関らしい] のDutch Online Kilometer Registrationというデータベースを使う。自動車の走行距離がわかる。自家用車670万台を目標母集団にする。新車、思い車、ディーゼル車、オーナーが若いか中年、だと年間走行距離が長い。
 5つの標本をつくる。サイズはすべて50000。(1)無作為標本。(2)1999年以降に登録された車のみ。(3)… (5)2008年以降に登録された車のみ。どんどんバイアスがきつくなる。なお、こういう標本は実際によくある。補助変数もいろいろ用意する(登録年、車の重さ、燃料タイプ、オーナーの年齢)。
 以下では母集団推定をやりますが、それぞれの手法につき反復数100のノンパラ・ブートストラップをやって手法の不確実性を測ります。

4. 予測手法
4.1 フレームワーク
 母集団サイズを\(N\)とする。母集団の個体\(i\)の変数\(Y\)の値を\(y_i\)とする。関心ある量は\(G_Y = G(y_i)\)である。[\(G_Y = G(\{y_i\})\)の誤記かな?]
 母集団を標本\(S\)と残り\(R\)に分ける。\(S\)の個体の\(y_i\)は既知である。補助変数を\(X\)とする。

 予測的推論というのはこういう風に書ける。$$ \hat{G}_Y = G( \{y_i\}_{i \in S} \cup \{\hat{y}_i\}_{i \in R}) $$ $$ \hat{y}_i = F(x_i, \hat{\beta}) \ \mathrm{for} \ i \in R $$ $$ \hat{\beta} = P_F(x_i, y_i) \ \mathrm{for} \ i \in S$$ [おおお? この書き方だと、\(R\)の全個体で\(x_i\)が既知ってのが前提になってんのね。非確率標本の場合、実際には母集団の\(x_i\)の周辺分布しかわからないカリブレーション的場面も多いけど、ここでは母集団を通じた補助変数の完全な観察が前提となっているわけだ。しれっと問題を狭めているね]

 \(F\)はデータに対して不適切かもしれないし間違った仮定を置いているかもしれない。\(F\)がカンペキでもパラメータ推定に誤差がある。どっちの誤差も\(\hat{G}_Y\)に影響する。アルゴリズム的手法の多くは分析的に表現できないけど、誤差はブートストラップで評価できる。
 というわけで、あるブートストラップ標本\(b\)で\(\hat{\beta}^{(b)}, \hat{y}_i^{(b)}, \hat{G}_Y^{(b)}\)を得たとしよう。こう書ける。$$ MSE(\hat{G}_Y) = \frac{1}{B} \sum_{b=1}^B (\hat{G}_Y^{(b)} – G_Y)^2 = Bias(\hat{G}_Y)^2 + Var(\hat{G}_Y) $$ $$\hat{G}_Y^* = \frac{1}{B} \sum_{b=1}^B \hat{G}_Y^{(b)}$$ $$ Bias(\hat{G}_Y) = \hat{G}^*_Y – G_Y $$ $$ Var(\hat{G}_Y) = \frac{1}{B} \sum_{b=1}^B (\hat{G}_Y^{(b)} – \hat{G}_Y^*)^2 $$ 以下では $$ RRMSE(\hat{G}_Y) = \frac{\sqrt{MSE(\hat{G}_Y)}}{\hat{G}_Y} $$ を評価する。

 ところで、今回はちがうけど、測定誤差のモデリングが必要になることもある。よくあるのは $$ y_i = a_i \theta_i + b_i + e_i $$ という線形モデル。これと選択モデルの同時推定というのが今後の課題のひとつである。

4.2 予測手法
 大変ながらくお待たせいたしました。お待たせしすぎたかもしれません。[←世代がわかる…]
 選手入場です!

  • 標本平均(SAM)。$$ \hat{y}_j = \frac{1}{n} \sum_{i \in S} y_i $$
  • 擬似デザインベース推定(PDB)。事後層別、カリブレーション、一般化回帰などが使われている。ここでは補助変数をひとつ使った事後層別とする。層\(h\)について$$ \hat{y}_h = \frac{1}{n_h} \sum_{i \in H \cap S} y_i $$ を求め、\(R\)のその層の個体に \( \hat{y}_j = \bar{y_h} \) を埋めるわけね。もし\(G_Y\)が合計なら \(\hat{G}_Y = \sum_h N_h \bar{y}_h \)となる。\(w_i = N_h/n_h\)として\( \hat{G}_Y = \sum_{i \in S} w_i y_i\)と書いてもよい。
  • 一般化線形モデル(GLM)。$$ g(E(Y_i)) = \beta x_i $$ というモデルを組んで(\(g(\cdot)\)はリンク関数ね)、$$ \hat{y}_j = g^{-1}(\hat{\beta} x_j) $$ とする。
  • 最近隣法(KNN)。\(X\)をうまいこと選び、距離メトリックをうまいこと選び(重みつきユークリッド距離を使うことが多い)、\(k\)をうまいこと選ぶ。で、個体\(j\)の最近隣にある\(S\)の\(k\)個の個体\(A_j\)を決めて $$ \hat{y}_j = \frac{1}{k} \sum_{a \in A_j} y_a $$ を埋める。
  • 人工ニューラルネットワーク(ANN)。ここでは、隠れ層1、バックプロパゲーションで学習する。
  • 回帰木(RTR)。[…説明。メモ略…] 実は回帰木と擬似デザインベース手法とはちょっと似ているところがある。回帰木の葉の集合を事後層と捉えてみよう。事後層は分析者、葉の集合はアルゴリズムが決めているけれど、要は、予測値というのは層の標本平均であり、層間分散を最大化したいわけである。
     [面白いけど、ちょっと表層的な比較だという気がする。擬似デザインベースアプローチでは目的変数ではなく標本包含に注目する。事後層を選択する際には、母集団の個体の標本包含確率が層間で異なるかどうかに注目する。目的変数の層間分散を最大化しようとは思っていない]
  • サポート・ベクター・マシン(SVM)。\(x\)の高次空間への投影を\(\rho(x)\)として、$$ y = b + w \cdot \rho(x)$$ というモデルを組んで…[説明が意外に長く続く。面倒なのでスキップ]

4.3 最適化
 [モデル学習についての細かい説明。スキップ]
 [ちゃんと読んでないけど、結果のチャートをみるに、シミュレーションで動かしているのはおそらく以下の3つだ。手法(7種類)、標本(5種類)、共変量(2種類。登録年のみ、重量・燃料タイプ・オーナー年齢)]

5. シミュレーションの結果
 RRMSEをみる。標本のバイアスがきつくなるほど、RRMSEは当然高くなるんだけど、それを標本平均と比べましょうというのが趣旨である。
 共変量が登録年の場合、SVMがもっとも善戦した[おっとー。意外な選手が勝ったね。きっと年間走行距離と登録年との関係が非線形なのだろう。でもブートストラップ分布の分散が妙に大きいのが怖いなあ…]。重量・燃料タイプ・オーナー年齢の場合、標本平均以外のどの手法も同じくらいに悪い。[…中略…]
 というわけで、このケーススタディではSVMが優れていた。

6. 結論
 [略]
————
 ふうん…

 プロの研究者の方による研究に対して失礼かもしれないけど、こういう研究って、いまいち腑に落ちないんですよね。
 モデルベースの母集団特性推測において、各モデルの学習の際に目指されているのは、非確率標本における目的変数と予測値とのフィッティングである(具体的になにを最適化しているかは別にして)。そこには、標本においてうまくフィッティングすれば、母集団においてもそうなるだろうという前提がある。この前提の正しさ、つまり選択メカニズムの無視可能性は、主に共変量によって決まるのであって、モデル学習の問題ではない。
 そこまではわかりますよ。でも、分析者が本当にやりたいことは個体レベルの予測ではない。母集団特性の推測だ。そのために目指すべきは、母集団において目的変数と予測値がフィットしていることではなく、予測誤差の母平均がゼロになり、予測誤差と標本包含確率の母相関がゼロになることなのだ。つまり、モデルベースの母集団特性推測では、モデル学習の際に目指していることと、分析者が本当に目指していることが違うのである。
 そういう課題を設定してモデルをシミュレーションで比較したとして、そこから得られる示唆にはどこまで一般化可能性があるの? いわば、どの選手も採点基準を知らずに試合しているわけじゃないですか。ある試合で勝った選手であっても、その採点基準で勝つのを目指して勝ったわけじゃないから、他の試合ではぼろ負けするんじゃない? という疑問がある。うーん、なんといえばいいんだろうか。女子障害物競争の出場選手を、おっぱいがどれだけ綺麗に揺れていたかという観点から採点しているような気持ち悪さ、というか…[← 比喩ににじみ出る品性]