修正了部分文档中的笔误

This commit is contained in:
jackfrued 2025-02-13 16:40:46 +08:00
parent af055d8853
commit 80925f5436
2 changed files with 16 additions and 16 deletions

View File

@ -50,7 +50,7 @@ $$
P(C_{i}) = \frac{n_{i}}{n}
$$
其中, $\small{C_{i}}$ 表示类别, $\small{n_{i}}$ 是类别 $\small{C_{i}}$ 的样本数量, $\small{n}$ 是总的样本容量。
其中, $\small{C_{i}}$ 表示类别, $\small{n_{i}}$ 是类别 $\small{C_{i}}$ 的样本数量, $\small{n}$ 是总的样本容量。
2. **计算条件概率**
@ -58,7 +58,7 @@ $$
P(x_{j}|C_{i}) = \frac{n_{i,j}}{n_{i}}
$$
其中, $\small{n_{i,j}}$ 是在类别 $\small{C_{i}}$ 中,特征 $\small{x_{j}}$ 出现的次数。
其中, $\small{n_{i,j}}$ 是在类别 $\small{C_{i}}$ 中,特征 $\small{x_{j}}$ 出现的次数。
#### 预测阶段
@ -193,13 +193,13 @@ array([ True, True, True, True, True, True, True, True, True,
上面两个函数希望能帮助大家理解朴素贝叶斯的工作原理,实际工作中我们还是推荐大家使用 scikit-learn 库的`navie_bayes`模块封装的类来创建朴素贝叶斯模型,该模块下有五个朴素贝叶斯算法的变体,每种变体针对不同类型的数据和特征分布,对应的五种朴素贝叶斯分类器分别是:`BernoulliNB`、`CategoricalNB`、`ComplementNB`、`GaussianNB`和`MultinomialNB`,它们之间的差别如下表所示:
| 分类器 | 特征类型 | 主要假设 | 对应公式 |
| --------------- | -------- | ------------------------------------ |----|
| `BernoulliNB` | 二元特征 | 特征服从 Bernoulli 分布 | $\small{P(x_{i}|C) = p^{x_{i}} \cdot (1 - p)^{1 - x_{i}}}$ |
| `CategoricalNB` | 类别特征 | 特征服从多项式分布,常用于处理类别数据 | $\small{P(x_{i}|C)} = \frac{N_{i,j} + \alpha}{N_{i} + {\alpha}K}$ |
| `ComplementNB` | 计数特征 | 利用补集概率,常用于处理不平衡数据集 | $\small{P}$ |
| `GaussianNB` | 连续特征 | 特征服从高斯分布 | |
| `MultinomialNB` | 计数特征 | 特征服从多项式分布,常用于文本分类 | |
| 分类器 | 特征类型 | 主要假设 |
| --------------- | -------- | ------------------------------------ |
| `BernoulliNB` | 二元特征 | 特征服从 Bernoulli 分布 |
| `CategoricalNB` | 类别特征 | 特征服从多项式分布,常用于处理类别数据 |
| `ComplementNB` | 计数特征 | 利用补集概率,常用于处理不平衡数据集 |
| `GaussianNB` | 连续特征 | 特征服从高斯分布 |
| `MultinomialNB` | 计数特征 | 特征服从多项式分布,常用于文本分类 |
对于鸢尾花数据集,由于其特征是连续值,我们可以用`GaussianNB`来创建模型,代码如下所示。

View File

@ -17,7 +17,7 @@
1. **线性回归**Linear Regression假设输入变量和输出变量之间是线性关系。
- 一元线性回归:建立一个因变量与单个自变量之间线性关系的模型。
一元线性回归:建立一个因变量与单个自变量之间线性关系的模型。
$$
y = \beta_0 + \beta_1 x + \varepsilon
@ -25,7 +25,7 @@ $$
其中, $\small{y}$ 是目标变量(因变量), $\small{x}$ 是输入变量(自变量), $\small{\beta_{0}}$ 是截距,表示 $\small{x=0}$ 时的预测值, $\small{\beta_{1}}$ 是回归系数(斜率),表示输入变量对输出变量影响的大小, $\small{\varepsilon}$ 是误差项,用于表示数据中的随机噪声或无法解释的部分。
- 多元线性回归:建立一个因变量与多个自变量之间线性关系的模型。
多元线性回归:建立一个因变量与多个自变量之间线性关系的模型。
$$
y = \beta_{0} + \beta_{1} x_{1} + \beta_{2} x_{2} + \cdots + \beta_{n} x_{n} + \varepsilon
@ -52,7 +52,7 @@ $$
5. **逻辑回归**Logistic Regression逻辑回归虽然名字中带“回归”但实际上是用于分类问题的模型。它通过 Sigmoid 函数将线性组合的输入值映射到区间 $\small{(0, 1)}$ ,表示分类概率,适用于二分类问题;也可以扩展为 Softmax 回归,解决多分类问题。
$$
P(y=1|x) = \frac{1}{1 + e^{-(\beta_{0} + \beta_{1} x_{1} + \cdots + \beta_{n} x_{n})}}
P(y=1 \vert x) = \frac{1}{1 + e^{-(\beta_{0} + \beta_{1} x_{1} + \cdots + \beta_{n} x_{n})}}
$$
### 回归系数的计算
@ -273,7 +273,7 @@ $$
3. 平均绝对误差Mean Absolute Error, MAE。MAE 是另一个常用的误差度量指标,定义为预测值与真实值误差的绝对值平均值。
$$
\text{MAE} = \frac{1}{m} \sum_{i=1}^{m}|y_{i} - \hat{y}_{i}|
\text{MAE} = \frac{1}{m} \sum_{i=1}^{m} \lvert y_{i} - \hat{y}_{i} \rvert
$$
4. 决定系数R-Squared, $\small{R^2}$)。 $\small{R^2}$ 是一个相对指标,用于衡量模型对数据的拟合程度,其值越接近 1 越好。 $\small{R^2}$ 的计算公式为:
@ -345,10 +345,10 @@ print(f'决定系数: {r2:.4f}')
套索回归引入 $\small{L1}$ 正则化项,不仅防止过拟合,还具有特征选择的功,特别适用于高维数据。套索回归的损失函数如下所示:
$$
L(\mathbf{\beta}) = \sum_{i=1}^{m}(y_{i} - \hat{y}_{i})^{2} + \lambda \sum_{j=1}^{n}|\beta_{j}|
L(\mathbf{\beta}) = \sum_{i=1}^{m}(y_{i} - \hat{y}_{i})^{2} + \lambda \sum_{j=1}^{n} \lvert \beta_{j} \rvert
$$
其中, $\small{L1}$ 正则化项 $\small{\lambda \sum_{j=1}^{n}|\beta_{j}|}$ 会将某些不重要的回归系数缩减为 0从而实现特征选择。可以通过 scikit-learn 库`linear_model`模块的`Lasso`类实现套索回归,代码如下所示。
其中, $\small{L1}$ 正则化项 $\small{\lambda \sum_{j=1}^{n} \lvert \beta_{j} \rvert}$ 会将某些不重要的回归系数缩减为 0从而实现特征选择。可以通过 scikit-learn 库`linear_model`模块的`Lasso`类实现套索回归,代码如下所示。
```python
from sklearn.linear_model import Lasso
@ -379,7 +379,7 @@ print(f'决定系数: {r2:.4f}')
弹性网络回归结合了岭回归和套索回归的优点,通过同时引入 $\small{L1}$ 和 $\small{L2}$ 正则化项,适用于高维数据且特征之间存在相关的情况,其损失函数如下所示:
$$
L(\mathbf{\beta}) = \sum_{i=1}^{m}(y_{i} - \hat{y}_{i})^{2} + \alpha \lambda \sum_{j=1}^{n}|\beta_{j}| + (1 - \alpha) \lambda \sum_{j=1}^{n}\beta_{j}^{2}
L(\mathbf{\beta}) = \sum_{i=1}^{m}(y_{i} - \hat{y}_{i})^{2} + \alpha \lambda \sum_{j=1}^{n} \lvert \beta_{j} \rvert + (1 - \alpha) \lambda \sum_{j=1}^{n}\beta_{j}^{2}
$$
其中, $\small{\alpha}$ 是控制 $\small{L1}$ 和 $\small{L2}$ 正则化的权重比例。