🎈

モデル選択のための赤池情報量基準

2024/10/19に公開

初めに

赤池情報量基準(AIC)は統計モデルを評価するための指標で、統計学者の赤池弘次 氏によって提案されました。その定義は次の通りです。

\text{AIC}=-2\sum_{i=1}^{n}\log f(x_{i}|\hat{\bm{\theta}})+2p

シンプルな形をしていますね。AICはモデルの決定的な違いとしてモデルが持つパラメータ数pも着目してモデルの良し悪しを測るわけですが、このパラメータは解析的な手順を踏んで付け加えられたものです。このAICがどのようにして得られたか?またはその意味は何か?それを紹介していきます。

まずは最尤推定から

とある確率分布q(x)によって発生するイベントがあります。各イベントはデータ列\bm{x}_{n}=(x_{1},x_{2},\cdots,x_{n})として得られていると仮定します。このデータ列からこのイベントをよく説明できる統計モデルf(x|\bm{\theta})は何かを考えることにします[1]。この真の確率分布q(x)を説明するためのもっともらしい確率分布を見つけることを最尤推定といいます。最尤推定では「データx_{i}が得られたということはこのデータが発生する確率は大きいのだろう」という考え方のもとf(x|\bm{\theta})を最適化します。各データが独立の元取得できたと仮定するならば、

\hat{\bm{\theta}}=\argmax_{\bm{\theta}} \prod_{i=1}^{n}f(x_{i}|\bm{\theta})=\argmax_{\bm{\theta}}f(\bm{x}_{n}|\bm{\theta})

となるような\hat{\bm{\theta}}を見つけることが目標です。\bm{\theta}とは統計モデルのパラメータでこれが決まれば統計モデルも一つに決まります[2]。そして\hat{\bm{\theta}}は最尤推定量といいます。
最尤推定では上の式のままf(\bm{x}_{n}|\bm{\theta})を最大化する\hat{\bm{\theta}}を見つけるのではなく、対数をとった

\hat{\bm{\theta}}=\argmax_{\bm{\theta}} \sum_{i=1}^{n}\log f(x_{i}|\bm{\theta})=\argmax_{\bm{\theta}} \log f(\bm{x}_{n}|\bm{\theta})

の形で探すこと多いでしょう。このとき

\frac{\partial}{\partial \bm{\theta}}\log f(\bm{x}_{n}|\bm{\theta})=\bm{0}

となる\bm{\theta}を見つけるのが最尤推定のステップです。

良いモデルとは?

最尤推定ではモデルを一つに決め、そのモデルの中で最尤推定量となるパラメータを見つける方法だといいました。しかしここで決めたモデルがイベントをよく説明できるモデルなのでしょうか?ここで異なるモデルをいくつか用意し、その中で適切なモデルを選ぶことを考えます。

モデルというのは抽象的すぎるので、パラメータ\bm{\theta}_{p}=(\theta_{1},\theta_{2},\cdots,\theta_{p})について最も適切な次元pは何か?ということを考えます[3]。次元という言葉は初めに書いたパラメータ数に置き換えてよいです。ここで次元pを持つパラメータの統計モデルをf_{p}(x|\bm{\theta}_{p})と置いたとき、その最尤推定量\hat{\bm{\theta}}_{p}からなる統計モデルf_{p}(x|\hat{\bm{\theta}}_{p})と真の確率分布q(x)を次で比較します。

D_{\text{KL}}(q(x)||f_{p}(x|\hat{\bm{\theta}}_{p}))=\int q(x)\log\frac{q(x)}{f_{p}(x|\hat{\bm{\theta}}_{p})}dx

これはKLダイバージェンスといい、q(x)=f_{p}(x|\hat{\bm{\theta}}_{p})のとき、KLダイバージェンスは0になります。つまりf_{p}(x|\hat{\bm{\theta}}_{p})q(x)に近ければ近いほど良いモデルだと判断するわけです。次にこの式を変形すると、

\begin{align*} D_{\text{KL}}(q(x)||f_{p}(x|\hat{\bm{\theta}}_{p}))&=\int q(x)\log q(x)dx-\int q(x)\log f_{p}(x|\hat{\bm{\theta}}_{p})dx\\ &=\mathbb{E}_{q(x)}[\log q(x)]-\mathbb{E}_{q(x)}[\log f_{p}(x|\hat{\bm{\theta}}_{p})] \end{align*}

となります[4]。ここで\mathbb{E}_{q(x)}[\log q(x)]は定数になるので無視でよいです。したがってKLダイバージェンスが0になるということを達成するには、

\eta(\hat{\bm{\theta}}_{p})=\mathbb{E}_{q(x)}[\log f_{p}(x|\hat{\bm{\theta}}_{p})]

を最大にするモデルを見つければよいということになります。この項は平均対数尤度と呼ばれます。またとあるモデルf(x|\bm{\theta})について\eta(\bm{\theta})\bm{\theta}の関数としてみなした、

\eta(\bm{\theta})=\mathbb{E}_{q(x)}[\log f(x|\bm{\theta})]

は平均対数尤度関数と呼ばれます。

平均対数尤度の計算方法

平均対数尤度を計算するにあたって問題があります。それは平均対数尤度が真の確率分布q(x)を含むということです。真の確率分布がわからないから、データを説明できるモデルを探そうとしているのに、平均対数尤度が真の確率分布を含んでいるならば計算のしようがありません。そこで経験分布という考え方を使います。

最尤推定ではデータ列\bm{x}_{n}=(x_{1},x_{2},\cdots,x_{n})が得られていました。これをもとに新たな確率分布\hat{q}(x)を構成してみます。

\hat{q}(x)=\frac{1}{n}\sum_{i=1}^{n}\delta(x-x_{i})

これは経験分布といいます。\delta(x)はデルタ関数です。経験分布を真の確率とみなして平均対数尤度を計算すると、

\mathbb{E}_{\hat{q}(x)}[\log f_{p}(x|\hat{\bm{\theta}}_{p})]=\frac{1}{n}\sum_{i=1}^{n}\log f_{p}(x_{i}|\hat{\bm{\theta}}_{p})

となります。ここで得られた、

l(\hat{\bm{\theta}}_{p})=\sum_{i=1}^{n}\log f_{p}(x_{i}|\hat{\bm{\theta}}_{p})

は対数尤度とよびます。また平均対数尤度同様とあるモデルf(x|\bm{\theta})についてを\bm{\theta}の関数としてみなした、

l(\bm{\theta})=\sum_{i=1}^{n}\log f(x_{i}|\bm{\theta})

は対数尤度関数と呼ばれます。平均対数尤度と対数尤度には

\frac{1}{n}\sum_{i=1}^{n}\log f_{p}(x|\hat{\bm{\theta}}_{p})\stackrel{(n\rightarrow\infty)}{\longrightarrow} \mathbb{E}_{q(x)}[\log f_{p}(x|\hat{\bm{\theta}}_{p})]

という関係があります。nが大きくなればなるほど対数尤度は平均対数尤度に確率収束していくということです。ならば対数尤度l(\hat{\bm{\theta}}_{p})が推定するものは平均対数尤度のn倍すなわちn\eta({\hat{\bm{\theta}}_{p}})ということです。

情報量基準

平均対数尤度と対数尤度のずれ

これらの説明から良いモデルを見つけるには、対数尤度が最も大きなモデルを見つければよさそうに見えます。しかしこれはモデルを比較するうえで適切な比較指標になりません。本来よいモデルを見つけるには平均対数尤度を用いるべきだということを思い出すと、平均対数尤度と対数尤度のバイアスがパラメータの次元数に応じて変わってくるのです。つまり各モデルにおいてバイアスがぶれぶれなので、一律な比較ができないということです。そこでこの次元数も含めて対数尤度を補正したのが情報量基準ということになります。この情報量基準(Information Criterion: \text{IC})は次の定義です。

\text{IC}=-2\left((\text{対数尤度})-(\text{バイアス})\right)

対数尤度が平均対数尤度に対してバイアスを持つといいましたが、それを差っ引けば適切なモデルの評価指標が得られるという発想に至るということです。

バイアスの考え方

このバイアスを式に落としたいと思います。平均対数尤度と対数尤度のずれを図に表します。

平均対数尤度と対数尤度のずれ

平均対数尤度と対数尤度とのバイアスは最尤推定量\hat{\bm{\theta}}=\hat{\bm{\theta}}(\bm{x}_{n})でのずれを評価します[5]\hat{\bm{\theta}}(\bm{x}_{n})は最尤推定量がデータ列\bm{x}_{n}から得られたということを明示的に表すものです。具体的にバイアスb(q)は次のように書けます。

b(q)=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\hat{\bm{\theta}}(\bm{x}_{n}))-n\mathbb{E}_{q(x)}[\log f(x|\hat{\bm{\theta}}(\bm{x}_{n}))]]

このバイアスを計算するために、少し工夫します。

\begin{align*} b(q)&=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\hat{\bm{\theta}}(\bm{x}_{n}))-\log f(\bm{x}_{n}|\bm{\theta}_{0})]\\ &\phantom{=}+\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})-n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]]\\ &\phantom{=}+\mathbb{E}_{q(\bm{x}_{n})}[n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]-n\mathbb{E}_{q(x)}[\log f(x|\hat{\bm{\theta}}(\bm{x}_{n}))]] \end{align*}

\bm{\theta}_{0}は平均対数尤度関数を最大にするパラメータです。ここで分解した項は次のように定義します。

\begin{align*} D_{1}&=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\hat{\bm{\theta}}(\bm{x}_{n}))-\log f(\bm{x}_{n}|\bm{\theta}_{0})]\\ D_{2}&=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})-n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]]\\ D_{3}&=\mathbb{E}_{q(\bm{x}_{n})}[n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]-n\mathbb{E}_{q(x)}[\log f(x|\hat{\bm{\theta}}(\bm{x}_{n}))]] \end{align*}

これらの項の関係を図示します。

平均対数尤度と対数尤度のずれ

D_{1},D_{2},D_{3}を計算していきましょう。

D_{2}の計算

簡単な順から進めていきます。D_{2}についてさらに式変形すると、

\begin{align*} D_{2}&=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})-n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]]\\ &=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})]-n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})] \end{align*}

となります。ここで第一項について

\begin{align*} \log f(\bm{x}_{n}|\bm{\theta}_{0})&=\sum_{i=1}^{n}\log f(x_{i}|\bm{\theta}_{0})\\ q(\bm{x}_{n})&=\prod_{i=1}^{n}q(x_{i})\\ d\bm{x}_{n}&=dx_{1}dx_{2}\cdots dx_{n} \end{align*}

を使って整理していきます。

\begin{align*} \mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})] &=\int q(\bm{x}_{n})\sum_{i=1}^{n}\log f(x_{i}|\bm{\theta}_{0})d\bm{x}_{n}\\ &=\sum_{i=1}^{n}\int q(\bm{x}_{n})\log f(x_{i}|\bm{\theta}_{0})d\bm{x}_{n}\\ &=\sum_{i=1}^{n}\int q(x_{1})dx_{1}\cdots\int q(x_{i})\log f(x_{i}|\bm{\theta}_{0})dx_{i}\cdots\int q(x_{n})dx_{n} \end{align*}

ここで\int q(x_{j})dx_{j}=1なので

\begin{align*} \mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})]&=\sum_{i=1}^{n}\int q(x_{i})\log f(x_{i}|\bm{\theta}_{0})dx_{i}\\ &=n\int q(x)\log f(x|\bm{\theta}_{0})dx\\ &=n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})] \end{align*}

となります。第一項は第二項と等しいことがわかりました、結果、

D_{2}=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\bm{\theta}_{0})-n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]]=0

です。

D_{3}の計算

続いてD_{3}です。D_{3}は次のような式でした。

D_{3}=\mathbb{E}_{q(\bm{x}_{n})}[n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]-n\mathbb{E}_{q(x)}[\log f(x|\hat{\bm{\theta}}(\bm{x}_{n}))]]

ここで\eta(\hat{\bm{\theta}})=\mathbb{E}_{q(x)}[\log f(x|\hat{\bm{\theta}}(\bm{x}_{n}))]について、\bm{\theta}_{0}周りでテイラー展開すると、

\eta(\hat{\bm{\theta}})\approx \eta(\bm{\theta}_{0}) +\sum_{i=1}^{p}\left.\frac{\partial \eta(\bm{\theta})}{\partial\theta_{i}}\right\rvert_{\bm{\theta}_{0}}(\hat{\theta}_{i}-\theta^{(0)}_{i}) +\frac{1}{2}\sum_{i=1}^{p}\sum_{j=1}^{p}\left.\frac{\partial^{2} \eta(\bm{\theta})}{\partial \theta_{i}\partial\theta_{j}}\right\rvert_{\bm{\theta}_{0}}(\hat{\theta}_{i}-\theta^{(0)}_{i})(\hat{\theta}_{j}-\theta^{(0)}_{j})

となります。\hat{\theta}_{i},\theta^{(0)}_{i},\theta_{i}\hat{\bm{\theta}},\bm{\theta}_{0},\bm{\theta}の要素です。ここで\eta(\bm{\theta})\bm{\theta}=\bm{\theta}_{0}で最大値をとるので、\bm{\theta}=\bm{\theta}_{0}での微分は

\left.\frac{\partial \eta(\bm{\theta})}{\partial\theta_{i}}\right\rvert_{\bm{\theta}_{0}}=0

となります。よって、

\eta(\hat{\bm{\theta}})\approx \eta(\bm{\theta}_{0}) -\frac{1}{2}(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})

で整理できます。ここでJ(\bm{\theta})=(J_{ij}(\bm{\theta}))

J(\bm{\theta})=\left(-\frac{\partial^{2} \eta(\bm{\theta})}{\partial \theta_{i}\partial\theta_{j}}\right)=\left(-\int q(x) \frac{\partial^{2} \log f(x|\bm{\theta})}{\partial \theta_{i}\partial\theta_{j}}dx\right)

というp\times pの行列です。この結果をD_{3}に代入すると、

\begin{align*} D_{3}&=\mathbb{E}_{q(\bm{x}_{n})}\left[n\mathbb{E}_{q(x)}[\log f(x|\bm{\theta}_{0})]-n\left(\eta(\bm{\theta}_{0}) -\frac{1}{2}(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})\right)\right]\\ &=\frac{n}{2}\mathbb{E}_{q(\bm{x}_{n})}\left[(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})\right]\\ &=\frac{n}{2}\text{tr}\left(\mathbb{E}_{q(\bm{x}_{n})}\left[J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}\right]\right)\\ &=\frac{n}{2}\mathbb{E}_{q(\bm{x}_{n})}\left[J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}\right]\\ &=\frac{n}{2}\text{tr}\left(J(\bm{\theta}_{0})\mathbb{E}_{q(\bm{x}_{n})}\left[(\hat{\bm{\theta}}-\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}\right]\right) \end{align*}

となります。ここで\text{tr}は行列のトレース(対角和)です。式変形する際は\hat{\bm{\theta}}=\hat{\bm{\theta}}(\bm{x}_{n})であることに注意しましょう。特に証明はしませんが、

\mathbb{E}_{q(\bm{x}_{n})}\left[(\hat{\bm{\theta}}-\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}\right]=\frac{1}{n}J(\bm{\theta}_{0})^{-1}I(\bm{\theta}_{0})J(\bm{\theta}_{0})^{-1}

の関係を用いると、

D_{3}=\frac{1}{2}\text{tr}\left(I(\bm{\theta}_{0})J(\bm{\theta}_{0})^{-1}\right)

となります。ここでI(\bm{\theta})=(I_{ij}(\bm{\theta}))

\begin{align*} I(\bm{\theta})&=\int q(x)\frac{\partial \log f(x|\bm{\theta})}{\partial \bm{\theta}}\left(\frac{\partial \log f(x|\bm{\theta})}{\partial \bm{\theta}}\right)^{\top}dx \\ &=\left(\int q(x)\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{i}}\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}dx\right) \end{align*}

というp\times pの行列です。

D_{1}の計算

最後にD_{1}です。D_{1}は次のような式でした。

D_{1}=\mathbb{E}_{q(\bm{x}_{n})}[\log f(\bm{x}_{n}|\hat{\bm{\theta}}(\bm{x}_{n}))-\log f(\bm{x}_{n}|\bm{\theta}_{0})]

ここでl(\bm{\theta}_{0})=\log f(\bm{x}_{n}|\bm{\theta}_{0})について\hat{\bm{\theta}}周りでテイラー展開すると、

l(\bm{\theta}_{0})\approx l(\hat{\bm{\theta}}) +\sum_{i=1}^{p}\left.\frac{\partial l(\bm{\theta})}{\partial\theta_{i}}\right\rvert_{\hat{\bm{\theta}}}(\theta^{(0)}_{i}-\hat{\theta}_{i}) +\frac{1}{2}\sum_{i=1}^{p}\sum_{j=1}^{p}\left.\frac{\partial^{2} l(\bm{\theta})}{\partial \theta_{i}\partial\theta_{j}}\right\rvert_{\hat{\bm{\theta}}}(\theta^{(0)}_{i}-\hat{\theta}_{i})(\theta^{(0)}_{j}-\hat{\theta}_{j})

となります。まず\left.\frac{\partial l(\bm{\theta})}{\partial\theta_{i}}\right\rvert_{\hat{\bm{\theta}}}については、最尤推定において、

\left.\frac{\partial l(\bm{\theta})}{\partial\theta_{i}}\right\rvert_{\hat{\bm{\theta}}}=0

という前提があるので無視でよいです。次に平均対数尤度との関係を思い出すと。サンプル数nが十分大きいとき、l(\hat{\bm{\theta}})/n\eta(\hat{\bm{\theta}})に確率収束するのでした。そうすると、このテイラー展開の結果はD_{3}の平均対数尤度のテイラー展開の結果と同じ扱いができます。よって、

\begin{align*} \frac{l(\bm{\theta}_{0})}{n}\approx \frac{l(\hat{\bm{\theta}})}{n} &-\frac{1}{2}(\bm{\theta}_{0}-\hat{\bm{\theta}})^{\top}J(\bm{\theta}_{0})(\bm{\theta}_{0}-\hat{\bm{\theta}})\\ &\;\therefore\; l(\bm{\theta}_{0})\approx l(\hat{\bm{\theta}}) -\frac{n}{2}(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0}) \end{align*}

と書けます。これをD_{1}に代入して式変形すると、

\begin{align*} D_{1}&=\mathbb{E}_{q(\bm{x}_{n})}\left[\log f(\bm{x}_{n}|\hat{\bm{\theta}}(\bm{x}_{n}))-\left(l(\hat{\bm{\theta}}) -\frac{n}{2}(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})\right)\right]\\ &=\frac{n}{2}\mathbb{E}_{q(\bm{x}_{n})}\left[(\hat{\bm{\theta}}-\bm{\theta}_{0})^{\top}J(\bm{\theta}_{0})(\hat{\bm{\theta}}-\bm{\theta}_{0})\right] \end{align*}

となるので、あとはD_{3}と同様に式変形すれば、

D_{1}=\frac{1}{2}\text{tr}\left(I(\bm{\theta}_{0})J(\bm{\theta}_{0})^{-1}\right)

となります。

赤池情報量基準(AIC)

まず情報量基準は対数尤度からバイアスを引いたものでした、これまでの計算結果からこのバイアスは

b(q)=D_{1}+D_{2}+D_{3}=\text{tr}\left(I(\bm{\theta}_{0})J(\bm{\theta}_{0})^{-1}\right)

と書くことができます。ここでI(\bm{\theta}_{0}),J(\bm{\theta}_{0})は真の確率分布を含むため直接計算できませんが、これらの推定量をつかって得た行列\hat{I},\hat{J}より一つの情報量基準が定義されます。それがTICです。

\text{TIC}=-2\sum_{i=1}^{n}\log f(x_{i}|\hat{\bm{\theta}})+2\text{tr}\left(\hat{I}\hat{J}^{-1}\right)

TICは竹内とStoneによって提案された情報量基準で赤池情報量基準より精緻に評価した情報量基準となります。ただTICを使えばAICより良いモデルの評価が必ずできることは保証されていません。当然推定量である\hat{I},\hat{J}が平均対数尤度の最大値を示す\bm{\theta}_{0}周りで得られたものでない場合はモデルの適切な評価は得られないでしょう。このTICをベースにAICを導出します。

AICはq(x)=f(x|\bm{\theta}_{0})という仮定のもと導出されます。このときI(\bm{\theta}_{0})=J(\bm{\theta}_{0})となります。この証明はAppendixに記載しておきます。I(\bm{\theta}_{0}),J(\bm{\theta}_{0})p\times p行列でしたから、そのバイアスは、

b(q)=\text{tr}\left(I(\bm{\theta}_{0})J(\bm{\theta}_{0})^{-1}\right)=\text{tr}(I_{p})=p

となります。I_{p}p\times pの単位行列です。このバイアスを使って定義された情報量基準は

\text{AIC}=-2\sum_{i=1}^{n}\log f(x_{i}|\hat{\bm{\theta}})+2p

赤池情報量基準(AIC)となるわけです。

AICの使い方や意味

モデルの評価として平均対数尤度を使うことがベースとして話を展開してきました。つまりよいモデルとは平均対数尤度が大きいものと言いかえることができます。AICでは対数尤度にマイナスがついているので、AICにおいてよいモデルというのはAICが最も小さくなるモデルということです。

ここで対数尤度のみでモデルを評価することを考えると、モデルを得るための情報は真の確率から得られたデータ列のみでした。対数尤度上ではこのデータのみが考慮された状態で評価されるため、よいモデルというのはデータによくフィットしたモデルということになります。

そんなモデルはパラメータ数pをいくらでも増やせばモデルとしての表現力は高くなるため、pに明示的な上限はなく、そのデータに最も適用したモデルは何かという答えしか得られません。

しかしAICではパラメータ数pが組み込まれています。AICは小さければ小さいほど良いモデルと評価できるので、パラメータ数が大きくなるとAICの下限を満たさないモデルとなります。AICは表現力が高すぎず、データを分布を反映したモデルを評価できるような仕組みというわけです。

これなら真の確率から得られたデータも未来得られるデータについてもフィットしたよいモデルになっているんじゃないでしょうか。

最後に

最近は情報幾何の教科書を作るのが趣味で、技術書典という技術書が集まる同人即売会に向けてこの教科書作りに専念してました。で、いったんその教科書作りが一区切りついたいので、最近全く更新してなかったZennの記事を書こうと思ったわけです。

なんでAICを記事化しようと思ったかというとなんとなくです。なんか今自分が持っている知識とかをまとめればAICも記事化できそうだなと思って書いてみました。もし質問や不明瞭な点があったら教えてください。

せっかくなので技術書典で参加するサークルの宣伝もしておきます↓(2024/11/2に新刊発売予定)
https://techbookfest.org/organization/2c3v3ztxeCBhiRFCU5gZ9r
boothでも同様の本が買えるのでぜひ!↓
https://diceandgeometry.booth.pm/

Appendix

I(\bm{\theta}_{0})=J(\bm{\theta}_{0})の証明

q(x)=f(x|\bm{\theta}_{0})であるならばI(\bm{\theta}_{0}),J(\bm{\theta}_{0})の要素I_{ij}(\bm{\theta}_{0}),J_{ij}(\bm{\theta}_{0})

\begin{align*} I_{ij}(\bm{\theta}_{0})&=\int f(x|\bm{\theta}_{0})\left.\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{i}}\right\rvert_{\bm{\theta}_{0}}\left.\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}_{\bm{\theta}_{0}}\right\rvert dx\\ J_{ij}(\bm{\theta}_{0})&=-\int f(x|\bm{\theta}_{0})\left.\frac{\partial^{2} \log f(x|\bm{\theta})}{\partial \theta_{i}\partial\theta_{j}}\right\rvert_{\bm{\theta}_{0}}dx \end{align*}

と書くことができます。証明するにあたり必ずしもパラメータが\bm{\theta}_{0}である必要なないので\bm{\theta}で説明していきます。まず公式として

\int f(x|\bm{\theta})\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}dx=0

を用います。これは、

\begin{align*} \int f(x|\bm{\theta})\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}dx&=\int f(x|\bm{\theta})\frac{1}{f(x|\bm{\theta})}\frac{\partial f(x|\bm{\theta})}{\partial \theta_{j}}dx\\ &=\int \frac{\partial f(x|\bm{\theta})}{\partial \theta_{j}}dx\\ &=\frac{\partial}{\partial \theta_{j}}\int f(x|\bm{\theta})dx\\ &=\frac{\partial}{\partial \theta_{j}}1=0 \end{align*}

と導かれるものです。上の公式を\theta_{i}で偏微分すると、

\begin{align*} \frac{\partial}{\partial \theta_{i}}\int f(x|\bm{\theta})\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}dx &=\int \frac{\partial f(x|\bm{\theta})}{\partial \theta_{i}}\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}+f(x|\bm{\theta})\frac{\partial^{2} \log f(x|\bm{\theta})}{\partial \theta_{i}\partial \theta_{j}}dx\\ &=\int f(x|\bm{\theta})\frac{1}{f(x|\bm{\theta})}\frac{\partial f(x|\bm{\theta})}{\partial \theta_{i}}\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}dx-J_{ij}(\bm{\theta})\\ &=\int f(x|\bm{\theta})\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{i}}\frac{\partial \log f(x|\bm{\theta})}{\partial \theta_{j}}dx-J_{ij}(\bm{\theta})\\ &=I_{ij}(\bm{\theta})-J_{ij}(\bm{\theta})=0 \end{align*}

よってI_{ij}(\bm{\theta})=J_{ij}(\bm{\theta})となるので、\bm{\theta}=\bm{\theta}_{0}と置けばI(\bm{\theta}_{0})=J(\bm{\theta}_{0})となることがわかりました。

参考文献

  1. 小西貞則,北川源四郎(著)「シリーズ〈予測と発見の科学〉2 情報量規準」朝倉書店 (2024)
  2. 赤池弘次,甘利俊一,北川源四郎,樺島祥介,下平英寿(著),室田一雄,土谷隆(編)「赤池情報量規準AIC ―モデリング・予測・知識発見―」共立出版 (2018)
  3. 寅太郎(著)「情報幾何のとらえどころ ~数理統計学と微分幾何の融合 Part 1~」Dice and Geometry (2024)
脚注
  1. 例えば身体測定とかをイメージするとよいかもしれません。n番目の人の身長はXcmでしたという具合です。Xcmがデータに一つに相当します。そしてこの身長のばらつきが確率分布q(x)によって引き起こされ、これをモデル化したものがf(x|\bm{\theta})という立ち位置です。f(x|\bm{\theta})の例としては正規分布がよく使われると思います。 ↩︎

  2. 正規分布であれば\bm{\theta}=(\mu,\sigma)です。\muは平均値、\sigmaは標準偏差です。 ↩︎

  3. 例としてニューラルネットワークを挙げます。ニューラルネットワークおいてパラメータの次元に相当するものがニューロンの数です。ニューラルネットワークの学習においてニューロンが少なすぎるとうまくデータを反映したモデルを作れないし、多すぎると過学習の原因になります。つまり適切な次元数があるということです。 ↩︎

  4. \mathbb{E}_{q(x)}[f(x)]=\int q(x)f(x)dxq(x)による期待値です。本記事では連続分布を想定していますが、離散分布であれば、 \mathbb{E}_{q(x)}[f(x)]=\sum_{x} q(x)f(x)としてください。 ↩︎

  5. ここではモデル同士の比較ではなくバイアスの計算に焦点を当てるため\hat{\bm{\theta}}_{p}ではなく\hat{\bm{\theta}}と表すことにします。また同様の理由でf_{p}fと表すことにします。 ↩︎

Discussion