ベイズ統計学

ベイズの定理、事前分布、事後分布、MCMC法、階層ベイズモデルなど統計検定準1級レベルのベイズ統計理論を学習します。

スパムフィルタリングのベイズ計算 レベル1

メールのスパムフィルタにおいて、「割引」という単語がスパムメールに出現する確率は0.8、正常メールに出現する確率は0.1である。全メールの20%がスパムメールとして分類されている。「割引」という単語を含むメールがスパムである確率はいくらか。小数第3位まで求めよ。

解説
解答と解説を表示

ベイズの定理によるスパムフィルタリング

現代のメールシステムで重要なスパムフィルタリングは、ベイズの定理を基盤とした分類手法です。この問題では、特定の単語の出現による事後確率を計算します。

問題設定の整理
  • 単語出現率(スパム):P(「割引」|スパム) = 0.8
  • 単語出現率(正常):P(「割引」|正常) = 0.1
  • 事前確率(スパム):P(スパム) = 0.2
  • 事前確率(正常):P(正常) = 0.8
  • 求める値:P(スパム|「割引」)

Step 1: ベイズの定理の適用

$$P(\\text{スパム}|\\text{「割引」}) = \\frac{P(\\text{「割引」}|\\text{スパム}) \\times P(\\text{スパム})}{P(\\text{「割引」})}$$

Step 2: 全確率の法則による分母の計算

$$P(\\text{「割引」}) = P(\\text{「割引」}|\\text{スパム}) \\times P(\\text{スパム}) + P(\\text{「割引」}|\\text{正常}) \\times P(\\text{正常})$$
$$P(\\text{「割引」}) = 0.8 \\times 0.2 + 0.1 \\times 0.8$$
$$P(\\text{「割引」}) = 0.16 + 0.08 = 0.24$$

Step 3: 事後確率の計算

$$P(\\text{スパム}|\\text{「割引」}) = \\frac{0.8 \\times 0.2}{0.24} = \\frac{0.16}{0.24} = \\frac{2}{3} ≈ 0.667$$

小数第3位まで:0.667

結果の解釈

「割引」という単語を含むメールがスパムである確率は約66.7%です。これは:

  • 単語の識別力:この単語はスパム判定に有効
  • 事前確率の影響:スパム率20%から66.7%に上昇
  • 尤度比:$\\frac{0.8}{0.1} = 8$倍の識別力

実際の数値で確認

1,000通のメールを分析した場合:

  • スパムメール:200通(うち160通に「割引」が出現)
  • 正常メール:800通(うち80通に「割引」が出現)
  • 「割引」を含むメール計:240通
  • うちスパム:160通
  • 確率:160/240 = 2/3 ≈ 66.7%

ナイーブベイズ分類器への拡張

実際のスパムフィルタでは複数の単語を組み合わせます:

$$P(\\text{スパム}|w_1, w_2, \\ldots, w_n) \\propto P(\\text{スパム}) \\prod_{i=1}^n P(w_i|\\text{スパム})$$
  • 独立性仮定:「ナイーブ」な仮定だが実用的
  • 計算効率:線形時間での分類
  • 学習データ:大量のラベル付きメールデータ
問題 1/10
カテゴリ一覧に戻る