KATUBLO

PROFILE

プロフィール

@KATUO

法政大学理工学部電気電子工学科 現在3年生
趣味はプログラミング、ランニング、釣り、カフェ巡り。まだまだ初心者ですが, プログラミング系の記事を中心に書いていきます。

TWITTER

ツイッター

RELATED ARTICLE

関連記事

投稿日:2018年11月02日

【Deeplearning】交差エントロピーとは?

 

今回記事を書いた理由

交差エントロピーを理解する為

 

 

 

 

交差エントロピーとは?

交差エントロピーやクロスエントロピー(英: cross entropy)とは、情報理論において2つの確率分布の間に定義される尺度である。符号化方式が、真の確率分布  p ではなく、ある所定の確率分布  q に基づいている場合に、とりうる複数の事象の中からひとつの事象を特定するために必要となるビット数の平均値を表す。

 

 

 

 

 

 

 

簡単に言うと?

ある情報の価値尺度で、他の情報の価値を求めること。

 

 

 

 

 

 

 

具体例から考えてみる

 

エントロピーとは?

 

↑のサイトの解説を参考とし、部分部分掻い摘んで解説する。(省略する部分も多いので照らし合わせながら読んでください)

 

 

 

各国の天気の確率分布。

 

 

 

 

 

各天気のエンコード方法。

 

 

 

 

 

メモリの容量が1KB(8000bit)だとすると、

 

[math]\frac{8000[bit]}{2[bit]} =4000[日][/math]

 

のデータを保存できる。

 

 

 

しかし、このエンコード方法は無駄がある。

なぜなら、B国では晴れの日が50%である為、エンコードした際に使うbit数を1にすると、

容量を節約することができ、同じ8000bitのメモリで4500日以上分のデータを保存できる。

 

 

 

 

[math]H(P_b) = E_{P_b} [log_{2}(\frac1{P_{b}(\omega)})]  \\ =  0.5log_{2}(\frac1{0.5})+0.25log_{2}(\frac1{0.25}) \\ +0.125log_{2}(\frac1{0.125})+0.125log_{2}(\frac1{0.125}) = 1.75[/math]

 

 

 

 

最適なコードの割り当て方法は数学的証明により、求められており

 

[math]確率P(\omega)[/math]で起こる事象には長さ[math]log_2(\frac1{P(\omega)})[/math]のコードを割り当てるのが最適とされている。

 

また、期待値(1回の試行の結果を伝えるのに要する平均ビット数)をエントロピー(平均情報量)とよびます

 

 

 

 

 

 

 

交差エントロピーとは?

 

それぞれの国の最適エントロピーは、上のように数学的に求められます。

ここで、ある国の最適なエンロピーの求め方で、他の国のエンロトピーを求めてみよう。

 

 

 

 

[例]

B国の最適エントロピーの求め方で、A国のエントロピーを求める。

 

[math]E_b [log_{2}(\frac1{P_{b}(\omega)})]  \\ =  0.25log_{2}(\frac1{0.5})+0.25log_{2}(\frac1{0.25}) \\ +0.25log_{2}(\frac1{0.125})+0.25log_{2}(\frac1{0.125}) = 2.25[/math]

 

 

A国の最適エントロピーの求め方をしていないので、0.25[bit]分無駄が生じている。

 

 

このように、ある確率分布に最適化された方式で別の確率分布をエンコードした時の平均ビット長を

 

交差エントロピー

 

と呼ぶ。

 

 

 

 

定義式としてまとめると

 

 

[math]H(P.Q) = E_p [log_{2}(\frac1{Q(\omega)})]  \\ =  \sum_{\omega\subseteqq Ω} P(\omega)log(\frac1{Q(\omega)})[/math]

 

 

Qのエントロピー最適化法でPのエントロピーを求めたときの式である。

 

 

 

 

感想

今回の記事を書いて、交差エントロピーの定義は理解したので、次の記事では機械学習において、どのような役割で使われているのかをきちんと理解しようと思う。

 

最後まで読んで頂き
ありがとうございました。
SNS等でのシェアが頂ければ幸いです。