16 贝叶斯分类的基本理论

在本篇中,我们将深入探讨贝叶斯分类的基本理论,这是贝叶斯学习和统计推断中一个重要的主题。贝叶斯分类的本质是通过先验知识和观察数据的结合,对未知的类别进行推断。相较于贝叶斯回归更关注于数值预测,贝叶斯分类则关注于基于特征对样本进行分类的问题。

贝叶斯分类器的基本思想

贝叶斯分类器基于贝叶斯定理,其形式如下:

$$
P(C|X) = \frac{P(X|C)P(C)}{P(X)}
$$

在上述公式中:

  • $P(C|X)$ 是给定特征 $X$ 后类别 $C$ 的后验概率;
  • $P(X|C)$ 是类别 $C$ 的似然函数,即在类别 $C$ 下观察到特征 $X$ 的概率;
  • $P(C)$ 是类别 $C$ 的先验概率;
  • $P(X)$ 是特征 $X$ 的边际概率,用于标准化后验概率。

为了进行分类,我们需要选择概率最大的类别,常常采用以下规则:

$$
\hat{C} = \arg\max_{C} P(C|X)
$$

先验概率、似然函数和边际概率

先验概率

先验概率 $P(C)$ 是在没有任何观察数据的情况下对每个类别的信念。我们可以根据历史数据或领域知识设定这些概率。

例如,在一个肿瘤分类问题中,假设我们知道恶性肿瘤(类别 $C_1$)的发生率为 10%,则 $P(C_1) = 0.1$,良性肿瘤(类别 $C_2$)的发生率为 90%,则 $P(C_2) = 0.9$。

似然函数

似然函数 $P(X|C)$ 则是在已知类别下特征的发生概率。这要求我们对特征的分布有一定的假设。在许多情况下,我们假设特征是独立的,并且可以用高斯分布、伯努利分布等来描述特征的分布。

例如,在我们的肿瘤分类问题中,特征可以是肿瘤大小、形态等。假设肿瘤大小在良性肿瘤中服从 $\mathcal{N}(5, 2^2)$,而在恶性肿瘤中服从 $\mathcal{N}(10, 3^2)$,即:

$$
P(X|C_1) = \frac{1}{\sqrt{2\pi}\cdot 3} \exp\left(-\frac{(X-10)^2}{2\cdot 3^2}\right)
$$

$$
P(X|C_2) = \frac{1}{\sqrt{2\pi}\cdot 2} \exp\left(-\frac{(X-5)^2}{2\cdot 2^2}\right)
$$

边际概率

边际概率 $P(X)$ 通常不需要显式计算,因为在分类中我们只需要比较后验概率。边际概率可以通过全概率公式计算:

$$
P(X) = \sum_{C} P(X|C)P(C)
$$

贝叶斯分类器的实现

下面我们通过 Python 示例演示如何构建一个简单的贝叶斯分类器。我们使用的是 scikit-learn 中的 GaussianNB 来实现高斯贝叶斯分类器。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import numpy as np
from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# 假设我们有以下特征和标签
X = np.array([[5], [6], [8], [9], [10], [3], [4], [7], [2], [1]])
y = np.array([0, 0, 0, 1, 1, 1, 0, 1, 1, 0]) # 0: 良性, 1: 恶性

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 创建并训练贝叶斯分类器
model = GaussianNB()
model.fit(X_train, y_train)

# 预测并计算准确率
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)

print(f'模型准确率: {accuracy:.2f}')

在这个例子中,我们创建了一个简单的二分类问题,使用高斯贝叶斯分类器来学习数据,并最终计算模型的准确率。

小结

本篇介绍了贝叶斯分类的基本理论,包括贝叶斯定理、先验概率、似然函数和边际概率的含义。我们还通过案例展示了如何使用 Python 实现一个基本的贝叶斯分类器。这些基础将为后续探索更复杂的贝叶斯分类技术提供理论支持。

接下来,我们将深入探讨朴素贝叶斯分类器,进一步了解其在实际中的应用。

16 贝叶斯分类的基本理论

https://zglg.work/bayesian-learning-zero/16/

作者

AI免费学习网(郭震)

发布于

2024-08-15

更新于

2024-08-16

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论