KLダイバージェンスとは
KLダイバージェンス(Kullback-Leibler Divergence)とは、カルバック・ライブラー情報量とも呼ばれ、二つの確率分布 P と Q の間の「情報の違い」や「隔たり」を測る尺度を指します。
これは、真の確率分布 P を、近似的な確率分布 Q で表現しようとした場合に、どれだけの情報が失われるか(または追加で必要となるか)を示す指標として、情報理論や機械学習の様々な場面で重要な役割を果たします。
KLダイバージェンスの基本的な概念
KLダイバージェンスは、「距離」という言葉で表現されることもありますが、数学的な意味での距離(例えばユークリッド距離)とは異なり、いくつかの重要な特性を持っています。
主な概念は以下の通りです。
- 二つの確率分布の比較: KLダイバージェンスは、常に二つの確率分布を比較します。一つは「真の分布」または「基準となる分布」P、もう一つは「近似分布」または「モデルの分布」Qです。
- 情報量: 情報理論における「自己情報量」や「エントロピー」の概念に基づいています。自己情報量とは、ある事象が起こったときに得られる情報量であり、事象の起こる確率が低いほど多くの情報が得られるとされます。エントロピーは、確率分布全体の不確実性や平均情報量を表します。
- 情報損失: KLダイバージェンスは、真の分布 P の情報を、近似分布 Q を用いて符号化した際の、平均的な「情報損失」と解釈できます。値が大きいほど、Q が P をうまく近似できていないことを意味します。
- 非負性: KLダイバージェンスの値は、常に0以上です。
これは、真の分布 P と近似分布 Q が完全に一致する場合にのみ0となり、それ以外の場合は正の値をとります。
- 非対称性: KLダイバージェンスは、非対称な尺度です。つまり、P から Q へのKLダイバージェンスと、Q から P へのKLダイバージェンスは、一般的に異なる値をとります。
この非対称性のため、KLダイバージェンスは厳密な意味での「距離」ではありません。
- 無限大の可能性: もし、真の分布 P(x) が0でないにもかかわらず、近似分布 Q(x) がその点で0である場合、KLダイバージェンスは無限大になります。これは、Q が P の重要な部分を全くカバーできていないことを示します。
KLダイバージェンスの計算式
離散確率分布の場合と連続確率分布の場合で、それぞれ計算式が定義されます。
1. 離散確率分布の場合
二つの離散確率分布 P={p1,p2,…,pN} と Q={q1,q2,…,qN} があるとき、KLダイバージェンスは以下のように計算されます。
ここで、
- P(xi) は、真の分布 P における事象 xi の確率
- Q(xi) は、近似分布 Q における事象 xi の確率
- log は通常、自然対数(底が e)または2を底とする対数(ビット単位の情報量を扱う場合)が用いられます。
この式は、以下のように分解して考えることもできます。
これは、$ -H(P) + H(P, Q) $ と書くこともできます。
- $H(P) = -\sum P(x_i) \log P(x_i) $ は真の分布 P のエントロピー(自己情報量の期待値)です。
- $H(P, Q) = -\sum P(x_i) \log Q(x_i) $ は交差エントロピー(Cross-Entropy)と呼ばれ、真の分布 P を近似分布 Q で符号化した際の平均符号長と解釈できます。
つまり、KLダイバージェンスは交差エントロピーから真のエントロピーを引いたものとして捉えられ、「真の分布を基準として、近似分布を用いた場合の追加の情報量」を示します。
2. 連続確率分布の場合
二つの連続確率分布 p(x) と q(x) があるとき、KLダイバージェンスは積分を用いて以下のように計算されます。
KLダイバージェンスの機械学習における応用
KLダイバージェンスは、機械学習の様々な分野で広く利用されています。
- モデルの学習と最適化:
- 生成モデル: VAE(Variational AutoEncoder)やGAN(Generative Adversarial Network)などの生成モデルでは、学習データ(真の分布 P)に近い分布をモデルが生成できるように(モデルの出力分布 Q)、KLダイバージェンスを損失関数の一部として最小化することが行われます。特にVAEでは、潜在変数の分布が特定の事前分布(通常は標準正規分布)に近づくように、そのKLダイバージェンス項を損失に含めます。
- 分類問題: 分類問題における損失関数としてよく用いられる「交差エントロピー」は、KLダイバージェンスと密接な関係があります。分類モデルの学習では、正解ラベルの確率分布(真の分布 P)とモデルの予測確率分布(近似分布 Q)の間の交差エントロピーを最小化しますが、これは同時にKLダイバージェンスを最小化することにも繋がります(真のエントロピー H(P) は定数であるため)。
- データドリフトの検知: 訓練データと推論時に入力される新しいデータの分布が時間とともに変化する現象を「データドリフト」と呼びます。KLダイバージェンスを用いて、訓練データの分布と新しいデータの分布の間の隔たりを測定することで、データドリフトを検知し、モデルの再学習が必要かどうかを判断する指標として利用されます。
- モデル比較と選択: 複数の統計モデルや機械学習モデルがデータにどれだけフィットしているかを比較する際に、KLダイバージェンスが用いられることがあります。例えば、AIC(赤池情報量規準)は、KLダイバージェンスに基づいてモデルの良さを評価する基準です。
- 特徴量選択: 特定の目的変数と各特徴量との間の関連性や情報量を評価するために、KLダイバージェンス(やそれに関連する相互情報量)が利用されることがあります。これにより、予測に重要な特徴量を選択することができます。
KLダイバージェンス(Kullback-Leibler Divergence)は、二つの確率分布間の「情報の違い」や「隔たり」を測る非対称な尺度です。真の分布 P を近似分布 Q で表現する際に生じる情報損失と解釈され、値が小さいほど二つの分布が似ていることを示します。
離散分布では総和、連続分布では積分によって計算されます。機械学習においては、生成モデルの学習における損失関数、データドリフトの検知、モデル比較、特徴量選択など、様々な場面で重要な役割を担っています。その非対称性や非負性といった特性を理解することが、データ分析やモデル構築においてKLダイバージェンスを適切に活用する上で不可欠です。
関連用語
お問い合わせ
システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。
APPSWINGBYの
ソリューション
APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。
システム開発
既存事業のDXによる新規開発、既存業務システムの引継ぎ・機能追加、表計算ソフトによる管理からの卒業等々、様々なWebシステムの開発を行っています。
iOS/Androidアプリ開発
既存事業のDXによるアプリの新規開発から既存アプリの改修・機能追加まで様々なアプリ開発における様々な課題・問題を解決しています。
リファクタリング
他のベンダーが開発したウェブサービスやアプリの不具合改修やソースコードの最適化、また、クラウド移行によってランニングコストが大幅にあがってしまったシステムのリアーキテクチャなどの行っています。

ご相談・お問い合わせはこちら
APPSWINGBYのミッションは、アプリでビジネスを加速し、
お客様とともにビジネスの成功と未来を形作ること。
私達は、ITテクノロジーを活用し、様々なサービスを提供することで、
より良い社会創りに貢献していきます。
T関する疑問等、小さなことでも遠慮なくお問合せください。3営業日以内にご返答致します。

ご相談・お問合せはこちら
APPSWINGBYのミッションは、アプリでビジネスを加速し、お客様とともにビジネスの成功と未来を形作ること。
私達は、ITテクノロジーを活用し、様々なサービスを提供することで、より良い社会創りに貢献していきます。
IT関する疑問等、小さなことでも遠慮なくお問合せください。3営業日以内にご返答させて頂きます。