elsur.jpn.org >

メイン > 論文:データ解析(2018-)

2018年10月17日 (水)

 たまたまみかけて、タイトルが気になってざっと目を通した論文。メモを読み返すと、途中で急速に興味を失っている様子がわかり、なんだかおかしい。

Markos, A., Iodice D'Enza, A., van de Velden, M. (2018) Beyond Tandem Analysis: Joint Dimension Reduction and Clustering in R. Journal of Statistical Software.

 ResearchGate(研究者向けSNS)に2018年のJSS誌の論文として公開されているんだけど、JSSのサイトには見当たらない。これから載るってことかしらん。
 知らなかったんだけど、Rにclustrdパッケージというのがあるそうな。その開発者による解説である。

 いわく、
 クラスタ分析するとき変数の数が多いと類似性の算出が難しくなる[次元の呪いのことであろう]。そこでいったん次元縮約してからクラスタ分析することが多い。一般的な方法は別々にやることである(タンデム・アプローチ)。
 次元縮約には主成分分析(PCA)とか対応分析(CA)とか多重対応分析(MCA)とかが使われる。Rのパッケージで言うとstatsのprcomp()やprincomp()とか、ade4, ca, CAvariants, FactoMineR, homalsとかである。
 FactoClassパッケージというのもある。まずPCAかCA/MCAで次元縮約し、次にユークリッド距離のWard法で階層クラスタリングしてクラスタ中心をつくり、それを初期値にしてk-meansする、というのを一気にやってくれる[←まじか...そんな風に手続き化しちゃっていいのかしらん...]。こういうのをLevart et al.(2000, 仏語の書籍)はconsolidationアプローチと呼んでいる。
 FactoMineRパッケージにも関数HCPC()があり、PCAないしCA/MCAの結果を階層クラスタリングしてくれる。
 なお、クラスタの評価にはfactoextraパッケージが便利だよ。

 さて。こういうタンデムアプローチは、前半戦と後半戦で違う基準の最適化をしているという問題点がある。そこで次元縮約とクラスタリングを同時にやる手法が提案されている。本論文ではいくつかの手法を紹介する。
 いずれの手法もあまり知られていない。たぶんソフトがなかったからだろう。clusterdパッケージというのを作ったので使うがいい。
 なお、手法の良し悪しについてはここでは扱わない[←えええええ]。量的データについてはTimmerman et al.(2010 Comp.Stat.&DataAnal.), カテゴリデータについてはvan de Velden et al.(2017 Psychometrika)をみればいいんじゃないすか。

 量的データの手法。
 以下、データ行列(中心化・標準化済み)を$\mathbf{X}$(サイズ$n \times Q$)とする。縮約空間の次元数を$d$とする。列が直交している負荷行列を$\mathbf{B}$(サイズ$Q \times d$)とする(つまり$\mathbf{B}^T \mathbf{B} = \mathbf{I}_d$)。クラス所属を表す二値行列を$\mathbf{Z}_K$(サイズ$n \times K$)とする。クラスタ重心行列を$\mathbf{G}$(サイズ$K \times d$)とする。

 タンデムアプローチの代替案を2つご紹介しよう。

 その1、reduced K-means (RKM) (De Soete & Carroll, 1994 Chap.)。
 これは射影追跡と等価である。クラスタへの分類と次元縮約を同時に行い、縮約空間におけるクラスタ間分散を最大化する。目的関数は
 $min \phi_{RKM}(\mathbf{B}, \mathbf{Z}_K, \mathbf{G}) = || \mathbf{X} - \mathbf{Z}_K \mathbf{GB}^T ||^2$
 ただし$||\cdot||$はフロベニウスノルム。[←ああ、難しい言葉を使いおって...行列の全要素を縦に並べたベクトルのユークリッドノルム、ってことでいいのだろうか]
 [...中略...]

 その2、Factorial K-means (FKM) (Vichi &l Kiers, 2001 unpub.)
 これはK-meansとPCAを同時にやって、縮約空間におけるクラスタ内分散を最小化する。目的関数は
 $min \phi_{FKM}(\mathbf{B}, \mathbf{Z}_K, \mathbf{G}) = || \mathbf{XB} - \mathbf{Z}_K \mathbf{G}||^2$
 [...中略...]

 この二つはどちらも次の手続きで解ける。

  1. $\mathbf{Z}_K$の初期値を決める(対象をランダムに分類する)。
  2. $B = \mathbf{X}^T((1-\alpha)\mathbf{P}-(1-2\alpha)\mathbf{I}) \mathbf{X}$を得る。$\alpha=0.5$だとRKM, $0$だとFKM, $1$だとタンデムになる。
  3. $\mathbf{XB}$をk-means法で分類して$\mathbf{Z}_K$を更新する。
  4. 2に戻り、$\mathbf{Z}_k$が変わらなくなるまで繰り返す。

 というわけで、$\alpha=0.25$とか$0.75$なんていう設定でもいいわけだ。
 実験によると、RKMはデータがデータの下位空間と直交な方向に分散を持っているときがだめで、多くの変数がクラスタ構造を反映しているときにうまくいく。[←よくわからん。上述のTimmmerman et al.(2010)というのを読まんとあかんらしい]

 カテゴリカルデータの手法。
 変数の数を$q$, $j$番目の変数のカテゴリ数を$p_j$とする。データ行列を$\mathbf{X}$のかわりに二値行列$\mathbf{Z} = [\mathbf{Z}_1, \ldots, \mathbf{Z}_q]$(サイズ$n \times Q$)とする。ただし$Q=\sum_j^q p_j$。[ダミー行列にするわけね。メンバーシップ行列$\mathbf{Z}_K$と記号が似ているけど意味が違うので注意]
 $j$番目の変数について、カテゴリをなんらか数量化した行列を$\mathbf{B}_j$(サイズ$p_j \times d$)とする(どのように標準化するかは手法によって異なる)。縦に並べて$\mathbf{B} = [\mathbf{B}_1^T, \ldots, \mathbf{B}_q^T]^T$(サイズ$Q \times d$)とする。
 データ行列$\mathbf{Z}$の列が縮約空間でとる座標を$\mathbf{Y}$(サイズ$n \times d$)とする。
 $\mathbf{Z}_K, \mathbf{G}$はさっきと同じ。
 
 3つの手法をご紹介しよう。

 その1、クラスタ対応分析
 発想としては、クラスタxカテゴリのクロス表$\mathbf{F} = \mathbf{Z}_K^T \mathbf{Z}$の対応分析である。クラスタ間分散を最大化するように、行(クラスタ)と列(カテゴリ)に数量を振る。しかしクラスタのメンバシップがわからないので、次の手順を採る。

  1. $\mathbf{Z}_K$の初期値を決める(対象をランダムに分類する)。
  2. $\mathbf{Z}_K^T \mathbf{Z}$を対応分析して$\mathbf{B}$を得る。
  3. 個人の座標をむりくり求める。$\mathbf{Y}=(1/q)(\mathbf{I} - \mathbf{11}^T/n)\mathbf{ZB}$。
  4. $\mathbf{Y}$をk-means法で分類して$\mathbf{Z}_K$を更新する。
  5. 2に戻り、$\mathbf{Z}_k$が変わらなくなるまで繰り返す。

なお視覚化の際には...[略]

 その2、MCA K-means。(Hwang et al, 2006 Psychometrika)
 最適化関数は...[省略]。手順で言うと、

  1. まず$\mathbf{Z}_K$の初期値を決める(対象をランダムに分類する)で、MCAをやって$\mathbf{Y}$を得てしまう。
  2. カテゴリ数量$\mathbf{B}$とクラスタ重心$\mathbf{G}$を得る。[式は省略]
  3. $\mathbf{Y}$を更新する。[式省略]
  4. $\mathbf{Y}$をk-meansして$\mathbf{Z}$を更新。
  5. 2に戻り、$\mathbf{Z}_k$が変わらなくなるまで繰り返す。

ステップ3で$n \times n$行列の固有値分解をするというのが弱点で、改善提案もある。[...中略]

 その3、i-FCB
 これは非対称CAとK-meansを繰り返すという手法で...[興味が薄れてきたのでスキップ]

 以上を搭載したclustrdパッケージの使い方と使用例をご紹介しよう。[スキップ]
 今後はファジークラスタリングに拡張したいと思ってます。云々。

 ... いやー、正直なところ、知らん手法の連続攻撃でびっくり、であった。いろんな手法があるものねえ。
 タンデム・クラスタリングの代替案といえば、真っ先に挙がるのは潜在クラスモデルでしょ? なぜ一言も言及がないの?と不思議に思うわけだが、そういう主旨の文章ではないのでありましょう。

読了:Markos, et al.(2018) 次元縮約とクラスタリングを同時にやりたいあなたのためのclustrdパッケージ

2018年10月16日 (火)

 仕事の都合で突然訪れた「ヒストグラムから確率分布をノンパラメトリック推定したい」祭り、時間がないのでそろそろ終了したいんだけど、Rizzi et al.(2016)が挙げていたpenalized composite linkモデルが良く理解できず、なんだか気持ち悪いので、大急ぎで目を通した。Rのungroupパッケージの元論文である。

Rizzi, S., Gampe, J., Eilers, P.H. (2015) Efficient Estimation of Smooth Distributions From Coarsely Grouped Data. American J. Epidemiology, 182(2), 138-147.

 イントロ... [省略]

 ヒストグラムの元データに出現しうる値の系列(たとえば年齢だったら, 0歳, 1歳, ...)を$a_1, \ldots, a_J$とし、その頻度の期待値を$\gamma_j$とする。なにを云ってるのかというと、値が$a_j$である確率を$p_j$とし、仮にサイズ$N$の標本があるならば、$\gamma_j = Np_j$である。
 $a_j$の頻度は平均$\gamma_j$のポアソン分布に従う。我々が推定したいのは$\mathbf{\gamma} = (\gamma_1, \ldots, \gamma_J)^T$である。ここまではいいっすね。

 問題は、我々が観察しているのが$a_j$それぞれの頻度ではなく、もっと粗いビンにおける頻度分布だという点である。
 ビンを$I$個、観察された頻度を$Y_1, \ldots, Y_I$とする。これもポアソン分布に従う。各ビンでの平均を$\mu_i$として
 $P(Y_i = y_i) = \mu_i^{y_i} \exp(-\mu_i) / y_i!$
である。
 $\mu_i$は$\gamma_j$をいくつかまとめたものだ、と考えて、$\mathbf{\mu} = (\mu_1, \ldots, \mu_I)^T$について
 $\mathbf{\mu} = C \mathbf{\gamma}$
としよう。$C$は$I \times J$の行列で、要素は1か0。ビン$I$がもとの$J$番目の値を含んでいるときにのみ、行$I$, 列$J$が1になる。
 なお、これを合成行列と呼び、こういうモデルを合成リンクモデルという。提唱者はThompson & Baker (1981)で、一般化線形モデルの拡張になっている。[←そうなの? よくわかんないけど、まあいいや]

 $\mathbf{\gamma}$は非負じゃないと困るので、
 $\mathbf{\gamma} = \exp(\mathbf{X} \mathbf{\beta})$
とし、$\mathbf{\beta}$ を推定する。普通は、$\mathbf{X}$は$J \times J$の単位行列、$\mathbf{\beta}$は長さ$J$のベクトル、でよい。以下でもそう考えるが、$J$がすっごく大きいときはパラメータ数が大きくなりすぎるので、$\mathbf{X}$を次元$p$のBスプライン基底としてもよい。

 さて、こうしてデータ生成プロセスを妄想するのは勝手だが、問題は、$\mathbf{\beta}$をどうやって推定するかである。
 $\mathbf{\gamma}$はスムーズだと考え、$\mathbf{\beta}$の非スムーズさを表す行列$\mathbf{D}_2$を求める[詳細は付録。読んでないんだけど、ちらっとみたところでは、ある$\beta_j$について、その両隣の和からその2倍を引いた値を求める模様]。で、ペナルティ
 $P = (\mathbf{D}_2 \mathbf{\beta})^2$
というのを考える。

 さて、このモデルのポアソン対数尤度は
 $l = \sum_i^I (y_i \log\mu_i -\mu_i)$
である。ここからペナルティを引いた罰則つき対数尤度
 $l^* = l - \frac{\lambda}{2} P$
を最大化する。これはiteratively reweighted least-squaresで解ける。
 パラメータ$\lambda$は、AICが最小となる値をグリッドサーチして決めるがよかろう。
 実データへの適用例... [省略]

 考察。
 本提案は頻度主義アプローチである。前にこれのベイジアン版を提案したが(そのときはオープンエンドのことを考えてなかった)、それだと$\lambda$の決定に伴う不確実性を考慮できる。シミュレーションで比較してみたが(付録)、たいした違いはなかった。
 このモデルの漸近特性は解析的にはわかっておらず、今後の課題。シミュレーションで調べたところ(付録)、一致性など良い性質がみられた。
 今後の課題は...まず2次元への拡張。各ビンにおける平均やSDが分かっているときにそれをうまく使う方法。

 ... なるほどねー。データの背後に平滑な離散分布を考えるわけね。そこでのカテゴリ数($J$)はどのくらいがよいのだろうか? あまり大きくするとなんらかの構造($\mathbf{X}$)を入れないといけなくなるだろうけど、小さすぎても良くないような気がする。

読了: Rizzi, Gampe, & Eilers (2015) ヒストグラムから確率分布をノンパラメトリック推定する罰則つき合成リンクモデル

 ヒストグラムから確率密度曲線をノンパラメトリックに復元し、任意の区間の確率を推定したい... 絶対そういうのがあるはずだ... と、ディスプレイの前で延々と、探し、探し求めてー [←突然「長崎は今日も雨だった」の節になる]、ついに見つけた論文。

Rizzi, S., Thinggraard, M., Engholm, G., Christensen, N., Johannessen, T.B., Vaupel, J.W., Lindahl-Jacobsen, R. (2016) Comparison of non-parametric methods for ungrouping coarsely aggregated data. BMC Medical Research Methodology. 16:59.

 いやー、正直いって、この論文に辿り着くまでに半日かかった。あきらかに探し方が悪かったんだけど、ポジティブにいえば、その半日で少しは賢くなったということだろう。

 著者らの整理によれば、その方法は大きく3つある。

 その1, カーネル密度推定量
 いま、未知の連続分布$f(x)$からの標本$x_1, \ldots, x_n$があるとして、$f(x)$のカーネル密度推定量は
 $\hat{f}(x) = \frac{1}{nh} \sum_i^n K(\frac{x-X_i}{h})$
この推定においてポイントになるのは、カーネル関数$K()$よりもむしろバンド幅$h$である。$h$はプラグイン推定かCVで決めることが多い。
 さて、ヒストグラムのように値がグループ化されてて、もはや$x_1, \ldots, x_n$がわからないときはどうするか。

 その2, スプライン補完
 ヒストグラムを累積分布に直し、データ点の間を2次だか3次だかのスプライン関数でつなぐ。よく用いられている方法なんだけど、オープンエンドの階級のときに困る。うっかりすると曲線が下がっちゃう(つまりある区間の頻度が負になる)から。対策:

 その3, penalized composite linkモデル
 composite linkモデルというのは一般化線型モデルの拡張で、$I$個の階級について頻度$y_i$がわかっているとき、それを期待値$\mu_i$のポアソン分布の実現値とみる。で、実は背後にもっと狭い$J$個の階級があり、それぞれが$\gamma_j$を持っていて、それを$I$個の階級にまとめたら$\mu_i$が得られたのだと考える。この$\gamma_j$の分布を最尤推定するんだけど、その際に曲線のラフさを表す罰則項をいれる(そうしないと解けない)。この方法でポイントになるのは罰則項に掛けるパラメータで、AICで決める。

 さて、文献を検索しまくりまして、この問題に使われてきた方法を探しました。次の5つが見つかった。

 オーケー、じゃシミュレーションしてみましょう。
 架空の年齢別死亡数の分布を考える。あるパラメータ[略]を持つワイブル分布だとする。ここから標本を抽出し、ヒストグラムをつくり、真の分布を推定する。これを500回繰り返す。
 動かす条件は、標本サイズ{200, 1000}, 階級の切り方{5年幅, 5年幅だが85歳より右はオープンエンド}。2x2=4つのシナリオができるわけだ。
 成績の指標は3つ。(1)$IAE = \sum|\hat{f}(x)-f(x)|$。(2)$ISE = \sum(\hat{f}(x)-f(x))^2$。(3)KL距離 $\sum f(x) \log(f(x)/\hat{f}(x))$。
 他にNORDCANデータベースというのから、実際の死亡データを貰ってきて分析してみた[このくだりは略]。

 結果。
 ickdeでバンド幅を決める方法はKernSmooth::dpik()がよかったので、以下そっちを使う。
 オープンエンドなしの場合だと、n=200ではスプライン補完(hermite spline, hyman spline)の成績が悪い。n=1000では大差なし。
 オープンエンドがあると、bootkde, hermite spline, ickdeでは、推定された密度曲線が右の方で変な風に跳ねる[←へぇー]。pclmが最優秀, hyman splineがこれに次ぐ。
 [実データの話。略]

 考察。
 penalized composite linkモデルが最優秀、Hymanフィルタ付きスプライン補完がこれに次ぐ、という結果になりました。

 ... ヒストグラムにオープンエンドの階級があると、カーネル密度推定が上手くいかないって話、面白いなあ。素人ながら想像するに、これはカーネル密度推定の本質的な問題というより、オープンエンドをどう扱うかという問題であって、改善の余地がある話なのかもしれない。
 いま気がついたんだけど、この論文の第一著者のRizziさん、penalized composite linkモデルのコードを公開している人なのね。自分の提案手法を推していたのか、ははは。調べてみたところ、penalized composite linkモデルのRパッケージとしてungroupというのがあって、開発者のひとりがRizziさん。この論文のあとで公開したのだろう。
 検討されている中でいちばんシンプルだなと思うのは、累積分布を単調制約付きでスプライン補完するというアイデアである。標準パッケージstatsにsplinefun()というのがあって、hyman法というのを指定できるんだけど、これじゃだめなんだろうか。

 ところで... ヒストグラムがセンサスに由来している場合、推定された累積密度曲線は、ヒストグラムの階級境界においては、もとの累積分布と交わらないと気持ち悪いような気がする。こういう場合はスプライン補完一択、ってことなのかな?

読了:Rizzi et al. (2016) ヒストグラムから元の確率分布をノンパラメトリックに推定する方法コンテスト

2018年10月15日 (月)

Reyes, M., Francisco-Fernandez, M., Cao, R. (2016) Nonparametric kernel density estimation for general grouped data. J. Nonparametric Statistics. 28(2), 235-249
 仕事の都合で読んだ。
 ヒストグラムから密度関数を推定したい(ヒストグラムの元データから推定するんじゃなくて)、しかもノンパラメトリックに...というのを、誰かが必ずやっているはずだ、と半日かけて探し続け、疲れ切って投げ出す寸前になって、ついに見つけた論文。
 著者らはRのbinnednpパッケージの中の人。どうやらbinned kernel density estimationというキーワードで探すのが正解だったらしい。そうして探してみると、Rのパッケージが山ほどみつかる。なんだかなあ、もう...

 いわく、
 元の値を$(X_1, \ldots, X_n)$とする。間隔$[y_{j-1}, y_j) \ (j=1,\ldots, k)$が定義されていて、この間隔に落ちた個数が$(n_1, \ldots, n_k)$、割合が$(w_1, \ldots, w_k)$だとする。
 仮に$(X_1, \ldots, X_n)$が観察できたら、密度推定には標準的なカーネル密度推定量(sKE)が使えるよね。
 $(n_1, \ldots, n_k)$から密度推定する方法としては[...中略...]、ビンのサイズが均等なときについて、Scott & Sheather (1985)の binned kernel density estimator (BKE)というのがある。
 本論文は、ビンのサイズが不均等の場合にも一般化して、$(w_1, \ldots, w_k)$から密度推定する方法(gBKE)を提案する。

 どうやるかというと... [以下、すごく端折る。どうせわかんないもん]

 ふつうのsKEってのはだね、カーネルを$K$, バンド幅を$h$として、
 $\hat{f}^s_n(x) = \frac{1}{n} \sum_i^n \frac{1}{h} K \left(\frac{x-X_i}{h} \right)$
 この漸近的MSEはわかっていて[...中略...] 最適なバンド幅というのも簡単に求められる。
 これがBKEだと、各ビンの中央値を$t_i$として、
 $\hat{f}^b_n(x) = \frac{1}{n} \sum_i^n \frac{n_i}{h} K \left(\frac{x-t_i}{h} \right)$
 さて我々がご提案するgBKEは、
 $\hat{f}^g_n(x) = \frac{1}{h} \sum_i^n w_i K \left(\frac{x-t_i}{h} \right)$
そのMSEは[...読んでない...]。最適なバンド幅は[...読んでない...]。

 シミュレーションしました[...もちろんパス...]。
 応用事例[...パス...]。

 結論。gBKEは、漸近的に不偏な推定量です。標本サイズや分布にもよるのですが、大雑把な目安としては、ビンの幅の平均が標本の範囲の6%位までであればうまくいきます[ってことは、17カテゴリくらいはないといかんということか...]。

 ... すいません、肝心の内容は全然理解してないんですけど、雰囲気はわかったということでひとつご容赦いただきたい。

読了:Reyes, Francisco-Fernandez, & Cao (2016) ヒストグラムから元の確率密度を推定します、階級の幅が不均等でも大丈夫です

2018年10月13日 (土)

King, G. (1990) Stochastic variation: A comment on Lewis-Beck and Slakaban's "The R-Square". Political Analysis 2(1), 185-200.
 先に読んだLewis-Beck & Skalaban (1990) に対する、政治学者King先生の反論というかコメントがあったので(というか「いつか読む」箱に入っていたので)。ついでに目を通した。ほんとはそれどころじゃないんだけど、つい...

 いわく。
 いま回帰をやって、効果パラメータ$b$, その分散行列$\hat{V}(b)$、誤差項の分散$\hat{\sigma}^2$を手に入れ、オリジナルのデータは捨てたとしよう。ここに$R^2$を付け加えたら、実質的リサーチ・クエスチョンに関してなにか新しいことがわかるのか? Noだ。というのが86年の論文における私の主張であった。
 変数$z$について
 $S(z) = \sum_i^n(z_i - \bar{z})^2 / n$
として($n-1$で割ってないのは簡略のため):
 $R^2 = S(\hat{y}) / S(y)$
 $\hat{\sigma}^2 = S(y) - S(\hat{y})$
 $\hat{V}(b) = [S(y) - S(\hat{y})] (X'X)^{-1}$
だよね。違いは、$S(y)$と$S(\hat{y})$の比をみるか、差をみるか、差を重みづけるか、にすぎない。$R^2$は新情報を付け加えない。
 なお、Lewis-Beck & Skalabanは$R^2$を母集団パラメータの推定値だと捉えているけれど、本当だろうか? 回帰モデルの式をみてみよう。どこにも$R^2$にあたるパラメータはないぞ。
 話を戻すと、$R^2$と$\hat{\sigma}^2$(ないし$\hat{V}(b)$)の両方はいらない、どちらかでよい。どちらをとるべきかはほぼ趣味の問題だが、研究者をミスリードしないのはどっちだ、という議論はできる。私は$\hat{\sigma}^2$のほうがいいと思う。理由は次の3つ。

 [ここからはR二乗の是非というより、回帰モデルについての啓蒙的解説になるので、メモ省略]

 ... あーあ、この人たち、絶対友達だよな... 双方とも面白がって書いている...
 まあとにかく、整理しておくと、実質的関心がパラメータ推定値に向かっている場合に$R^2$が無意味だ、という点については合意がある。実質的関心が予測に向かっているとき、予測の良さの指標のひとつが回帰の標準誤差(SER)だという点についても合意がある。
 意見が分かれているのは、SERを目的変数のSDで標準化するのは回帰分析ユーザにとって手助けになるのか、という点に尽きると思う($R^2$は標本特性か母集団特性の推定値かという話はポイントではない)。King先生も触れていたけど、これ、標準化回帰係数に意味があるのかという論争とパラレルなんでしょうね。

 いましらべたら、なんと、同一号にAchenさんのコメントもあるようだ。読みたいような、読みたくないような... 前にAchenさんの本を読んだら、華麗なレトリックのつるべ打ちで、英文読解そのものに消耗したのである。

読了:King (1990) R二乗? だから要らないってば、そんなの

 都合によりcitizen forecastingについて調べていて(そういう話題があるのです)、主要研究者のひとりである政治学者M. Lewis-Beckを辿っていたら、この先生による全く別の方面の論文が「いずれ読む」箱に叩き込まれていたことに気が付いた。世界は狭い。
 というわけで、整理の都合で読んでしまった。面白かったけど、別にいま読むこたあなかったな...

Lewis-Beck, M.S, & Skalaban, A. (1990) The R-Squared: Some Straight Talk. Political Analysis, 2, 153-171.
 いわく。
 政治学ではR二乗は時代遅れだ。人々は口々にR二乗の悪口を言う。もっとも有名なのはAchen(1982)で、かの大先生に言わせれば、R二乗なんてものにたいした意味はない。King(1986, Am.J.Polit.Sci.)も同趣旨を述べている。分散説明率?政治の分析においてそれになんの意味があるんだい? というわけである。[←このKing先生のエッセイ?は面白そう]
 なるほど。確かに我々の心のなかには冷酷な「R二乗マクシマイザー」が住んでおり、無闇に変数を増やしたがる。上述の批判で質の低い分析が防止されるってんなら、拍手するのにやぶさかでない。しかぁし。悪いのはR二乗の誤用である。R二乗そのものは悪くありません。本稿では、回帰分析においてR二乗が価値ある統計量となることがあるということをお示しするぞ。

 いま母集団について
 $ Y = \alpha + \beta_1 X_1 + \ldots + \beta_k X_k + \epsilon$
というモデルがあるとする。政治学者はこれを観察データにあてはめ、$a, b_1, \ldots, b_k$をOLS推定し、$\hat{Y}$を得る。
 このとき、研究者は回帰モデルの諸想定への合致を達成しようと尽力する。合致している程度に応じて、研究者はOLS推定値がBLUEだと信じ、係数からなにかを推論しようとする。ときには信頼区間を出したり検定したりもするだろう。
 ここでふつうの実務家は、R二乗、すなわち$RSS=\sum (\hat{y}_i -\bar{y})^2$と$TSS = \sum(y_i - \bar{y})^2$の比によって、「あてはまりのよさ」を評価しようとする。
 いっぽうAchen先生いわく、正しい「あてはまりのよさ」指標はYの推定値の標準誤差
 $SEE = \sqrt{ \sum(y_i - \hat{y}_i)^2 / (n-k)}$
だ。
 というわけで、もうちょっと賢い実務家は、$a, b_1, \ldots, b_k, N, R^2$に加えて、$SE_{b_1}, \ldots, SE_{b_k}, SEE$をチェックする。使い方としては、(1)独立変数の効果を知りたいときは$b$と$SE_b$をみる。(2)予測したい場合は$\hat{Y}$とともに、$R^2$か$SEE$かその両方をみる。

 実例で考えてみましょう。
  政治学者Brooms氏はUSにおける市長選のモデルというのを作った。$Y$は現職候補の得票率、$X_1$は犯罪率の変化, $X_2$は予算に占める道路予算の割合、$X_3$は貧困層の税率の変化, $X_4$は予算に占める教育予算の割合で、
 $\hat{Y} = 22.39 - 1.15X_1 + 0.56X_2 - 0.33X_3 + 0.47X_4$
 $R^2 = 0.52, \ \ SEE = 7.7, \ \ N=70$
である[係数のSEと検定結果は省略]。
 さて、(1)Broom 氏は独立変数の効果を知りたいとしよう。$X_2$の係数は有意。どうやら、道路予算の1パーセントの増大は得票率の0.56パーセントの増加をもたらすようだ。という風に、Broom先生は$b$と$SE_b$から知りたいことを知ることができる。
 おそらくKing先生ならここでストップである。King先生にとって、回帰分析の目的とは母集団パラメータの推測だ。しかしBroom氏もそうかどうかは別の問題である。
 (2)Broom氏は予測の良さを知りたいとしよう。SEEは7.7。直観的に言えば、これは「絶対予測誤差」のようなものがだいたい8パーセントポイントだということを表している。しかしこれだけでは物足りない。Broom氏は他の情報も必要とする。現職候補の平均得票率は?(Yの平均は51.1)。現職がどこまで大勝ち・大負けするのか?(Yの範囲は30-79)。得票率はどのくらいばらつくか?(YのSDは10.8)。カッコ内の答えによって、SEEはさらに有意味となる。
 なぜカッコ内の答えを必要としたのか。それは、SEEが予測能の絶対指標だったからだ。それ単独で評価できるような相対指標があれば便利じゃないですか。それがR二乗である。R二乗とは、独立変数について知ったことによって$Y$の予測誤差がどれだけ減ったかを表している。
 R二乗をこのように使うのはナイーブすぎるという人もいる。R二乗は予測$\hat{Y}$をベースライン予測$\bar{Y}$と比べていることになるけど、 $\bar{Y}$がベースラインだというのはナイーブだ、という意見である。そうだろうか。Broom先生にとって、$Y$しか知らないときの予測は$\bar{Y}$ではないか、もっと良い代替案があるとは思えない。[...中略...]
 絶対指標SEEと相対指標R二乗の間には
 $\sqrt{1- adj.R^2} = SEE / SD_y$
という関係がある。これをcoefficent of alienationと呼ぶ人もいる[うーん... 「説明されてない度係数」という感じだろうか]。これはいわば標準化されたSEEである。

 別の政治学者Brush氏は、Broom氏に対抗してこういうモデルをつくった。[係数のSEと検定結果は省略]
 $\hat{Y} = 40.04 - 1.12X_1 + 0.46X_2$
 $R^2 = 0.46, \ \ SEE = 8.04, \ \ N=70$
 R二乗はBroom氏のモデルのほうが高い。これを根拠に、Broom氏はBrush氏のモデルよりも自分のモデルの方が良いと主張できるか(King先生にいわせると不可である)。
 どっちのモデルの予測能が高いかと云えば... 修正R二乗で比較すると、Broom氏のモデルのほうが良い。しかしこれは標本についての話である。F検定してみると、$X_3, X_4$を加えた方がR二乗が高くなっている(Broomモデルで$X_3, X_4$の係数は有意じゃなかったけど、それは別の話である)。やはりBroomモデルのほうが良い。
 なお、ここでBrush氏は反論するかもしれない。R二乗の増大は統計的に有意かもしれないけど、でも実質的にはどうよ?と。 ここから先はもはや実質的議論である。
 さて、上記の議論では、R二乗は母集団パラメータとみなされている。統計学者はそう考える傾向がある。いっぽう計量経済学者はR二乗を標本特性と捉える傾向がある。King先生は後者である。
 この論争に決着をつけることはできないけど、整理しておくと、まず回帰モデルは母集団について固定されたR二乗を生成するし、無作為標本のR二乗はその一致推定量になっている。検定に際してはふつう、標本がMVNに従うと仮定する。この仮定は守られていないかも知れないけどしかし頑健性があって...[面倒くさいのでこのくだりは省略]
 要するに、R二乗を評価するってこと自体がトレードオフを伴う。相対的予測能の指標としては有益である反面、実はMVN仮定が成り立たっておらず有意性検定は有害かもしれない。
 
 [ここから今度はPan氏という政治学者が出てきて、Broom氏のモデルを別のデータにあてはめようとする。SEEは下がったけどR二乗も下がった、どう評価する?というような話。面倒なのでメモは省略するけど面白い説明であった]

 というわけで、R二乗は、Xの効果の理解という観点からはあまり意味がないが、Yの予測という観点からは有益な道具である。
 どう解釈するかはデザインによって変わる。単一の無作為標本に対する単一のモデルであれば、標本におけるモデルの性能の記述とみることもできるし、母集団パラメータの一致推定量とみることもできる。いっぽう、多母集団の比較の場合はそれほどファンダメンタルな統計量とはいえない。分散の違いも考慮しないといけないわけだから。
 云々。

読了:Lewis-Beck, & Skalaban (1990) R二乗について率直に語ろう

2018年10月 7日 (日)

Bae, S.H., Shin, M. (2007) Telecommunications expenditure potential of Korean households and income turning point. info: The journal of policy, regulation and strategy for telecommunications, information and media. 9(6), 45-56.

 仕事の都合で急遽無理やり読んだ奴。ある国のある品目の消費支出がどこまで増えうるかという問題について考えていたので、この論文のテーマはその関心にはジャストフィットなのだが(韓国の通信支出がどこまで増えうるかという話)、あいにく全く土地勘がない分野の論文である。辛い。
 掲載誌がどういう雑誌だか全然わからないが、現誌名はDigital Policy, Regulation and Governance。International Telecommunications Societyという学会の雑誌で、NACSISによれば所蔵館3館。メジャーではないにせよ、ものすごく変な雑誌でもなさそう。

 いわく。
 韓国では家計消費に占めるICT系消費の割合が96年から04年にかけて倍増した(4.4%→9.2%)。いまや先進国の平均を超えている。政府はICT産業のさらなる強化を目指しているんだけど、消費者支出ってのはロケットじゃないわけで、これからは徐々にしか増えないかもしれない。韓国の世帯におけるICT支出のポテンシャルを調べておく必要がある。

 先行研究:

 世帯収入とICT支出の関係についての研究の多くは、次の2つの概念を使っている。

 先行研究の問題点:

 本研究では通信支出をクズネッツ曲線でモデル化する。クズネッツ曲線というのは、経済発展とともにGNPに占める農業のシェアが低下し、産業財生産のシェアが上昇してやがて低下し、サービスのシェアが上昇する... という奴。新技術・新製品でいうところの「ライフサイクル」もこれに近い。[←そういう意味なの? 全然知らんかった。えーっと、縦軸にジニ係数、横軸に国民所得をとった山形の曲線をクズネッツ曲線って言わない?]

 世帯消費支出に占める通信支出の割合$TEXP$を以下のようにモデル化する。
 $TEXP = a_0 + \beta_1 Y + \beta_2 YSQ + \epsilon, \ \ \epsilon \sim iid(0, \delta^2)$
ただし、$Y$は世帯消費支出の月平均、$YSK$はその二乗。
 ここで収入ではなくて消費支出を使っている理由は以下の通り。Friedman(1957)の恒常所得仮説によれば、世帯の支出は現在の収入に基づいているのではなく、恒常収入に基づいている。恒常収入を説明変数にすべきモデルで現在の収入を説明変数にしてしまうと、不偏性と一致性が失われる。現在の収入が適切なバロメータになるのは、消費者の収入のフローと消費の欲求が時変しないときに限られるが、そんなのはおよそ現実的でない。世帯の消費支出とは、過去・現在の収入、そして期待される収入の複雑な関数なのである。というわけで、収入じゃなくて全消費支出を使います。
 話を戻して... 世帯収入と通信支出の関係がU字型なのであれば、$\beta_1$が正で$\beta_2$が負になるはずである。ターニング・ポイントになる収入レベルは$-\beta_1/2\beta_2$となる。

 韓国統計局の世帯調査データ(1982-2005)のうち働いている世帯のローデータを使う。交通費と通信費はわける。[←よくわからん。先行研究では集計表を使ってたから分けらんなかったってことかな?]
 通信支出は一貫して伸びてるんだけど、90年代に急増、99年をピークに伸び率は減少。
 時系列の観察と背景知識に基づき、仮に構造的変化があったならそれは97年だと考え、構造変化があったかどうかを調べる。Chow検定というのをやる。これは
 $TEXP_t = a_0 + \beta_1 Y_t + \beta_2 YSQ_t + \epsilon_t, \ \ t$は82年から96年まで
 $TEXP_t = a'_0 + \beta'_1 Y_t + \beta'_2 YSQ_t + \epsilon_t, \ \ t$は97年から2005年まで
と考えて(tは四半期)、誤差分散は同じだとして
 $H_0: a_0 = a'_0$ かつ $\beta_1 = \beta'_1$ かつ $\beta_2 = \beta'_2$
を検定する。[...計算手順の説明。省略...] 無事有意になりました。

 時系列は定常だろうか。96年以降の時系列についてADF検定とPP検定をやったんだけど棄却できなかった。そこで共和分検定をやったらどうのこうの...[ああもう、いらいらする。こういう経済時系列のごちゃごちゃした話題は苦手なんで、メモは大幅省略!]。というわけで、変数間に共通のトレンドがあること、どれも定常じゃないけど回帰分析できることがわかりました。
 回帰分析で推定したところ、通信支出のターニング・ポイントになる収入レベルは240万ウォンだとわかりました。あと4~5年は通信支出は伸びそうです。
 云々。

 うーん...
 難しいことやってるけど、背後にあるモデルはごく単純で、消費支出に占める通信費の割合は消費支出の二次関数になるだろう、って話ですよね。それってどこまで信じていいの? まるきり見当がつかないぜ。

読了:Bae & Shin (2007) 家計に占める通信費はどこまで増えるか予測する in 韓国

Rhemtulla, M., Brosseau-Liard, P.E., Savalei, V. (2012) When can categorical variables be treated as continous? A comparison of robust continous and categorical SEM estimation methods under suboptimal conditions. Psychological Methods, 17(3), 354-373.

 仕事の都合で読み始め、「本研究の目的」が示されたところで、あ、これはちがう...と気がついたんだけど、個人的に興味ある話ではあるので、そのままだらだらと読んでしまった奴。

 どういう話かというと、5件法評定値みたいなカテゴリカルデータを指標にしたCFAモデルを組むとき、それを量的データとみなしてそのままあてはめちゃう場合と、ちゃんとポリコリック相関行列を推定してからあてはめる場合とあるよね? 結果はどうちがうのかシミュレーションしてみました! という話である。かの萩生田・繁桝(1996)のCFA版といったところである。
 いやあなたね、2012年にもなってその比較? なぜにFIMLでやらない? と思ったんだけど、そこの説明はイントロ部分で縷々なされている(メモは末尾に)。

 さて。ポリコリック相関行列にCFAモデルをあてはめるとき、その推定方法にはいろいろある。
 以下、変数の数を$p$, ポリコリック相関を縦に並べたベクトル(長さ$p(p-1)/2$)を$r$とします。ポリコリック相関の共分散行列を推定した行列を$\hat{V}$とします。CFAモデルでの下でのポリコリック相関行列の構造を$\rho(\theta)$とします。

 なお、cat-LSとcat-DWLSにおいて頑健標準誤差を推定するのは、ちゃんとWLSを求めてないので有効性が失われているから。ときどき「cat-LSとcat-DWLSは、観察変数の背後にある連続変数の正規性仮定を緩和したものだ」といわれることがあるけど、これは間違いで、依然として正規性仮定は必要。もとも頑健標準誤差ってのは、最尤推定量の有効性がデータの非正規性のせいで失われるのに対処するためにつくられたものなので、混乱が生じたのであろう。

 連続量とみたててCFAモデルを当てはめる場合、正規性は仮定できないわけで、そのことを考慮して頑健修正した最尤法を用いるのがよろしかろう...[最小化する関数と検定統計量の説明。メモ省略。これ、MplusでいうとMLMVかなあ?]。とはいえ、ほんとは変数は連続量ではなく、変数と潜在変数の関係は線形でないわけで、パラメータ推定は歪む。

 先行研究概観。さすがは一流誌という感じで、長い。
 要点のみメモすると...連続量とみて最尤推定するとパラメータ推定は過小になるが、4~5カテゴリくらいあれば大丈夫。cat-DWLS, cat-LSのパラメータ推定は歪まない。
 標準誤差や検定統計量は無修正だと歪む。修正すると、連続量MLの場合は少し過小のままで、cat-DWLS, cat-LSはほぼ歪まない。[大幅中略]
 パフォーマンスに影響する要因としては... まず正規変数からカテゴリ変数を作る際の閾値が項目によって大きく違うとうまくいかなくなるといわれている。裏にある連続変数が正規分布じゃないときもバイアスが生じる。[要は、項目によって分布が大きく違うと困るってことね... どう困るのか色々書いてあったけど読み飛ばした]
 他に、モデルサイズが大きいときも困る。

 おまたせしました、実験します... なんだけど、疲れてきちゃったのでメモは簡略に。
 まずデータをつくる。動かす条件は以下の通り。各セルあたり1000セット。

 CFAモデルは、2因子, 因子当たり指標数は5ないし10, 負荷は0.3,0.4,0.5,0.6,0.7。因子間相関0.3。[交差負荷はないんやろね...]
 Mplusで推定した結果を報告する。
 [いい加減に読み飛ばしているので自信がないんだけど、cat-WLSは試さなかったみたい。cat-DWLSは報告から省略しているらしい。よって以下はcat-LSと連続量MLの比較である]
 
 結果。長い... メモは超簡略に...
 収束の失敗と不適解は、カテゴリ数が2の時に多く、4以上で少ない。収束失敗は連続量MLで、不適解はcat-LSで多い。指標が20あるとほぼ起きない。
 負荷の推定は、連続量MLだと過小で、カテゴリ数が多いと減る。5カテゴリあれば10%未満。cat-LSはおおむね正確...[いろいろ書いてあるけど読み飛ばした]。因子間相関はどちらもおおむね正確だった。
 推定量の有効性は...[えーい省略だ]
 頑健標準誤差は...検定統計量は... [著者の先生すいません、疲れたのでパスさせてください]

 考察。
 cat-LSは優秀です。ただし、小標本かつ非正規のとき問題が生じる。カテゴリ数が5以上ならば連続量MLでもよろしい。
 測定モデルはどうでもいい、構造モデルのパラメータだけに関心があるんだという場合には、カテゴリ数が4以下であっても連続量MLを使うのはアリ。小標本の場合にはむしろ望ましいかもしれない。
 [他、いろいろ書いてあったけど、省略...]

 ... というわけで、カテゴリ数が5以上ならまあ連続量とみなしてもいいんじゃない? という、よく言われている話を裏付ける論文であった。

 ところで、二十一世紀、アベノミクスの大成功によりいままさに美しい日本を取り戻そうとしているこの現代においてですね(すいません冗談です)、いまさらカテゴリカルCFAのためにいったんポリコリック相関行列を推定するのってどうなの? 時代は完全情報最尤法でしょう? と思ったわけですけど、著者らの説明は以下の通り。

  1. たしかに理論的には、完全情報法のほうがパラメータ推定の有効性が高い。しかし実務的にはたいした差はなく、むしろ限定情報法(モデルを相関行列にあてはめることね)のほうが良いこともあるといわれている。ご不審の向きはKnol & Berger (1991 MultivariateBehav.Res.), Forero & Maydeu-Olivares (2009 Psych.Methods)をみよ。
  2. 完全情報法は計算が大変。
  3. 著者らの知る限り、完全情報法ができるSEMのソフトはMplusとMxのみ。心理学者はIRTのソフトに馴染みがない。
  4. 検定統計量がつかいものにならない。

... 論点2、計算が大変だから実用に適しませんってのは、そうなんですかね、よくわからん。論点3については、私はMplusの信者なのでMplusを買いましょうとしかいいようがない。論点4はたぶんカイ二乗統計量の話だろう、別の適合度指標を使えばいいんじゃないかしらん、よくわからない。
 いっぽう、最初の論点はすごく意外だった。そうなの? へえええ。

読了:Rhemtulla, et al. (2012) 順序カテゴリ変数を連続変数とみたてて確認的因子分析をやっちゃってよいものか

2018年10月 3日 (水)

萩生田伸子, 繁桝算男(1996) 順序付きカテゴリカルデータへの因子分析の適用に関するいくつかの注意点. 心理学研究, 67(1), 1-8.

 リッカート尺度の段階数はどうすればよいかとか、リッカート尺度のデータを因子分析してもいいんでしょうかとか、そんな話の中で実にひんぱんに引用される有名論文。ちょっと用事があってメモをとった。実のところ、たぶん読むのは3回目くらいである。

 いわく。
 順序カテゴリカルデータの因子分析には2つの方法がある。

 推定値の挙動について実験してみましょう。

 データのつくりかた。まず量的データをつくる。
 $\Xi = F \Lambda^{'} + E$
とし、$F$と$E$に$N(0,1)$の正規乱数をいれる。$\Lambda$は単純構造とし、負荷があるところに$\sqrt{0.3}$をいれる。こうすると、ある因子に負荷を持つ項目間の真の相関は0.3になる。
 ここで動かす条件は3つ。

 このデータをやおらカテゴリ化する。全項目に共通の閾値を与えて順序尺度に落とすわけである。ここで動かす条件は2つ。

 簡便法と多分相関の2種類で因子分析をやる。データセットは各セルについて100個。SASのPROC FACTOR, ML、SMC。[これ、多分相関のほうは、まず別のプログラムで多分相関行列を推定し、PROC FACTORに食わせたのであろう。あああ、それって時間もかかるし不適解もでまくる...]

 実験1。負荷行列はどうなるか。因子数として真の因子数を指定する。得られた行列を、真の負荷行列をターゲットにしてプロクラステス回転する。
 結果。真の負荷行列と推定された負荷行列の乖離(RMSE)に注目すると、

共通性が1を超えちゃって計算不能になる回数は、乖離が大きいときに大きくなる。いっぽう、多分相関行列が収束しないという回数(結構多い)は、データサイズが小さいときに増える。
 なお、カテゴリ無し条件でも結構な不適解が出た。標本変動のせいでしょうね。

 実験2。因子数を当てられるか。AICとBICで因子数を推定し、真の因子数と比較する。計算不能だったら「当てられなかった」とカウント。[←条件によっては笑っちゃうほど当てられない...]
 カテゴリ数が多い方が、項目数は多い方が、因子数は少ない方が、的中率は上がる。閾値の位置はあんまり効かない。簡便法 vs 多分相関の勝負が気になるところだけど、AIC vs BIC と交互作用があってよくわからない(BICだと多分相関、AICだと簡便法が良かった)。
 
 考察。
 2件法・3件法は計算不能も多いし因子数も当てられないし乖離も大きい。因子分析はお勧めできない。逆に5件法と7件法は大差ない。
 なお、上の実験ではカテゴリなしだとかえって乖離するという変な話になったが、追加実験したところ、データサイズが大きければやはりカテゴリ化しないほうがよかった。[←うーん、それでも謎は残りますね。小さなデータでカテゴリ化したほうが乖離が小さくなったのはなぜか。外れ値のせいじゃないかなあ]
 項目数が少ないと乖離が大きくなる。因子数が多いとうまくいかなくなりやすい。「項目数は因子あたり3個」ルールはあてにならん。これはまあ、カテゴリカルデータに限ったことではない。
 データサイズについて。「データサイズは項目数の3倍」ルールもあてにならん[←そんなのあったの? 私は5倍って習ったけど]。いろんな要因の影響をうけるので、なかなか安心できない。
 データの分布は、正規性から極端にはずれていると悪影響を及ぼす可能性がある。
 簡便法よりも多分相関係数を分析した方が良いとは必ずしもいえない模様。時間もかかるし、計算不能になりやすいし、再現性も(この実験では)別に高くなかった。

 というわけで、調査データの因子分析ユーザへのアドバイス。(1)5件法か7件法がお勧め。(2)データサイズはなるたけ多く。(3)項目数は多い方が良いこともある。(4)多分相関行列の因子分析? 別にやんなくていいよ。

 ... ところで、これ、第一著者の先生の修論だったんですね。へー。

 この論文の価値とはまったく関係ないんだけど、この論文の主旨のひとつである「因子分析するときは3件法より5件法」という話が変な風に伝わっちゃって、調査票作成の際に「因子分析するから5件法にしなきゃ」と強く主張する人が結構多く、何度か頭を抱えたことがある。あのですね、それはいったん連続量を生成してからカテゴリ化したシミュレーション研究の話であって、調査票上で何件法になっていようが、全員が両端にしか反応してくれなかったらそれは2件法と同じでしょ、という話である。調査設計時にはなによりも、個別具体的な調査項目に対する反応分布を考えなきゃいけない。そういうわけで、こういう研究のせいでちょっと苦労しているんだけど、それは別の話。わかりやすくて勉強になる論文であります。

 細かいことをいくつかメモしておく。

読了:萩生田・繁桝(1996) 順序カテゴリカルデータを因子分析したときの推定値の挙動

2018年9月28日 (金)

 Wilcoxon-Mann-Whitney検定ってのがありますわね。おさらいしておくと、えーっっっとですね、いわゆる「対応のないt検定」のノンパラ版だって習った気がします。
 群Aと群Bがあるとき(サイズを$n_A, n_B$とする)、群間でのすべての測定値ペア($n_A
\times n_B$個)について、Aの値のほうが大きいペア数$U$を数える。群間にぜんぜん差がなければ、$U$の期待値は(タイになるペアがないとして)$n_A \times n_B / 2$である。というわけで、帰無仮説の下での$U$の分布をどうにかして求めて検定する。$n_A$+$n_B$個の測定値を順位に変換し、群Aの測定値の順位の和を検定統計量にすることもあるが、まあ結局は同じことである。Mann-WhitneyのU検定とか、Wilcoxonの順位和検定ということもある。

 ここでの帰無仮説とはなにか。修士課程ははるか記憶の彼方ですけど(ついでにいうと学部の統計学教育はかなりめちゃくちゃであった。あれはナイよなあ...今でもちょっと可笑しい)、わたしゃ「母集団において二群の中央値が等しい」だと習いましたね、確か。
 手元の本で言うと、森・吉田(編著)「心理学のためのデータ解析テクニカルブック」には、はっきりと「対応のない2条件の中央値の比較」とある(もっとも、先ほどめくってみたところ「比較される代表値が今一つ明確でない、しかし[...]測定値間の大きさの順位を問題にするものであり、このような意味では、各条件の中央値を比較しているといえよう」と微妙に日和った脚注がついているのを発見した)。この定評ある参考書に限らず、たいていの本には「二群の中央値を比較する検定」だと書いてあると思います。

Divine, G.W., Norton, H.J., Baron, A.E., Juarez-Colunga, E. (2018) The Wilcoxon-Mann-Whitney procedure fails as a test of medians. American Statistician, 72, 278-286.
 最近のAmerican StatisticianのTeacher's Cornerの記事らしい。いま必要な内容じゃないんだけど、Mann-Whitneyの検定はたまに使うこともあるし、タイトルに惹かれて目を通してみた次第。

 いわく。
 Wilcoxon-Mann-Whitneyの手続き(以下WMW)は二群の中央値が等しいかどうかの検定だと思っている人が多い。信頼ある教科書にもよくそう書いてある。
 これは誤りである。WMWについてはいろいろ誤解がある。諸君の無知蒙昧を正そう。

 まず、WMWとt検定を比べてみよう。
 t検定、それはパラメトリックな手続きである。各群の分布は$N(\mu_1, \sigma_1^2)$, $N(\mu_2, \sigma_2^2)$に従うと想定する。
 概念上は、$\mu_1$と$\mu_2$が同じかどうかという話をしたい。計算上は、標本平均$\bar{x}_1$と$\bar{x}_2$を比べる。検定統計量は
 $t = (\bar{x}_1 - \bar{x}_2) / se(\bar{x}_1 - \bar{x}_2)$
である。
 いいですか、t検定というのは、概念上は母平均の検定であり、計算上は標本平均を使う。このように、t検定は平均についての検定だといって差支えない。

 WMW検定、それは分布フリーな検定である。
 概念上はどんな検定なのか。一般には、帰無仮説は「分布Fと分布Gが等しい」で、対立仮説は$G(x)=F(x+\delta), \ \ \delta \neq 0$だと考えられることが多い(つまり、分散も歪度もなにもかも同じで位置だけが異なるという対立仮説である)。これを「シフト仮説」と呼ぼう。
 シフト仮説の下では、確かに$\delta$は母中央値の差である。同時に、$\delta$はお好きな分位点の差でもあり、平均の差でもあり、最頻値の差でもある。[←なるほどそりゃそうだ]
 計算上はどんな検定か。正確法と漸近法があるが、ここでは説明の都合上、後者について考えよう。
 測定値の順位を求め、各群の順位和を$R_1$, $R_2$とする。検定統計量は
 $X^2 = [(R_1 - E(R_1)/se(R_1)]^2$
 ちなみにMann-WhitneyのU統計量はちょっと定式化が違うが、
 $U_1=n_1n_2 + n_1(n_1+1)/2 - R_1$
という関係がある。
 いま
 $p^{''} = Pr(X_1 < X_2) + Pr(X_1=X_2)/2$
という母集団特性を考えると、
 $U_1/n_1 n_2 = \hat{p}^{''}$
 $X^2 = [(\hat{p}^{''}-0.5)/se(\hat{p}^{''})]^2$
と書きかえられる。WMW検定の帰無仮説は$p^{''}=0.5$だといえる。
 なお、$p^{''}/(1-p^{''})$を「WMWオッズ」と呼び、これがWMW検定のための理想的な要約統計量だとする主張もある。帰無仮説は「WMWオッズ=1」だというほうが、$p^{''}=0.5$だというよりわかりやすいだろうという主張である。

 ちょっと話が逸れるけど...
 タイがある場合について。教科書のなかには「タイがあったら使えない」と書いてあるのもあるけど、これは間違い。順位和で定式化する場合なら、タイには平均順位を与える。ある弱い条件の下で、タイがあるデータでも検定統計量の漸近正規性が成り立つことが示されている。
 t検定の場合、分散が等しくない時、そのことを考慮した分散推定量と自由度を使えばそれでOKなの?という問題が生じる。御存じBehrens-Fisher問題である。WMW検定でも同じことが起きる[←漸近法の場合は、ってことだと思う]。連続データの中央値の比較に関心があるという仮定の下で、分散が異なるときでもうまくいくというFlinger-Policello検定というのが提案されている(SAS/STATのPROC NPAR1WAYに載っている)。ほかにBrunner-Munzelの提案というのもあって、標本サイズが小さい時にはこっちのほうが良いと報告されている。標本サイズが30以下だったり、タイが多かったりする場合には、permutationによる正確法に切り替えたほうが良い。

 さて、このようにですね、WMW検定は$p^{''}=0.5$かどうかの検定であり、中央値の検定ではないのであります。いくつか例を示しましょう。

ご覧のように、WMW検定は標本中央値と対応しない。複数群間で推移律さえ満たさない。この検定は、あくまで分布間の相対的な比較であって、標本の位置を表すなんらかの指標によって決まるような検定ではないのである。

 では、WMW検定は母中央値の検定だといえるだろうか。
 「シフト仮説」の下ではそうだろう。しかし、たいていの場合、「シフト仮説」はナンセンスである。リッカート尺度項目の回答分布を考えてみてほしい。またはなんらかの出来事の回数の分布について考えてほしい。分布が同じで位置だけ変わるってありえないでしょ。

 なぜにWMW検定は中央値の検定だといわれているのか。おそらくこういう事情だろう。

なぜにWMW検定は連続量データを必要とするという誤解が広がっているのか。おそらくこういう事情だろう。

 というわけで、著者らは講義でWMWについて正しく教えてます...[略]
 教えるときにはこういうチャートを使うといいでしょう。全ペアを(群1の値) vs (群2の値)の散布図上に載せたバブルチャート。ペア内の大小を診断と見立ててROC曲線を書くとAUCが$p^{''}$になる[←頭が混乱する...]。ドミナンス・ダイアグラム[←説明を読んでたらわけわかんなくなってきたので省略]。

 ...というわけで、最後のほうは疲れて読み飛ばしちゃったけど、面白い啓蒙論文でありました。
 著者らが力説しているのは「WMWは2群の中央値の検定じゃなくて、2群間のすべてのペアにおいて片方が勝つ確率が0.5かどうかの検定だ」ということであって、「WMWは使うな」と言っているわけではない。でも世の中にはWMWそのものに対して否定的な方もいるわけで(たしかGelmanさんがそうだった)、有識者の方々に、その辺のご意見も聞きたいところである。

読了:Divine, et al. (2018) Mann-Whitney検定は中央値の検定ではない

2018年7月30日 (月)

Wakimoto (1971) Stratified random sampling (I) Estimation of the population variance. Annals of the Institute of Statistical Mathematics, 23(1), 233–252.
Wakimoto (1971) Stratified random sampling (II) Estimation of the population covariance. Annals of the Institute of Statistical Mathematics, 23(1), 327-337.
Wakimoto (1971) Stratified random sampling (III) Estimation of the correlation coefficient. Annals of the Institute of Statistical Mathematics, 23(1), 339-353.

 層別抽出デザインにおける母分散・母共分散・母相関の推定について述べた3本の論文。仕事の都合で読んだ。
 複雑な標本抽出デザインにおける推定量の分散について解説している資料は多いけど、母分散の推定について述べているものが全然見当たらず(探し方が悪いのかもしれないけど)、思い余って1971年の論文をめくった次第である。掲載誌は日本の統計数理研究所が出している英文誌。著者の脇本さんという方は昭和40年代に統数研に勤めていた方で、その後郷里の岡山大に移り、平成5年に亡くなった由。
 
 読んだというよりもめくったというのが正しいのだが、まあとにかく、だいたいどんなことが書いてあったかをメモしておく。

(I) 母分散の推定

 $X$の分布関数を$F(x)$とする。層の数を$L$とし、$i$番目の層の分布関数を$F_i(x)$とする。層の割合を$w_i$とする($\sum_i^L w_i = 1$)。

 定理1. $X_{i1}, \ldots, X_{in_i}$が$F_i(x)$にiidに従い、どの$i$についても$n_i \geq 2$であるとき、母分散$\sigma^2$の不偏推定量は
 $ U_{s,n}$
 $\displaystyle = \sum_i \frac{w^2}{n_i (n_i)} \sum_{k < l}^{n_i} (X_{ik}-X_{il})^2$
 $\displaystyle + \sum_{i < j}^L \frac{w_i w_j}{n_i n_j} \sum_k^{n_i} \sum_l^{n_j} (X_{ik} - X_{jl})^2$
 [なぜか最初からペアの差によって定義してあるので途方にくれたが、平均からの偏差によって定義すると、これは
 $\displaystyle U_{s,n} = \sum_i w_i U_i + \sum_i w_i (\bar{X}_i - \bar{X}_n)^2 - \sum_i \frac{w_i(1-w_i)}{n_i} U_i$
 となるそうだ。ただし$U_i$ってのは各層における不偏分散, $\bar{x}_n = \sum_i w_i \bar{X}_i$。第1項は層内分散、第2項は層別の標本平均を使って求めた層間分散、第3項は層間分散が標本平均を使っちゃっていることによるバイアスを補正する項なのだろうと思う]

 定理2. $U_{s,n}$の分散$V(U_{s,n})$は...[略]

 $U_{s,n}$の漸近正規性について... [難しくてよくわからん]

 $n_i = w_i n$とする場合を代表サンプリングないしBowleyサンプリングと呼び、標本サイズのことを「比例割当」と呼ぶ。このとき、母分散推定量$U_{s,p,n}$と$V(U_{s,p,n})$は...[略]
 いっぽう、単純無作為抽出のときの母分散推定量$U_{r,n}$と$V(U_{r,n})$は...[略]

 定理3. $V(U_{r,n}) - V(U_{s,p,n})$は...[略]

 というわけで、$n$が大きければ$V(U_{s,p,n})$は$V(U_{r,n})$より小さい。[←よく母平均推定において層別抽出は単純無作為抽出より有利だというけれど、母分散推定という観点から見ても、比例層別抽出は単純無作為抽出よか有利だってことね]
 いっぽう、層別をしくじったケースでは逆転することもある。たとえば$F_1(x) = F_2(x) = \cdots = F_L(x)$のときとか。[←なるほど...層別するからには層間で分布がちがわないといかんということね]

 $V(V_{s,n})$を最小化するように$n_i$を決めるという最適割当について考えると... [この節まるごとパスするけど、専門家というのはいろんなことを考えるものだなあ。なお、イントロにある要約によれば、理論上は最適割当を考えることはできるけど、そのために必要な事前情報がふつう手に入らないので、実務的には比例割当がお勧めである由。はっはっは]

 比例割当の場合の最適層別について... [まじか、母分散推定のために層別を最適化するなんていう発想もあるのか。ひょえー。パス]

(II) 母共分散の推定

 $X, Y$の同時分布関数を$F(x,y)$とする。母平均を$\mu_x, \mu_y$, 分散と共分散を$\sigma_{xx}, \sigma_{yy}, \sigma_{xy}$とする[←論文(I)とちがって二乗の添字がついてない。面倒くさくなったのかな?]。層の数を$L$とし、$i$番目の層の同時分布関数を$F_i(x,y)$とする。

 定理1. $(X_{i1}, Y_{i1}), \ldots, (X_{in_i}, Y_{in_i})$が$F_i(x,y)$にiidに従い、どの$i$についても$n_i \geq 2$であるとき、母共分散$\sigma_{xy}$の不偏推定量は
 $\displaystyle U_s$
 $\displaystyle = \sum_i \frac{w^2}{n_i(n_i-1)} \sum_{k < l}(X_{ik}-X_{il})(Y_{ik}-Y_{il})$
 $\displaystyle + \sum_{i < j}\frac{w_i w_j}{n_i n_j} \sum_k^{n_i} \sum_l^{n_j} (X_{ik} - X_{jl})(Y_{ik} - Y_{jl})$
 [ここでもいきなりペアの差で定義してあるので面食らうわけですが、第1項は層内共分散、第2項は層間共分散なのでありましょう]

 定理2. $U_s$の分散$V(U_s)$は...[略]

 $U_{s}$の漸近正規性について... [難しくてよくわからん]
 推定量の精度は層別無作為抽出のせいでどのくらい改善するかというと...[パス]
 最適割当は...[パス]
 比例割当の場合の最適な層別は...[パス]

(III) 相関係数の推定

 母相関係数を$\rho_{xy}$とする。

 [まず$\sigma_{xx}, \sigma_{yy}, \sigma_{xy}$の推定量とその分散についておさらいがあって...]
 $\rho_{xy}$の推定量を以下とする。
 $R_s = U_{s,xy} (U_{s,xx} U_{s,yy})^{-1}$
 [手元のPDFだと字がかすれちゃってよくわからないんだけど、たぶん上の式であっていると思う。えーと、ちょっと待って、これって一致推定量ではあるけど不偏じゃないと思うんですけど、あってますかね?]

 定理1. $|E[R_s - \rho_{xy}]|$の上界は...[省略するけど、すっごくややこしい式になる。3頁にわたる証明がついている。思うに、ここが3本の論文を通じたハイライトシーンなんだろうな]

 定理2. $R$のMSE $E[(R_s -\rho_{xy})^2]$は...[省略。この式だけで1ページくらい占めている。すげえなあ]

 推定量の精度は層別無作為抽出のせいでどのくらい改善するかというと...[パス]
 比例割当の場合の最適な層別は...[パス]

読了:Wakimoto (1971) 層別抽出デザインにおける母分散・母共分散・母相関の推定

2018年7月26日 (木)

Bethel, J. (1989) Sample allocation in multivariate surveys. Survey Methodology, 15(1), 47-57.
 仕事の都合で読んだ。題名の通り、標本抽出設計における最適割当法(層とかクラスタとかに割り当てる標本サイズを、単に母集団サイズに比例させるんじゃなくて、コストまで考慮してもっとゴリゴリ考える奴) についての論文。
 著者はWestatの人。掲載誌はカナダ統計局の機関誌だと思う。

 いわく。
 多目的的な調査における標本の最適割当問題について最初に論じたのはNeyman(1934)であった。以来、この問題へのアプローチは次の2つに大別される。

 本論文では線形不等性制約のもとでの最適割り当てを閉形式で与える。本研究の利点は...[略]

 層別無作為抽出について考える。層の数を$I$, 変数の数を$J$とする。層$i$における$j$番目の変数の分散を$S^2_{ij}$, 層の標本サイズを$n_i$, 母集団に占める層の割合を$W_i$とする[原文では$W^2_i$となっているがミスプリであろう]。有限母集団修正は無視できるものとする。
 いま、次の制約が課せられているとする。任意の正の定数$v_j$について、
 $Var(\bar{y}_j) \approx \sum_i W^2_i S^2_{ij} / n_i \leq v^2_j$
以下では
 $a_{ij} = W^2_i S^2_{ij} / v^2_j$
と定義し[原文では$W$は小文字だが直した]、これを「標準化精度単位」と呼ぶ。$a_{ij} \geq 0$である。$\mathbf{a}_j = (a_{1j}, \ldots, a_{Ij})^T$とする。

 コスト関数を定義しよう。$x_i = 1/n_i$($n_i$が0なら無限大)として
 $g(\mathbf{x}) = \sum_i c_i / x_i, \ \ c_i > 0$
とする[要するに票単価を$c_i$としますってことね]。固定コストをいれてもいいけど以下の話には影響しない。

 この最適割当問題は以下のように定式化できる。
 Minimize $g(\mathbf{x})$
 subject to
  $\mathbf{a}_j^T \mathbf{x} \leq 1, \ \ j=1,\ldots, J$
  $\mathbf{x} > 0$

 さて、単一変数の最適割当についてはすでに良く知られている。$J=1$のときの上の問題の解$\mathbf{x}^*$は, すべての$i$について$a_{i1} > 0$のときにのみ有限となり
 $x^*_i = \sqrt{c_i} / \left( \sqrt{a_{1i}} \sum_k \sqrt{c_k a_{k1}} \right)$
である。
 これを$J > 1$へと拡張すると... [省略するけど、拡張できるんだそうです]

 $v_i$をちょっぴり動かしたらコストがどう変わるか...[これをシャドー・プライスと呼ぶ由。へー。内容のメモは、まあいいや、省略]
 最適化プログラミングにおける注意点 ... [パス]
 考察...[パス]

 。。。というわけで、こりゃあ私の能力を超える内容だ、と早々に見切ってしまったのだが、最適割当という問題に対する土地勘を養いたかっただけなので、この論文はこれでよし、ってことにしましょー。

読了: Bethal (1989) 目的変数が複数ある調査の標本抽出設計における最適割当法

2018年7月23日 (月)

堤盛人・瀬谷創 (2012) 応用空間統計学の二つの潮流:空間統計学と空間計量経済学. 統計数理, 60(1), 3-25.
 これもしばらく前にめくったやつ。瀬谷・堤「空間統計学」の基になっているような感じの内容であった。

読了:堤・瀬谷(2012) 空間統計学と空間計量経済学

久保川達也 (2006) 線形混合モデルと小地域の推定. 応用統計学, 35(3), 139-161.
 小地域推定についての解説論文。Rao & Molina本を読む前に目を通した気がするんだけど、記録がないので、整理の都合上読み直した。
 いくつかメモ:

読了:久保川(2006) 線形混合モデルで小地域推定

2018年7月20日 (金)

Chandra, H., Kumar, S., Aditya, K. (2016) Small area estimation of proportions with different levels of auziliary data. Biometrical Journal, 60(2), 395-415.
 二値データの小地域推定について、推定方法をシミュレーションで比較した実験。仕事の都合で、まさにこういうのを探していたんです。著者らはインド・ニューデリーの人。ありがとう、インドの先生。
 ちょっと細かめにメモを取った。

1. イントロダクション
 二値データの小地域推定、つまり小地域における割合の推定においては、ロジット・リンクの一般化線形混合モデル(GLMM)が用いられることが多い。ユニットレベル共変量がある場合、小地域における割合の推定には経験的プラグイン予測量(EPP)が使われることが多い。実はMSEを最小化する推定量は他にあるのだが(経験的最良予測量, EBP)、閉形式でなく数値近似が必要なのであまり使われていない。
 一般に小地域モデルは地域レベルとユニットレベルに大別される。地域レベルではFay-HerriotモデルによるEBLUP推定量が知られている。地域レベルモデルもユニットレベルモデルも線形混合モデルの特殊ケースである。
 二値の場合、地域レベルでもユニットレベルでも、結局はロジット・リンクのGLMMが使われているわけだが、ユニットレベルモデルのEPPと地域レベルモデルのEPPは異なる。最近では地域レベルポアソン混合モデルのEBPというのも開発されている。
 二値データの場合、どういう共変量があったらどういう推定量を使うべきか。本論文では、ロジット・リンクのGLMM(すなわちロジスティック正規混合モデル)のもとでのいろんな推定量について述べる。

2. 小地域推定
 母集団$U$(サイズ$N$)が、小地域$U_1, \ldots, U_D$(サイズ$N_1, \ldots, N_D$)に重なりなく完全に分割されているとする。母集団から標本$s$(サイズ$n$)を取ってきた。小地域別にみると$s_1, \ldots, s_D$(サイズ$s_1, \ldots, s_D$)である。抽出されなかった残りの部分を$r_1, \ldots, r_D$とする。
 小地域$i$のユニット$j$の関心ある変数の値を$y_{ij}$とする。本論文ではこれを二値とする。
 いま推測したいのは$P_i = (1/N_i) \sum_{j \in U_i} y_{ij}$である($U_i$は$s_i$と$r_i$からなるという点に注意)。

 デザインベース直接推定量(DIR)は
 $\hat{P}^{DIR}_i = \sum_{j \in s_i} w_{ij} y_{ij}$
と書ける。ここで$w_{ij}$は調査ウェイトで、$\sum_{j \in s_i} w_{ij} = 1$と基準化されている。
 $\hat{P}^{DIR}$のデザインベース分散は
 $var(\hat{P}^{DIR}_i) \approx \sum_{j \in s_j} w_{ij}(w_{ij}-1)(y_{ij} - \hat{P}^{DIR}_i)^2$
と近似できる。
 SRSならば、
 $\hat{P}^{DIR}_i = (1/n_i) \sum_{j \in s_i} y_{ij}$
 $var(\hat{P}^{DIR}_i) \approx (1/n_i) \hat{P}^{DIR}_i (1-\hat{P}^{DIR}_i)$
である。
 
 では小地域モデルについて。
 ユニットレベル共変量を$\mathbf{x}_{ij}$(長さ$p$)とする[書いてないけどどうやら切片項もコミである]。$\pi_{ij} = Prob(y_{ij} = 1)$として、ロジットリンクGLMM
 $logit(\pi_{ij}) = \mathbf{x}^T_{ij} \mathbf{\beta} + u_i, \ \ u_i \sim N(0, \sigma^2)$
を考える。$u_i$は互いに独立。[←ここで$j$が$N_i$まで動く点に注意。つまりこれは母集団モデルである]
 
 このモデルによる経験的プラグイン予測量(EPP)は
 $\hat{P}^{EPP}_i = (1/N_i) (\sum_{j \in s_i} y_{ij} + \sum_{j \in r_i} \hat{\mu}_{ij})$
ただし$\hat{\mu}_{ij} = logit^{-1} (\mathbf{x}^T_{ij} \hat{\beta} + \hat{u}_i)$である。
 [原文では、$\hat{\mu}_{ij} = \exp(\mathbf{x}^T_{ij} \hat{\beta} + \hat{u}_i) / (1+\exp(\mathbf{x}^T_{ij} \hat{\beta} + \hat{u}_i))$とあるけれど、書くのが面倒なので$logit^{-1}(\cdot)$と略記する。以下同様]
 ここで$\hat{\beta}$は固定効果パラメータの推定値、$\hat{u}_i$はランダム効果パラメータの予測値である。
 GLMMの推定手続きとしてもっともよく使われているのはPQLである。この方法では、反応変数の非正規な分布を線形近似し、線形化された従属変数が近似的に正規分布に従うと仮定する。場合によっては一致性・不偏性が失われるものの、経験的には上手くいく。

 ここからは、共変量の入手可能性に応じた、3つのケースについて考える。

 ケース1、標本ユニットでのみ共変量が入手可能であるケース。
 この場合、モデルのあてはめは可能だが、EPPは手に入らない。そこで次の推定量(EPP1)を提案する。
 $\hat{P}^{EPP1}_i = \sum_{j \in s_i} w_{ij} \hat{\mu}_{ij}$
EPP1はDIRより効率的だが、モデルの誤指定によるバイアスはDIRより大きい。EPP1は、標本抽出ウェイトに対応する回数だけ共変量の値を反復し、共変量のセンサスを再作成し、このセンサスを使って、ロジット混合モデルで確率を予測していることになる[←ややこしい...]
 EPP1の欠点は、標本ユニットのアウトカムを使っていない点である。
 [↑そりゃそうだよなあ、これは変だ。もっと良い推定量があるんじゃなかろうか...]

 ケース2, 標本ユニットで共変量が入手可能で、かつそれらの共変量の母集団での集計値が入手可能であるケース。
 $\bar{\mathbf{X}}_i = (1/N_i) \sum_{j \in U_i} \mathbf{x}_{ij}$, $\bar{\mathbf{x}}_i = (1/N_i) \sum_{j \in s_i} \mathbf{x}_{ij}$とすると、ここから非標本ユニットにおける平均$\bar{\mathbf{X}}_{r_i}$がわかる[面倒なので式は省略するが、そりゃわかるよな]。
 まずモデルをあてはめて$\hat{\beta}$, $\hat{u}_i$を得る。で、$\hat{\mu}^{EPP2}_{ij} = logit^{-1} (\bar{\mathbf{X}}^T_{r_i} \hat{\beta}+ \hat{u}_i)$を求める。推定量は
 $\hat{P}^{EPP2}_i = (1/N_i) (\sum_{j \in s_i} y_{ij} + \sum_{j \in r_i} \hat{\mu}^{EPP2}_{ij} )$
 標本平均$p_i = (1/n_i) \sum_{j \in s_i} y_{ij}$, 標本抽出割合$f_i = n_i / N_i$を使って書き直すと
 $\hat{P}^{EPP2}_i = f_i p_i + (1-f_i) \hat{\mu}^{EPP2}_{ij}$
$f_i$が小さく、かつ$\bar{\mathbf{X}}_i \approx \bar{\mathbf{X}}_{r_i}$なら、$\bar{\mathbf{X}}_{r_i}$の代わりに$\bar{\mathbf{X}}_i$を使って
 $\hat{P}^{EPP2.1} = f_i p_i + logit^{-1} (\bar{\mathbf{X}}^T_i \hat{\beta} + \hat{\mathbf{u}}_i)$
でもよい。$f_i$が無視できる大きさなら、
 $\hat{P}^{EPP2.2} = logit^{-1} (\bar{\mathbf{X}}^T_i \hat{\beta} + \hat{\mathbf{u}}_i)$
でもよい。

 ケース3, 共変量の母集団集計値だけが入手可能であるケース。
 この場合はさきほどのモデルのあてはめ自体が無理で、
 $logit(\pi_{ij}) = \bar{\mathbf{X}}^T_i \mathbf{\alpha} + v_i, \ \ v_i \sim N(0, \sigma_v^2)$
をあてはめるしかない。で、$\hat{\mu}^{EPP3}_{ij} = logit^{-1} (\bar{\mathbf{X}}^T_i \hat{\alpha}+ \hat{u}_i) $ を求める。推定量は
 $\hat{P}^{EPP3}_i = (1/N_i) (\sum_{j \in s_i} y_{ij} + \sum_{j \in r_i} \hat{\mu}^{EPP3}_{ij} ) = f_i p_i + (1-f_i) \hat{\mu}^{EPP3}_{ij}$
となる。標本抽出割合が無視できる大きさなら、
 $\hat{P}^{EPP3.1}_i = \hat{\mu}^{EPP3}_{ij}$
でもよい。これはEPP2.2と同じになるけど、元のモデルは異なる。[ああそうか。どちらも横着して非標本ユニットだけに注目している点では同じだが、EPP2.2は非標本ユニットにおける共変量の母平均を考えるのが面倒だから全体の母平均を使っているのに対して、EPP3.1は最初から全体の母平均しかわかんないわけだ]

 ...という路線のほかに、ふたつ代替路線がある。両方とも、ケース2と3で使える。
 代替路線その1,地域レベルでモデルを組む。
 $logit(\pi_i) = \bar{\mathbf{X}}^T_i \lambda + a_i, \ \ a_i \sim N(0, \sigma_a^2)$
とする。推定量は
 $\hat{P}^{EPP.A}_i = logit^{-1} (\bar{\mathbf{X}}^T_i \hat{\lambda}+ \hat{a}_i)$
となる。まず$\sigma_a^2$をREML推定し、次に$\lambda$と$a_1, \ldots, a_D$を
PQL推定する。詳細はChandra et al. (2011 J.App.Stat.), Johnson et al. (2010 J.Official Stat.)をみよ。
 代替路線その2,Fay-Herriotモデルを組んじゃってEBLUP推定量を使う(EBLUP.FH)。これは推定値が$[0,1]$の外側に出ちゃうかもしれない。[Fay-Herriotモデルの場合、小地域ごとの標本抽出誤差の分散が既知でないといけないと思うんだけど、そこはどうやったんだろう? $n_i p_i (1-p_1)$としたのかな?]

 [話が長くなってしまったので、EBLUP.FHを除くすべての推定量を同一の記法で書き直しておく。なお、
 $logit(\pi_{ij}) = \mathbf{x}^T_{ij} \mathbf{\beta} + u_i, \ \ u_i \sim N(0, \sigma^2)$
 $logit(\pi_{ij}) = \bar{\mathbf{X}}^T_i \mathbf{\alpha} + v_i, \ \ v_i \sim N(0, \sigma_v^2)$
である。うーん、こうしてみると、標本ウェイトがEPP1でしか使われていないという点も不思議だなあ...]

3. MSE推定[略]

4. シミュレーション
 というわけでシミュレーションをふたつやります。(1)モデル・ベース・シミュレーション。データ生成モデルをつくって母集団を都度生成する。(2)デザイン・ベース・シミュレーション。実データを母集団にみたてて標本抽出する。
 まず評価基準を定義しておく。
 $k$回目の反復における小地域$i$の割合を$p_{ik}$とする[直接推定量ではなくて母平均のことらしい。よってデザインベースの場合は$k$を通じて同一]。その推定値を$\hat{p}_{ik}$, MSE推定値を$mse_{ik}$とする。$p_{ik}$の全$K$回を通じた平均を$P_i$とする[デザインベースの場合は$p_i$と等しいってことでしょうね]。
 推定量のMSEの推定値を$mse_{ik}$, 真値を$MSE_i = mean_k ( (\hat{p}_{ik} - p_{ik})^2 )$とする。
 [以下、簡略のため $(1/K)\sum_k^K(\cdot)$を$mean_k (\cdot)$と略記する]

 シミュレーション1,モデルベース・シミュレーション。
 $D=30, N_i=500$とする。母集団生成モデル(後述)に従って母集団を生成し、地域を層にした層別無作為抽出で標本を抽出し、いろんな推定量で推定する。以上を$K=1000$回繰り返す。
 分析モデルは:
 $y_{ij} \sim Binomial(1, \mu_{ij})$
 $\mu_{ij} = logit^{-1} (1+x_{ij} + u_i)$
 $u_i \sim N(0, \sigma^2)$ (iid)
 $x_{ij} \sim \chi^2(1)$ (iid)

 要因は:

[他にMSE評価のために別のシミュレーションをやっているけど、省略]

 結果。
 [ここでは考察はなく、表のみ示されている。表を眺めていて結構びっくりしたので、メモしておく。
 推定量のパフォーマンス(Table 1), $n_i=5, \sigma^2=0.25$をみると、まずEBLUP.FHはバイアスRB(P)が法外に大きいので除外してよい。他の推定量について分散RRMSE(P)を比べると、DIRが20.3, EPPが9.2。肝心の提案推定量は、EPP1, EPP2系, EPP3系がいずれも10から12なのに対して、なんとEPP.Aの成績が良い(9.56)。かつ、EPP2系はなぜかバイアスRB(P)が大きくなるのに対して、EPP.AはバイアスにおいてもDIRと遜色ない小ささを誇る。つまり、EPP.A (地域レベルGLMM)の成績は、EPP(ユニットレベルGLMM)に匹敵するのである。
 まじか。それって、仮に共変量の母平均$\bar{\mathbf{X}}_i$が手に入っている場合(たとえば小地域が国勢調査小地域、共変量が性年代だというような場合)、非標本の共変量がわからないならば、たとえ標本の共変量をユニットレベルで測っていたとしても(ケース2)、それを捨てて地域レベルGLMMを組んだほうがよい、ということだ。言い換えると、$y_{ij}$と$x_{ij}$の地域内での共分散は捨てて良いということだ。不思議だ...
 このメモは論文を一通り読み終えてから書き直しているので、ここで感想をメモしておくと、上記の知見がどこまで一般化可能なのかという点について非常にもやもやした気持ちが残る。頭が整理できていないんだけど、生成モデルにおいて共変量が地域と直交しているという点がどうもひっかかる。このとき、$y_{ij}$と$x_{ij}$の地域内での共分散は存在するいっぽう、($N_i$が十分に大きければ)小地域特性の予測に共変量は効かないわけだ。だからどうだと論理的に説明できないんだけど、これってすごく特殊な状況なのではないかと...]

 シミュレーション2,デザインベース・シミュレーション。
 インドのNational Sample Survey Office (NSSO)による、ビハール州のdebt investment についての標本調査データを使う。38地域, 母集団サイズは52~140。ここから20件づつ層別無作為抽出して分析する。
 目的変数は「世帯が貸付残高を持っているか」。共変量は所有している土地の広さ。
 [面倒になってきたのでここからのメモは省略するが、動かすのは標本サイズだけである]

 結果の考察。
 推定量についてみると、

 MSEについてみると、

5. 実データへの適用[略]

6. 結論
 提案手法はEPPのかわりとして使えることがわかった。EPP1のMSEも使えることがわかった。
 今後の課題: 空間モデルへの拡張、よりよいMSE推定の開発。

 ... やれやれ、疲れた。
 
 論文の内容に対する疑問をメモしておくと:(1)ベイジアンならどうなるのか。これは自分で試せって話でしょうね。(2)上にメモしたように、なぜEPP.Aの成績がよいのかという点に興味を惹かれる。

 実のところ、この論文を読んだ最大の理由は、すべてのシミュレーションのRコードが公開されているという点にある。そういうの、ほんとに助かります。まだちゃんとみてないけど、lme4パッケージを使っているようだ。

読了:Chandra, Kumar, Aditya (2018) 二値データの小地域推定

2018年7月13日 (金)

Wall, M.M. (2004) A close look at the spatial structure implied by the CAR and SAR models. Journal of Statistical Plannning and Inference, 121, 311-324.
 仕事の合間に読んだ奴。空間計量経済学でいうところのSARモデル(同時自己回帰モデル)とCARモデル(条件つき自己回帰モデル)は、特に不規則格子に適用したとき、意外な相関構造をもたらすよ、という論文。
 なんの気なしに読み始めたら、これがほんとに面白くって... 最後まで一気読みしてしまった。

 説明の都合上、まずはモデルの定式化から。
 $\{A_1, \ldots, A_n\}$が$D$の格子になっているとする(つまり、$D$を重なりなく完全に分割しているとする)。$\{Z(A_i): A_i \in (A_1, \ldots, A_n)\}$をガウス過程とする。
 [以下、本文ではいちいち$Z(A_i)$と書いているけど、うざいので$Y_i$と略記する]

 SARモデルとは、
 $Y_i = \mu_i + \sum_j^n b_{ij} (Y_j - \mu_j) + \epsilon_i$
 $\mathbf{\epsilon} = (\epsilon_1, \ldots, \epsilon_n)' \sim N(\mathbf{0}, \mathbf{\Lambda})$
ただし$\mathbf{\Lambda}$は対角行列。$\mu_i = E[Y_i]$。$b_{ij}$は定数で($b_{ii}=0$)、既知でも未知でもよい。[この定式化だと、空間自己回帰パラメータは$b_{ij}$のなかに入ってるわけね]
 $n$が有限なら、$\mathbf{Y} = (Y_1, \ldots, Y_n)'$, $\mathbf{\mu} = (\mu_1, \ldots, \mu_n)'$, $\mathbf{B} = (b_{ij})$として
 $\mathbf{Y} \sim N(\mathbf{\mu}, (\mathbf{I} - \mathbf{B})^{-1} \mathbf{\Lambda} (\mathbf{I} - \mathbf{B})^{-1'})$
である。$\mathbf{B}$は、隣接行列を$\mathbf{W}$として$\mathbf{B} = \rho_s \mathbf{W}$とすることが多い。この場合
 $\mathbf{Y} \sim N(\mathbf{\mu}, (\mathbf{I} - \rho_s \mathbf{W})^{-1} \mathbf{\Lambda} (\mathbf{I} - \rho_s \mathbf{W})^{-1'})$
である。

 CARモデルでは、$Y_{-i} = \{Y_j: j \neq i\}$と書くとして
 $Y_i | Y_{-i} \sim N \left( \mu_i + \sum_j^n c_{ij} (Y_j - \mu_j), \tau^2_i \right)$
ただし、$\mu_i = E[Y_i]$。$c_{ij}$は定数で($c_{ii}=0$)、既知でも未知でもよい。
 $n$が有限なら、$\mathbf{C} = (c_{ij})$とし、対角に$\tau_i^2$を持つ対角行列を$\mathbf{T}$として
 $\mathbf{Y} \sim N(\mathbf{\mu}, (\mathbf{I} - \mathbf{C})^{-1} \mathbf{T})$
である。$\mathbf{C}$は、隣接行列を$\mathbf{W}$として$\mathbf{C} = \rho_c \mathbf{W}$とすることが多い。この場合
 $\mathbf{Y} \sim N(\mathbf{\mu}, (\mathbf{I} - \rho_c \mathbf{W})^{-1} \mathbf{T})$
である。

 隣接行列$\mathbf{W}$の要素$w_{ij}$は、隣だったら1, そうでなかったら0とすることが多いが、行の和を1にしたり、もっといろいろ工夫することもある。行で基準化する理由は、近接地域の数が変動するときに内的整合性が失われるからである。
 なお、CARモデルでは$\mathbf{W}$と$\mathbf{T}$が$w_{ij} \tau_j^2 = w_{ji} \tau_i^2$を満たさなければならない。
 
 なお、CARをもっと限定したICAR(intrinsic CAR)モデルもあるが、ここでは扱わない。

 準備はできた。ここからが本題。

 米48州のSAT言語得点平均をモデル化してみる。共変量は受験率とし(中部の州は受験率が低く得点平均が高い)、二次の項もいれる。
 誤差項について次の4つのモデルを比較する。

 誤差項の予測値を比較すると、SARとCARはだいたい同じで(CARのほうが分散が大きい)、バリオグラムモデルとはずいぶんちがう。よくみると、SARとCARでは隣接している2州のあいだでも相関がちがっている[ああそうか、州の形が不規則だからね]。バリオグラムモデルの場合は経験バリオグラムをみれば残差の空間構造が適切かどうかチェックできるが、SARとCARでは共分散に体系的な構造がなく、それが空間構造の記述として適切かどうかを調べる方法がないのである。[←なるほどー]

 こんどは、同じ米48州の隣接行列$\mathbf{W}$を使って、SARとCARの共分散行列が$\rho_s, \rho_c$とともにどう変わるかを調べてみよう。つまりこれはデータと関係ない話である。
 $\rho_s$と$\rho_c$がとりうる範囲は、$\mathbf{W}$の固有値を$\omega_i$として、$i=1, \ldots, n$について$\rho_s \omega_i < 1$, $\rho_c \omega_i < 1$である、と通常考えられている。厳密にいうと、SARモデルの場合には$\rho_s \neq 1/\omega_i$が満たされていればよいのだが、$\rho_s$の解釈が難しくなる。[...このくだり、理解が追いつかない。あとで勉強しておこう。Haining(1990)という教科書がreferされている]
 まあとにかく、この米48州の隣接行列でいえば、$\rho_s, \rho_c$は(-1.392, 1)の範囲を動ける。
 $\rho_s, \rho_c$を動かしながら、隣接州(107ペア)の相関がどうなるかをチャートにしてみると、面白いことがわかる。
 $\rho_s, \rho_c$が0のとき、隣接州の相関は0になる。増やしていくと相関も単調に上がっていき、1まで増やせばみんな相関1になる。なお、CARモデルで$\rho_c$を増やした時よりも、SARモデルで$\rho_s$を増やしたときのほうが、隣接州の相関は速く上がる。ここまでは、まあ、いいですよね。
 問題はここからだ。隣接州107ペアの相関の高さの順序は一定でない。$\rho_s$なり$\rho_c$なりを増やしていくと、順序がどんどん入れ替わっていくのだ。
 さらに。$\rho_s, \rho_c$を負の方向に動かした時は奇妙なことが起こる。最初はどのペアの相関も負になっていくが、途中から突然正の相関を持つペアが生じるのである。結局、107ペアのうち37ペアは正になる。どういうペアが正になるかを簡単に説明する方法はない。
 
 このように、SARモデル・CARモデルによる空間相関は直観に反する。なお、これは$\mathbf{W}$の行規準化をやめても変わらない。

 かつてCressie(1993)は、$\mathbf{B}, \mathbf{C}$を「空間従属行列」と呼んだ。この行列の要素$(i,j)$は、地点$i, j$の相互作用の程度を表現していると考えられてきた。そういう言い方は実はミスリーディングである。空間構造を本当に説明しているのは$(\mathbf{I} - \mathbf{B})^{-1}$, $(\mathbf{I} - \mathbf{C})^{-1}$である。$\mathbf{B}, \mathbf{C}$と空間相関のあいだに直観的な関係はない。空間構造に関心があるなら、地球統計学のモデルのように、共分散構造を直接モデル化する手を考えたほうが良い。

 SARモデル・CARモデルは広く使われているが、その意味についてきちんと考えている人は少ない。これはおそらく、分析者の関心が空間構造そのものというより回帰の予測子に向けられているからだろう。しかし!もしあなたが、モデルがデータに合致しているかどうかを決めようという立場なら、まずはモデルの意味を知ろうとしたほうがいいんじゃないですか?
 云々。

 。。。いやー、これは面白かった。
 このたび小地域推定の関連で勉強していて、SARモデルやCARモデルって直観的にはどういうことなのだろうかと不思議に思っていたのである。だって、どちらもローカルな空間的従属性についてモデル化しているのに、結局は大域的な相関構造が生まれるじゃないですか。隣接行列をいくら思い返しても、相関行列が想像できない。そうか、あれは直観的にわかる話ではないのね。謎が氷解したという感じだ。
 空間自己相関パラメータが負になった時にとんでもないことが起きるというのも面白かった。たしかにね、地域の形が不規則だったら、なにが起きても不思議でない。
 というわけで、きちんと積み上げて勉強している人にとっては当たり前の話をしているのかもしれないけど、私のように付け焼刃だけで凌いでいる者にとっては、とても啓蒙的な論文であった。思わずwebで写真を探してしまった(町内会の会合にクッキー持ってきそうな、気の良さそうな女性であった)。メラニー先生、どうもありがとー。

読了: Wall (2004) SARモデル・CARモデルは実は君が思っているような空間モデルではないかもしれないよ?

2018年6月 8日 (金)

Min, Y., Agresti, A. (2002) Modeling nonnegative data with clumping at zero: A survey. Journal of The Iranian Statistical Society, 1, 7-33.

 仕事の都合で知りたいことがあって、タイトルがまさにジャスト・ミートだったもので読んだ論文。
 掲載誌は... イラン統計学会...?! なぜにイラン?! とびびりましたが、Google Scholar上では被引用回数94, 第二著者はカテゴリカル・データ解析の神様アグレスティ先生、読んでも損はなかろうかと。
 タイトルにあるClumping at Zeroという表現、なんと訳したらいいのかよくわからないんだけど、要はゼロがいっぱいあるということであろう。

1. イントロダクション
 連続的分布を持っているけど値0の確率質量だけが不連続。こういうのを半連続変数と呼ぼう。これに関連するタイプのデータとしてゼロ過剰カウントデータがある。なお、これらを左打ち切り(censored)データと混同しないように。ここで値0は本物のアウトカムである。
 半連続データやゼロ過剰カウントデータを扱う際の難しさは、正規分布やガンマ分布を当てはめるわけにいかないという点にある。本論文は、このような「ゼロに集まっている」データをモデリングするための方法についてレビューする。

2. 半連続データのモデル
 初期の研究は主に計量経済学でなされた。Tobin(1958)は耐久財の世帯支出を記述するための打ち切りつき回帰モデルを提案した。いまでいうところのTobitモデルである。この系統のモデルは正規確率変数がなんらかのメカニズムで打ち切られると考える。
 このほかに、正規分布を仮定しない系統の研究もある。

2.1 Tobitモデル
 反応変数を$Y$とする。被験者$i$の観察を$y_i$とする。
 Tobitモデルではこう仮定する。正規分布に従う変数$Y^*_i$を考えて、それが0より大なら$y_i = y^*_i$、でなければ$y_i = 0$。
 説明変数ベクトル$x_i$があるならば
 $y^*_i = x'_i \beta + u_i$
ただし$u_i$はiidに$N(0, \sigma^2)$に従う。
 TobitモデルはML推定できる。$N(0,1)$のCDFを$\Phi(\cdot)$, PDFを$\phi(\cdot)$として、Tobitモデルの尤度関数は...[略]。
 セミパラ推定の提案もある...[略]。そっちのほうが性能がいいという研究がある。

2.2 Two-partモデル
 Tobitモデルでは、反応がゼロか正値を決める確率的過程と、反応が正値であるときにその値を決める確率的過程とが同じである。ここからはそうでないモデル。

 Duan et al.(1983)はこう考えた。
 $logit(P(Y_i=0)) = x'_{1i} \beta_1$
 $log(y_i | y_i > 0) = x'_{2i} \beta_2 + \epsilon_i$
ただし$\epsilon_i \sim N(0, \sigma^2)$。
 これはわりかし簡単にML推定できる、というか、別々に推定すればいいのである。尤度関数は...[略]。
 このモデルは、アウトカムが本当に正である時のアウトカムのレベルを記述する、条件付きの式を推定している。

2.3 標本選択モデル
 Heckman(1974, 1979)の提案も、Tobitモデルをtwo-partモデルに拡張することであった。その後いろんなバージョンが出てきたんだけど、ここではvan de Ven & van Praag (1981)に基づいて説明しよう。
 観察$i$について、$\{u_{1i}, u_{2i}\}$がiidに二変量正規分布$N(0, \Sigma)$に従うとする。$\Sigma$の対角成分を$\sigma^2_1, \sigma^2_2$とし、非対角を$\sigma_{12}$とする。
 モデルは以下の通り。
 $I_i = x'_{1i} \beta_1 + u_{1i}$
 $y^*_i = x'_{2i} \beta_2 + u_{2i}$
で、$y_i$は$I_i > 0$のときに$\exp(y^*_i)$、そうでないときに$0$になる。

 このモデルはML推定できる。尤度関数は...[略]。
 Heckmanの2段階推定でも推定できる...[説明略]。MLより良いとはいえないけど、すっごくかんたんなので、標準的な推定方法となっている。
 もっとも、Duan et al.(1983 J.Business&Econ.Stat., 1984同誌)いわく、このモデルは数値的にも統計的にもあまりよくない。尤度関数は局所解に落ちるかもしれないし、計算も大変。打ち切られたデータは観察不能だという想定を置いているわけだけど、それを検証する方法がない。2段階推定だと、結局、下位標本について
 $\log(Y_i) = x'_{2i} \beta_2 + (\sigma_{12}/\sigma_{1})\lambda_i + \epsilon_i$
ただし$\lambda_i = \phi(z_i)/\Phi(z_i), z_i = x'_{1i} \beta_i/\sigma_1$という式になるんだけど[ああ...逆ミルズ比っていうんだっけか...]、$\lambda_i$が$x_2$と強く相関していたら推定量が不安定になる。$x_1$と$x_2$は別の変数にしなさいとよく言われるが、そんなの現実的じゃない。
 このモデルは、「もしすべての人がアウトカムを持っていたらそのレベルはなんだったか」を記述する、条件付きでない式を推定している。two-partモデルとの違いにご注目。どっちがいいかという点については議論がある。上述のDuan et al.や, Manning et al.(1987 J.Econometrics), Leung & Yu (1996 J.Econometrics)をみるがよろしい。

2.4 Compound Poisson exponential dispersionモデル
 一般化線型モデルでは指数型分布族
 $f(y_i; \theta_i, \phi) = c(y_i, \phi) \exp(\frac{\theta_i y_i - b(\theta_i)}{\phi})$
を使う。平均$\mu_i$, その分散を$v(\mu_i)$として、$v(\mu)=\mu$とするとポアソン分布である。[ううう...この辺、良く理解できていない...]
 Jorgensen(1987,1997)はこう考えた。$v(\mu)=\mu^p$かつ$1 < p <2$とするとこれは複合ポワソン分布になって...なんたらかんたら... なんたらかんたら...
 [本節、私の能力を超えて大空を飛んでいったので、ぼんやり空を見上げたまま飛び去るのを待ちますが、要するに、半連続変数をひとつの確率分布でうまく表現できるような謎の確率分布を考える、というアプローチらしい。なんだか知らんが推定できるらしい。Tweedie分布という言い回しを聞いたことがあるけど(SASのGENMODとかで)、これがそれかしらん。勉強する気もあまりないんだけど、Rのcplmパッケージというのがこれなんじゃないかと思う]

2.5 順序閾値モデル
 Saei, Ward, & McGilchrist(1996)は、反応変数を順序カテゴリ変数に落とせばいいじゃんと考えた。順序カテゴリ変数$Y_g$の値が、連続潜在変数$Z$と固定閾値で決まると考えるわけね。で、最初のカテゴリを値ゼロを表すカテゴリだってことにすりゃあいい。あとは$Z$のCDFを好きに決めるがよい。ロジスティックとか正規とか。
 two-partモデルとは異なり係数がひとつなので、群間でモデル比較しやすい、というのがメリット。カテゴリに落とすときの恣意性と情報損失がデメリット。
 
2.6 既存アプローチの得失
 ある種の打ち切り反応変数であれば、Tobitモデルや標本選択モデルが向いているだろう。でも、ゼロがほんとのアウトカムなら、たいていの場合正規性仮定に無理があるから、two-partモデルが向いている。合成ポアソン指数型分布モデルも悪くないけど(単一モデルで分析できるという意味ではシンプルだともいえる)、あんまり使われてない。順序反応モデルは簡単でいいけど元データを分析してないというのが欠点。
 というわけで、いちばん適用範囲が広いのはtwo-partモデルだといえましょう。

3. ゼロ過剰カウントデータのモデル
 ゼロが過剰なカウントデータの場合、ただのポアソン分布だと非ゼロの値の変動を説明できない。負の二項回帰モデル(これはポアソン平均のガンマ混合)なり、ポアソン平均の対数のモデルに正規誤差をいれるなりで対処することもあるけど(Agresti本の13章をみよ)、うまくいかないことが多い。たとえば、分布がゼロとどこかの二峰になっている場合、やはり混合分布を考えるほうが自然だろう。

3.1 ゼロ過剰離散分布
 Lambert(1992)はゼロ過剰ポアソン回帰モデル(ZIP回帰モデル)を考えた。このモデルでは、データをゼロとポアソン変量のアウトカムとの混合とみなす。つまり、$Y_i$は確率$p_i$で$0$となり、そうでない場合に$Poisson(\lambda_i)$に従う。二値潜在クラス$Z_i$があるのだと考えても良い。でもって、
 $logit(p_i) = x'_{1i} \beta_1$
 $\log(\lambda_i) = x'_{2i} \beta_2$
とする。
 尤度関数は...[略]。EMアルゴリズムでML推定できる。

 Hall(2000)は、$Poisson(\lambda_i)$じゃなくて$binomial(n_i, \pi_i)$と考えた。こうすると$Y_i$の上界が$n_i$になる。でもって、
 $logit(p_i) = x'_{1i} \beta_1$
 $\log(\pi_i) = x'_{2i} \beta_2$
とする。これもEMアルゴリズムでML推定できる。

 実際のところ、カウントデータにはoverdispersionがつきものである。非ゼロかどうかとか潜在クラスとかで条件づけてもやっぱりそうである。ZIPモデルだと、$Z_i=0$だったら全員同じと考えているわけで、これはやっぱり無理があることが多い。その意味ではZIPモデルよりゼロ過剰な負の二項分布モデルのほうがよい面がある。どっちがよいかを決めるスコア検定というのもある。
 すごく確率が高い値が複数個あるときに注意。たとえば女性の出産数は0か2が多いので、多項ロジットモデルで解いた研究がある。

3.2 ハードルモデル
 これはMullahy(1986)が提案したtwo-partモデル。ひとつは非ゼロかどうかを説明する二値モデルで、これがハードル。もうひとつは、ハードルを越えたという条件の下でアウトカムのレベルを説明するモデルなんだけど、ここで切断(truncate)を考える。切断つきポアソンとか、切断つき負の二項とか。
 たとえばこう考える。[説明がないけど$\lambda$というのはポアソンパラメータであろう]
 $logit[P(Y_i=0)] = x'_{1i} \beta_i$
 $\log(\lambda_i) = x'_{2i} \beta_i$
 すると尤度関数は...[略]。
 カウントの右裾がすごく長いこともある。そういう場合のためのセミパラモデルの提案もある。

3.3 有限混合モデル
 3.1に述べたように、ゼロ過剰離散分布は一種の有限混合分布である。これをもっと緩くして、ゼロの母集団と非ゼロの母集団をはっきり区別しないようにすることもできる... [以下メモは省略するけど、なるほどね、正面からゼロ過剰という問題に取り組むのではなくて、ふつうの潜在クラスポワソン回帰モデルを組むわけね。Wedel, DeSarbo, Bult, & Ramaswamy(1993, J.App.Econ.)というのを読むのがよさそう]

3.4 Neyman type A分布
 ゼロ過剰カウントデータを、Neyman type A分布というのをつかってモデル化するという提案がある。これはポアソン-ポアソン混合分布で...[この節、一読したんだだけど、実現値$Y_i$はあるポアソン分布に独立に従う$N_i$個の変数の和、$N_i$は別のポアソン分布に従う、という悪い冗談のような話であった。人生においてそんなややこしい話と関わり合いを持ちたくないので、パス]

3.5 既存アプローチの得失
 ゼロ過剰モデルとハードルモデルは似ている。母集団は反応がゼロの人々と非ゼロの人々の混合だ、という考え方が自然ならばゼロ過剰モデルがよい。いっぽうハードルモデルはシンプル。さらに、ゼロが過剰なんじゃなくて、標準的な仮定に基づく期待よりも少ないという場合にも、ハードルモデルは使える。
 有限混合モデルは、観察が異なる母集団から抽出されているとみなすのが現実的ならば魅力的。ただし、モデルが適合してないときクラス数が過大評価されるかもしれない。Newman type Aモデルは推定が大変。

4. zero-clumpedな反復測定データのモデリング
 ここまでは横断データの話であった。ここからは、縦断データみたいにクラスタのあるデータ(観察間に相関のあるデータ)について。研究は多くない。

4.1 半連続データの反復測定
 Tobitモデルや標本選択モデルを縦断データに拡張しようという研究はあるんだけど、ゼロが本物のアウトカムだった場合には正規性仮定に無理があるので、本論文では扱わない。

 Olsen & Schafer(2001)は、Duanらのtwo-partモデルを縦断データに拡張している。被験者(ないしクラスタ)$i$, 時点$j$の半連続反応を$y_{ij}$、それが0である確率を$p_{ij}$とする。まずゼロか正値かについてのロジスティック・ランダム効果モデルを組む。
 $logit(p_{ij}) = x'_{1ij} \beta_1 + z'_{1ij} c_i$
$x_{1ij}$と$z_{1ij}$は共変量、$\beta_1$が固定係数、$c_i$がランダム係数。$c_i$はベクトルにしておくけど、通常はランダム切片モデルで十分であろう($c_i$はスカラーで$z_{1ij}$はなし)。
 で、$y_{ij} > 0$のとき$V_{ij} = y_{ij}$として、
 $\log(V_{ij}) = x'_{2ij} \beta_2 + z'_{2ij} d_i + \epsilon_{ij}$
ただし$\epsilon_{ij} \sim N(0, \sigma^2)$。ここでも、通常はランダム切片モデルで十分であろう($d_i$はスカラーで$z'_{2ij}$はなし)。
 $c_i$と$d_i$を縦に繋いで$b_i$とし、$N(0, \Sigma)$に従うということにする。で、ここが工夫なんだけど、$\Sigma$は対角行列じゃなくて、全要素を推定するわけ。
 Olsenらは推定手法をいろいろ比べている。MCMCとかEMとか罰則付き擬似尤度とかGH求積とか高次ラプラス近似とか。[ああ、そうか...よくわかんないけど、これって一般化線形混合モデルに近い話なのではなかろうか...]

 順序閾値モデルを拡張するというアイデアもある。Saei, et al.(1996)は...[略]
 
4.2 ゼロ過剰データの反復測定
 Hall(2000)はゼロ過剰ポアソンモデルを時系列に拡張している。
 例によって、$Y_{ij}$は確率$p_{ij}$で0、そうでなかったら$Poisson(\lambda_{ij})$と考える。で、
 $logit(p_{ij}) = x'_{1ij}\beta_1$
 $log(\lambda_{ij}) = x'_{2ij} \beta_2 + b_i$
ただし$b_i \sim N(0, \sigma^2)$と考える。尤度は...[略]。推定は...[略]。なお、ポワソンじゃなくて$binomial(n_i, \pi_{ij})$とし、二本目で$logit(pi_{ij})$のモデルを組むという手もある。
 一本目のほうにはランダム効果が入っていない点にご注目。

 You & Lee(2001)はハードルモデルにランダム効果をいれるというのを提案していて...[略]。

5. clumpが2つあるデータへの適用
 たとえばゼロと最大値がやたらに多いというような場合のように、clumpがふたつある場合にはどうするか。これは患者の順守(compliance)の研究で問題になる。全然いうことを聞かない患者と、完璧に言うとおりにする患者が多いから。ロジット変換して0-1データを実数データにしたところで、clumpに対処したことにはならない。というわけで、我々はいまこの問題を研究してます。

6. 今後の課題
 まず、時系列データの研究が足りない。[いくつか「あのモデルをこう変えるのはどうか」的なことが書いてある。略]
 半連続データの手法はたいがい、正値であれば対数正規だと仮定している。でもたとえば医療費はもっと右に裾を引く。セミパラな手法のほうがいいかもしれない。
 云々。

 。。。やれやれ、読み終えたぞ。
 そんなに重量級のレビューって感じではなくて、修論かなにかの1章を切り出したような感じだけど、勉強になりました。セレクション・バイアスに対するヘキットみたいなアプローチと、ゼロ過剰カウントデータに対するアプローチはたいてい別の文脈で説明されていると思う。私のような初学者は学習時の文脈に過度に制約されちゃうきらいがあるので、こういう風に、多様な文脈にまたがる話を統一的な記法でレビューしてもらえると、すごくすっきりする。ありがとう著者のみなさん、ありがとうイランのみなさん。

 半連続データのところ、意外にもヘキットでなくてTwo-partモデル推しであった。考えてみると、データが半連続であるということの背後にある発生メカニズムを特定せず、一般的にレビューすれば、それはそうなるんだろうなと思う。ヘキットというのは誤差に対して結構きつい仮定を置いているわけで、どこでも使えるわけじゃない。やっぱし、いろんなツールについて知っていることと、目の前の現象について都度都度真剣に考えること、この両方がないといかんのだなあ...と、これは反省の弁である。

読了:Min & Agresti (2002) ゼロがやたらに多い非負データの分析方法レビュー

2018年5月28日 (月)

Dotson, J.P., Howell, J.R., Brazell, J.D., Otter, T, Lenk, P., MacEachern, S., Allenby, G.M. (2018) A Probit Model with Structured Covariance for Similarity Effects and Source of Volume Calculations. Journal of Marketing Research, 55(1), 35-47.
 新製品のSOV(Source of volume)測定について考えていて、なにかの足しになるかと思って読んでみた。先日出たばかりの論文である。

 数ページ読んで、コンジョイント分析に特化した分析手法提案であることに気づき、ちょっとやる気が萎んだ。前半の理論編を読み終えるあたりでようやく、ベイズモデリング界の有名人・Allenby兄貴が共著者であることに気づき、急速にやる気が衰えた。でもまあ、いちおう最後までめくりました。

 いわく。
 SOV(source of volume)、つまり需要変化の源について知ることは大事だ。わが社の新製品が自社の現行製品とカニバリゼーションを起こさないかしらん、とか。
 製品間の代替性のパターンを完全にモデル化するとなると、製品数を$J$個として$J^2-J$個の交差効果が必要になる。コンジョイント分析なんかだと架空の製品がたくさんあるわけで、とてもじゃないがモデル化できない。
 ロジットモデルの世界では、代替性のパターンを柔軟にモデル化するよりも倹約性のほうが重視される。というわけで、ふつうIIAが仮定される。IIA仮定をおいたロジットモデルでは、個人レベルでのSOVは計算できないけど、消費者には異質性があるから、累積レベルではSOVが計算できるんだよ、という理屈である。我々はこういう路線は採らない。ほんとうの問題は、ロジットモデルは選択肢間での誤差の相互依存性を説明していないという点にある。
 そこで、多項プロビット(MNP)モデルに、構造化した共分散行列を導入する。この共分散行列は選択肢間の知覚距離に基づいて決める。知覚的に類似した選択肢の間では選択確率が相関すると考えるわけである。
 多項モデルに誤差の相関を導入する提案はすでにある。Hausman&Wise(1978)は正規誤差を、McFadden(1978)は極値誤差を考えた。しかしそういうモデルでは、誤差項は提示順序とかブランドとかと結びつけて考えられており、それぞれの選択肢の具体的な属性・水準と関連付けられることはなかった。[←そうなんですか?]
 
 モデル。
 マーケティングにおける選択モデルは、ふつう誤差項がiidだと仮定する。そのため、どんな選択肢でも誤差項の実現値によっては勝ちうるということになり、弱い製品への需要が過大評価され、予測シェアは0にならない。
 このようにモデルの倹約性に価値が置かれていたのは、マーケティング・データはふつう、対象者数は大きいけど対象者あたりの観察数が小さいからである。誤差項に相関を許した先行研究もあるけれど、異質性の表現だけが目的だったり、nested logitモデルによって相関構造を制約したりしていた。
 さて、我々のモデルは次の通り。
 製品の属性のうち観察可能なのを$x_o$、観察不能なのを$x_u$とする。世帯特性のうち観察可能なのを$h_o$, 観察不能なのを$h_u$とする。$x= [x_o, x_u], h=[h_o, h_u]$とする。
 効用関数を
 $u(x, h) = V(x_o, h_o) + \epsilon(x, h)$
と仮定する(誤差項は加算されるのだと仮定する)。意思決定者は選択を通じて効用を最大化すると仮定する。
 決定論的効用について、選択課題を$c$、選択肢を$k$として
 $V_h(x_{hck}) = x'_{hck} \beta_h$
と考える。
 さらに、誤差項も$x, h$の関数と考える。誤差$\epsilon_{hck}$は平均ゼロの正規分布に従うと考え、その共分散行列を世帯x選択課題別に$\Sigma_{hc}$とする。これはサイズ$K$の行列で(つまり行と列は選択肢)、対角要素は1、非対角要素は$\sigma_{ij}$である。なお、対角要素を1にしないというのも試したが、モデルの性能は上がらなかった。
 当然ながら、世帯x選択課題別に共分散行列を推定できるだけのデータはない。そこで$\sigma_{ij}$についてこうモデル化する。
 $\sigma_{ij} = \exp(-d_{ij}/\theta_h)$
$d_{ij}$はスカラーで、選択肢$i, j$の距離を表す。$\theta_h$は距離をリスケールするパラメータで、未知の世帯特性によって決まると考える。ゼロに近いときにIIAに近づく。

 では、選択肢$i$と$j$のあいだの距離$d_{ij}$をどうやって求めるか。4案考えました。

 なお、選好と知覚とは別だろうと考え、距離の式の中に出てくる$\beta$を別の自由パラメータに置き換えるというのも試したが、モデルの性能は上がらなかった。

 こうしてみると、従来の選択モデルと比べて新たに導入されたパラメータは、結局$\theta_h$だけである。
 [以下、$\theta_h$の識別条件とか、もうちょっとだけモデルを拡張して負の共分散を許しました、とかといった話題。パス]

 理論編の最後になりましたが、先行研究紹介。[ここは勉強のために詳しくメモ]
 iidでない誤差項をいれることでIIA仮定を避けるという文献は山ほどあるが、大きく3つの次元を考えることができる。

本モデルは、3つの次元すべてにあてはまる。

 実験やりまーす。
 コーヒー・クリーミング・パウダーについてのコンジョイント実験。属性は、ブランド(4水準)、乳製品か(2)、無脂肪か(2)、香りつきか(2)、サイズ(2)、価格(5)。951名。14試行。完全プロファイルで4選択肢並べてひとつ選ばせる。1試行をホールドアウト。
 すべてのモデルパラメータをランダム効果とする。対象者を$h$として
 $\beta_h \sim N(\bar{\beta}, V_\beta)$
でもって、次のモデルを比較する:

 結果。インサンプルの適合度でも[Gelfand & Dey(1994, JRSS)の推定量のlogmarginal densityというのを使っている。そんなん知らんがな]、ホールドアウトの予測でも、距離3による提案モデルが優れていた。パラメータ推定値を比べると...[略]。誤差項の相関をこまかくみていくと...[略]。
 別のデータセットでやっても、やっぱし提案モデル(距離3)が優れてました。
 
 SOVの推定について。
 新規参入のSOVをどう推定するか。まずは多項ロジットモデルの場合について考えてみる。IIAが仮定されているから、SOVのレートは参入前の選択確率と同じである。既存品を$i$, 新規品を$k$, すべての製品を$j$とする。$i$の決定論的効用を$V_i = x'_i \beta$とする。参入前は
 $Pr(i)_{Before} = \exp(V_i) / \sum_j \exp(V_j)$
参入後は
 $Pr(i)_{After} = \exp(V_i) / ( \sum_j \exp(V_j) + \exp(V_k) )$
 $Pr(k)_{After} = \exp(V_k) / ( \sum_j \exp(V_j) + \exp(V_k) )$
製品$k$のSOVにおける$i$の割合は
 $\%SOV = (Pr(i)_{Before}-Pr(i)_{After})/Pr(k)_{After}$
これは結局$Pr(i)_{Before}$となることが示せる。代替性を調べているはずが、実際には選好を調べているわけである。たとえば低価格のために選択確率が高くなっている選択肢があったら、そこからのSOVも高くなるわけで、これはおかしい。
 ロジットモデルのもつこの制約的な性質は、異質な消費者集合について累積することで緩和されるだろうか。
 クリームパウダーの実験に基づき選択肢シミュレータをつくった。パラメータとしてランダム効果の事後分布の平均$\bar{\beta}$を使う版と、事後分布$\pi(\{\beta|Data\})$を使う版をつくった。なお後者は$\{\beta_h \}$を使うのと似た結果になる。このことは実務家ならみんな知っている。Huber, Orme, Miller(1999, Sawtooth Software Conf.)をみよ。
 まず3選択肢でシェアを求める。選択肢2,3は属性がひとつしか違わないものにする。次に選択肢1と属性がひとつしか違わない選択肢4を追加し、再度シェアを求める。これを繰り返す。
 選択肢4のSOVは1で大きくなるはずである。しかし多項ロジットモデルの場合はそうならない。これは$\{\beta_h \}$版でも対して改善しない。つまり、個人レベルでIIAを仮定しちゃったことによって生じる問題は、異質性を盛り込んでも取り返せない。問題の深刻さは異質性の程度によって決まるわけだけど、それは事前にはわからない。
 [さらに選択肢1の全体効用を操作した実験を行っている。主旨は同様なので省略]
 [別のデータでも試しているけど、もう疲れたのでパス。やりすぎでしょう...]

 というわけで、誤差相関が選択肢の価値と構造的に関連している選択モデルを御提案しました。相関構造は製品属性から勝手に決まります。
 距離3が優れていたということは、選択肢間の相関は、どの属性のせいで効用が高い・低いかとは無関係に、補償的に決まる模様です。マーケティングや心理学の研究では、製品の類似性ってのは製品属性で決まると考えるのがふつうで、効用で決まるとは考えない。いっぽう本研究の結果は、製品が異なっているときだけでなく、製品の効用が異なっているときにも、対象者はそれを弁別しやすい、ということを示唆している。
 実務家のみなさん、ロジットモデルをよく使っておられますが、製品間の代替性を調べるときにはIIA仮定の影響が強すぎて怖い、ということを知っていただきたい。
 今後の課題は、異なる代替関係をもたらすような選択理論を構築すること。Tversky&Simonsonの文脈依存的選好の研究とかがこれに近いが、そういうのは遷移律からの逸脱に焦点を当てているのに対して、代替性が製品によって違うというのは遷移律の違反ではない、という点が異なる。
 云々。

 ... やれやれ、いちおうめくったぞ。疲れたぞ。
 私の仕事との関係で言うと、「コンジョイント分析におけるIIA仮定は非現実的だけど個人効用をHB推定してるから大丈夫」というのは半ば幻想である、という点が、ちゃんとしたシミュレーションでわかったというのが収穫であった。そうなんすかー。参っちゃいますねー。
 いっぽう、あんまり真面目に読んでないので読み落としてるのかもしれないけど、提案手法じゃなくてHBプロビット($\Sigma_h$)でも別にいいんじゃね?とも思った。モデルのパフォーマンスは遜色ないみたいだし。SOV算出時のシミュレーションは示されてないのだが、実は提案手法と対して変わらんのではないかしらん。えーっと、HBプロビット($\Sigma_h$)なら、Allenby先生のbayesmパッケージでできちゃいません?

 実務的問題とはちょっと離れてしまうけど、距離3が優れているのはなぜか、って話が興味深かった。大きく言うと、実験者は選択肢を属性の束として捉えているけど、被験者はその属性の束から潜在属性(ここでは全体効用)を生成したうえでやおら課題を遂行しているかも、ということであろう。Barsalouの「アドホック・カテゴリ」みたいな話ですね。ああ栄光の80年代認知心理学。

 ベイズ・モデリング界のスターであるAllenby兄貴の論文には、アクション映画界のスターであるドニー・イェン兄貴のアクションが似合うので(前者は読者に、後者は共演者に、無理難題を押し付けるところが似ている)、今回も動画を貼っておくことにする。ピーター・チャン監督「武侠」(2011, 日本公開タイトル「捜査官X」)より。気弱な農民のはずのドニーさんが、クララ・ウェイ姉さんの横暴を前にし、ついにその本性を明らかにするという名場面である。
 屋根の上を疾走するシーンも忘れがたいですが、この映画の最大の見どころは、リアリティがありそうでなさそうな、さまざまな謎のキメポーズだと思う次第である。牛小屋の対決でクララ姉さんが刃物振り回しているときの、ドニーさんのあのポーズはなんなの? 両手のこぶしを顔の前に10cmくらい縦に離して構える奴。全然意味がわかんないんだけど、やだもう、超かっこよくないですか? 私もいまディスプレイの前で試してます。


読了:Dotson, et al. (2018) 選択肢の全体効用が似ているときに選択肢間の誤差相関を高くする階層プロビット選択モデルを使ったコンジョイント分析でSOVを推定しよう (feat. 武侠)

2018年5月11日 (金)

Nishisato, S., Clavel, J.G. (2003) A note on between-set distances in dual scaling and correspondence analysis. Behaviormetrika, 30(1), 87-98.
 調べ物の都合で読んだ。朝野先生がSASのサイトに載せていた、対応分析についてのコラムで引用されていたもの。
 第一著者は世界的に知られる偉大な計量心理学者。ここだけの話(ここってどこだ)、一般向けセミナーの聴講者のなかになぜかこの先生がおられて、穏やかな笑みを浮かべておられて...という背筋も凍る怪談を、私は複数の方から別々に聞いたことがある。起業家向けセミナーの聴衆に孫正義がいたというような話である。正直、もう怖くてセミナーなんてできない!と思いました。

 いわく。
 カテゴリカルデータを数量化する際、行変数の空間と列変数の空間はふつう異なる。行間の距離を座標から求めること、列間の距離を座標から求めることはできるけど、行と列の距離を座標から求めることはできない。
 いっぽう、行変数を列変数に射影することはできるし、逆もできる。これがいわゆる非対称的スケーリングであり、真の意味での同時グラフである。しかし、射影された変数のノルムは元の変数よりふつう小さくなる。つまり射影された変数は原点付近に集まる傾向がある。対応する特異値が小さいほどこのずれは大きくなる。言い換えると、最初のふたつの特異値がどちらも1に近いとき(上位2成分をプロットしたときとか), normed weightsとprojected weightsの exact plot はreasonableだが、第3成分と第5成分のexact plotを描いた日なんぞは、normed weightsの分散とprojected weightsの分散とのギャップが大きくなり、距離の比較はもはやreasonableでなくなる。[←このくだり、理解できたかどうか自信がない... 二元クロス表$Y$を総和で割って$P$とし、$P$の行和と列和を持たせた対角行列を$D_r$, $D_c$とし、$P$をうまいこと中心化したうえで、$D_r, D_c$を重みとして$NDM'$と一般化SVDしたとしよう。特異行列$N, M$がnormed weightsで, それに特異値を掛けた$ND, MD$がprojected weightsで、たとえば行のprojected weightsと列のnormed weightsを同時布置するのは正しいが、行の布置の分散は絶対に小さくなるよ。ということだと思うのだけれど、あっているだろうか]

 もっとも一般的な妥協案は、対称的スケーリングによって同時プロットをつくることである。その場合、2つの異なる空間が重ね書きされているということに気をつけないといけない。それはexactな記述ではなくて、practicalな近似だ。
 行と列を同じ空間に布置しようという試みの一つが、ご存じCGSスケーリングだが、明確な理論的基盤がなかった。Nishisato(1980 双対尺度法本), Greenacre(1989, JMRに載った批判論文)をみよ。実はNishisato(1990, 1997 いずれも手に入りにくそうな論文集)でその方法を提案している。
 本論文の主旨は:行と列との距離を求める方法はあるんだよ。あまりに単純なんだけど。

 $F$を$n \times m$分割表とする。成分$k$について、$y_k$を規準化された行ウェイト(長さ$n$)、$x_k$を規準化された列ウェイト(長さ$m$)とする。$y_k$で重みづけた反応と、$x_k$で重みづけた反応との相関$\rho$を最大化するように$x_k, y_k$を決めたい。
 良く知られた方法はこうである。$F$の行和をいれた対角行列を$D_r$, 列和をいれた対角行列を$D_c$とし、$D_r^{-1/2} F D_c^{-1/2}$の第$k$特異値を$\rho_k$として、
 $y_k = (1/\rho_k) D_r^{-1} F x_k$
 $x_k = (1/\rho_k) D_c^{-1} F' y_k$
Nishisato(1980)はこれをdual relationsと呼んでいる。

 $y_k, x_k$はnormed weights(ないし標準座標)と呼ばれている。なぜそう呼ぶかというと、$y'_k D_r y_k$と$x'_k D_c x_k$が事前に決めた定数と等しくなるからである。これに特異値を掛けた奴($\rho_k y_k, \rho_k x_k$)をprojected weights(ないし主座標)と呼ぶ。
 $y_k$と$\rho_k x_k$は同じ空間を張るし、$\rho_k y_k$と$x_k$も同じ空間を張る。でも、ある成分について行の軸と列の軸は$cos^{-1}\rho_k$だけ離れる。Nishisato(1996, Psychometrika)をみよ。
 だから行変数と列変数の同時布置は、ひとつの成分について2次元になり、ふたつの成分について3次元になる。いいかえると、行空間と列空間は違うもので、ある成分セットについて完全に記述するためにはもうひとつ次元を追加する必要がある。

 行と行の距離、列と列の距離についてはふつうカイ二乗距離を使う。行$y_i$と$y_j$があり、和の割合が$p_i, p_j$だとして、
 $\displaystyle d_{ij}^2 = \sum_k \rho^2_k (\frac{y_{ik}}{\sqrt{p_i}} - \frac{y_{jk}}{\sqrt{p_j}})^2$
 ところで、いま二次元空間上に点AとBがあり、原点からそれぞれまでの距離が$a, b$, AOBのなす角度が$\theta$だとしたら、AB間の距離は
 $d_{AB}^2 = a^2+b^2-2ab \cos \theta$
 さて、2成分について行空間と列空間を張ったとして、行$y_i$と列$x_j$とのカイ二乗距離を求めると、次のようになる。それぞれの和の割合を$p_{i.}, p_{.j}$として...[導出プロセスで落ちこぼれちゃったんだけど、先生を信じます]
 $\displaystyle d_{ij}^2 = \sum_k \rho^2_k \left( \frac{x^2_{jk}}{p_{.j}} + \frac{y^2_{jk}}{p_{i.}} - 2 \rho_k \frac{ x_{jk} y_{ik} }{ \sqrt{ p_{.j} p_{i.} } } \right)^2$

 [数値例。Rで途中まで試してみたけど省略]

 というわけで、行と行、列と列、行と列について距離行列をつくれる。これを非計量MDSで観察してみよう...[略]

 このように、行空間と列空間の乖離を表現するためには次元をひとつ追加する必要があり、その次元の寄与は、特異値が小さいときほど大きい。思うに、対称的スケーリングで同時プロットを描いていいのは特異値がコレコレ以上の時だ、というようなガイドラインがあったほうがいいのではないか。
 双対尺度法・対応分析は行と列の距離を無視している。現時点で、我々は行と行、列と列、行と列のカイ二乗距離を同時に分析する方法を持っていない。今後の発展が望まれる。云々。

 ...なんとか読み終えたけれど、やはりもっときちんと勉強しておかないとだめだなあ...

読了:Nishisato & Clavel (2003) クロス表の対応分析の結果から「行と列の距離」を求めるには

西里静彦(2014) 行動科学への数理の応用:探索的データ解析と測度の関係の理解. 行動計量学, 41(2), 89-102.
 前に読んだ気もするんだけど、調べものの都合で読んだ。前後の文脈を調べてみると、2014年に行動計量学会が開いたワークショップを踏まえた寄稿らしく、題名はそのワークショップのタイトルに由来したもの。論文の内容としては、データを名義尺度で表現しなさい、十分な多次元空間を用いなさい、行と列を同時空間で見なさい、Nishisato & Clavel(2004)の全情報解析へようこそ、という感じ。

いくつかメモ:

読了:西里(2014) 全情報解析への招待

2018年5月 5日 (土)

Liu, I., Agresti, A. (2005) The analysis of ordered categorical data: An overview and a survey of recent development. Test, 14(1), 2005.
 順序カテゴリカルデータの分析手法についてのレビュー。
 かつてAgrestiの教科書とかで読んだ内容とも重複しているんだけど、こういう知識は突然に必要になるので、時々おさらいしておこうと思って... というのは建前で、いろいろ疲れることが重なったあげく、不意に出先で時間が空いたので、リハビリのつもりで読んだ奴。こういう話題はややこしいことを考えなくていいので助かる。
 掲載誌はSpanish Society of Statistics and Operations Researchの発行。Google様的な被引用回数は241件、結構少ない。

1. イントロダクション (略)

2. 順序カテゴリカル反応のモデル
 順序カテゴリカル反応への関心を引き起こした主な研究がふたつある。McCullagh(1980)による累積確率のロジットモデルと、Goodman(1979)によるオッズ比の対数線型モデルである。

2.1 比例オッズモデル(累積ロジットモデル)
 順序反応のモデルとして現在もっとも一般的なのは累積確率のロジットを使うモデルであろう。
 McCullaghはこう考えた。$c$カテゴリの順序反応を$Y$、予測子のセットを$x$として、
 $logit[P(Y \leq j | x)] = \alpha_j - \beta' x$
$j$は$1$から$c-1$まで動く。
 このモデルは$c-1$個の累積確率のすべてに対して予測子が同一の効果を持つと仮定している。$c$カテゴリの反応をどこかで切って二値に落とすとして、どこで切ろうが説明変数の効果を表すオッズ比は同じだということになる。このタイプのモデルは比例オッズモデルと呼ばれることも多い。

2.2 累積リンクモデル
 McCullagh(1980)は、プロビット、loglog, cloglogといった二値データでおなじみのリンク関数を使うという手も考えた。そういうのを取り込んで一般化したのが累積リンクモデルである。
 $G^{-1}[P(Y \leq j | x)] = \alpha_j - \beta' x$
$G$は連続累積分布関数(cdf)。

2.3 多項ロジットモデルによる代替案

 いま、カテゴリカル反応を長さ$c-1$のダミーベクトルで表現し、対象者$i$におけるその平均を$\mu_i$として
 $g(\mu_i) = X_i \beta$
という多変量一般化線型モデルを考えると、累積リンクモデルも隣接カテゴリロジットモデルもcontinuation-ratioロジットモデルも、このモデルの特殊ケースとして捉えられる。

2.4 その他の多項反応モデル

2.5 順序反応の連関のモデリング
 $r \times c$分割表の行を$X$, 列を$Y$とし、セル頻度を$\{n_{ij}\}$, その期待値を$\{\mu_{ij}\}$とする。
 Goodman(1985)はこう考えた。
 $\log \mu_{ij} = \lambda + \lambda_i^{X} + \lambda_j^{Y} + \sum_k^M \beta_k u_{ik} v_{jk}$
ただし$M \leq min(r-1, c-1)$。$M = min(r-1, c-1)$とすると飽和する。ふつうは$M=1$とする。

関連する研究は対応分析と正準相関モデルの文脈でも行われている。一般正準相関モデルは
 $\pi_{ij} = \pi_{i+} \pi_{+j} \left(1+\sum_k^M \lambda_k u_{ik} v_{jk}\right)$
Goodmanの定式化と似ているけど、連関の項を使って$\mu_{ij}$と独立なときの値とのずれをモデル化している点に注意。この路線の限界は、多元表への一般化が大変だという点。

3. 順序反応のクラスタ化データ・反復データのモデリング
 クラスタ化データ・反復データのモデルには大きく分けて2つある。

 以下、あるクラスタにおいて$Y_1,\ldots,Y_T$の反復反応が得られているとする。話を簡単にするため$T$は全クラスタで共通だということにするが、クラスタ$i$について$T_i$だと一般化してもよろしい。

3.1 GEEアプローチによる周辺モデル
 累積ロジットリンクを持つ周辺モデルについて考えよう。
 $logit[P(Y_t \leq j|x_t)] = \alpha_j - \beta' x_t$
 これだと$T$個の反応の周辺分布の説明変数への依存性だけを考えていて、$T$回の反復反応の間の多変量的な依存性はモデル化していない。
 さて、この周辺モデルを推定する際、対数尤度関数を最大化するというのはおかしな話になる。対数尤度関数は、予測子の多様な水準から得られた多項分布の積になる。それぞれの多項分布は、$T$個の反応のクロス分類における$c^T$個のセルから定義される。尤度関数はこの完全な同時分布を指しているのだから、周辺モデルの公式を対数尤度に直接置き換えることができない。[←ううむ...よくわからない...]
 ここでは一般化推定方程式(GEE)を使うのが簡単である。GEEは擬似尤度の多変量への一般化に基づいており、周辺回帰モデルだけを指定すれば、$T$個の反応の相関構造については適当に推測してくれる。
 GEEはもともと、二値とかポワソンとかの単変量分布の周辺モデルとして開発されたが、反復順序反応の累積ロジットモデルや累積プロビットモデルに拡張されている。
 [ここからGEEによるモデリングの説明に入るんだけど、残念ながら良く理解できなかった。短い説明だし、写経してもいいんだけど、面倒なので省略する。ううむ、GEEっていつも勉強しかけて挫折するんだよなあ]

3.2 MLアプローチによる周辺モデル
 上記のように、周辺モデルを最尤推定するのはおかしい。同時セル確率と、同時分布の高次パラメータならびに周辺モデルのパラメータとを一対一対応させる多変量ロジスティックモデルという提案もあるが、次元数が増えると無理になる。周辺モデルを制約方程式として扱い、ポワソン尤度と多項尤度を最大化するというアプローチもあるが、計算が大変。
 [だめだ、3.1-3.2はさっぱり理解できない。Agrestiの教科書も見たけどやっぱりむずかしい。まあふだんはGLMMでやっておりますので、今回はあきらめるけど、なにかやさしい教科書はないかしらん]

3.3 一般化線形混合モデル
 こんどは周辺分布じゃなくて、同時分布をクラスタのランダム効果を使ってモデル化する。反応を指数分布族として、一般化線形モデル(GLM)にランダム効果を加えたのを一般化線形混合モデル(GLMM)という。同様に、多変量GLMも多変量GLMMに拡張できる。
 ランダム効果が表すものは状況によって異なる。ヒトの異質性とか、未知の共変量とか、なんらかの過分散(overdispersion)とか。
 基本的なモデルは
 $logit[P(Y_{it} \leq j | x_{it}, z_{it})] = \alpha_j - \beta^{'} x_{it} - u^{'}_i z_{it}$
ここで$z_{it}$はランダム効果の説明変数ベクトルで、$u_i$はiidに$MVN(0, \Sigma)$に従う。リンク関数を変えてもいいし、continuation-ratioロジットモデルに変えてもいい。[嗚呼... 周辺モデルよか全然わかりやすいよ... 胸なごむ...]

3.4 マルチレベルモデル
 クラスタのレベルが2つ以上ある場合もある。地域-学校-学生、とか。
 アプローチとしては、GEE, 多変量GLMM, 階層モデルでそれぞれのレベルについて事前分布を与えるベイズモデル、が考えられる。

3.5 その他のモデル(遷移モデルと時系列)
 反復測定データを遷移モデルで分析するという手もある。反応を説明変数と過去の反応で条件づけて説明するわけだ。二値データについてマルコフ連鎖構造を使うことが多い。
 順序データについてはEkholm et al.(2003)というのがあって、反応間の連関をdependence ratioというので表す。これは所与のセルの確率を独立性の下での期待値で割った値のこと。このモデルは、連関メカニズムが純粋に交換可能であればヒトのランダム項をいれたGLMMと等しくなり、連関メカニズムが純粋にマルコフであればマルコフ連鎖構造の遷移モデルと等しくなる。[←悪いけどなにをゆうておるのかようわからん]
 連続時間の遷移モデルのGEE推定とML推定というのもある。

 周辺モデルが良いか、クラスタ特定的なモデルが良いか、遷移モデルが良いか。これは、母集団レベルで解釈したいか個人レベルで解釈したいか、説明変数の効果を以前の反応で条件づけて記述したいか、によって決まる問題である。
 モデルのタイプがちがえばパラメータのサイズも変わる。たとえば、周辺モデルよりもクラスタ特定的モデルのほうが効果の推定値が大きくなる。

4. 順序反応へのベイジアン分析
4.1 多項パラメータの推定
 とりあえず、$c$カテゴリの多項変数、説明変数なし、ということにしよう。セルの頻度$(n_1, \ldots, n_c)$がサイズ$n=\sum n_i$, パラメータ$\pi=(\pi_1, \ldots, \pi_c)'$の多項分布に従うとする。多項確率質量分布の共役密度関数はディリクレで...[分布とその特性値の説明。省略]。事前のパラメータを$(\alpha_1, \ldots, \alpha_c)$とすると、事後のパラメータは$\{n_i+\alpha_i\}$となり...[特性値の説明。省略]。
 さて、多項確率の推定の際に$\pi_1 \leq \ldots \leq \pi_k \geq \pi_{k+1} \geq \ldots \geq \pi_c$という制約をいれるという考え方があり、これは順序カテゴリに適することが多い。[←えっ、なぜ??]
 多項ロジットのパラメータ事前分布としてディリクレじゃなくてMVNを仮定するという路線もある。相関行列を自己回帰の形式にすると、隣接カテゴリの確率が似てくるので、順序カテゴリに向いている。
 ディリクレ・パラメータの分布を階層的に指定するという手もある。二階の事前分布をいれるわけね。共役分布を使わないと決めてしまえば、ロジットモデルでMVN事前分布の階層モデルのほうが計算しやすい。

4.2 クロス表における確率の推定
 Good(1965)はディリクレ事前分布と階層モデルを使ってクロス表のセル確率を推定した。その後、データ依存な事前分布を使うというのも出てきて... [面倒になってきたのでこの節はスキップ]

4.3 順序反応のモデリング
 [いよいよ、順序反応そのもののベイジアン・モデリングの話、なんだけど... 1996年ごろ以降の先行研究が、一本につき数行づつ紹介されている感じなので、省略する。多変量反応にも拡張されている由]

5. 順序反応についてのモデルベースでない手法
5.1 層別クロス表のCMH法
 カテゴリカル変数$X, Y$の連関を、第三の変数$X$をコントロールして分析したいとき、ふつうは三元クロス表を書く。では、$Z$をコントロールした下での$X, Y$の条件つき連関は?
 モデルに基づかないアプローチとして一番有名なのはCochran-Mantel-Haenszel(CMH)検定である。$X$と$Y$がともに順序なら、層を結合した連関が自由度1のカイ二乗分布に従うことを利用する。これは行と列になんらかスコアを振って線形トレンドをみていることになる。実はこれ、多項ロジットと深い関係がある。Agrestiの本を読め。
 検定統計量だけでなく、後述する順序オッズ比も手に入る(それが層を通じて一定だという仮定の下で)。各層が十分大きければ多項ロジットモデルのML推定量と類似するし、層が多くなってデータがスパースになってくると、実はML推定量より優れている。

5.2 順序オッズ比
 順序反応の二元表のオッズ比にはいろんなタイプがある。

5.3 ランク・ベースのアプローチ
 先ほど述べたように、CMH統計量は連関の要約にカテゴリのスコアを使っていると捉えられるが、スコアを使わず厳密に順序情報だけで推論するのもある。Kendallの$\tau$統計量, Goodman-Kruskalの$\gamma$, Jonckheere-Terpstra検定、など。[←最後の奴、初めて聞いた...]

5.4 不等性制約の使用
 順序カテゴリを活用するその他の方法として、連関構造を記述するパラメータに不等性制約を置くというのがある。たとえば、二元クロス表での連関を記述する際、累積オッズ比、局所オッズ比、大域オッズ比、連続オッズ比が使えるが、その際に$(r-1)(c-1)$個の対数オッズ比のすべてが非負だという制約を掛ける。するとセル確率のML推定値が手に入ったり、尤度比検定で独立性を検定したりできる。Bartolucci et al(2001, JASA)をみよ。なお、局所オッズ比を制約するのがもっともきつい制約になる(局所対数オッズ比が一様に非負なら大域対数オッズ比も非負)。
 2行の場合、非負対数オッズ制約のもとで尤度比検定の漸近分布が手に入って...でも3行以上には一般化できなくて... [とかなんとか... 略]
 それとは別の話として、対数線形モデルとかのパラメータに非負制約を掛けるというのもある。

5.5 一致の測定
重みつき$\kappa$とか、ROC曲線を使うとか、いろんな方法がある。

6. その他の問題
6.1 正確推論
[ごく短い説明だけど、力尽きてきたのでパス]

6.2 欠損データ
 多変量GLMMの場合、MCARやMARがあっても大丈夫。いっぽうGEEのように尤度ベースでない手法では、ランダム欠損でも無視できるとは限らない。
 他にも欠損を扱うモデルの提案がいろいろある。反応じゃなくて共変量の欠損を扱うモデルの提案もある。

6.3 標本サイズと検定力
 $c$カテゴリの順序反応を2群間で比較する場合について考える。比例オッズモデルの場合、周辺確率が変わらないとして[←?]、ある検定力に達するために必要な標本サイズ$N(c)$には次の性質がある:
 $N(c) / N(2) = 0.75/(1-1/c^2)$
ここからわかるのは、カテゴリを2つに潰すと情報の損失は大きい、しかしカテゴリが4~5個あればそれ以上あるときと変わらない。
 ほかに、Wilcoxonのrank sum検定の場合のガイドラインとか、個人について処理前と処理後に測定すするsubjec-specificモデルの場合のガイドラインが提案されている。

6.4 順序データ分析のためのソフトウェア
[略]

6.5 結語
[略]

 ... いやあ、長かった... 疲れた... めんどくさかった...

 この論文が面白そうだと思ったのは、73頁のうち本文は29頁で、残りは識者たちのコメントと返答になっているところ。せっかくなので対話調でメモしておく。

Tutz: 順序回帰モデルの利用について伺います。
 順序モデルとして良く知られているのは累積型のモデル、つまり
 $P(Y \leq j | x) = F(\eta_j(x))$
 $\eta_j(x) = \alpha_j - x'\beta$
というものです。
 でも、逐次型のモデル
 $P(Y=j | Y \geq j, x) = F(\eta_j(x))$
も有用だと思うんですよね。ここで$F$は狭義単調分布関数であればよくて、たとえばロジスティック分布関数ならcontinuation-ratioロジットモデルになります。
 このモデルはカテゴリ$r$から$r+1$への遷移をモデリングしているとみることもできます。だから、カテゴリ$r$に到達しているという条件のもとで、どんな二値回帰モデルでも使えるんです。
 逐次型モデルは拡張が容易です。たとえば累積モデルによる近似がうまくいかない場合は、$\beta$をカテゴリごとに$\beta_j$として推定してもいいです。[以下、累積モデルに比べて逐次型モデルがいかに柔軟かという話。略]
 というわけで、累積型モデルばかりが注目されるのって納得いかないんですけど、どう思います?

Liu & Agresti: 逐次型モデルがあまり使われてないのは、カテゴリを低いほうから並べるか高いほうから並べるかで結果が変わってきちゃうからじゃないですかね。

Tutz: 予測子をどう組み合わせるかという話なんですが。
 反復測定データの周辺モデルや混合モデルの場合、一番単純なモデルだと、クラスタ$i$の観察$t$のカテゴリ$j$について
 $\eta_{tj}(x_{it}) = \alpha_j - x'_{it}\beta$
というふうに、観察$t$を通じて$\alpha_j$と$\beta$は一定にすると思います。カテゴリ数なり観察数なりが小さい場合はともかく、これはちょっと制約し過ぎと思います。先々の研究を考えたら、やっぱり
 $\eta_{tj}(x_{it}) = \alpha_{tj} - x'_{it}\beta_j$
とか
 $\eta_{tj}(x_{it}) = \alpha_{tj} - x'_{it}\beta_t$
というふうに、カテゴリ別・観察別のパラメータを入れたほうがいいと思います。でも全パラメータを自由推定しちゃうとノイズに敏感になっちゃうし解釈しにくいので、なんらか制約を入れたほうがいいでしょうね、たとえば罰則付きML法で、対数尤度$\ell$を
 $\ell_p = \ell - \sum_{j,s} \lambda_s (\beta_{j+1,s} - \beta_{j,s})^2$
に置き換えるとか($\lambda_s$は平滑化パラメータ)。
 累積型モデルで追加制約を考慮する場合、罰則付き尤度モデルは比例モデルと非比例モデルの間のどこかに位置します。$\lambda_s$がすごく大きい場合、$x_{it}$の$s$番目の要素に比例オッズモデルを当てはめることになります。もちろん$\alpha_{tj}$は$t,j$を通じて一定にしないといけません。[←??? 力不足で理解できない...]
 予測子を平滑化するという方向の拡張もあります。線形予測子の代わりに加算構造を使うというのは興味深い拡張ですね。[GEEのこと???] 横断データだと加算順序回帰モデルとしてすでに使われていますが、反復測定の場合、$t$別にスムーズな構造を見つけるというのはチャレンジングな課題です。

Liu & Agresti: 予測子のより一般的な構造を用いるという解説、ありがとうございます。おっしゃるとおり、単純・解釈可能でかつスムーズな構造を見つけるのが難しいですね。でもこれからは応用事例も増え、もっと一般的になると思いますよ。

Tutz: 平均反応モデルについて一言申し上げたい。
 実務家にとって魅力的だというのはわかりますけど、あれは順序モデルじゃないですよ。カテゴリにスコアを与えているということは、反応をmetricallyにスケールした離散反応モデルにすぎないです。

Liu & Agresti: おっしゃる通り、順序反応データに平均反応モデルを使うのはよろしくないです。でも道具箱のなかにはいれておきたいと思います。非統計家にとってはロジスティック回帰よりわかりやすいですし、反応カテゴリ数が多ければ、潜在構造を仮定することなしに順序回帰への道を開くという利点があります。メトリックを選ばないといけないというのは確かに難点ですが、順序説明変数を扱うときにだって同じ問題は起きているわけですし。

Tutz: 順序データ分析の研究では予測が無視されがちじゃないですか? 二値データとかカテゴリカルデータの場合には、分類の枠組みであんなに予測の研究があるのに。なんで判別分析とか機械学習で順序データが注目されてないんでしょうかね。

Liu & Agresti: そうですね。

Simonoff: あんまし触れてくださいませんでしたが、ノンパラメトリック・セミパラメトリックなアプローチについて補足させてください。私の専門なもので。
 まずノンパラメトリックなアプローチについて。大域的にパラメトリックな仮定をおくのをやめて、局所的な多項関係を仮定します。たとえば... [以下、説明省略。難しいよお]
 少なくとも局所的にはパラメトリックなモデルがあてはまると思う場合には、セミパラメトリックなアプローチがよいでしょう。たとえば... [説明省略]

Liu & Agresti: いやー、良く知らなかった話で、勉強になりました。[←とは書いてないけど、まあそういうニュアンス]

Kateri: コメントの前に、触れてくださらなかった話題について紹介してもいいですか? 正方順序行列の分析という話題です。
 分類変数の正方行列の場合、対称モデル、準対称モデル、周辺等質性モデルがあることは広く知られています。これが順序変数の場合だと、適切なモデルのクラスがさらに広がって、条件付き対称モデル、対角非対称モデルというのが出てきます。
 これらのモデルは、一致の測定とか、移動表の分析とかと関連していますし、行列がマルコフ連鎖の遷移確率行列である場合には「ランダム・ウォーク」「均衡状態」「リバーシビリティ」という概念と関わってきます。

Liu & Agresti: なるほど、ありがとうございます。順序変数の正方行列だったらほかにもこんなモデルがありますね...[とひとしきり紹介があるが、話についていけなくなったのでパス。このへんはAgrestiの教科書をみたほうがよさそう]

Kateri: クロス表の連関のモデル化についてコメントします。
 連関はKL距離の観点からの指標、相関はピアソン距離の観点からの指標です。Goodman(1996) はこの二つを含むより一般的なクラスのモデルを考えました... [以下、自分の研究紹介。省略]
 順序クロス表の分析における興味深い問題として、行ないし列の併合という問題があります... [自分の研究紹介]

Liu & Agresti: (特に返答無し)

Lesaffre: 私、自分が相談を受ける際は、順序ロジスティック回帰じゃなくて二値ロジスティック回帰を勧めることが多いんですよね。相手はたいてい医者で、二値ロジスティック回帰の出力ならよく理解できますし、二値ロジスティックでも順序ロジスティックでも結果はたいていほとんど変わらないから。おそらく他の統計家の方もそうなんじゃないかと。
 お伺いしたいんですけど、二値じゃなくて順序ロジスティックを使うことの利点を明確に示したシミュレーションとかないでしょうか? それにソフトはあるんでしょうか?

Liu & Agresti: Lesaffre先生のこのご指摘にはちょっとガックリなんですけど、ええとですね、順序モデルだとそれぞれの効果についてひとつのパラメータが出ます。二値に潰して分析するのとでは結果は結構違います。Whitehead(1993)をみてください。

Lesaffre: Anderson(1984)のモデルについて触れて下さらなかったのにはちょっとびっくりです。このモデルは評価の順序カテゴリ変数を分析するもので、
 $P(Y=s) = \exp(\beta_{0s} - \phi_s \beta^T x) / $(分子の合計)
ただし$1 =\phi_1 > \ldots > \phi_k = 0$とします。これは多項ロジット回帰の特殊ケースですが、説明変数との関係が一元的だという点が古典的な順序データ分析とは違います。
 この尺度上での評価者の誤分類をどう修正するのかというのは重要な研究分野だと思うんですけど。

Liu & Agresti: ご指摘の通り、見落としていた研究です。$\{\phi_t\}$が固定なら対数線形モデル、等間隔なら隣接カテゴリロジットモデルとして捉えられますね。このモデルがあまり注目されていない理由のひとつはパラメータ数が多いからだと思いますが、Andersonさんが早く亡くなってしまったせいもあるかもしれません。[←へー]
 誤分類の話ももっと注目されていいと思います。先生がレビュー論文書いてください![←おまえら実は仲良しだな]

Loughin: [ものすごく大雑把に要約すると] たとえば我々の研究だと、GLMMモデルでカウントデータを生成してGLMMモデルを当てはめると、完全に正しいモデルなのにパラメータが保守的に歪んだりします。いい加減だけど簡単なモデルじゃなくて、複雑で正しいモデルを使うべしという根拠とかありますかね? 分析者も忙しいわけで、証拠がないと移行しないと思うんです。

Liu & Agresti: 大事なご指摘と思います。たとえば、データがスパースなときは名義尺度モデルより順序モデルのほうが有利です。こういう風に、実務的な状況での手法の良さを調べていくことが大事ですね。

Svensson: 私は対応のある順序データをカテゴリ数と無関係に評価する方法について研究しています。視覚的アナログ尺度のデータなどに使える方法です。基本的なアイデアは、評価の間の依存性についての情報を得ることで説明できるaugmented rankingというのを考えるということです。変数ペアにランクを振るわけです。[...以下説明が続く。面白そうなんだけど、この説明だけではちょっと理解できそうにないので、メモ省略]

Liu & Agresti: [頑張ってください的コメント]

Svensson: [統計教育についてのコメント。パス]

Liu & Agresti: [Agrestiさんのフロリダ大での学部教育の話。パス]

Aguilera: 論文に出てきませんでしたが、PLS順序ロジスティック回帰というのがあります。これはPLS一般化回帰の特殊ケースで、変数の数が事例数より多かったり多重共線性があるときにも使えます。主成分ロジスティック回帰というのもあります。
 関数的データ分析(functional data analysis)というのもあります。これは観察がベクトルじゃなくて関数であるときに、関数的共変量の観点から反応変数を説明しようというものです[←??? よくわからん]。

Liu & Agresti: ご指摘ありがとうございます。いずれも興味深い問題ですね。

 ... はい!終了!疲れた!
 すぐに忘れてしまいそうなので、最後に「ここがわからん」「ここをもっと知りたい」という箇所をメモしておこう。

読了: Liu & Agresti (2005) 順序カテゴリカルデータの分析方法レビュー (全体的に遠慮がちな質疑応答つき)

Rosipal, R., Kramer, N. (2006) Overview and Recent Advances in Partial Least Squares. in Saunders C. et al. (eds) Subspace, Latent Structure and Feature Selection. Lecture Notes in Computer Science, vol 3940. 34-51.
 PLS回帰にはいろいろバージョンがあるようで、イライラするので読んでみた。先日読んだAbdiさんの解説にも引用されていた。

 いわく。
 PLSというのはPLS回帰だけでなく、もっと幅の広い手法である。それらの共通点は、観察データとの背後に少数の潜在変数が存在すると考える点である。ふつうは2つの変数セットについて(回帰の場合だと予測子セットと反応セット)、その間の共分散を最大化するようにして、直交する潜在変数スコアを求める。
 統計学者はもともとPLS回帰を無視する傾向があり、いまでもPLS回帰を統計モデルというよりアルゴリズムとして捉えていることが多い。もっとも最近では、PCRやリッジ回帰などとあわせ、continuum回帰という統一的なアプローチとして捉えられるようになった。
 PLSを分類手法としてみるとFDAと密接な関連がある。またPCAと関連付けることもできる。潜在変数をつかってSVMするという提案もある[へー]。カーネル法と併用することもできる。

 標本サイズを$n$とし、$N$変数データ$X$と$M$変数データ$Y$があるとしよう(どちらも変数の平均は0にしてある)。PLSではこれらを
 $X = TP^T + E$
 $Y = UQ^T + F$
と分解する。$T$と$U$は$p$個の潜在変数のスコア行列でどちらもサイズ$n \times p$。$P$と$Q$は負荷行列で、サイズは$N \times p$, $M \times p$。$E$と$F$は残差行列。
 オリジナルのNIPALSアルゴリズムでは、$Xw$と$Yc$の標本共分散を最大化するような、長さ1のウェイト・ベクトル$w, c$を求める。手順としては、まずランダムなスコアベクトル$u$を用意しておき、

  1. $w = X^T u/(u^T u)$
  2. $||w|| \to 1$ [←これがXウェイトね]
  3. $t = X w$ [←X得点]
  4. $c = Y^T t / (t^T t)$
  5. $||c|| \to 1$ [←Yウェイト]
  6. $u = Yc$ [←Y得点]

これを収束するまで繰り返す。なお、$Y$が1変数($y$)の場合には$u$が$y$そのものになるから、繰り返しはいらない。また、実はウェイトベクトル$w$は、
 $X^T Y Y^T X w = \lambda w$
という固有値問題の第一固有ベクトルになっている。
 以上が第一因子。$X, Y$をデフレーションし、今度は第二因子を求める。

 さて、PLSにはいろいろな形式がある。それらのちがいは、スコア$t, u$を求めたあとで、$X, Y$をどうやってデフレーションさせるかという点の違いである。4つの形式について述べる。
 以下、$p = X^T t / (t ^T t)$, $q = Y^T u / (u^T u)$を負荷ベクトルと呼ぶ。

 PCA, CCAとの関係について。
 PCAは$Xw$の分散を最大化するような$w$を求める。
 CCAは$Xw$と$Yc$の相関を最大化するような$w, c$を求める。これは正準リッジ分析という概念からみることもできる。いま、
 $\displaystyle max_{|r|=|s|=1} \frac{cov(Xr, Xs)}{([1-\gamma_x] var(X r) + \gamma_x)([1-\gamma_y] var(Y s) + \gamma_x)}$
という最適化問題があるとしよう。$\gamma_x, \gamma_y$は正則化項で0以上1以下。両方を0にするとCCAとなり、両方を1にするとPLSとなる。つまり、その中間(正則化CCA)もあるわけだ。また、$Y$が1次元であればリッジ回帰もこのなかにはいる[へー!]。
 なお、CCAは固有値分解で一発で求めるという点ではPLS-SBに近い。

 PLS1, PLS2についてもう少し詳しく解説すると... [OLS, PCR, リッジ回帰, PLS回帰の回帰係数を統一的に説明する。途中でついていけなくなったので略]
 回帰係数$b$の推定量$\hat{b}$のMSEをバイアス-バリアンス分解すると、OLS推定量はバイアス0で、そのかわり($X$の共分散行列の固有値が小さい時に)バリアンスが大きくなっている。そこで推定量を縮小して
 $\hat{b}_shr = \sum_i f(\lambda_i) \hat{b}_i$
とすることを考える。$\lambda_i$は$X$の第$i$特異値の二乗、$f(\lambda_i)$はシュリンケージ・ファクター。$i$は共分散行列のランクだけ回る。この枠組みで考えると、PCRとは「$i$が$p$以下の時$f(\lambda_i)=1$, そうでないとき0」に相当し、リッジ回帰は$f(\lambda_i) = \lambda_i / (\lambda_i + \gamma)$に相当する。
 実はこの縮小推定の枠組みでPLS回帰も説明できてしまう。PLSではなんと
 $f(\lambda_i) = 1 \prod_j (1-(\lambda_i/\mu_j))$
なのである。[$\mu_j$というのは... 上で読み飛ばしたくだりで説明されているんだけど、なにがなんだかさっぱりわからない。なんでもRitzペアというのがあって、それを理解するためにはKrylov空間というのとLanczosアルゴリズムというのを理解する必要があるらしい... 知らんがな!!!]

 PLSを判別・分類に使う場合は... [関心はあるんだけど、疲れちゃったのでパス]
 非線形PLSとは... [カーネルPLSとか。疲れちゃったのでパス]

... というわけで、中盤でPLS回帰をいろんな線形回帰の推定量のひとつとして位置付けるあたりで頭がパンクしてしまい、肝心の後半(判別・分類や非線形PLS)は断念。また体力のあるときに。
 PLS回帰の解説ってすぐに反復アルゴリズムの話になっちゃうので、そういうものかと思っていたんだけど、ちゃんとこういう統計学的な議論もあるのね。正準相関分析の正則化として捉えるとか、線形回帰の縮小推定量として捉えるとか。知りませんでした。
 昔からPLS回帰とPLS-SEMとの関係がいまいちわからなくて困っているんだけど、PLS-SEMについては言及がなかった。ま、言及されても理解できないかもしれないけれどさ。

 先日読んだAbdiさんの解説と見比べると、説明がちょっと違っていて混乱する... この論文で言うPLS-SBとはAbdiさんのいうBPLSのことだろうか? Woldのオリジナルの提案は、結局$X$と$Y$を対称的に扱っていたのか(この論文)、そうでないのか(Abdiさん)?

読了: Rosipal & Kramer (2006) PLSレビュー in 2006

Abdi, H. (2010) Partial least squares regression and projection on latent structure regression (PLS regression). WIREs Computational Statistics. 2(1), 97-106.
 「PLS回帰というのはこういうもので...」と人に説明する必要が生じたのだが、めんどくさいのでよさそうなPDFを送り付けて済ませてしまった。ごめんなさい。渡しておいて読んでないというのもなんなので、自分でも読んでみた次第。
 著者AbdiさんはPLS回帰の専門家として私のなかで評価が高い方である(超・上から目線。要はわかりやすく書いてくれるのでスキよということです)。いま検索してみたら、なかなか渋い感じのおじさんであった。

 途中で気が付いたんだけど、これ、前半は以前読んだAbdi(2007)とほぼ同じ。どうせ三歩歩けば忘れてしまうので、気にせずメモを取りましたけど。

 いわく。
 PLS回帰は、予測子がたくさんあるときの予測に向いている手法。もともとPLS回帰は社会科学から生まれたのだが(Woldは経済学者だしね)、ケモメトリクスとか官能評価とかで人気がでて、社会科学に逆輸入された。

 事例数を$I$、従属変数の$I \times K$行列を$Y$, 予測子の$I \times J$行列を$X$とする。
 $X$で$Y$を予測したい。$Y$が単変量ならふつうはOLSを使うところだが、$J$が$I$より大きかったりすると$X$が正則でなくなる。さあどうするか。変数を削るか? リッジ回帰に走るか?
 ひとつのアイデアは主成分回帰(PCR)である。すなわち、$X$を主成分分析し、主成分を予測子とする。テクニカルには、$X$をSVDにかけて
 $X = R \Delta V^T$
右特異行列$V$を負荷と呼ぶ。$G = R\Delta$を因子得点と呼ぶ。で、$G$を予測子にしてOLSをやる。
 このアイデアの短所は、予測子から最適なサブセットを選ぶという問題が未解決だという点である。上位主成分を選ぶのは、$X$の説明という意味では最適だが、$Y$の説明という意味では最適でない。

 そこでPLS回帰でございます。
 $X$と$Y$の両方を、共通の直交因子の積として表現することを考える。つまり、まず
 $X = TP^T$
と分解する。$T$の列を「潜在ベクトル」と呼ぶ。ふつうは$T^T = I$とする(実のところ、ここの規準化の仕方によって微妙な差が出てくる。ソフト間で結果が違う原因がここにある)。PCAとのアナロジーで言うと、$T$が得点行列、$P$が負荷行列である。
 $Y$は
 $\hat{Y} = T B C^T$
と推定する。$C$は「ウェイト行列」, $B$は対角行列で「回帰ウェイト行列」という。

 潜在ベクトルの行列$T$をどう決めるか。PLS回帰ではこれを、$X$の線形和と$Y$の線形和を最大化する問題として捉える。
 オリジナルのアルゴリズム(NIPALS)だとこうである。$X$, $Y$はあらかじめ標準化しておく。これを$E$, $F$に代入する。ランダムベクトル$u$を用意しておく。
 ステップ1. $E^T u$を求め、標準化して「Xウェイト」$w$とする。
 ステップ2. $Ew$を求め、標準化して「X得点」$t$とする。
 ステップ3. $F^T t$を求め、標準化して「Yウェイト」$c$とする。
 ステップ4. $u=Fc$を「Y得点」とする。
これを収束するまで繰り返す。で、係数$b = t^T u$と、「X負荷」$p=E^T t$を求める。$E$の予測値$tp^T$, $F$の予測値$b t c^T$を求め、$E, F$から引く。
 以上が第一因子。これを繰り返していく。$b$は$B$の対角にいれていく。
 $X$の二乗和のうち潜在ベクトルによって説明された部分は$p^T p$、$Y$の二乗和のうち潜在ベクトルによって説明された部分は$b^2$となる。

 ところで、行列の固有値を求める方法にpower methodというのがあるんだけど、NIPALSはこれと似ている。
 NIPALSはSVDの観点からも捉えることができる。上のをつなげると、「求めて標準化する」のを$\propto$と書くとして、
 $w \propto E^T u \propto E^T Fx \propto E^T F F^T t \propto E^T F F^T E w$
なので、
 $S = E^T F$
をSVDしたときの第1右特異ベクトルが$w$, 第1左特異ベクトルが$c$であることがわかる。[←ううううむ... ごめんなさい、私にはよくわかんないです... ]

 PLS回帰モデルをどう評価するか。
 手元のデータについての記述が目的なのであれば、モデルの評価にもっともよく使われているのはRESS(残差平方和)である。$L$因子PLS回帰による予測値の行列を$\hat{Y}^{[L]}$として、
 $RESS = || Y - \hat{Y}^{[L]} || ^2$
が小さければ良い予測だということになる($L$を大きくすれば小さくなる)。潜在変数については、潜在変数を実質的に解釈することに意味がある文脈ならば、解釈すればよろしい。
 そうではなくて、手元の標本に基づく新データの予測が目的だとすると、それぞれの潜在変数による寄与と、潜在変数の数の決定が問題になる。これはジャックナイフ法やCVで調べる必要がある。相関係数の二乗とか、PRESS(予測誤差平方和)とかが良く使われている。予測値の行列を$\tilde{Y}^{[L]}$として、
 $PRESS = || Y - \tilde{Y}^{[L]} || ^2$
である。
 $L$をどう決めるか。記述の場合とちがい、PRESSは$L$を大きくし過ぎると逆に上がってしまう。ひとつの方法は、PRESS最小の$L$を選ぶというもの。もうひとつは、$L=l$のときのPRESSとRESSを$PRESS_l$, $RESS_l$として、
 $Q^2_l = 1 - (PRESS_l) / (RESS_{l-1})$
が閾値を上回っている最大の$l$を選ぶというもの($RESS_0=K(I-1)$とする)。閾値の案としては、$(1-0.95^2)=0.0975$とか、「事例数が100以下だったら$.05$、そうでなかったら$0$」とか。[このくだり、理解できない。挙げられている事例で計算してみたんだけど、$Q^2$の値が全然合わない。なにか読み間違えているのか、誤植があるのだと思う]

 ところで、ここまでで述べてきたPLS回帰はWold, Martensから発する系統。もうひとつ、Booksteinという人の系統もある。BPLSと呼ぶことにしよう。
 BPLSでは、$S = X^T Y$のSVDが
 $S = W \Theta C^T$
だとして、
 $T = XW$
 $U = YC$
とする。BPLSの場合、$X$と$Y$を入れ替えても同じ結果になる。正準相関分析とすごく似ている(ちがいは、正準相関分析では$X$, $Y$の線形和の相関を最大化するのに対して、BPLSでは共分散を最大化するという点)。
 BPLSのバリエーションとして、

 云々。

 。。。一番勉強になったのは、PLSとBPLSのちがい。そういうことだったのか、とようやく腑に落ちた。以前、PLS回帰についての説明を複数種類読み比べて、微妙なちがいに頭を抱えたことがあるんだけど、以前取ったメモと見比べて思うに、Rのplsパッケージの解説書Mevik & Wehren(2007)で説明されているのは、PLSではなくてBPLSなのではないかと思う。

読了:Abdi (2010) PLS回帰への招待 in 2010

Indahl, U.G, Liland, K.H., Naes, T. (2008) Canonical partial least squares: A unified PLS approach to classification and regression problems. J. Chemometrics, 23, 495-504.
 PLS回帰と正準相関分析ってどう違うのだろうか... と検索していて見つけた論文。Rのplsパッケージにはcanonical powered PLSという手法が載っていて、その参照文献のひとつになっている。あ、第二著者のLilindさんという人はplsパッケージの作者のひとりだ。
 掲載誌が掲載誌だけに(ケモメトリクスはPLS回帰の本場)、PLS回帰そのものについての知識を前提として、新手法を提案している論文。

 いわく。
 本論文ではPLS2 (多重反応PLSのことらしい) よりももっと自然なやりかたで、PLSによる判別分析を提供します。その際、すでに提案されているpowered PLS(PPLS)という方法を使います。
 それではご紹介しましょう。じゃじゃーん。その名も正準PLS(CPLS)。PLSと正準相関分析(CCA)をあわせた手法です!

 背景。
 予測子$n \times p$行列をX, 反応の$n \times q$行列を$Y$とする。
 $Y$が連続変数である場合に、$p$次元単位ベクトル$u$, $q$次元単位ベクトル$v$について
 $f_1 (u, v) = u^t X^t Y v$
を最大化する手法をPLS2という。
 これはSVDで解ける。$X, Y$を中心化しておいて、$W = X^t Y$をの一階SVD近似を$W_{(1)} = s a b^t$とする。このとき、$cov(Xu, Yv) = (1/n) f_1(u, v)$となる。[←あれれ...どこかに誤植があるはずだ。$cov(Xa, Yb) = (1/n) f_1 (u,v)$の間違い??]

 $Y$が$n \times g$のダミー行列である場合、ちょっとやり方を変えたほうがよい。$W = X^t Y$のSVDから特異ベクトルを得るのは、
 $B_Q = n \bar{X}_g^t Q \bar{X}_g$
のSVDをするのと同じことになる。ここで$\bar{X}_g = (Y^t Y)^{-1} Y^t X$、すなわち$g \times p$の群平均行列。$Q$は重みを表す対角行列で、対角要素は群サイズ$n_k^2$に比例し合計1となる。それよか、
 $f_2(u, v) = u^t X^t Y (Y^t Y)^{(1/2)} = u^t W_\Delta v$
を最大化することを考えたほうがいい。なぜなら、$W_\Delta$のSVDから特異ベクトルを得るのは
 $B_P = n \bar{X}_g^t $P$ \bar{X}_g$
のSVDと同じことになり、ここでPの対角要素は$n_k$に比例し合計1だ。これをPLS-DAという。[はああ? どういうこと? 狐につままれた気分]

 今度はCCA。
 PLS2では$cov(Xu, Yv)$の最大化を行ったわけだが、今度は$corr(Xu, Yv)$の最大化を行う。これは結局... [以下、説明が続くけどパス]

 で、ここからが新手法CPLSの説明なんだけど、哀しいかな、理解できなかった。なんでも、$corr(Xu, Yv)$じゃなくて$corr(X X^t Y c, Yd)$を最大化するのだそうだ。えっ、なぜ???
 説明が書いてあるんだけど、これがもう全然理解できない... 涙を呑んで諦めます。今回はご縁がなかったということで。
 えーと、とにかく、PLSやPLS-DAと比べて、よりアグレッシブに$Y$を予測し、PLS因子数は少なくなるんだそうだ。

 。。。いやいや。深刻に考えるのはよそう。ある日ふと読み返したら、意外にスルスルと理解できるかもしれない。あるいは加齢によってこの分析手法への関心ごと消え失せ、理解できなくてもなんら痛痒を感じなくなるかもしれない。いいよ、もう、どうだって。

読了:Indahl, Liland, Naes(2008) 正準PLS回帰分析のご提案 (おまえらにわかるかどうかは別にして)

赤穂昭太郎 (2013) 正準相関分析入門:複数種類の観測からの共通情報抽出法. 日本神経回路学会誌, 20(2), 62-72.

 仕事のなかで正準相関みたいな問題が出てきちゃったので、勉強の足しになるかと思って読んだ。こういうの、昔から苦手分野である。まあ得意分野なんてどこにもないけどな。

 あれこれ「へーっ」という話がありましたが、ひとつだけメモ。
 ある測定で$m$次元ベクトル$x$と$n$次元ベクトル$y$のペアが観測されるとする(いずれも標本平均を0とする)。それぞれを線形変換して得られる
 $u(x) = a^{T}x$
 $v(x) = b^{T}y$
について、その相関を最大化したい。これは一般化固有値問題に帰着する(要は解けるってことですね先生)。最大で$min(m,n)$個の成分がとれる。これが線形正準相関分析。

 さて、$u(x), v(x)$を非線形化したい。
 カーネル関数を$k_x(x, x')$とする。なんでもいいけど、ガウスカーネルなら
 $k_x(x, x') = \exp(-||x-x'||^2/2\sigma^2)$
である。ある観測ベクトル$x_i$について
 $\phi_x(x_i) = (k_x(x_i, x_1), k_x(x_i, x_2), \ldots, k_x(x_i, x_n))^T$
を求める。同様に$\phi_y(y_i)$も求める。それぞれから平均を引き、それを$x, y$だと思ってやおら線形正準相関分析をやる。実際にはオーバーフィットしちゃうので正則化項をいれる(残念ながら、ここで人手によるパラメータ調整が必要になる)。
 $u(x) = a^{T} \phi_x(x)$
 $v(x) = b^{T} \phi_y(y)$
というわけで、非線形な特徴$u(x), v(y)$が手に入ったことになる。

 ところが。これとは別の非線形化アプローチがある。
 実は、$(x, y)$の同時確率密度関数$p(x, y)$が既知ならば、$u(x), v(x)$は連立方程式
 $\int \{p(x|y)-p(x)\} u(x) dx = \lambda v(y)$
 $\int \{p(y|x)-p(y)\} v(x) dx = \lambda u(y)$
の解になるのだそうだ。実際には$p(x, y)$は未知なので、実用性は低いんだけど、著者の先生いわく、「xやyが実数ベクトルではなくアンケートデータのような質的データの場合の解析法である数量化III類は、この定式化から理解することが容易となる」とのこと。へええ、そうなんですか。

 。。。いやー、もうね、嫌になっちゃいますね、勉強しないといけないことが多すぎて。
 そういえば、正準相関とPLS回帰ってどう違うんだろう。相関を最大化するか、共分散を最大化するかという違いに過ぎないのだろうか? 疲れちゃったのでいまは考えたくないけど。

読了:赤穂(2013) 正準相関分析入門

Jain, A.K., Murty, M.N., Flynn, P.J. (1999) Data Clustering: A Review. ACM Computing Surveys, 31(3), 264-323.
クラスタリングについてのレビュー論文。Google scholar上の被引用件数が14000件超というすごい奴である。勉強のために読んだ。20年近く前の論文を、なにをいまさらという気もするけれど...

1. イントロダクション
1.1 モチベーション
 探索的データ分析であれ検証的データ分析であれ、その手続きにおいて鍵となる要素のひとつにグルーピングがある。パターンの集まりを類似性に基づくクラスタへと組織化することをクラスタ分析という。判別分析(教師つき分類)とは異なり、与えられたパターンにはラベルがついていない(教師なし分類)。いいかえれば、カテゴリのラベルはデータ駆動的である。
 本論文ではクラスタ分析におけるコア概念と技法をサーベイする。統計学・決定理論にルーツを持つ分野を中心とするが、機械学習などのコミュニティに関しても言及する。

1.2 クラスタリング課題の構成要素
 ふつう、クラスタ分析は次の段階からなる:

  1. パターンの表現。3章で扱う。
  2. 近接性の定義。4章で扱う。
  3. クラスタリング。5章で扱う。
  4. (必要ならば)データ抽象化。たとえば、クラスタについての記述とか。
  5. (必要ならば)出力の評価。ふたつにわかれる。
    • cluster tendencyの分析。そもそもクラスタ分析していいことがあるのかどうかを調べる。研究分野としてあまり活発でないので本論文では割愛。
    • cluster validityの分析。得られたクラスタが偶然の産物だったりアルゴリズムのアーティファクトだったりしないかを調べる。(1)外的評価(アプリオリに与えられた構造を復元できるか)、(2)内的評価(クラスタがデータに対して内在的に適切か)、(3)相対的テスト(2つの構造を比べてどちらが良いか)、に分けられる。

1.3 ユーザのジレンマと熟達の役割
 手元の問題に適したアルゴリズムをどうやって選ぶか。Dubes & Jain (1976)はFisher & Van Ness (1971)が定義した許容性基準によってアルゴリズムを比較している。そこでの許容性基準のベースにあるのは、(1)クラスタの形成方法、(2)データの構造、データの構造に影響しない変化への敏感性、である。でも、「データは規準化すべきでしょうか」「どんな類似性指標がどんな状況で適切でしょうか」といった問いには答えてくれない。[←ああなるほど、アルゴリズムのadmissibilityの比較だけでは役に立たんということか]
 多次元データセットにおける構造をいつでも明らかにしてくれるという便利な方法はない。ユーザは個々の手法について十分に理解するだけでなく、データ収集過程の詳細についての知識と、ある程度の領域知識を持たねばならない。
 データソースに対する適切な制約もクラスタリング手続きの一部である。たとえばmixture resolvingがそうだ。データが未知の数の確率密度の混合から抽出されていると仮定するせいで、混合要素の数と各要素のパラメータを推測することがクラスタリング問題となる。

1.4 歴史(略)
1.5 本論文の構成(略)

2. 定義と表記
 あるパターン(特徴ベクトル、観察事例、データ)を$\mathbf{x}$とする。その要素$x_i$を特徴(属性)と呼ぶ。パターンの次元数を$d$とする。
 パターン集合を$\mathcal{X} = \{\mathbf{x}_1, \ldots, \mathbf{x}_n\}$とする。通常は$n \times d$行列である。
 パターン生成過程を支配する状態ををクラスと呼ぶ。クラスタリングとは、パターンをグルーピングして、異なるパターン生成過程を反映するクラスを手に入れようとすることである。
 パターン集合$\mathcal{X}$にラベル$\{l_1, \ldots, l_n\}$を付与することをハード・クラスタリングという。ラベルの種類数(クラスタの数)を$k$とする。
 パターン$\mathbf{x}_i$に、それがクラスタ$j$に属する程度$f_{ij}$を付与することをファジー・クラスタリングという。
 パターンの類似性を定量化するのに用いる、特徴空間におけるメトリック(ないし準メトリック)を距離指標という。

3. パターン表現、特徴選択、特徴抽出
 [良いパターン表現がいかに大事か、という説明が続いて...]
 特徴は、量的(連続, 離散, 間隔)、質的(名義, 順序)にわけられる。特徴が木として構造化されている場合もある。
 特徴選択は大事。本質的にアドホックで試行錯誤を要する。
 PCAなどで特徴抽出することもある。
 [この節、期待してたんだけど、ごく短い。がっくり。まあそういう主旨のレビュー論文ではないのだろう]

4. 類似性指標
 連続的特徴の場合、一番一般的なメトリックはユークリッド距離である。
 $d_2(\mathbf{x}_i, \mathbf{x}_j) = (\sum_k (x_{ik}-x_{jk})^2)^{1/2} = || \mathbf{x}_i - \mathbf{x}_j||_2$
 一般化するとミンコフスキー距離。
 $d_p(\mathbf{x}_i, \mathbf{x}_j) = (\sum_k (x_{ik}-x_{jk})^p)^{1/p} = || \mathbf{x}_i - \mathbf{x}_j||_p$
 良い点:(1)直感的にわかりやすい。(2)「コンパクト」ないし「よく分離されている」クラスならうまく機能する。
 悪い点:(1)スケールが大きい特徴が支配的になる(なので、ふつうは事前に規準化する)。(2)特徴間に線形相関があると歪む。そういうときは正規化マハラノビス距離
 $d_M(\mathbf{x}_i, \mathbf{x}_j) = (\mathbf{x}_i - \mathbf{x}_j) \Sigma^{-1} (\mathbf{x}_i - \mathbf{x}_j)^T$
を使うこともある。$\Sigma$は既知の共分散行列または標本共分散行列。これは、各クラスの条件付き密度が単峰で、多次元空間における広がりで特徴づけられるという仮定(つまり多変量正規だという仮定)に基づいている。Mao & Jain (1996 IEEE Trans.Neur.Net.)をみよ。ほかにHausdorff距離というのを使うという提案もある。 Huttenlocker, et al. (1993 IEEE Trans.PatternAnal.Mach.Intell.)をみよ。

 クラスタリングアルゴリズムはふつうパターン集合を使い、パターン間の距離を求めるのだが、最初から距離行列を使うアルゴリズムもある。
 連続量でない特徴から距離を求めるというのは厄介な問題である。Wilson & Martinez (1997 J.Artif.Intell.Res.), Ichino & Yaguchi (1994 IEEE Trans.PatternAnal.Mach.Intell.)をみよ。
 パターンを文字列で表現するというのもある(syntactic clusteringという)。統計的手法に比べるとすべての面で劣っているといわれているので、本稿では割愛。パターンを木構造で表すというのもある。
 近隣のデータ点(文脈)の効果を考慮した距離指標もある。たとえば相互近隣距離(MND)。データ点$i$に関して$j$が持っている近隣数を$NN( \mathbf{x}_i, \mathbf{x}_j)$とする。[←よくわからないのだが、$j$からみて$i$より近い点の数、ってことかな?] で、
 $MND(\mathbf{x}_i, \mathbf{x}_j)  NN( \mathbf{x}_i, \mathbf{x}_j ) + NN(\mathbf{x}_j, \mathbf{x}_i)$
この距離は三角不等性を満たさないのでメトリックでないんだけど、クラスタリングでは良く使われている。このように、距離・類似性は必ずしもメトリックでない。

 特徴が十分にたくさんあれば、いかなるふたつのパターンであっても類似性は同程度である。類似性に差をつけるためにはなんらかの付加的な領域情報が必要になる。[ここでconceptual clusteringの例を紹介。3つの事例があって、ユークリッド距離では同程度なんだけど、うちふたつは同一のカテゴリに属しているようにみえて...という話。Michalski & Stepp (1983) というのが引用されているのだけれど、おそらくMichalski, Stepp, & Diday (1983 IEEE Trans. Pattern Anal. Mach. Intell.) の誤りだろう]

5. クラスタリング技法
 クラスタリングはとりあえず次のように分類できる。

といっても、ほかにもたくさんの分類がありうる。

5.1 階層クラスタリング・アルゴリズム
 [基本的な考え方と、デンドログラムについての説明があって...]
 たいていの階層アルゴリズムは、{単一リンク、完全リンク、最小分散}の変形である。[←書いてないけど、Ward法は最小分散アルゴリズムに分類されるのであろう]
 一番有名なのは、クラスタ間の距離を、それぞれ1個ずつ事例を出してその距離を調べた時の最小値(単一リンク)ないし最大値(完全リンク)とするやりかた。単一リンクだとchainingしやすい。完全リンクはコンパクトなクラスタになりやすい。実務的にもふつう完全リンクのほうが優れている。
 階層アルゴリズムは分割(Partitional)アルゴリズムに比べて使い勝手がよい面がある。たとえばk-meansはデータセットが等方的(isotropic)なクラスタを含んでいないとうまくいかない[←なるほどー]。いっぽう、アルゴリズムは階層アルゴリズムのほうが複雑。両者のハイブリッド案もある。
 なお、ここまでの話は全部hierarchicalかつagglomerativeだったけど、hierarchicalかつdivisiveなアルゴリズムもある。

5.2 分割アルゴリズム
 この方法の問題点は、クラスタ数を決めなきゃいけないという点。Dubes(1987, Pattern Recogn.)を参考にせよ。
 この方法はふつう、なんらかの関数を最適化するクラスタをつくるわけなんだけど、網羅的に探すのは大変なので、初期値を変えながら複数回繰り返し、最良の奴を選ぶことが多い。

5.2.1 二乗誤差アルゴリズム
 一番よく使われていて、直感的にもわかりやすい。二乗誤差とは、クラスタ$j$に属する$i$番目のパターンを$x_i^{(j)}$, クラスタ$j$の重心を$c_j$として、
 $\sum_j \sum_i || x_i^{(j)} - c_j ||^2$
のこと。
 もっとも良く使われているのがk-meansアルゴリズム。問題点は、初期値に対して敏感で、局所最小解に落ちちゃうかもしれない点。[図で説明している。親切...]
k-meansのバリエーションはたくさんある。(1)初期値選択を工夫する。(2)重心の距離が閾値を下回る2クラスタを併合する。例としてISODATAアルゴリズムがある。(3)二乗誤差以外の基準関数を併用する。例としてdynamic clusteringというのがある。

5.2.2 グラフ理論的クラスタリング
 いちばんよく知られているのは、データの最小全域木(minimal spanning tree; MST)をつくり、一番長いエッジを消すという手法。
 階層クラスタリングはグラフ理論の観点からみることもできて...[略]
 非階層、overlapありという手法でドロネーグラフ(Delaunay graph; DG)というのもある。ボロノイ近隣の点をつなぐ。

5.3 mixture-resolvingアルゴリズムとmode-seekingアルゴリズム
 mixture-resolvingアルゴリズムは、パターンが複数の分布から抽出されたものだと仮定し、それぞれの分布のパラメータを推定するアルゴリズム。ふつう分布はガウシアンだと仮定される。伝統的にはパラメータを最尤推定する。最近ではEMアルゴリズムを用いることが多い。[←とこのように、有限混合モデルについては意外にそっけない説明である。機械学習系の論文だからかしらん?]
 密度ベースのクラスタリングのノンパラメトリックな手法も提案されている。ノンパラ密度推定の方法にParzenウィンドウというのがあるけど、あれと同じようにして、入力パターンセットの多次元ヒストグラムのなかで、カウント数が大きくなるビンを探す。[←ああそうか、これってmodeを探索しているわけか...]
 ほかに、ノンパラ密度推定に基づく距離を使った階層手法・分割手法もある。

5.4 最近隣クラスタリング
 最近隣距離を使ったクラスタリングもある(Lu & Fu, 1978 IEEE Trans. Syst. Man Cybern.)。距離が閾値を下回る最近隣ペアを探しては、ラベルを一方から他方にコピーするというのを繰り返す。[←ちょ、ちょっと待って、最初のラベルはどうすんの?]

5.5 fuzzyクラスタリング
 対象を$N$個、クラスタを$K$個とする。まず$N \times K$の初期メンバーシップ行列$U$をつくる。要素$u_{ij}$は対象$x_i$のクラスタ$c_j$へのメンバーシップを表していて、ふつう$u_{ij} \in [0,1]$。
 で、$U$からファジー基準関数の値を求める。たとえば
 $\sum_i \sum_k u_{ij} ||x_i - c_k||^2$
というような関数。で、この基準関数が小さくなるように$U$を少しずつ変えていく。
 もっともよく用いられているのはfuzzy c-meanアルゴリズム(FCM)。他にもいろいろある。

5.6 クラスタの表現
 クラスタリングの最終目的が、データの分割ではなく、むしろデータの抽象化だということもある。クラスタの表現という問題はこれまであまり研究されていない。表現のスキーマとして以下が挙げられる。

 意思決定におけるデータ抽象化は重要である。なぜなら:

5.7 人工ニューラルネットワークによるクラスタリング
以下の特徴がある:

良く使われているのは、Kohonenの学習ベクトル量子化(LVQ)、自己組織化マップ(SOM)、適応的レゾナンス理論モデル(ART)。これらはアーキテクチャとしては単層。入力ノードと出力ノードのあいだのウェイトを更新する手続きは、実は古典的なクラスタリングとよく似ている。たとえば、LVQはk-meansと深いつながりがある。
 SOMは2次元のマップを使うので直感的にわかりやすいけど、初期ウェイトをしくじると局所解に落ちるし、収束に関わるパラメータがいっぱいあって、同じ入力なのに反復回数によっては異なる出力となりうる(つまり安定性がない)。学習率を下げていけば安定性が生じるけどこんどは可塑性がなくなる。
 ARTは安定的かつ可塑的といわれているんだけど、パターン入力の順序に依存する。また、クラスタの数とサイズがビジランス閾値と呼ばれる定数に依存する。
 SOMもARTも超球になっているクラスタの検出にしか向いていない。これに対して、2層のネットワークで楕円もみつけようという提案がある。

5.8 進化アプローチによるクラスタリング
 まず、クラスタリングの解(データの分割)のランダムな母集団をつくる。で、それぞれの解について適合度を求める(通常は二乗誤差に反比例する値)。で、それぞれの解を染色体と見立てて、selection, recombination, mutation操作を行い、第二世代の母集団をつくる。これを繰り返す。
 有名な手法として、遺伝的アルゴリズム(GA)、進化方略(ES)、進化プログラミング(EP)がある。GAが一番良く使われている。GAでは解は二値文字列になる。recombination操作にはいろいろあるけど、交差が一番良く使われている。selection, recombination, mutationのいずれも、適合度に基づいて確率的に行われる。
 ES, EPとGAとのちがいは解の表現と操作である(EPはrecombination操作を行わない)。要するにいずれも二乗誤差を最小化しているわけである。
 たとえばk-meansの場合、「次の反復」で得られる解は今ある解の近傍である。fuzzyクラスタリングもANNもそうだ。こういうのを局所化探索と呼ぶことができる。これに対して、GAでは交差や変異の操作によってとんでもない解が得られるわけで、大域化探索であるといえる。
 進化的アプローチによるクラスタリングにはいろいろ拡張案があって...[省略]
 GAの問題点としては、母集団サイズや交差・変異確率といったいろいろなパラメータに対する敏感性の高さが挙げられる。問題特有的なヒューリスティクスを組み込んだほうがよいという意見もある。
 クラスタリングを最適な分割を見つけるという課題ではなくて、最適な重心の位置を決めるという最適化問題として捉えるなら、ESやEPが使いやすい(GAとちがって、重心を実数ベクトルとして直接符号化できるから)。

5.9 検索ベースのアプローチ
 検索テクニックを使って最適な分割を検索するというアプローチ。ここでいう検索は決定論的検索と確率的検索に分かれる。
 決定論的検索としては、Branch-and-bound法で最適な分割を探すというアプローチがある。計算が大変。また、決定論的アニーリングを使うという手もある。大域最適解が保証されないというのが欠点。[←なるほどね... データ生成メカニズムは一切問わず、事例にクラスタ番号を付与する整数計画として解いちゃうということだろうか]
 確率的アプローチとしては、シミュレーテッド・アニーリング(SA)とか、Tabuサーチとかがある。[説明略]

5.10 手法の比較
各手法の特徴を概観すると、

 実証的な比較研究はいろいろあって...[めんどくさいのでパス]...
 要約すると、大データ向きなのはk-meansとKohonen net、あとは小データ用。どの手法でも領域知識をうまく使うことが大事。基準関数を使うアプローチだとクラスタは超球になりやすいので、それが困る場合は、階層アルゴリズムのほうがいいかも。

5.11 領域に基づく制約をクラスタリングに統合する
 そもそもクラスタリングは本質的に主観的な課題である。だから主観性をうまく組み込みたい。
 どんなクラスタリング・アルゴリズムであっても、なんらかのタイプの知識をつかっている。ただそれが暗黙的か明示的かがちがうだけだ。[←おおお、名文句だ...」
 パターンを表現するスキーマの選択、類似性指標の選択、グルーピングのスキーマの選択、ANN, GA, TS, SAにおけるパラメータの選択、いずれにおいても、知識が暗黙的に影響している。もっと明示的に知識を使うこともできる。知識を活かした特徴選択とか。
 領域知識の組み込みはアドホックなものなので、事例と先行研究を挙げることしかできない。こういうのに関心がある人は機械学習系の学術誌を読みなさい。

 実務的には、次の3つの問題が重要。(1)領域知識の表現、利用可能性、完全性。(2)知識を用いた推論の構築。(3)知識の変化への適応。

5.12 巨大なデータセットのクラスタリング
 大データに対して使われているのはk-meansとKohonen netである。超球じゃないクラスタが作れるという点では階層アルゴリズムが便利なんだけど、時間とメモリが大変になる。
 大データ向き手法もいろいろ開発されている。CLARANS, BIRCHが有名。[いろいろ説明が書いてあるけどパス]
 データが大きいとメモリにデータが載りきらなくなる。この問題に対する対処策として以下が挙げられる。

6. 応用
[画像分割、物体と文字の認知、書籍を検索するシステムというような状況検索、原油を掘るというようなデータマイニングでの活用例、を消化。内容も古いと思うし、気力も尽きたのでパス]

7. 要約 [略]

... やれやれ、疲れた。正直、途中から「これ20年前の話だよな...」という思いにかき乱されて、モチベーションが落ちてしまったんだけど、勉強になりましたです。
 グルーピングの手続きについて、この論文ではまず大きく階層的手法とそうでない手法という観点から分けていて、前者のほうが使い勝手が良い(versatile)だと何箇所かで述べている。クラスタの形状についての仮定がない分柔軟だ、という意味なのだろうと思う。うーん、それって良し悪しだと思うんですけど、どうなんすかね。
 admissibilityについての議論が短いところも、ちょっと意外であった。クラスタリング手法のレビューなんだから、当然Fisherのadmissibility基準で比較するんだろうと思ったのである。著者らが説明していたように、アルゴリズムのadmissibilityだけで形式的に語れる範囲はそう広くない、ってことなんでしょうね。

読了:Jain, Murty, Flynn (1999) クラスタリング手法レビュー

Hanley, J.A., Lippman-Hand, A. (1983) If nothing goes wrong, is everything all right? Interpreting zero numerator. Journal of the American Medical Association. 249(13), 1743-1745.
 「いずれ読む」フォルダにPDFが入っていたんだけど、なぜ入れたんだか思い出せない。時々こういうことがあって、結局読まないままになっちゃうんだけど、これはたったの3pなのでざっと目を通した。
 タイトルの通り、割合の推定において分子が0だったらどうするのかという啓蒙論文であった。誌名に見覚えがないな...と思ったのだが、よく見たら現在でいうJAMAである。

 いわく。医師は患者に特定のアウトカムが生じる確率についての推定値を示さなければならない。そのアウトカムが一般的なものでない場合、正確な推定は難しくなる。特に、ある研究においてそのアウトカムの事例が一件もない場合には、一件以上ある場合と比べて質的にも量的にも異なる事態となる...と考えられている。
 本論文では以下を強調したい。(1)分子が0であることは「リスクなし」を意味しない。(2)分子が0だからといってリスクのサイズについて推測できないわけじゃない。(3)分子が非ゼロのとき適用できる推測統計の諸原理は、分子がゼロの時にも適用できる。

 いま、標準的な造影剤があって、深刻なリアクションを示す人が10000人中15人であることがわかっているとする。新しい造影剤を167人に試したところ、深刻なリアクションを示した人はいなかった。リスクはどちらが高いか。
 まずはふたつの造影剤のあいだでリスクが同一(10000人中15人)だとしよう。167人試して出現数0となる確率は、(1-0.0015)^167 = 0.78。ごくありうる事柄である。
 では、新造影剤のリスクが100人中1人だったら? 167人試して出現数0となる確率は、(1-0.01)^167 = 0.19。まだまだ、驚くような値ではない。
 今度は、新造影剤のリスクが25人中1人だったら? 167人試して出現数0となる確率は、(1-0.04)^167 = 0.01。この場合は驚く。真のリスクはもっと低いに違いないという話になる。
 ここで慣例に従い、我々の「驚きたい程度」を5%とし、これを下回ったら「真のリスクはもっと低いに違いない」と考えることにしよう。[←というわけで、途中でやっと気が付いたんだけど、著者らは95%信頼区間についてわかりやすく説明しているわけである]

 さて、観察された割合が$0/n$であるとき、真のリスクは0からある値までの間にある。それと整合するような真のリスクの最大値(=95%信頼区間の上限)をMaximum Riskと呼ぼう。すると
 $(1-Maximum Risk)^n = 0.05$
 $Maximum Risk = 1-0.05^{1/n}$
これは$3/n$で近似できる。なお、ポワソン分布から直接算出しても同じことがいえる。

 [数学の勉強をしてこなかったせいで、こういう話には途中でついていけなくなる。自分向けにゆっくり書くと、
 $0.05^{1/n} = \exp(\log(0.05^{1/n})) = \exp(\log(0.05)/n)$
さて指数関数というものは
 $\exp(x) = \sum_i \frac{x^i}{i!} = 1+x+\frac{x^2}{2}+\frac{x^3}{6}+\cdots$
と展開できる。$x=\log(0.05)/n$と代入して
 $\exp(\log(0.05)/n) = 1 + \frac{\log(0.05)}{n} + \frac{\log(0.05)^2}{2n^2} + \frac{\log(0.05)^3}{6n^3} \cdots$
第二項の$\log(0.05)$はおよそ-3。第三項以降は分母が$2n^2, 6n^3, \ldots$と大きくなっていくので無視できる。というわけで
 $0.05^{1/n} \approx 1 - 3/n$
 $1- 0.05^{1/n} \approx 3/n$
ということであろうかと思う]

 手っ取り早くいうとこういうことだ、観察された割合が$0/n$だったら、真の割合は$3/n$以下である。100人観察して0人だったら、真の割合は3%より以下である。これが"The rule of three"だ、諸君、覚えておきなさい。

 。。。というわけで、なぜ読もうと思ったんだか結局最後まで思い出せなかったんだけど、面白い文章であった。The rule of threeね。こんどセミナーとかやることがあったらネタにしよう。

 途中で余談として出てくるんだけど、かつてラプラスは、過去5000年間にわたって日が昇らなかった日はない、この日数を$n$として、今後日が昇るオッズは$n:1$だ、と述べているそうである。へええ。

読了:Hanley & Lippman-Hand (1983) 調べたい事柄の発生率が0で困っているあなたのための「ルール・オブ・スリー」

中田秀基 (2018) 人工知能・機械学習の応用・研究に適したパブリッククラウドサービス. 人工知能, 33(1), 15-22.
タイトルの通りの内容。世の中どんどん変わってキャッチアップできないので、こういう話をまとめて紹介して下さるの、すっごく助かりますです。
音声認識・発話のSaaSとして、AWS, Watson, Google Cloud Platform, MS Azureが挙げられていたが、Azure Custom Speech Serviceというのはアプリケーション固有の言語モデルを与えることができるのだそうだ。へえー。

読了:中田(2018) 機械学習のクラウドサービス in 2018

Qi, Z., Wang, H., Li, J., Gao, H. (2018) Impacts of Dirty Data: an Experimental Evaluation. arXiv:1803.06071 [cs.DB]
 たまたま見つけて、面白そうなのでめくってみたもの。著者らの所属はハルビン工科大。
 タイトルの通り、データが汚れていたら機械学習の結果にどう響くか、という実証研究である。面白いことを考えるなあ。実験結果をどこまで一般化していいものかどうかわからないが、テーマとしてはなかなか切実な話である。

 データの品質として次の3つに注目する。

 アルゴリズムとして以下に注目。

 実験です。UCIデータセットから、irisなど13個のデータセットを借りてきて、わざと汚してはアルゴリズムを適用し、汚さない場合と比較した。
 手順の説明ののち、5頁にわたって結果の報告があったが、めんどくさいのでパス。すいません、そこまでの気力はないんです...

 最後に示された、ユーザ向けガイドラインだけメモしておく。
 分類の場合のガイドライン。なお、F指標ってのは(2 x Precision x Recall) / (Precision + Recall)のこと。

  1. まずは所与のデータのエラー率(欠損率、不整合率、矛盾率)を求めましょう。
  2. アルゴリズムを選びましょう。まずprecision, recall, F指標のどれに注目するかを決める。それが70%を超えるアルゴリズムを候補とする。データが小さい場合は、ロジスティック回帰も候補にいれる。
  3. 一番エラー率が高いタイプのエラーに注目し、上で決めた指標について、sensitivityが一番低いアルゴリズムを選ぶ。[sensitivityとは、データが汚れているときにそれに影響される度合いのことで、実験結果が表になっている。実際のところ、どのエラータイプでもどの指標でも、KNNが最低みたいだ]
  4. そのアルゴリズムのkeeping pointを調べ、それに達するまでデータをクリーニングする。[keeping pointとは許容できるエラー率のことで、実験から求めた結果が表になっている。表をみると、注目する指標がF指標の場合、欠損のkeeping pointが一番高いのは決定木だが、不整合のkeeping pontが一番高いのはベイジアン・ネットワーク。ランダム・フォレストはrecallに対する欠損のkeeping pointがやたらに高いが、F指標に対する欠損のkeeping pointはやたらに低い。などなど、いろいろ眺めているといろいろ面白い]

 クラスタリングの場合も上とほぼ同じで、

  1. 所与のデータのエラー率(欠損率、不整合率、矛盾率)を求める。
  2. precision, recall, F指標のどれに注目するかを決め、それが70%を超えるアルゴリズムを候補とする。データが大きい場合はDBSCANも候補にいれる。
  3. 一番エラー率が高いタイプのエラーに注目し、上で決めた指標について、sensitivityが一番低いアルゴリズムを選ぶ。[全体にLVQが低めだ]
  4. そのアルゴリズムのkeeping pointを調べ、それに達するまでデータをクリーニングする。[LVQ, DBSCANが高め。CLARANSは欠損のkeeping pointがめっちゃ低い。へー]

 回帰の場合のガイドライン。なお、NRMSDってのはRMSDを(予測値の最大値)-(最小値)で割ったもの、CVRMSDってのはRMSDを予測値の平均値で割ったもの。

  1. 所与のデータのエラー率(欠損率、不整合率、矛盾率)を求める。
  2. RMSD, NRMSD, CVRMSDのどれに注目するかを決め、それが1(NRMSDなら0.5)%を超えるアルゴリズムを候補とする。
  3. 一番エラー率が高いタイプのエラーに注目し、上で決めた指標について、sensitivityが一番低いアルゴリズムを選ぶ。[全体に最小二乗法が低めだわ...]
  4. そのアルゴリズムのkeeping pointを調べ、それに達するまでデータをクリーニングする。[最小二乗法が高めだ... これが伝統の強さというものか...]

 最後に、今後の課題。
 データ分析・データマイニング関係者のみなさん向けには、

 データ品質・クリーニング関係者のみなさんにはこういいたい。アルゴリズムがエラーに対して持つ頑健性は、エラーのタイプによってもアルゴリズムによっても異なる。だから、いきなりデータを100%クリーンにする必要はないわけだ。むしろ分析課題が決まってから、それにとって適切なkeeping pointまでクリーニングするのがお勧め。

 というわけで、あんまり真面目に読んでないけど、面白い論文であった。
 自分の仕事に引き付けて考えると、私の仕事上のデータ分析はほぼすべてがアドホックなもので、初期の段階では分析課題さえきちんと定義できていないことが多い。分析の進行とともに課題が徐々に明確になり、複数の下位課題にブレイクダウンされていくが、その下位課題によってアルゴリズムも使う変数も変わってくるし、クリーニングが必要な程度も変わってくる。そのせいで、初期段階で時間をかけたクリーニングが結果的には不要であったり、逆にあとでクリーニングをやり直す必要に迫られることも少なくない。どうやって改善すればいいのか、悩ましいところである。
 この論文のアプローチは、「目的とする指標とアルゴリズムによって、クリーニングの目標水準を決める」というもので、分析課題がはっきりしている状況では有用だと思う。でも私の場合、データを一通りクリーニングしないことには身動きが取れないが、しかしクリーニングしてる段階ではまだ先が読めないんですよね...クリーニングをいくつかのフェイズに分け、本格的なクリーニングは個別のモデリングごとにオンデマンドにやるものなのだと覚悟を決める、というのがよいのだろうか。ううむ...

読了:Qi, Wang, Li, & Gao (2018) 機械学習におけるデータの「汚れ」の影響

Richardson, D.B., Kinlaw, A.C., Keil, A.P., Naimi, A.I., Kaufman, J.S., Cole, S.R. (2018) Inverse Probability Weights for the Analysis of Polytomous Outcomes. American Journal of Epidemiology.

 多項回帰モデルは共変量が多いと推定が大変なので、ウェイティングでなんとかしましょう、という話。
 いずれ読もうと思い、「いずれ読む」という名のフォルダ(実質的には墓場)にPDFを放り込みかけたんだけど、行間の広いdraftなのに10pしかないことに気づき、そんならさっさと目を通しておこう、と仕事を中断して目を通した。要するに現実逃避である。

 アウトカムを$D$, そのカテゴリを$0, \ldots, G$とする。曝露変数を$E$とし、話を簡単にするために二値とする。共変量を$\mathbf{Z}=\{Z_1, \ldots, Z_k\}$とする。
 研究者は、$Z$を調整しつつ、曝露ありとなしの間で$D$の分布を比べたい。多項回帰なら、参照レベルを$D=0$として
$\displaystyle \log\frac{P(D=g|E=e, \mathbf{Z}=z)}{P(D=0|E=e, \mathbf{Z}=z)} = \alpha_g + \beta_g E + \mathbf{Z} \gamma_g$
とするところだ。するってえと、$\alpha$を$G$個、$\beta$を$G$個、長さ$k$の$\gamma$を$G$個、推定する羽目になるわね。そんなん推定してられっか、と思いません? そんなあなたのための新手法!名付けて「inverse-probability-of-exposure weighted多項ロジスティック回帰モデル」です!
 [正直言って、名前をみただけでなにすんのか見当が付いちゃうわけで、すごい出落ち感がある...まあ最後まで読みますけど...]

 ここからは実例でご覧いただきましょう。
 子宮内膜がん患者の横断調査(n=288)。知りたいのはがんの組織学的下位タイプと年齢の関連性。説明変数は年齢のみ、二値とする(64歳まで, 65歳以上)。アウトカムは3タイプある。共変量は喫煙有無など3つ、すべて二値。
 まず共変量で年齢の確率を予測するモデルを推定します。次に、この確率の逆数(に、年齢の周辺確率を掛けた値)を重みにし、年齢だけを説明変数にして、重みつきの多項回帰を推定します。
 シミュレーションしてみると、ふつうの多項モデルが収束しない時にもこの方法なら収束する。パラメータ数が多すぎる多項モデルをどうにかする方法としては、ほかに縮小推定なんかもあるけれど、多くの場合こっちのほうが簡単なのではないでしょうか。
 なお、この手法は要するに曝露の傾向スコアと関連しておりましてですね、本命の多項モデルが一致性を持つためには、その前の曝露予測モデルの指定が正しいことが必要であります。
 云々。

 。。。という、ごく短い報告であった。ま、気分転換っていうことで、ひとつ。
 詳細は付録をみよとのことだが、入手できない。なんだかなあ。

読了:Richarson, et al. (2018) 共変量のある多項回帰モデルを、共変量で予測した曝露確率の逆数でウェイティングして共変量なしで済ませる

 対応のある二値データについて考える。たとえば、n人の人に製品PとQをみせ、それぞれについて買ってみたいかどうかを判断してもらった、というような場合ですね。両方の製品について「はい」と答えた人数を$a$, 製品Qについてのみ「はい」と答えた人数を$b$, 製品Pについてのみ「はい」と答えた人数を$c$, 両方の製品について「いいえ」と答えた人数を$d$とする(当然ながら$a+b+c+d=n$)。
 製品PとQのあいだで「はい」率は異なるか。これを調べる古典的な方法が、ご存じMcNemar検定である。母集団における「はい」率が製品P,Q間で同一であるという帰無仮説の下で、$(b-c)^2/(b+c)$が自由度1のカイ二乗分布に従うことを利用する。
 分野の違いというのは面白いもので、市場調査の参考書ではこれを「対応のあるZ検定」と呼び、検定統計量$(b-c)/\sqrt{b+c}$を$N(0,1)$と比べよ、と書いてあることが多い。まあどっちでも同じことである。

 ところがこのMcNemar検定、自分で手計算してみるとわかるけど、ちょっと不思議な面がある。
 たとえば、サンプルサイズは$n=100$、うちQについてのみ「はい」と答えた人数が$b=15$, Pについてのみ「はい」と答えた人数が$c=10$だったとしよう。このときの検定統計量の値は$(b-c)^2/(b+c)=25/25=1$。
 今度は、サンプルサイズは$n=100000$, うち$b=15, c=10$だったとしよう。このときも$(b-c)^2/(b+c)=25/25=1$。
 つまり、サンプルサイズがどんなに変わろうと、2x2クロス表の対角セル$a, d$がどんなに変わろうと、非対角セル$b$と$c$さえ同じなら、検定統計量の値は同じなのだ。
 でも、そもそもここで比較したいのは、Pに「はい」と答えた人の割合$(a+c)/n$と、Qに「はい」と答えた人の割合$(a+b)/n$でしょう? サンプルサイズ$n$が大きいとき、これらの割合の信頼性は高くなるはずでしょう?

 ...という素朴な疑問は、私自身がかつて感じたことでもあり、前職の社内研修のときに訊ねられたことでもある。このたび仕事のなかで、ふとこの話を思い出す機会があり、試しにAgrestiの分厚い教科書をめくってみたら、その話はAgresti & Min (2003)に書いたから読んでね、とのことであった。

Agresti, A., & Min, Y. (2003) Effects and non-effects of paired identical observations in comparing proportions with binary matched-pairs data. Statistics in Medicine, 22. 65-75.

 というわけで、読んでみました。難しくてよくわかんない箇所が多かったんだけど...

 あるペア(たとえばあるヒト)$i=1, \ldots, n$が提供する$t=1,2$個目の値を$y_{it}$とする。値$1$を成功、$0$を失敗と呼ぶ。
 このデータを表す形式を2種類考えよう。

 subject-specific形式のデータに当てはめられる標準的モデルは、
 $link[P(y_{i1})=1] = \alpha_i$
 $link[P(y_{i2})=1] = \alpha_i+\beta_c$
であろう。これをconditional modelという(効果$\beta_c$の定義がペアに条件づけられているという意味)。linkというのはたとえばlogit。モデル・フィッティングにおいては、$(y_{i1}, y_{i2})$が$\{\alpha_i\}$の下で独立だと仮定するのが普通である。

 いっぽう、ランダムに取り出したあるヒトの最初の観察を$y_1$, ランダムに取り出した別のヒトの二番目の観察を$y_2$として
 $link[P(y_1)=1] = \alpha$
 $link[P(y_2)=1] = \alpha+\beta_m$
とモデル化するという手もある。これをmarginal modelという。ペアの母集団を通じた平均効果のモデル化である。population-averaged形式の2x2クロス表の周辺分布のモデル化だといえる。

 ここでちょっとこの論文のメモから離れて、Agrestiの"An Introduction to Categorical Data Analysis"からメモしておくと;
 一般化線形モデルのパラメータ$\beta$について$H_0: \beta = 0$を検定する方法には3つある。

 論文に戻って。。。
 $\pi_1=P(y_1=1)$と$\pi_2=P(y_2=1)$が等しいという帰無仮説の検定について考えよう。この帰無仮説は$\beta_m=0$と等価であり、$\pi_{12}=\pi_{21}$と等価である。
 marginal modelに基づいて考えると、$\beta_m=0$という条件の下で最大化された尤度と、条件なしで最大化された尤度の比は、$b,c$だけに依存している。尤度比統計量(=-2*対数尤度比)は$2b \log(2b/(b+c)) + 2c \log(2c/(b+c))$となる。
 $b+c$が小さい場合、$c$を試行数$b+c$, パラメータ$1/2$の二項分布と比べる正確検定が可能である。大標本の場合、これは正規近似できて、
 $\displaystyle z=\frac{c-(1/2)(b+c)}{\sqrt{(b+c)(1/2)(1/2)}} = \frac{c-b}{\sqrt{b+c}}$
これを二乗したのがMcNemar統計量である。これは周辺分布が等しいという検定のためのスコア統計量になっている。
 ワルド統計量はどうか。ワルド統計量は、推定された効果をSEで割ったものである。だからリンク関数の定義によって変わってくる。でも後述するように、$a,c$への依存性は無視できる程度である。
 このように、この検定において情報を提供するのは$b$と$c$だけである。

 ここからは、割合の差、オッズ比、相対リスクの推定、という3つの観点から考える。

 まず割合の差の推定について。ここ、短いんだけど途中からいきなりわかりにくくなるので、思い余って全訳した。

 identity linkの場合、subject-specificな効果とpopulation-averagedな効果は同一である。たとえばconditional modelでは、すべての$i$について$\beta_c = P(Y_{i2}=1)-P(Y_{i1}=1)$である。これを母集団内のペアを通じて平均すると、marginal modelにおける周辺確率の差$\beta_m=\pi_2-\pi_1$と等しくなる。
 別の見方として次の結果に着目することもできる。indentity linkのconditional modelを$2 \times 2 \times n$表に適用したとき、層別変数が説明変数と周辺独立であるときにcollapsibilityが成立する。このとき、これら2変数の標本クロス表は全セルが1となる。[←先生すいません、この段落、なにいってんだかさっぱりわかんないです]
 標本における割合の差は
 $p_2 = p_1 = p_{21} - p_{12} = (c-b)/n$
となる。これはindentity linkのmarginal modelにおける$\beta_m$の最尤推定値である。conditional modelの観点からいえば、これはヒト別の表のMantel-Haenszel型加重平均からも得られる。またこれは、Chen(1996)が示しているように、$\{\alpha_i\}$がなんらかのparametric familyからランダムに抽出されたものだと仮定した、ランダム効果版conditional modelでの最尤推定値になっている。
 周辺表の多項抽出において
 $Var(p_2-p_1) = [(\pi_{12}+\pi{21}) - (\pi_{21}-\pi_{12})^2]/n$
その標本推定値は
 $\hat{Var}(p_2-p_1) = \frac{(b+c)-(c-b)^2/n}{n^2}$
周辺等質性($\pi_1=\pi_2$)という帰無仮説の下で、分散は$(\pi_{12}+\pi_{21})/n$に、その推定値は$(b+c)/n$に、それぞれ帰着する。ここからMcNemar検定が導かれる。$n=a+b+c+d$であるから、帰無仮説が真でない時、効果のサイズの推定値とその標準誤差は、$(a+d)$が増大するにつれて減少する。
 ここでも、また以下のモデルでも、$(a+d)$の効果について考える際には、$b$と$c$を固定して$(a+d)$だけを大きくすると考える。$n$自体も大きくなるので、帰無仮説のもとでの漸近性において$a$, $d$が果たす役割をチェックすることができる。
 $(p_2-p_1)$の分散の推定値は、$n^{-2}$のオーダーで、$(b+c)/n^2$すなわち帰無仮説の下での分散の推定値になる。同様に、$n$が大きければ、$(p_2-p_1)$とその標準誤差の推定値との比は近似的に$(c-b)/\sqrt{b+c}$となる(これはMcNemar統計量の標準正規形式である)。このように、とりわけ$n$が大きいとき、割合の差のワルド検定における$(a+d)$の寄与はごくわずかである。

 では、リンクlogitである場合(パラメータは対数オッズ比になる)は...[パス]
 リンクがlogである場合(対数相対リスク)は...[パス]

 ベイズ推論の観点から見るとどうか。
 marginal modelの場合。$\{\pi_{jk}\}$の事前分布としてパラメータ$\{\mu_{jk}\}$のディリクレ分布を与えるとしよう。$\pi_2 > \pi_1$の事後確率は、$\pi_{21} / (\pi_{12}+\pi_{21}) > 1/2$の事後確率に等しい。左辺の事後分布はパラメータ$(c+\mu_{21}, b+\mu_{12})$のベータ分布になる。だから$a, d$は効かない。ところが、conditional modelになると話が変わってきて...[めんどくさいので省略]

 云々、云々。。。というわけで、$a, d$は効果のサイズやそのSEに全然効かないわけじゃないけど、たいして効かない、ということなのだそうである。すいませんAgresti先生、途中で心が折れました。

読了:Agresti & Min (2003) 対応のある二条件間で割合を比べるとき、「両方1」「両方0」の事例を無視してよいのか

2018年5月 2日 (水)

Trajman, A., & Luiz, R.R. (2008) McNemar chi^2 test revisited: comparing sensitivity and specificity of diagnostic examinations. The Scandinavian Journal of Clinical & Laboratory Investigation. 68(1), 77-80.
 McNemar検定(対応のある2条件間の割合の差の検定)についてちょっと知りたいことがあり、タイトルに惹かれて目を通した。なんだかマイナーそうな誌名だが、Google Scholar上は被引用100件。
 新しい診断基準ができたとき、フォローアップで患者と分かった人だけに絞って、通常の基準での診断を表側、新基準での診断を表頭にとった2x2クロス表をMcNemar検定すれば、敏感度の差を検定できますね、という論文だった。
 メモを取りながら読んだんだけど、そりゃそうだろうなという感じで、正直言って話のポイントが全然つかめなかった...。もっとも、読みながら何度も意識を失ったので、なにか読み落としているのかも。ま、少なくとも知りたい内容についての論文ではなかった、いいや、次にいこう。

読了:Trajman & Luiz (2008) 二つの診断基準の敏感度と特異度をMcNemar検定で比較する

2018年5月 1日 (火)

Choi, S.S., Cha, S.H., Tappert, C.C. (2010) A survey of binary similarity and distance measures. Journal of Systemics, Cybernetics and Informatics, 8(1), 43-48.
 6頁の短い論文。掲載誌についてはよくわからない。
 何の気になしに印刷し、帰宅する電車で眺めていたらこれが妙に面白く、図を「へぇぇぇ...」と感心して眺めていたら乗り過ごしてしまった。仕方がないので次の駅で降り、駅前の深夜スーパーでうろうろして安売りのワインを買った。

 どういう話かというと、長さが等しいふたつの二値ベクトルの類似性を測ることがありますわね。値が一致する個数を調べるとか、値が異なる個数を調べるとか。そういうときに使う指標が山のようにある。そこで、どの指標とどの指標が似ているかというデンドログラムを作りましたという話である。類似性指標の類似性を調べているわけです。

 要するに、なんらかのランダムデータを使って、二値ベクトル間の類似性をいろんなやり方で測ったところ、いつも似た値になる指標とそうでない指標があった、これをデンドログラムで表現しました、と。
 面白いのは、検討する類似性指標のコレクションである。集めも集め、実に76種類もの指標について調べている。各指標の発表年表もついていたりして、眺めているだけで飽きない。いやあ、いろんな指標があるものだ...

 著者らはデンドログラムに基づき、いくつかの指標のグループを指摘しているので、メモしておく。以下、2x2のクロス表について、両方presenceを$a$, 両方absenceを$d$, 片方だけpresenceを$b, c$とする。合計を$n=a+b+c+d$とする。

ほかにも一匹狼的な指標がある。Yuleのw $(\sqrt{ad}-\sqrt{bc})/(\sqrt{ad}+\sqrt{bc})$ とか。

 ... いやー、週末にできちゃうような実験だけど(すいません)、面白かった。
 一番面白かったのは指標の年表である。Jaccard類似性は1901年発表だが、これより古い(つまり19世紀の)指標として、二値ユークリッド距離、Peirceの類似性$(ab+bc)/(ab+2bc+cd)$、Yuleの類似性(YuleのQ$(ad-bc)/(ad+bc)$のことかな?)が挙げられるのだそうだ。ハミング距離なんていったらえらく古めかしい印象があるけど(情報理論っていうんでしょうか?)、発表は1950年、統計学の長い歴史の中では中堅どころに過ぎないのであった。恐れ入りました。
 仕事に役立つ学びは、というと...正直あんまりないけれど、ネガティブ・マッチを抜くか抜かないかというのが重要な対立軸なのね、というのが勉強になった点である。

 いちおうメモしておくけど、この論文、細かい点は良くわからないことが多くて...
 76個の指標をよく見ると、定義が全く同じ奴が散見されるんだけど、これはどういうことなんだろうか。
 実験手続きもよくわからない。該当箇所を逐語訳すると「ランダムな二値データセットをデータセットとして用いる。参照セットは30個の二値事例からなり、それぞれが100の二値特徴を持つ。この参照セットを使った一回のテスト・クエリで、距離ないし類似性の値が100個、それぞれの指標について生成される。2つの指標の間の相関係数を使ってデンドログラムを作る」「30回の独立な試行を平均してデンドログラムを作る」とのこと。どういうこと? 長さ100のランダム二値特徴ベクトルを1本作り、それとは別に100本作り、1本と100本の類似性をk種類の指標で測り、100行k列の行列からk行k列の相関行列をつくり、以上を30回繰り返して平均し、できあがったk行k列の相関行列を使ってk種類の指標を階層クラスタリングした、ってこと? というか、ランダム二値データって母比率はなんなの? ま、細けぇこたぁいいんだよ、って気もするけど。

読了:Choi, Cha, & Tappert (2010) 二値類似性指標はたくさんあるので、その類似性を調べてみた

Wright, M.N., Ziegler, A. (2017) ranger: A fast implementation of random forests for high dimensional data in C++ and R. Journal of Statistical Software.

 Rの高速ランダム・フォレストパッケージrangerの紹介。うっかりarXivのバージョン(2015)を読んじゃったけど、中身は同じだと思う。

 rangerについてご紹介します。分類木、回帰木、生存木に対応してます。速いです。高次元データに最適化してます。C++のスタンドアロン版もあるけど、Rパッケージ版をお勧めします(速さは同じです)。Rにおける標準的実装であるrandomForestパッケージに近い結果が得られます。云々。

 rangerは手法が新しいというより、高速・低メモリ消費を謳うパッケージ。紹介されている実験の結果をみると、

読了:Wright & Ziegler (2017) ランダム・フォレストのRパッケージranger

2018年4月30日 (月)

 勤務先の優秀なインターン青年に「機械学習で分類課題やるとき、クラスの事前確率が極端にちがう場合はclass imbalance問題といわれていて、いっぱい議論があるのよ。腕の見せ所だよ、頑張ってねー」などと、お茶をすすりながら偉そうなことを抜かしたのはいいが、良く考えてみたら、そもそもclass imbalance問題とはなんだろう。正面切って問われたら全然答えられない。
 こういう話、人々はいったいどうやって勉強してんですかね?

Japkowicz, N., Stephen, S. (2002) The class imbalance problem: A systematic study. Intelligent Data Analysis, 6, 429-449.
class imbalance 問題 (以下CIと略記)についての論文。google様的には引用度数1600件強。

本論文の概要
本研究では次の3つの問いについて調べる。

  1. CI問題の本質はなにか。つまり、C5.0のような標準的分類器の正解率がCIのせいで低くなってしまうのはどんな領域か?
  2. CI問題に対処するためのさまざまなアプローチはどう異なるか?
  3. C5.0以外の分類器でも、正解率はCIのせいで低くなるか?

Q1. CIの問題の本質
 実験やります。
 架空のdomainをつくる。それぞれのdomainは[0,1]の一次元の入力を持つ。[0,1]を$2^c$等分して($c=1,\ldots,5$)、それぞれの区間にクラス(0,1)を交互に割り当てる。ここから$(5000/32)*2^s$個の事例を一様に抽出する($s=1, \ldots, 5$)。で、クラス0の各区間から得た事例は$1/(32/2^i)$番目まで残し($i=1,\ldots,5$)、あとは捨てる。これを訓練データとする[nagativeが少ないわけだ]。テストデータは各区間あたり50事例。
 というわけで、要因は複雑性、訓練データのサイズ、CIの3つ。たとえば$c=1, s=1, i=2$だったら、訓練データは$[0,0.5)$がクラス1で157件、$(0.5,1]$がクラス0で79件となる。
 これをC5.0で学習する。4種類の結果を報告する。

 結果。

 この実験にはいろいろ不備がある。たとえば訓練データの実際のサイズがimbalance要因のせいで変わっちゃうとか。そこで改めて実験すると...[細かくて面倒くさい話なので詳細は省略, 結果のみメモする]

Q2. 手法の比較
さっきと同じ実験をやるんだけど、今度は次の対処法を試す。

 結果。どの方法にもそれなりの効果があるが、undersamplingの効率が悪い(randomでもfocusedでも)。概して一番良いのはcost modifying。
 今度は実事例の場合をみてみよう...[面倒くさいのでパス]

Q3. 他の分類器はCIに敏感か?
 同じような実験を、多層パーセプトロン(MLP)とサポート・ベクター・マシン(SVM)でやる。それぞれパラメータがいろいろあるので、試した中で最良の結果をみます。
 結果。
 MLPは[...大幅中略...]C5.0ほどにはCIの影響を受けない。
 SVMは[...中略...] CIの影響を全然受けない。[←へぇー]

結論
 CI問題は相対的な問題で、以下の要因の影響を受ける。(1)CIの程度, (2)概念の複雑さ、(3)訓練セットのサイズ、(4)分類器。ポイントは下位クラスタのサイズが十分かどうか。
 分類器はC5.0, MLP, SVMの順にCIの影響を受ける。
 CIの影響をうける分類器の場合はリサンプリングやcost-modifyingに効果がある。cost-modifyingが一番良い。
 云々。

 。。。いやー、読みにくい論文であった。チャートが小さいんだもん。
 クラス不均衡問題っていうけど不均衡自体が問題なのではない、結局は(クラスじゃなくて)下位クラスタの小標本問題なのだ、というところが面白かった。そういうもんなんすかね。
 SMOTEとかなんだとか、かっこいいリサンプリング法があるが、ああいうのはどうなんだろう。この論文では今後の課題として言及されていた。

読了:Japkowicz & Stepeh (2002) 機械学習におけるクラス不均衡問題について実験しました

Montero, P., Vilar, J.A. (2014) TSclust: An R Package for Time Series Clustering. Journal of Statistical Software, 62(1).
 時系列クラスタリングのRパッケージTSclustのビニエット. 仕事の都合で読んだ。

イントロダクション
 時系列間の類似性をどうやって調べるか。いろんなアプローチがある。

とかとか。類似性さえ決まってしまえば、あとは一般的な分類手法(k-meansとか)などを用いて分析することが多い。
 というわけで、ご紹介しましょう、TSclustパッケージです。時系列間のさまざまな類似性指標をご提供します。ついでにクラスタリングアルゴリズムもご提供します。

TSclustが提供する類似性指標
$X_T = (X_1, \ldots, X_T)^T, Y_T = (Y_1, \ldots, Y_T)^T$とします。

 第1グループ, モデル・フリーなアプローチ。
 まずはローデータに基づくタイプから。

次に、時系列のなんらかの特徴に基づくタイプとしては

 第2グループ, モデル・ベースなアプローチ。
 まずはそれぞれの時系列にARIMAモデルをあてはめる。構造は手で決めてもいいし、AICとかで自動選択してもいい。推定は普通GLSでやる。

 第3グループ、複雑性ベースの距離。
 [圧縮ベースの指標、permutation distribution clusteringというのが挙げられている。誰がそんなもん読むか、全面的にパスだ。とはいえ、最後に出てきた話はこれらの話とは毛色が違い、ちょっと面白いのでメモしておくと...]
 よく使われている非類似性指標では、複雑性の高い時系列同士は非類似性が高くなり、複雑なやつと簡単な奴が類似してしまう傾向があるので、既存の非類似性指標が複雑性の影響を受けないように補正するというアイデアがある。
 いま、ローデータベースの類似性指標$d(X_T, Y_T)$があるとしよう。これを補正したい。まず、なんでもいいから複雑性を定義する。たとえば
 $CE(X_T) = \sqrt{\sum_t^{T-1} (X_t - X_{t+1})^2}$
次に、$CE(X_T)$と$CE(Y_T)$のうち大きい方を小さい方で割り(複雑性が異なる程度を表す)、これを$d(X_T, Y_T)$に掛けてやる。こうすると複雑性が異なる時系列同士の非類似性が高くなる。[←なるほどねえ。細かい工夫があるものだ]

 第4グループ、予測ベースの手法。将来の時点についての予測の分布が似ている奴同士を類似しているとみなす。当然ながらこの手法の結果は他のとは全然違ってくる。予測のためのモデルとしては、いろんなタイプの自己回帰モデルが使える。

時系列クラスタリングのツール
 まあとにかくこのようにして、ペアワイズの非類似性行列が得られたとしましょう。クラスタリングのためには、p値に基づく階層クラスタリングのアルゴリズム、真のクラスタがわかっているときにそれとクラスタを比較するツール、などをご用意している。
 もちろん他のパッケージも活用して下さい。たとえば:

非類似性指標を選ぶときの考慮事項
 まず、形に基づく非類似性が欲しいのか、動的構造に基づく非類似性が欲しいのかを考えること。

 クラスタリングの目的がはっきりしたら、上記指針で指標が絞り込める。次はパラメータをうまく調整せよ。計算時間も留意事項だ。
 クラスタリングのアルゴリズムにも気をつけなさい。たとえば、ふつうのk-meansは「時系列の集合の重心」と時系列との距離を求めることになるけど、そんな重心が正しく定義できるかどうかわからない。Ward法はユークリッド距離が前提だけど、ユークリッド距離でいいのかわからない。
 [なるほどね... この節を読んだだけでも、目を通した甲斐があった]

事例
[TSclustパッケージの使用例を3つ紹介。略]

 。。。勉強になりました。
 時系列の類似性って、いきなりユークリッド距離とか相関とったりしてはいかんのだろうとなんとなく思ってたのだが、それは場面による話であって、一概にダメともいえないようだ。ふうん。
 それはそうと、あれですかね、やっぱし、いったん類似性行列を作んないといけないんですかね。何十万本も時系列があるときはどうしたらいいんだろうか。

読了:Montero & Vilar (2014) RのTSclustパッケージで時系列クラスタリング

2018年4月28日 (土)

Mercer, A., Lau, A., Kennedy, C. (2018) For Weighting Online Opt-In Samples, What Matters Most?, Pew Research Center.

 先日Pew Research Centerが出していたリリース。仕事の役に立つかと思って読んでみた(←建前. ホンネは「なんだか疲れちゃったので息抜きにパラパラ眺めた」)。
 70ページもあるんだけど、ちょうど半分がAppendixである。論文というより広報目的のホワイトペーパーという感じ。正直、こういうの、すごく読みづらい。

 いわく。
 任意参加型の標本を使った世論調査では、よく母集団に合わせてウェイティングすることがあるけど、あれって意味あんのか。実験してみました。
 [なお、Pew Research Centerでは2016年にもオンライン・パネルと確率標本の比較をやっている由]

 任意参加型のオンライン・パネルで調査して国レベルの推定値を得る、という場面に注目する。
 同じ調査票で複数のパネルからどさっと回答を集めておく。で、そこから票を抽出し、あれこれウェイティングとかして調整して集計しては、公的調査と比べ、一致するかどうか調べる。[それらの公的調査がベンチマークとして正しいのかという問題はあるわけだけど...その話は2016年のレポートをみて、とのこと]

 調査時期は2016年の6-7月。パネルは3種類、それぞれ約10000票を集めた。言語は英語かスペイン語。各パネルの回収票から、{2000票, 2500票, ..., 8000票}のいずれかを無作為抽出する。標本サイズによる違いを見たいから。

 調整に使う変数は2種類。

 [...ここまで読んで、うわあこういう仕事やりたくねえなあと、思わず天を仰いだ。上記の変数で調整するからには、これらの変数の母集団分布が必要になる。でも全変数の分布を一発で教えてくれるデータソースは、たぶん存在しない。いろんな公的調査からデータを集めてきて、調査設計の違いを勘案しながら摺り合わせ、分布を確定する作業を、誰かがやんなきゃいけない。ものすごく面倒くさくて、そのわりには誰にも評価されない作業だ。あああ、想像するだけで辛い。吐きそう。
 いやまて、それだけじゃないぞ。この実験では調整の方法としてマッチングを使うから(後述)、各変数の周辺分布だけでなく、ケースレベルの母集団データが必要になるではないか。おいおい、どうすんだよ。
 というわけで、いったん絶望しかけたんだけど、気を取り直してきちんと読んでみた(Appendix B)。はい深呼吸!]

 母集団についてのデータソースは次の5種類。(1)米センサス局のAmerican Community Survey(ACS)。これが一番あてになる。(2)米センサス局のCurrent Population Survey(CPS)から、5つの調査データ。(3)General Social Survey(GSS)。(4)PewのReligious Landscape Study(RLS)。(5)PewのPolitical Polarization and Typology Survey.
 これらのデータのコーディングを揃えた上で[これも非常に大変なんだけど省略]、個票を20000票ずつ復元抽出する(つまり同じ票を2回抜き出すことも厭わない。なおここでウェイトを使ったり、いろいろとややこしいんだけど読み飛ばした)。
 で、これらを縦に積み、37変数のデータセットを作る。値がすべて埋まっているのは性別、年代、未既婚など少数の変数のみで、あとは虫食いだらけである。
 虫食いを埋めます。個々の変数について、その値を他の全変数から予測するモデルを作り、値を埋める。これを繰り返し、25バージョンつくる。これを連鎖方程式による多重代入(MICE)という。Azur, et al.(2011, Int.J.Methods in Psychiatric Res.)をみよ。なお、モデルはランダム・フォレスト。Doove, et al.(2014, Comp.Stat.Data Anal.)をみよ。[←MICEって本で読んだことはあったけど、使用例をみるのは初めてだ...]
 最後に、ACS由来の行だけを残し、あとは消す。25バージョンのうちひとつを採用する[バージョン間の比較も行っているけど省略]。以下これをsynthetic populationという。
 [あれれ? ってことはsynthetic populationのサイズは20000ってこと? ACSだけはもっと積んでおけばよかったのでは...なにか誤解してんのかな...]

 本題に戻って... お待たせしました、調整方法のご紹介です(本文ならびにAppendix C)。選手入場!

 この3つのすべての組み合わせを試す(なにもしないのを含めると8通り)。複数使う場合は、マッチングで票を選ぶ→傾向スコアでウェイティング→レイキングでウェイティング、の順。

 [ここまで整理すると、この実験の要因は以下のとおり。(1)標本サイズ13水準。(2)調整手法8水準。(3)調整変数2水準。]

 評価方法。
 調査票にはACSなどに含まれる項目を24個入れてあった(たとえば「近所の人とどのくらい話しますか」「タブレットを使ってますか」)。各項目について、各カテゴリの(調整後)選択率を求める。で、ACSとかの回答分布と比べ、差の絶対値を求める。 標本抽出を1000回繰り返し、平均を求める。
 調整しない場合でもバイアスは押しなべて小さい。ただしバイアスが大きい項目もあり、たとえば「2014年の中間選挙に投票しましたか」は32%ポイントものバイアスがある。[書いてないけど、ネットパネルの回答が高すぎるということだろうか]

 結果。[ちゃんと読んでないので、かなり抜け漏れがあると思うけど...]

 推定値の変動について。
 世論調査の分野では、調査を独立に繰り返した時に期待される推定値の変動のことをmargin of error(MOE)という[推定量の分散のことですかね]。確率標本ならMOEがすぐにわかるが、任意型パネルの場合には仮想的標本の性質についてのなんらかの仮定が必要になる。
 一般に、たくさんの変数について調整するとMOEは大きくなりやすい。そこでMOEを推定してみた。具体的には、1000回の反復を通じて95%信頼区間を構成し、その幅の半分をMOEと呼ぶ。

バイアス除去とMOEとのトレードオフを考えるため、いくつかのシナリオについてRMSEを調べた。[←そうそう!これが一番大事だと思うのよ。最初からMSEで評価すりゃいいのにと思いながら読んでいた]
 傾向スコア+レイキングと3手法併用はRMSEに差なし。3手法併用のほうがちょっぴりバイアスが小さいが、MOEが大きくなるのでRMSEには差がつかない。
 ただしトピックによっても異なる。政治についての項目では3手法併用のRMSEが小さく、家族についての項目ではレイキング単体のRMSEが大きい(わずかな差だが、標本サイズとともに開く)。要するに、凝った手法を使って報われるかどうかは場合による。
 云々。

 。。。とても読みにくかったけど、面白い実験であった。ちゃんとお金かけてこういうの試しているの、すごいなあと感心する。
 私が糊口をしのいでおりますところの市場調査の場合だと、ネットパネルで調査して、少数の調整変数(多くの場合は性・年代)の同時分布を国勢調査とかから引っ張ってきて、これを目指して標本ウェイティングを掛けることが多いと思う。 この実験でいうとレイキングに相当する(ウェイトの算出はもっと簡便だけど)。この実験、いろいろ頑張ってウェイティングしたところで、ネットパネルのバイアスはたいして取り除けませんねという話なわけで、なんというか、胸が痛みます。

 いっぽう、いっちゃなんだけど、壮大な努力の末にそりゃそうだろうなという結果を得ました、という感じのする実験でもある。
 標本ウェイティングによる調整の効果は、標本選択確率、調整変数、目的変数の3者の実質的な関係で決まるので、どんな結果がでたところで、「そういうデータだったんですね」という感想しか持てない面があると思う。
 いっけん予想外にみえる結果があったとすれば、調整変数を増やしてもレイキングで推定量の分散が大きくならなかったというところじゃないかと思うけど、調整変数と目的変数の関連が強ければそういうことも起きるはずである(と、Littleさんたちが前に書いていた)。

 結果があたりまえでも実務に対する示唆がヴィヴィッドであれば、デモンストレーションとして優れているといえるだろうけど、その点でもちょっと首をひねってしまう面があって...
 この実験では、標本が確率標本でなく、重要な共変量の分布が母集団と標本でずれているとき、いわゆるデザインベースのアプローチ(主に調査設計に基づいて調整するアプローチ。目的変数の標本分布は見ないで調整する)で標本選択のバイアスを取り除くという場面を想定している。でも、関心あるトピックがたとえば政治的態度であり、事前の政党支持といったトピックspecificな共変量が想定される場合には、ふつうはモデルベースのアプローチを使うんじゃなかろうか。たとえば、政治的態度の変数を目的変数にとった回帰モデルを推定し、母集団における共変量の同時分布を放り込んで目的変数の分布をシミュレーションするとか。
 調査データの分析においてデザインベースのアプローチ(標本ウェイティング)を使う理由は、(多くの公的調査がそうであるに)調査が多目的で関心ある変数の範囲が広いとき、ないし、事前知識が足りなくてトピックspecificな共変量を調整変数として選べないときではないかと思う。だから、「適切な調整変数によるウェイティングが大事です」といわれても、そりゃそうでしょうけど、うぐぐぐ、と思うしかないわけで...
 レイキングとマッチング・傾向スコアウェイティングとの間に大差がなかったというの話も、そりゃそうだろうと思う。レイキングのように共変量の周辺分布を母集団と揃える手法が不利になるのは、なにが共変量なのかいまいちはっきりしないときや、標本選択確率に対する共変量の効果に交互作用があるときだ(たとえば「男性の福音派の共和党員だけがパネルに登録していない」とき)。そういう事態が起きてなければ、そりゃレイキングでもなんとかなるでしょう。これは結局、いやー今回は運が良かったですねという話であって、調査一般において「ネットパネルの調整手法はレイキングによるウェイティングで十分」という風に受け取られるとしたら、それはちょっとちがうんじゃないですかね。

 この実験、たぶん大きな問題意識として、世論調査による政治的態度の測定と政治行動の予測が念頭にあるのだろうと思う(トランプ勝利を予測するためにはどうしたらよかったのか、というような)。私のように一般的な調査手法研究として読んじゃうほうがおかしいのかもしれない。どうなんでしょうね。専門家の方の意見を伺いたいところだ。

 ところで、ここで試している調整のやりかたは、実験の主旨として必要なのはわかるけど、調査実務の上でのリアリティはどのくらいあるんだろうか?
 教科書的には、ある共変量についての母集団分布があきらかでないならば、その共変量についてのデザインベースの調整はあきらめるべきであろう。しかしこの実験では、ACSにない変数であっても調整変数として選んでしまい、母集団分布を他の変数から無理やり推測しているわけで、これは相当に違和感がある状況設定だと思う。かの国の世論調査ではほんとにこういうことをやるのかなあ?
 調整手法を併用するというのも不思議である。傾向スコアによるウェイティングと共変量を投入したモデリングを併用するというのは聞いたことがあるけど(doubly robust推定というらしい)、傾向スコアでウェイティングしてさらに周辺分布をあわせてウェイティングすることって、実際にあるのだろうか。いや、架空の手法だというならばそれはそれでいいんだけど...

読了:Mercer et al. (2018) ネットパネルで調査したとき母集団の構成にあわせてウェイティングすることがあるけど、あれって意味はあるのかどうか試してみました

Athey, S., Tibshirani, J., Wager, S. (2017) Generalized Random Forests. arXiv:1610.01271v3 [stat.ME]

 著者らが提案する新手法「一般化ランダム・フォレスト」の解説。Rのパッケージgrfとして実装されている。仕事の役に立つかと思って。
 付録をあわせて47pもあるのだが、関心のあるところだけ目を通した。

 もともとランダム・フォレストというのは $\mu(x) \equiv E[Y | X =x]$を推定するための手法である。つまり、いま$\psi_{\mu(x)}(Y) = Y - \mu(x)$というスコアリング関数があるとして、
 $E[\psi_{\mu(x)}(Y)|X =x] = 0$
となる$\mu(x)$を推定する手法である。
 これを任意の量$\theta(x)$の推定へと一般化したい。$Y$のかわりに$O$があるとする。$\theta(x)$を次の局所推定方程式によって定義する。$\psi(\cdot)$をなんらかのスコアリング関数、$\nu(x)$をオプションの局外母数として、
 $E[\psi_{\theta(x),\nu(x)}(O) | X = x] = 0$
このように一般化することで、条件つき平均だろうが条件つき分位点だろうがなんだろうが扱えるようになる。我々がこれを開発する主な目的は、道具変数による、異質性のある処理効果の推定である。

 ここで解決すべき問題が3つある。

  1. 上のように一般化すると、オリジナルのランダム・フォレストのように、B本の木を作りそれぞれの予測$\hat{\mu}_b(x)$を単純平均しよう、というわけにはいかなくなる。そこで、まずランダム・フォレストでテスト点$x$の近隣集合を求め、それらを使って$\mu(x)$を推定する。
  2. この適応的近隣関数を$\theta(x)$に合わせて変えなければならない。ある治療の効果を知りたいとしても、その治療が長期的な生存率に及ぼす効果を知りたいときと、入院日数への効果を知りたいときでは、必要な共変量が変わってくるだろう。そこで、まず推定したい非線形な式を勾配ベースの方法で線形に近似してから木の分割点を決める。[←む、難しい... 分かるような、わからないような気分だ]
  3. $\theta(x)$の漸近的一致性とガウス性の理論的な保証がほしい。以下でそれを示す。

 先行研究。
 統計学では昔から局所最尤推定というアイデアがある。たとえば経済学でいえば、回帰不連続デザインで使う局所線形回帰、パネルデータで使う多項選択モデル、道具変数を使った回帰、などがそうだ。基本的なアイデアは、共変量がある特定の値をとるときのパラメータ推定を行う際、共変量空間において近くにある事例により重みをつけましょう、というものである。重みはふつうカーネル法で求める。このアプローチの難しい点は、共変量空間が多次元のとき、「次元の呪い」のせいでうまくいかなくなってしまうという点だ。
 そこで、カーネル・ウェイティングのかわりにランダム・フォレストでウェイトを求めることを考える。つまり、ある事例の重みを「目標とする共変量ベクトルと同じ葉にその事例が落ちた木がどれだけあるか」で決めるのである。このように、ランダム・フォレストを適応的最近隣推定として用いる発想は、Meinshausenによるランダム・フォレスト・ベースの分位点回帰に遡る。
 [ほかに、勾配ベースで分割点を決めるというアイデアの先行研究、ランダムフォレストの漸近的性質についての先行研究について触れている。パス]
 なお、注意してほしいんだけど、ここで関心があるのは、単一で低次元なパラメータ(たとえば平均処理効果)を共変量をコントロールしたうえで推定したいという話ではない。関数$\theta(x)$が共変量によって変わっちゃうのをどう推定するかという話である。[←ああ、なるほど...やっと少しだけ意味がわかった。親切に教えてくれて助かるよ]

 以下、提案手法の説明。なお、ランダム・フォレストについてよく知らない人はHastieの本とかをみるように。

 事例$i = 1, \ldots, n$が、観察量$O_i$, 共変量$X_i$を持っている。$O_i$というのは、たとえばノンパラ回帰であれば$\{Y_i\}$そのものだし、外生的な処理割付($W_i$)の下での処理効果の推定であれば$\{Y_i, W_i\}$である。
 ゴールは次の局所推定方程式におけるパラメータ$\theta(x)$の推定である。局外パラメータ(オプション)を$\nu(x)$として、すべての$x$について
 $E[\psi_{\theta(x),\nu(x)}(O_i) | X_i = x] = 0$

 ふつうのやり方は、まず$x$において事例$i$との関連性を表すなんらかの類似性ウェイト$\alpha_i(x)$を定義し、
 $||\sum_i \alpha_i(x) \psi_{\theta, \nu}(O_i)||_2$
を最小にする$(\theta, \nu)$の集合を求め[えーっと、ユークリッド・ノルムを最小にするわけね]、その集合のなかに$(\hat{\theta}(x), \hat{\nu}(x))$が入っていると考えるやりかたである。$\alpha_i(x)$の推定にはふつうカーネル関数を使う。でもこのやりかたは高次元のときにうまくいかない。
 そこで、まずB本の木をつくる(作り方は後述)。で、$X_i$がそれぞれの木$b$において$x$と同じ葉に落ちたかどうかを調べ、落ちた割合を求める。これを合計1に調整して$\alpha_i(x)$とする。

 木の作り方。[普通の決定木と似ているんだけど、評価関数に工夫があるらしい。難しくてよくわからん。パス]

 実際には、計算効率を高めるため、勾配ベースの近似を行う。[以下3p、難しいのでパス。なんだか知らんがxgboostみたいなもんなんですかね]

 ここでいったん小休止して[←ほんとにそう書いてある]、分位点回帰フォレストの場合について紹介しよう。$X=x$の下での$Y$の$q$分位点$\theta_q(x)$の推定がゴールである。[...中略...] MeinshausenのquantregForestパッケージと比べると... [以下略]

 漸近的性質についての分析。[パス!もちろんパス!8p飛ばすぞ!]
 デルタ法による信頼区間。[3p飛ばすぞ!]

 応用事例その1, 外生性があるときの条件付き平均部分効果の推定、名付けて「因果フォレスト」。
 次のランダム効果モデルを考える。
 $Y_i = W_i b_i + e_i$
 $\beta(x) = E[b_i | X_i = x]$
ゴールは、なんらかの対比$\xi$についての$\theta(x) = \xi \beta(x)$を推定すること。もし$W_i$が処理割付$\{0, 1\}$だったら、$\beta(x)$が条件つき平均処理効果。
 $W_i$は外生で $\{b_i, e_i\} (独立) W_i | X_i$ だと仮定する。[独立性の記号の書き方がわからない...とにかく、交絡がないという仮定である]
 [...以下、面倒になってきたので読み飛ばしたけど、やっとこの応用事例のイメージがわいてきた... 「処理効果が共変量によって変わっちゃう場面で、共変量の特定の水準の下での条件つき処理効果を機械学習で推定しよう」という話なのね、なるほど]

 応用事例その2、道具変数を使った異質性のある処理効果の推定、その名も「道具変数回帰フォレスト」。
 たとえば、母親の就業への子育ての因果効果を測りたい。でも子供の人数はなにかと交絡しているかもしれない(もっと子供が欲しいかとか)。Angrist & Evans(1998)は、子供が二人以上いる母親について、上の二人が同性か異性かに注目した(性別はさすがに偶然で決まるだろう)。同性のほうがもっと子供を欲しがる傾向がある。同性かどうかと就業意欲との間の関連性が、子供の人数をコントロールしたとき消えるなら、コントロールしなかったときに観察される関連性は子どもの人数のせいだといえる。
 さて、こういう道具変数回帰への古典的なアプローチでは処理効果のグローバルな理解しか目指さない。ここでは異質性のある処理効果をフォレストで推定することを目的とする。
 $n$人のiidな対象者$i$が持つ特徴を$X_i$, アウトカムを$Y_i$、処理割付を$W_i$、道具変数を$Z_i$とし、次の構造モデルを考える:
 $Y_i = \mu(X_i) + \tau(X_i) W_i + \epsilon_i$
$W_i$の因果的効果が$\tau(X_i)$。いま、ノイズ$\epsilon_i$が$W_i$と正の相関を持つかもしれないとしよう。この場合、一般に標準的な回帰では$\tau(X_i)$の一致推定量が得られない。さて、$Z_i$が$X_i$の下で$\epsilon_i$と条件付き独立であると知っているとしよう。この場合、$Z_i$が$W_i$になんらかの影響を持っているとするならば(すなわち、$X_i=x$の下で$Z_i$と$W_i$の条件付き共分散が非ゼロならば)、処理効果$\tau(x)$は
 $\tau(x) = Cov[Y_i, Z_i|X_i = x] / Cov[W_i, Z_i | X_i = x]$
実際に$\tau(x)$を推定するには次の式を解けばよくて...
 [... いま日々の生活でいろいろ忙しいもので、大幅に中略。来世ですっごく頭の良い人に生まれ変わったら読みますね]
 事例。Angrist & Evansが挙げた問題について推定してみる。2人以上子供がいる母親について分析する。$Y_i$は母親がセンサスの前年に働かなかったか、$W_i$は母親がセンサス時点で3人以上子供を持っているか、$Z_i$は上の二人が同性か異性か。普通の道具変数回帰で平均処理効果$\tau$を推定するとAngristらの結果が再現された(3人目がいると就業率が下がる)。
 さて、提案手法により、母親の年齢とか人種とか父親の年収とかを共変量にして、条件付きの平均処理効果$\tau(x)$を推定してみると... 父の年収が低く、かつ母親の年齢が低いと効果が大きい。[←なるほどね...そういう分析がやりたいのか]
 云々。

 というわけで、全体の1割くらいしか読んでないけど、なんとなく雰囲気がわかったので良しとしよう。
 いやあ、なんというか... generalized RFっていうから、分類や回帰とかだけじゃなくて、打ち切りつき生存時間データとか、いろんなややこしい問題を統一的にあつかってくれるようなランダム・フォレストなのかな、と思って読んだのである。想像のはるか斜め上をいく話であった。

読了:Athley, et al. (2017) 一般化ランダム・フォレスト

2018年1月 8日 (月)

Thissen, D., Steinberg, L. (1986) A Taxonomy of Item Response Model. Psychometrika. 51(4), 567-577.
 題名のとおり、IRTモデル(項目反応モデル)の分類を提案する論文。回答スタイルのIRTモデリングについて調べていて、知らない通称がバンバン出てきて嫌になってしまったので、試しに読んでみた。今頃四半世紀前の分類を読んでどうすんだという気もするんだけど...

 いわく。ラッシュモデル以来、モデルに人名を付けることが多いんだけど、そういうのやめたほうがいい。Samejimaさんはいっぱいモデル作っているのでSamejimaモデルといわれてもどんなモデルか分からないし[←やっぱそうなのか]、Rasch(1960)は母集団分布のことを考えてなかったから母集団分布を考慮した「傾きが等しいロジスティックモデル」をRaschモデルと呼んでいいのかどうかわからない。
 曲線のかたちにちなんでモデル名をつけるのもよくない。関数が同じでもパラメータ制約が違ってたら全然違うモデルになる。rating scale modelとpartial credit modelとか。
 というわけで、IRTモデルの分類をご提案します。

 [ここで図が入る。下表にまとめておく]

 本稿で言うモデルとは、カテゴリカル反応を得る項目についての、潜在変数の下でのある反応の条件付き確率を記述する数学的関数のこと。潜在変数の母集団分布の扱いについては考えない。パラメトリックなモデルについてだけ考える。いずれのモデルでも、潜在変数の母集団分布についてなんらか特徴づければ、パラメータはparallel marginal ML法で推定できるだろうけど、推定手続きについても考えない。多次元モデルも考えない。

 IRTモデルを4つに大別する。
 その1、二値モデル
 IRTの始まりは1930-40年代、二値反応の正規累積モデルにまで遡る。Rasch(1960)とBirnbaum(1968)がロジスティックモデルを導入した。Guttman(1950)の決定論的モデルもこの潮流に位置づけられる。Winsberg, Thissen, Wainer(1983)はスプライン関数の導入を提案している。
 まあとにかく、二値モデルはもっと複雑なモデルの基盤となるモデルである。

 その2,differenceモデル
 Samejima(1969)はIRTを多重カテゴリカル反応へと拡張した。「カテゴリ$k$より上に反応する確率」$P^*(k)$を二値モデルでモデル化するというアイデアである。これは現在"graded responses"モデルとして知られている。結局カテゴリ$k$への反応確率を$P^*(k)-P^*(k+1)$とモデル化しているわけで、ここではこのタイプのモデルをdifferenceモデルと呼ぼう。
 このタイプのモデルでは、正規累積関数なりロジスティック関数なりを使う場合、傾きパラメータはすべてのカテゴリで等しくないといけない(でないと曲線が重なってしまう)。もっとも重なりさえしなければいいわけで、たとえばスプライン関数だったらパラメータがカテゴリ間で違っててもよい。

その3.divide-by-totalモデル
 Masters(1982)が提案した"partial credit"モデルは、Samejima(1969)のgradedモデルの代替案である。このモデルでは「反応がカテゴリ$k-1$かカテゴリ$k$であるとして、その下でのカテゴリ$k$」の曲線を考える。SamejimaもMastersも、$m$カテゴリの段階反応項目を$m-1$個の架空の二値項目に分解するという点では同じで、分解の仕方がちがうのである。
 Mastersはこの曲線をこうモデル化した。
 $\frac{P(k)}{P(k-1)+P(k)} = \{1+\exp[-(\theta-\delta_{k-1})]\}-1$
ただし$\sum_k P(k)=1$。変形すると
 $P(k) = \exp[(k-1)\theta - \sum_{j=0}^{k-1}\delta_j] /$ (m個の分子の和)
となる。このタイプのモデルを、ここでは"divide-by-total"モデルと呼ぼう。
 [←なるほど... このモデルは結局、$1, \ldots, m$個めの選択肢の効用関数において$\theta$に係数$0, \ldots, m-1$がかかるような多項選択モデルになるわけね。ここは勉強になった。Schneider(2017)が自分のモデルをpartial credit modelと呼んでいた理由がわかった]

 このタイプのモデルは、Bock(1972)の名義反応モデル
 $\displaystyle P(k) = \exp[z_k(\theta)] / \sum_h^m \exp[z_h(\theta)]$
 $z_h(\theta) = a_h \theta + c_h$
の一種である。もともとBockは
 $\sum z_h(\theta) = 0$
と制約しようと思っていた。これは要するに$\sum a_h = \sum c_h = 0$ということである。いま$\alpha, \gamma$を長さ$m-1$の無制約なパラメータベクトルとすれば、$(m-1)\times x$の対比行列$T_a, T_c$をつかって
 $a' = \alpha' T_a, c' = \gamma' T_c$
と書き直すことができる。さて、上で述べたpartial creditモデルは
 $T_a = [0,1,2,\ldots,m-1]$
で$\alpha$はスカラーだというモデルになる。
  [...ここから、過去のいろんな提案をこのモデルの拡張として説明する。たぶんこの論文でいちばん力が入っている部分で、3頁ほど続くんだけど、ぼけーっと読んでたらわけわかんなくなってきちゃった。あきらめて省略する。必要になったら!勉強すればいいさ!]

 "divide-by-total"モデルと"difference"モデルの関係について。
 単純に言っちゃうと、この2つは異なるパラメトリックなクラスに属する。"difference"モデルは$k$より右の確率について
 $\displaystyle P^*(k) = \sum_{h=k}^m P(h) = \frac{\sum_{h=k}^m \exp [z_h(\theta)]}{\sum_{h=1}^m \exp [z_h(\theta)]}$
 とモデル化している。この曲線は二値ロジスティックでない。
 別の言い方をすると、"difference"モデルを代数的に"divide-by-total"形式に書き換えることはできる(Master(1982)はSamejima(1969)の書き換えになっている)。どんな多重カテゴリモデルであれ、"difference"形式でも"devide-by-total"形式でも表現できる。でも、一方で簡単にかけると他方では簡単にかけない。

 その4、left-side addedモデル
 最初の提案はBirnbaum(1968)の3パラメータ・ロジスティックモデル。このモデルは結局、2パラメータ・ロジスティックモデルを$2PL$として
 $3PL = 2PL + c(1-2PL)$
となる。「ほんとは知らない」確率に$c$を掛けた奴でもって、曲線の左のほうをちょっと上にあげるわけなので、ここでは"left-side added"モデルと呼ぶ。
 そのほかの定式化としては、Choppin(1983)の提案があって[...略]

 その5. left-side added multible catogoryモデル
 当て推量パラメータ付きのモデルを多カテゴリへと拡張する提案としては[...略。すいません、当面関心ないもので]
 云々。

 ... ちょっと頭の整理になったけど、そのぶんかえってわからないことが増えてしまった... 前にMuthen導師のテクニカル・ペーパーを読んだときは「おお!わかったぞ!」と思ったのに...
 順序反応変数$y$をモデル化するとき、その背後に連続変数$z$を想定し、$z$が閾値1と閾値2の間におちたら$y$は2になる、という風に考えることがあるじゃないですか。そういうのはdifferenceモデルに分類されるのだろうか($z$が正規分布に従うなら$P(y \geq k | z)$が正規累積曲線になるから)。いや、でもそれは閾値の設定次第? 仮に閾値に等間隔性の制約をいれたらpartial creditモデルにも書き換えられるってこと? あれ???
 この辺の話、なにも86年の論文を読まなくても、私くらいのレベルの素人向けの、日本語の参考書がありそうだな...

読了:Thissen, & Steinberg (1986) いろんな項目反応モデルを分類する体系についてのご提案

rebuilt: 2018年10月17日 20:17
validate this page