« 読了:赤池(1980) 統計的推論のパラダイムの変遷について | メイン | 読了: Jin, Wang, Sun, Chan, Koehler (2017) これが俺らのマーケティング・ミックス・モデル (lyric by Google AI) »
2019年7月16日 (火)
Kawamoto, T., Aoki, T. (2019) Democratic classification of free-format survey responses with a network-based framework. Nature Machine Intelligence, 1, 322-327.
見つけた瞬間にがっくり膝から崩れ落ちた論文。この論文の提案手法、我々が開発した手法(これのpp.54-56)とすごく、ものすごーく似ているもので、感想は山ほど、ほんとに山ほどあるんだけど、とにかく内容のメモのみ記録しておく。
まずOA回答を求める。次に、他の回答者のOAをみせて類似性を訊く。で、回答のネットワークをつくる。ノードが回答で、エッジは類似しているという回答があったかなかった。これをクラスタリングする。ある回答がどのグループに落ちたかを目的変数にした分析ができる。
論文の順序と違うけど、先に分類手法の説明から。
回答数を$N$、グループ数を$q$とし、グループのラベルを$\sigma \in \{1, \ldots, q\}$とする。グループサイズを表す長さ$q$のベクトルを$\gamma$とする。ポジティブエッジによる$q \times q$の類似度(affinity)行列を$\omega^+$, ネガティブエッジによる$q \times q$の類似度行列を$\omega^-$とする。
以上のパラメータを持つランダム・グラフ・モデル(これを確率的ブロックモデルと呼ぶ)が生成モデル。ここからは事例生成の話。
それぞれのノードについて、まず$\gamma$に従ってグループにランダムに割り当てる。次に、すべてのノード間のペアについてエッジを生成する。たとえばふたつのノードがあって、所属グループが1と2だったら、その間にポジティブエッジがある確率は$\omega^{+}_{12}$, ネガティブエッジがある確率は$\omega^{-}_{12}$, つながらない確率は$1-\omega^{-}_{12}-\omega^{+}_{12}$である。エッジの生成がランダムに行われると考えている点に注意。実際のデータ生成は必ずしもそうでなくていいんだけど、そうであるほうがよい[対象者に誰のOAをみせるかはランダムに決まっているほうがよいという意味であろう]。
こうして隣接行列$A$が生成されると考える。
尤度関数はどうなるか。
[原文にはないけど勝手に補記する。ノード$i$の所属グループを$\sigma_i$と書く。ノード$i, j$の間にエッジがないときに1になる変数を$\delta_{A_{ij},0}$, ポジティブエッジがあるときに1になる変数を$\delta_{A_{ij}, +}$, ネガティブエッジがあるときに1になる変数を$\delta_{A_{ij}, -}$と書く。ノード$i, j$の間のノード状態$A_{ij}$の尤度関数は
$g(A_{ij} | \omega^{+}, \omega^{-}) = \left( 1-\omega^{+}_{\sigma_i \sigma_j}-\omega^{-}_{\sigma_i \sigma_j} \right)^{\delta_{A_{ij}, 0}} \left(\omega^{+}_{\sigma_i \sigma_j} \right)^{\delta_{A_{ij}, +}} \left(\omega^{-}_{\sigma_i \sigma_j} \right)^{\delta_{A_{ij}, -}}$
従って尤度関数は...]
$p(A, \sigma|\gamma, \omega^{+}, \omega^{-}) = \prod_{i=1}^{N} \gamma_{\sigma_i} \prod_{i < j} g(A_{ij} | \omega^{+}, \omega^{-})$
このモデルだと、あるグループの全てのノードは等価だと考えていることになるけど、実際には人気の高低があるだろう。そこでハブ構造を持たせる(これを次数調整確率ブロックモデルという)。
尤度関数はこうなる。ノード$i$から伸びているポジティブエッジの本数を$d^{+}_i$, ネガティブエッジの本数を$d^{-}_i$として
$g(A_{ij} | \omega^{+}, \omega^{-}) $
$= \left(1-d^{+}_i \omega^{+}_{\sigma_i \sigma_j} d^{-}_j - d^{+}_i \omega^{-}_{\sigma_i \sigma_j} d^{-}_i \right)^{\delta_{A_{ij}, 0}} $
$\times \left(d^{+}_i \omega^{+}_{\sigma_i \sigma_j} d^{-}_j \right)^{\delta_{A_{ij}, +}}$
$\times \left(d^{+}_i \omega^{-}_{\sigma_i \sigma_j} d^{-}_i \right)^{\delta_{A_{ij}}, -}$
と直せばよい。
この尤度関数を用いて、周辺事後分布$p(\sigma_i|A,\gamma, \omega^{+}, \omega^{-})$を求めれば$\sigma_i$が推定できる。モデルパラメータは周辺尤度$\sum_{\{\sigma_i\}} p(A, \{\sigma_i\}|\gamma, \omega^{+}, \omega^{-})$を最大化すればよろしい。我々はEMアルゴリズムで推定したが、別に他の方法でもよい。
この方法ではなくて、たとえばなんかの目的関数を最大化するような分割アルゴリズムであっても分類できるけど、この方法には利点が3つある。(1)分類の不確実性を、それぞれの回答がグループに落ちる確率として表現できる。(2)確率的ブロックモデルの性質は理論的によく知られていて、効率的なアルゴリズムがある。(3)任意の結合パターンを学習できる。たとえば、仮にネガティブエッジがdisassortativeな構造を持たなくても大丈夫。
なお、エッジがポジティブとネガティブのほかにあっても扱える(グループの同定が難しくなるかもしれないけど)。
本題に戻して...
適用例その1。2016 US大統領選の前にデータを集めた。まず "#NeverHillary or #NeverTrump?" と聴取しておいてから(これはネットワークを描くときには使わない)、その理由を聴いた。ネットワーク分類のalluvial図をみると [知らなかったけど、グループ数を増やしていった時の遷移図のこと]、支持をうまく分類している。
適用例その2、ある大学での教育学部[第二著者のご所属から拝察するに香川大教育学部かしらん]の卒業生に、あなたのキャリアは(Q1), それを選んだ理由(Q2)、学生時代のもっとも価値ある経験(Q3)を訊き、それぞれについて分析した。
ネガティブ・エッジはかならずしも非類似性ではなさそうだった[←そうそう、そうだろうなあ... 私のデータでも類似性判断への非反応は必ずしも非類似ではなかった]
Q1, Q2, Q3それぞれによる分類を比べると...[中略]
考察。
この手法は、たくさんの反応に対して扱いやすくスケーラブルなコーディングを提供する。予備調査をやってコーディングフレームを作るよりも簡単だしコードの見落としがない。NLPでもできるだろうけど領域知識が必要だ[実際に試したので付録をみよとのこと]。
さらに、この手法は統計的にprincipledであり、(主観でも客観でもなくて)民主的である。
今後の課題として... まず、対象者負荷とグループ同定のトレードオフ(スパースなほうが難しくなるから)。これはネットワーク理論では検出閾値の問題といわれている[へー。Decelle, et al. (2011 Phys.Rev.E), Moor (2017) というのが挙げられている]。
次に、他の回答者の回答を読むことによるバイアスの問題。しかし、対象者がwell-informedで他者の意見について深く考えるなら、他者の意見を読ませることはむしろ利点かも知れない。
云々。
論文:調査方法論 - 読了:Kawamoto & Aoki (2019) 自由記述の民主的分類