ナイーブベイズ分類器ビジュアライザー
XとYの特徴は互いに独立である(ナイーブな仮定)と見なします。
このデモの解説
このページは、確率的な考え方に基づく機械学習アルゴリズムであるナイーブベイズ分類器の動作を視覚的に理解するためのデモです。この分類器は、ベイズの定理を応用して、あるデータがどのクラスに属する確率が最も高いかを計算します。
ナイーブベイズの仕組み
ナイーブベイズは、以下の2つの重要な要素に基づいています。
- ベイズの定理: 新しいデータ(特徴)が与えられたときに、それが各クラスに属する確率(事後確率)を計算します。これは、クラスの一般的な出現しやすさ(事前確率)と、そのクラスにおいてその特徴が出現する確率(尤度)から求められます。
事後確率 ∝ 尤度 × 事前確率
- 「ナイーブ」な仮定: 計算を単純化するため、「すべての特徴量(このデモではX座標とY座標)は互いに独立である」という大胆な(ナイーブな)仮定を置きます。これにより、複雑な関係を考慮せずに、各特徴の確率を単純に掛け合わせることができます。
このデモ(ガウシアン・ナイーブベイズ)の学習と予測は、以下の流れで行われます。
- 学習: あなたが点を配置すると、アルゴリズムは各クラス(AとB)ごとに、データの統計的な特徴(平均と標準偏差)を計算します。これにより、各クラスのデータがどのような分布をしているかの「モデル」が作られます。キャンバス上の点線の楕円は、この分布(尤度分布)を視覚化したものです。
- 予測: 新しい点(カーソル位置)に対して、
- その点がクラスAの分布から生成される確率(尤度)と、クラスBの分布から生成される確率(尤度)をそれぞれ計算します。
- それぞれの尤度に、クラス自体の出現率(事前確率)を掛け合わせます。
- 最終的に値が大きくなった方を、その点の予測クラスとして採用します。
画面の見方
- 左のキャンバス
- データ点を配置するメイン画面です。点線の楕円は、各クラスのデータの分布(1σと2σ)を示します。「予測マップ表示」を押すと、各領域がどちらのクラスに分類されるか(決定境界)が背景色で示されます。
- 右の操作パネル
- データ点のクラスを選択したり、予測マップの表示やリセットを行ったりできます。
ライブ情報ボックスがこのデモの心臓部です。
- 事前確率 P(クラス): データ全体におけるクラスAとクラスBの割合です。例えば、青い点が多ければP(A)は高くなります。
- 予測 at カーソル位置: カーソル位置のデータに対して、ベイズの定理に基づいた計算がリアルタイムで表示されます。尤度と事前確率を掛け合わせて、最終的な事後確率を比較している様子がわかります。