by nkoda

【統計検定1級対策】ロジスティック分布の積率母関数・期待値・分散の導出

目次

前書き

 本日から7月となり今年ももう折り返しになりました。 こんなこと言うと年より臭いのかもしれませんが、本当に最近は月日の流れが早く感じてしまいます。 何もなしえずに時間だけが過ぎて行ってしまうのは非常にもったいなく感じますね。 このブログも何かやらなきゃという焦りから始めたのかもしれませんねw 統計学や機械学習で勉強会の講演をすることを目標に努力していきたいと改めて思いました。

 本日はロジスティック分布に関して紹介いたします。 名前から絶対シグモイド関数出るなってわかりますよね。 残念ながら確率密度関数ではなく、分布関数がシグモイド関数となる分布をロジスティック分布といいます。 ぶっちゃけると、私はこの分布は統計検定一級の勉強をするまでは知りませんでした。 ネタバレしちゃいますが、積率母関数の導出の際にベータ関数を利用すること(変数変換してベータ関数の形を作りますのでいったんご自身で考えてみると面白いかと思いますよ)、 分散を導出する際はゼータ関数$\zeta(2)$すなわちバーゼル級数を利用したりと数学的にかなりこってりしたものです。 正直これの導出はかなり時間がかかりました。。。いろいろな文献を漁ったりしました。

 それではいつものように結論を見て導出の詳細を見ていきましょう。

初めに結論

項目
$x\in \mathbb{R}$
確率密度関数 $f(x)=\frac{e^{-x}}{(1+e^{-x})^2}$
積率母関数 $\Gamma{(1+t)}\Gamma{(1-t)}$
平均 $0$
分散 $\frac{\pi^2}{3}$

導出

積率母関数

 冒頭でネタバレしましたが置換することでベータ関数の形を作ります。 ベータ関数ってなんだっけという方はこちらを読み返してみてください。

$$ \begin{eqnarray} M_X(t)&=&\int_{-\infty}^{\infty}e^{xt}\frac{e^{-x}}{(1+e^{-x})^2}dx\\\
&=&\int_{0}^{1}\frac{u^t}{(1-u)^t}du\\\
&=&\int_0^1u^{(1+t)-1}(1-u)^{(1-t)-1}du\\\
&=&B(1+t,1-t)\\\
&=&\frac{\Gamma{(1+t)}\Gamma{(1-t)}}{\Gamma(2)}\\\
&=&\Gamma{(1+t)}\Gamma{(1-t)} \end{eqnarray} $$

 導出過程を説明します。

  • 第二式から第三式:ここが完全にキモです。 シグモイド関数に慣れている方ならサクッと気付いたかもしれませんが、今回は$u=\frac{1}{1+e^{-x}}$とします。 この置換により、$\frac{du}{dx}=\frac{e^{-x}}{(1+e^{-x})^2},x:-\infty\to\infty \Rightarrow u:0\to 1, e^x=\frac{u}{1-u}$となります。 この置換は知ってないとなかなか気付けない類と思うので、ロジスティック分布は$x=$(分布関数)でベータ関数を作ると覚えてしまっていいと思います。
  • 第三式から第四式:積分区間が$0\to 1$で$u$と$1-u$なんて見るとベータ関数の形にしか見えなくなってきたあなたは慣れてきていますね。 統計検定一級で対象となっている確率分布はガンマ関数やベータ関数にいかに気が付くかがポイントなのでアンテナはりまくっておきましょう。
  • 第四式から第五式:ベータ関数に書き変えました。
  • 第五式から第六式:$1-t$と$1+t$ってなんか足せると変数消えて気持ちいいのになぁって思えたら、ベータ関数とガンマ関数の関係性でいい感じのがあったことに気が付けるでしょう。
  • 第六式から第七式:ガンマ関数は階乗の一般化でしたね、$\Gamma(2)=1!=1$

 なんといっても初手の置換が思いつけるかがミソですね。 シグモイド関数はニューラルネットワークでもガシガシ使うので扱いに慣れておくとよいかもしれません。 完全に脱線ですが、シグモイド関数を$\sigma(x)$と書くとすれば$\sigma’(x)=\sigma(x)(1-\sigma(x))$となることはニューラルネット実装するうえでは重要なので理解しておきましょう。

平均

 $M_X(t)$を$t$で微分して$t=0$をやっていきます。

$$ \begin{eqnarray} E(X)&=&\left.\frac{d}{dt}M_x(t)\right|_{t=0}\\\
&=&\left.\Gamma’{(1+t)}\Gamma{(1-t)}-\Gamma{(1+t)}\Gamma’{(1-t)}\right|_{t=0}\\\
&=&\Gamma’{(1)}\Gamma{(1)}-\Gamma{(1)}\Gamma’{(1)}\\\
&=&0 \end{eqnarray} $$

きれいに消えてくれました。

分散

 分散は$E(X^2)-(E(X))^2$で求めることができますので、二次のモーメントを求めます。

$$ \begin{eqnarray} E(X^2)&=&\left.\frac{d^2}{dt^2}M_x(t)\right|_{t=0}\\\
&=&\Gamma’'(1+t)\Gamma(1-t)-\Gamma’(1+t)\Gamma’(1-t)-\\\
&\quad&\left.(\Gamma’(1+t)\Gamma’(1-t)-\Gamma(1+t)\Gamma’'(1-t))\right|_{t=0}\\\
&=&\Gamma^{\prime\prime}(1)\Gamma(1)-\Gamma’(1)\Gamma’(1)-(\Gamma’(1)\Gamma’(1)-\Gamma(1)\Gamma^{\prime\prime}(1))\\\
&=&2(\Gamma(1)\Gamma’'(1)-(\Gamma’(1))^2)\\\
&=&2*\frac{\pi}{6}\\\
&=&\frac{\pi^2}{3} \end{eqnarray} $$

第五式に関して補足します。 ディガンマ関数$\psi(x):=\frac{d}{dz}\log{\Gamma(z)}=\frac{\Gamma’(z)}{\Gamma(z)}$というものがあります。 このディガンマ関数を微分して$1$を代入すると第五式の形括弧の中身になります。 実はディガンマ関数の導関数は級数表示することができて$\psi^{(k)}(z)=(-1)^{k+1}k!\sum_{n=0}^{\infty}\frac{1}{(z+n)^{k+1}}$と書くことができるのです。 つまり第五式はディガンマ関数の一階微分に$1$を代入したものなので $$\psi’(1)=\sum_{n=0}^{\infty}\frac{1}{(1+n)^2}=1+\frac{1}{2^2}+\frac{1}{3^2}\cdots=\zeta(2)=\frac{\pi^2}{6}$$ となります。

なので分散は、 $$ \begin{eqnarray} V(X)=\frac{\pi^2}{3}-0^2=\frac{\pi^2}{3} \end{eqnarray} $$

まとめ

 なかなか数学がコッテリしていましたね。 まさかバーゼル級数ことゼータ関数まで出てくるとは。。。って僕も導出した際は思いました。 でも色々な事知れてとても面白い確率分布でしたね。

 それでは、統計検定1級を目指されている方や統計を勉強している方に良い情報提供となることを願って本日は失礼します。

参考文献

  • 日本統計学会編, “日本統計学会公式認定 統計検定1級対応 統計学”, 第6刷, 2013, 東京図書, ISBN 978-4-489-02150-3.
  • 藤澤洋徳, “確率と統計”, 第9刷, 2006, 朝倉書店, ISBN 978-4-254-11763-9.
  • 小寺平治, “明解演習 数理統計”, 初版30刷, 1986, 共立出版, ISBN 978-4-320-01381-0.