2017年4月1日公開
カノジョいないベイジアンが対談したら
Drake方程式を用いた両思いマッチング確率の推定


London.png


Authors Information

logo.jpg
Mr. Unadon(見習い飯炊きベイジアン)
26歳男性・未婚・カノジョいない
心理学専攻博士2年・調理師・心理学検定特一級・その他
マーケティングデータ分析コンテスト優勝経験あり
ベイズ統計・機械学習などデータサイエンスの技術を
誰かのために役立てたい。
Unadon動作環境: MacOS Sierra10.12.1; Rversion3.3.2; rstan2.10.1
Contact : whitesnow1751★gmail.com

hojo.png
dastatis(いけめんベイジアン)
23歳男性・未婚・カノジョいない
心理統計学専攻 修士2年
マーケティングデータ分析コンテスト優勝、
スポーツデータを用いた分析で受賞経験あり
質問紙調査データの回答バイアス補正で学会発表賞を受賞
ベイズ統計学を用いた分析を最も得意とする
Contact(Twitter): dastatis

dastatis動作環境: Windows10; Rversion3.3.3; rstan2.14.1



はじめに

logo.jpg Unadon
今年のMathematical Psychologyはイギリスらしいね。
行く? 行こーよ!Warwickらしいで。
WarwickStreet.jpeg
ここからちょっと移動してロンドンで美女と飲みた...
いや、最先端のベイジアン・モデリングを勉強したいなぁ。

dastatis hojo.png
いいっすよねぇイギリス。
Warwickはワーウィックですか?なんて読むんですか?
とりあえず行きますよ。ロンドンにも寄りたいですね、
美女・・・じゃなくて大学見学とか、有名な研究者の方に話聞きに行くとか。
LondonUniv.jpg

logo.jpg Unadon
学会参加とかそのあたりはまじめにいかんとね。
しかし、僕は期待しているのだ。
ロンドンによることがあるならば、
運命のカノジョに出会える気がする
London.jpg

dastatis hojo.png
また言ってるんですか(笑)
運命の・・・ってセリフ今月で50回くらい聞いてますよ
Slackに会話形AIカノジョ実装したり、ロンドンなら出会えるとか、
そんなこと言ってるからUnadonさんモテないんすよ。。。笑

logo.jpg Unadon
なに!だからモテへんのかぼくは!
でも、どないすればいいんや。。。
あぁ。クールな男になりたい。。

dastatis hojo.png
それなら決まってるじゃないですか。
男ならベイズです!
バッチリ解析してからロンドンに挑んでですね
”君に会うことは推定済みだよ☆”
って出会った人に言うんです。
っていうか言ってみてください(笑)
ベイズで狙い撃ちとか超クールじゃないですか(笑)

logo.jpg Unadon
なに。そうなのか!
よし、そうしたら。。。
ロンドンで運命の人と両思いマッチングしちゃう確率を、
HMCでベイズ推定してみるか!


dastatis hojo.png
Drake方程式っていうのがあって、
それが使えるみたいなんでやりましょう。
イギリスに向けてMCMC(;´Д`)ハァハァです!



Drake方程式の概要

logo.jpg Unadon
なになに? 
紹介してくれた記事によると、
もともとのDrake方程式は地球外の知的生命体の数を計算する式なのか(equation 1)
DrakeEquationGeneral.png(equtaion1)

dastatis hojo.png
”潜在的カノジョの数”を推計するために、
Peterという人はDrake方程式を応用しています。
イギリス人口(N*)から始まり、
女性の割合(fw)、ロンドンに在住者の割合(fL)…を
定数で与えて計算していますね(equation2)。
変態天才ですね
DrakeEquationPeter.png(equtaion 2)

logo.jpg Unadon
そこ、定数でいいの?(キラリ)
ロンドンの人口だって日々変わるし、
好みの年齢層の割合(fA)とか、 大卒者の割合(fU)とか、
好みの女性の割合(fB)とか、
それって確率変数でしょ。

dastatis hojo.png
好みの女性年齢層の割合とかに
分布を仮定するんですか?笑
やはり変態ですね。
つまり、Drake方程式の右辺にある
条件パラメータが確率変数になるわけですね。

logo.jpg Unadon
そう。だから僕達の”潜在的カノジョ”は、
例えばこうやって確率モデルの
パラメータとして定義されることになる。
sampleKanojo.png

dastatis hojo.png
(…この先輩なに言ってんだ)
では、潜在的なカノジョの数を定義する今回のDrake方程式、
とりあえずは数式(数理モデル)で書くとどうなります?

logo.jpg Unadon
よいしょ。こんな感じかな?
MyDrakeEquation.png (equation 3)

dastatis hojo.png
(きっとこんなことしているから、彼女できないんだろうなぁ…(おまいう))
数式に入ってますが、
Unadonさんは20-34歳の女性まで守備するんですね。
僕もそんぐらいの範囲は余裕なので賛成です!



データの収集

dastatis hojo.png
ところでUnadonさん、次の写真の人達のうち、
(20-34歳くらいの写真、ロンドン女性を代表すると仮定)
タイプだなって思う人は何人いますか?

ぼくはCara DelevigneさんとSienna Guilloryさんの2人がタイプかな。

UKgirls.png
出典: イギリス美女図鑑【厳選30人】

logo.jpg Unadon
26人かなー

dastatis hojo.png
え?

logo.jpg Unadon
26人が好みでタイプ。いやぁ美女揃いですなぁ。

dastatis hojo.png
ってことは、30人中26人を好きになれるってことですね(多いな)。
でも、好きになれる人が多いというのはとてもいいことだと思います!

logo.jpg Unadon
素敵な人って、本来的にとっても多いと思うんだ!

dastatis hojo.png
そうですよね。
まだ知らない魅力があることを考えると、
26人というのも(ギリギリ)納得です。

そしたら、あとデータとしては...
イギリス人口推移のデータ、
ロンドン在住者の数、
20-34歳の女性の数、
相手が僕達を好みだと思う確率、
相手が未婚者である確率。
このあたりが必要ですね。

logo.jpg Unadon
イギリス人口の推移は1960年から2014年までのものがあるよ。
今年2017年の人口は、状態空間モデルで推定しようか。
UKpopData.png

dastatis hojo.png
2014年の人口データを見ると、
ロンドン在住者(8,538,689)と,
ロンドンの女性の数(4,304,670)が出てます。
また、17-31歳のロンドン女性人口が(1,020,490人)なので、
2017年時点での20-34歳の女性比率等は、
ここから誤差変動を考慮して推定しましょう。
このあたりは二項分布とベータ分布を使いますか。

logo.jpg Unadon
ロンドンの未婚者女性の数は見つからないから
(civil partnerをどう考えるかなどの難しさがある)、
ここは定数で所与しようか。
2014年時点のデータで結婚も同棲していない女性はあわせて41%(0.41)か。
この数値を今回は援用しよう。
UKmarriage.png

dastatis hojo.png
最後に、相手(イギリス人女性)が
僕達をタイプだと思ってくれる確率なんですが、
こちらを見てください。
marriageInfo1.png
「断言します。モテます」って書いてありますよ!
「高確率で友達になれる」とも。

marriageInfo2.png
でもやっぱり、数としては一定数だけのようです。

logo.jpg Unadon
なに。難しいところやな。
ほな、ロンドンの20-34歳で僕達のタイプで未婚の女性が
僕達を好みだと思う比率は0.05くらいにするか
うむ、希望をこめて妥当である。

dastatis hojo.png
そうと決まれば、ここからはモデリングですね!
張り切っていきましょう!



潜在的カノジョのベイジアン・モデリング

logo.jpg Unadon
2017年のイギリス人口の推定はこれで行こう。
イギリスの人口はガンガン増えてるみたいだから、
二階差分で増加量の移動平均を取ったモデルとか面白そうだな(Figure1)。
StateSpaceDrake.png
Figure1 Graphical Model: イギリスの人口推移の推定モデル(2017年人口の推定)

dastatis hojo.png
Drake方程式のベイズ化は任せてくださいよ!
はい、できました!朝飯前ですね(Figure2)
DrakeBayes.png
Figure2 Graphical Model: Drake方程式に基づく潜在的カノジョの推定モデル

logo.jpg Unadon
一瞬で仕上げてくるとは!さすがdastatis!
どうする?Stanで美女ハァハァ(*´Д`)...MCMC(;´Д`)ハァハァしちゃう?

dastatis hojo.png
しちゃいましょう!
潜在事後分布カノジョ☆がはやくほしいです!

logo.jpg Unadon
(やばいぞカノジョと事後分布がごっちゃになっとる・・・)

決まりだな!そうしたら。
ぼくの状態空間モデルのStanコードはこんな感じでいくね
data {
    int t;
    int N[t];
}

parameters{
    real<lower=0>mu_s[t];
    real<lower=0>sigma_s;
    real<lower=0>sigma;
    real<lower=0>N_pred[3];
}

transformed parameters{
    real delta[t-1];
    delta[1] = (mu_s[2]-mu_s[1]);
    delta[2] = (mu_s[3]-mu_s[2]);
    for(i in 3:(t-1)){
        delta[i] = (delta[i-2]+delta[i-1])/2;
    }
}

model {
    mu_s[1] ~ normal(52400000,sigma_s);
    mu_s[2] ~ normal(52400000,sigma_s);
    mu_s[3] ~ normal(mu_s[2]+delta[1],sigma_s);
    sigma_s ~ cauchy(0,25);
    sigma ~ cauchy(0,25);
    for (j in 4 : t){
        mu_s[j] ~ normal(mu_s[j-1]+delta[j-1],sigma_s);
    }
    {
    int index;
    index=0;
        for (k in 1:t){
            if (N[k]!=9999){
               N[k] ~ normal(mu_s[k],sigma);
            }else{
              index=index+1;
              N_pred[index] ~ normal(mu_s[k],sigma);
           }
        }
    }
}
dastatis hojo.png
いいですね!
じゃあぼくのDrake方程式モデルはこんな感じで!
data {
    int<lower=0> NL; //Londener
    int<lower=0> mu; //UK population
    int<lower=0> NLF; //Londener Female
    int<lower=0> NLFA; //Londener Female Age-appropriate
    int<lower=0> kgA; //UK girls Attractive
    int<lower=0> Ng; //UK girls
    real<lower=0, upper=1> xi; //Unmarried rate of kgA
    real<lower=0, upper=1> omega; //desire rate
}
parameters{
    real<lower=0, upper=1> pi; //women rate of mu
    real<lower=0, upper=1> theta; //rate of NLF
    real<lower=0, upper=1> phi; //rate of NLFA
    real<lower=0, upper=1> psi; //rate of kgA
}
transformed parameters{
    real<lower=0> G; //Possible Girl Friend
    G = mu * pi * theta * phi * psi * xi * omega;
}
model{
    pi ~ beta(1,1);
    theta ~ beta(1,1);
    phi ~ beta(100,1);
    psi ~ beta(1,1);
    NL~ binomial(mu, pi);
    NLF~ binomial(NL, theta);
    NLFA~ binomial(NLF, phi);
    kgA~ binomial(Ng, psi);
}
logo.jpg Unadon
待ちたまえdastatis。
ロンドンの女性が20-34歳である確率phi ~ Beta (100,1)って
ほぼ確率0.9以上やないか(笑)願望入っとるやないか(笑) BetaDist.png

dastatis hojo.png
すみません超主観事前分布になってました笑
Beta(1,1)の無情報事前分布にしますね。
よし。これで完了!

logo.jpg Unadon
ほないこか!
dastatis hojo.png
いっちゃいますか!



推定結果:潜在的カノジョの数

logo.jpg Unadon
解析スタートして、
さんぷりんぐ フゥ〜〜〜〜〜〜
MCMCstate.png

dastatis hojo.png
(フゥ〜〜〜って、この先輩やばいぞ!)

logo.jpg Unadon
...よし!
イギリス人口推移のトレースができたよ(Figure3)!
StateSpaceDrakeRes.png
Figure3 イギリス人口の推移,視覚的事後予測チェック


logo.jpg Unadon
ほんで...予測した2017年人口は、おりゃ(Figure4)
population2017.png
Figure4 2017年のイギリス推定人口


logo.jpg Unadon
dastatis!!
2017年のイギリス推定人口のEAPを、 μ= 65,321,365 でパスやで!

dastatis hojo.png
μ= 65,321,365 受け取りました!

で、HMC実行して...
ぼくは遂に男前になる!!


MCMCdrake.png

おおお超Mixしてるぅ フゥ〜〜〜〜〜〜~~

logo.jpg Unadon
でた? 結果でた?

dastatis hojo.png
でましたよ!
ロンドンにいる潜在カノジョの数! 
こちらが推定結果です(Figure5)!!
PossibleKanojo.png
Figure5 2017年 ロンドンにいる潜在的カノジョの数の事後分布

logo.jpg Unadon
お?...お? ロンドンにいる潜在カノジョは何人?

dastatis hojo.png
事後平均で17,653人ですよUnadonさん!
ロンドンに僕らのカノジョがこんなにいるんすよ!!!

logo.jpg Unadon
おおおおめっちゃおるやんカノジョ!!(じゃなかったまだ)

・・・ってことは、単純計算(頻度確率)して、
ロンドンで20-34歳の女性に出会ったら、
その人が潜在カノジョな確率は?

dastatis hojo.png
1.729855%ですよ!100人に一人以上です!
Drakeによると、宇宙人に出会える確率は0.000003%なので、
宇宙人よりか約58万倍で、可能性高いっすよ!!!



いざ、イギリスに向けて

logo.jpg Unadon
よっしゃーーテンション上がってきた!17,653人に会いに行こう!
MathPsych2017でイギリスに行ったらまずロンドンで美女を…

dastatis hojo.png
探しませんよ(悔しいけど)!真面目に学会に行きましょう!
Warwickで開催される今回の学会にも
BeautyでSmartな女性はたくさんいますから。
きっと素敵な出会いが待っているはずです!

logo.jpg Unadon
そうだな!学会発表頑張るか!

dastatis hojo.png
はい!頑張りましょう!



LET'S GO!!
Mathematical Psychology!!


MathPsychAd.png


今日はエイプリルフールです。

Mr Unadonのウソ: 学会中にロンドンで美女探しはしません。

dastatisのウソ: エマワトソンも好き。

Written on April 1, 2017