t-SNE目的関数でクロスエントロピーではなく、Kullback-Leibler発散を使用する理由


39

私の考えでは、サンプル分布から真の分布へのKLの相違は、単純にクロスエントロピーとエントロピーの違いです。

多くの機械学習モデルでクロスエントロピーをコスト関数として使用するのに、t-sneでKullback-Leibler発散を使用するのはなぜですか?学習速度に違いはありますか?


1
KL上のいくつかの直感は、ここを参照してください: stats.stackexchange.com/questions/188903/...
はKjetil B Halvorsenの

回答:


81

KL発散は、2つの確率分布の差を測定する自然な方法です。エントロピー分布のpがから引き出さ無損失エンコードイベントに(平均して)必要とされるメッセージ当たりのビットの最小可能数与えるPを。この限界を達成するには、p向けに設計された最適なコードを使用する必要があります。これは、短いコードワードをより高い確率のイベントに割り当てます。D K LP Q )は、数の期待値として解釈することができる余分の真の分布から引き出さエンコードイベントに必要なメッセージ当たりのビットPH(p)pppDKL(pq)ppではなく分布最適なコードを使用する場合。分布を比較するための素晴らしいプロパティがいくつかあります。たとえば、pqが等しい場合、KL発散は0です。qppq

H(p,q)pqDKL(pq)H(p,q)pH(p,q)qppH(p,q)p

KLの発散とクロスエントロピーは次のように関連しています。

DKL(pq)=H(p,q)H(p)

pqp

pq

pH(p)pH(p)p

pqDKL(pq)pqjipji Kullback-Leibler発散(この場合、加法定数までのクロスエントロピーに等しい)です。

ファン・デル・マーテンとヒントン(2008)。t-SNEを使用したデータの視覚化。


どういうわけか「お気に入り」の回答はできますか?それは非常に良い説明ですので、私はこの1つを保存したい
zwep

1
ありがとう、それはあなたに役立ってうれしいです。投票ボタンの下にある星のアイコンをクリックすると、質問をお気に入りとしてマークしてスレッド全体を保存できます。アカウントページでお気に入りのリストを表示できます。
user20160
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.