E資格対策振り返り(応用数学-情報理論-自己情報量)
E資格(JDLA Deep Learning for ENGINEER 2019 #2)対策として、今回は、応用数学の分野のうち、情報理論-自己情報量を振り返ります。
深層学習では、以下の4つが既知のものとして登場してきます。
今回はこれらのうち、1つ目の自己情報量について、振り返っていきます。
自己情報量
1.情報量を定義する
まずは、情報量を定義します。
「情報」を知らないことを知るために必要なものと考えると、「情報」の「量」は、あらかじめ知ることがどれだけ困難であったかの度合いと考えられます。
「あらかじめ知ることが困難」、つまり「発生する確率が低い」事象ほど「情報量」が大きいと定義できます。
確率については、以下の記事をご参照ください。
2.情報量の定量的把握(同一確率1/n)の場合
この時、確率Pで起こる事象Aが起きたことを知った時に得られる情報量について定量的にどのように測定するかを考えていきたいと思います。
等確率で生じる以下の事象の組を考えます。
(等確率なので、どの事象の発生する確率も1/nとなります。)
この時、n個のうちどれが発生したかを知った時に得られる情報量を I(n)と定義します。
情報量を考えるにあたり、先ほどの事象Aを、以下の表のように、k個ずつのmグループに分けます。(n=mk)
この時ある事象Axが起きたことを知る方法として以下の2通りを考えます。
【ケース1】
- どのグループで起きたかを知る。・・・・I(m)
- そのあと、その中のどれが起きたかを知る。・・・I(k)
【ケース2】
- Axが起きたと直接知る。・・・・I(n=mk)
最終的にAxを知るときに得られる情報量は【ケース1】(I(m)+I(k))でも、【ケース2】(I(mk))でも、同じであるため、以下の式が成り立ちます。
この式をよく見ると「関数の出力の足し算が、その入力を掛け算した関数の出力と同じになる。」となっています。
この性質をもっている関数がないか考えます。
実は、前回振り返った対数関数が、以下の通り、まさにこの「関数の出力の足し算が、その入力を掛け算した関数の出力と同じになる。」で性質をもった関数だったのです。
【前回の記事】E資格対策振り返り(応用数学-対数関数)
この性質を利用して、I(n)が以下の通りとおいて、X、Y、Zの値をそれぞれ求めていきたいと思います。
●【性質1】I(1)=0を利用
事象Aが、一通りしかない場合、最初から結果はわかっているので、情報量はゼロとなり、
情報量の式のnに1を当てはめると
前半のlog1はゼロ
よって、後半のZもゼロとなる
●【性質2】I(2)=1を利用
事象Aが、2通りの場合の情報量を「1」と定義します。
(この定義は、10通りの場合を「1」とする場合などもありますが、ここでは、2通りの場合を採用します。)
情報量の式のnに2を当てはめると
Xを求めるために、両辺をlog2で割って、分子の1を対数に変換
最右辺の形は、底の変換公式に当てはまるので
※底の変換公式については、【前回の記事】E資格対策振り返り(応用数学-対数関数)をご参照ください。
よって、
【これまで求めたX、Zを代入】
底の変換公式より、
よって、I(n)は、以下となります。
つまり、これが、同一確率(1/n)の場合にAxが分かった時の情報量ということになります。
3.情報量の定量的把握(異なる確率k/n=p)の場合
より一般的にするために、事象Axがそれぞれ異なる確率k/nで発生することを考えます。
まずは、先ほどと同様に、以下の通りにグループ化されたことを考えます。
この時、一つ目のグループの中のどれかが生じる確率は、k/n=pとなります。
この1グループ目が起きることを1つの事象と考えて、この事象が発生した情報量をIとおいて、このIを求めることで、確率k/n=pの事象が分かったときの情報量を求めます。
【ケース1】
- Axを特定するときの情報量は、前述の同一確率(1/n)の情報量なので
【ケース2】
- 1つ目のグループであることを知るときの情報量
-
グループの中のどれであるかを知るときの情報量
【ケース1】と【ケース2】は同じ情報量になるので
Iについて解くと
対数関数の減算の処理より
この時、このグループが発生する確率k/n=pだったので、
対数関数の指数の処理より、最終的に求めたかった情報量Iは
となります。
※対数関数の減算の処理、指数の処理については、【前回の記事】E資格対策振り返り(応用数学-対数関数)をご参照ください。
この式は、前述の同一確率(1/n)の情報量においても、確率1/n=Pとおくことで、上記の式が得られるので、一般的な定義ができました。
→
ながながと説明してまいりましたが、やっとのことで、自己情報量の以下の式にたどり着くことができました。
私の自己解釈も多々ありますが、こうすることで、自己情報量の式を丸暗記するよりも、応用が利くようになったかなぁと考えています。
次回は、エントロピーについて振り返っていきたいと思います。
今後も、引き続き、復習をかねて、E資格対策を振り返っていきたいと思います。
2019年8月31日(土)にE資格を受験して、合格しました!
E資格対策として勉強の進め方や、参考書などをまとめました。
これから受験される方がいらっしゃいましたらご参考まで。
2019年3月9日(土)にG検定を受験し、見事合格できました!
受験の体験記や勉強法などを別のブログにまとめました。
これから受験される方がいらっしゃいましたらご参考まで。
【E資格対策に使った参考書】
- 人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書) [ 松尾豊 ]
- 深層学習教科書 ディープラーニング G検定(ジェネラリスト) 公式テキスト (EXAMPRESS) [ 一般社団法人日本ディープラーニング協会 ]
- 徹底攻略ディープラーニングG検定ジェネラリスト問題集 [ 明松真司 ]
- 実践機械学習システム [ ウィリ・リチャート ]
- アルゴリズムクイックリファレンス 第2版 [ George T. Heineman ]
- 深層学習【電子書籍】[ 岩澤 有祐 ]
- 入門Python 3 [ ビル・ルバノビック ]
- PythonによるWebスクレイピング 第2版 [ Ryan Mitchell ]
- Think Stats第2版 プログラマのための統計入門 [ アレン・B.ダウニー ]
- 集合知プログラミング [ トビー・セガラン ]
- ITエンジニアのための機械学習理論入門 [ 中井悦司 ]