« 読了:Discriminant analysis | メイン | 読了:Telang, et. al. (2004) 検索エンジンへの訪問(とかそういう感じのなにか) の間隔を説明する周期性つきの生存モデル »
2013年4月17日 (水)
連続変数のベクトル y を指標として持つ潜在クラスモデルについて考える(いわゆる潜在プロファイル・モデル)。話を単純にするため、共変量はなし、指標はすべて局所独立、条件つき分布に多変量正規性を仮定する。
対象者 i がデータ y_i を持っているとしよう。この人の所属クラス C が k である事後確率は
P(C=k | y_i) = P(C=k) [y_i | C=k] / [y_i]
ただし [y_i | C=k] は、クラス k の平均ベクトルと共分散行列を持つMVNである。みよ、大自然の単純な美しさを。
いったいなにを云わんとしているのかというと... 指標がV1とV2の2つしかない、2クラスの潜在クラスモデルを推定したとしよう。mplusが吐いたパラメータ推定値が
Latent Class 1: Means V1 3.248 V2 5.626; Variances V1 1.985 V2 8.243
Latent Class 2: Means V1 8.845 V2 5.298; Variances V1 1.985 V2 8.243
Categorical Latent Variables: Means C#1 0.220
であったとする。さて、V1=6, V2=4のオブザベーションがあったら、そのクラス所属確率は?
まず事前確率について。mplusはカテゴリカル潜在変数の平均を最後のクラスで 0 とするので、P(C=1) ∝ exp(0.22) = 1.24, P(C=2) ∝ exp(0) = 1。足しあげて割合にすると、0.55, 0.45である。
次に尤度。分子のほうだけ考える。Excel風に書くと、C=1ならばnormdist(6, 3.248, sqrt(1.985)) * normdist(4, 5.256, sqrt(8.243)) * 0.55 = 0.00351。C=2ならば0.00206。これを足しあげて割合にして、0.63と0.37。
これが事後確率である。mplusのSAVEDATAで出したものとぴったり、ぴったり一致する。みよ、大宇宙の壮大な神秘を。
なにが云いたいのかというと... マーケット・セグメンテーションの手法として、消費者調査データに基づく対象者分類を行った場合、あとで別の対象者に同じ調査項目を聴取し、その回答に基づいてその人がどのセグメントに属するかを判別したい、ということがある。ものすごくよくある。細かい商売ですみません。
で、分類の際にk-means法を使っていた場合は判別関数をつくるのは容易だが、潜在クラスモデルのような確率モデルをつくってしまうと、あとの判別が大変だ。などと思い込んでいる人がいる。愚かなり。実に愚かなり。
というか、私自身がついついそう思いこんでいたのである。このたび用事があってこの件について考える羽目になり、なんとか自分で考えずに済ませられないものかと考えたが逃げ道はなく、どんよりした気分で机の上に資料を揃え、気分転換用のお菓子も用意し、深呼吸してから考え始めた。15分後、菓子に手をつける間もなく、あまりの簡単さにあっけにとられている私がいた(お菓子は後で食べましたが)。私が愚かでした、反省してます。反省のあまりブログに記録する次第である。いっけんややこしそうだからといって、思考停止してはいけないのだ。
雑記:データ解析 - 潜在クラスモデルの所属確率について (反省の弁)