Day 13:朴素贝叶斯分类器

Day 13:朴素贝叶斯分类器

📋 目录

  1. 朴素贝叶斯概述
  2. 贝叶斯定理基础
  3. 朴素贝叶斯的"朴素"假设
  4. 三种朴素贝叶斯模型详解
  5. 朴素贝叶斯的优缺点
  6. 拉普拉斯平滑

第一部分:朴素贝叶斯概述

1.1 什么是朴素贝叶斯?

朴素贝叶斯(Naive Bayes) 是一系列基于贝叶斯定理 的分类算法,核心假设是特征之间相互独立

关键特点

  • 属于生成式模型 (学习联合概率 P(X,Y)P(X,Y)P(X,Y))
  • 训练速度极快(只需计算概率)
  • 对小数据集表现良好

1.2 应用场景

应用领域 例子 特点
文本分类 垃圾邮件过滤、情感分析 特征独立假设基本成立
金融预警 极端涨跌预警、信用评分 快速筛选高风险样本
医疗诊断 疾病预测 可解释性强
推荐系统 用户偏好预测 冷启动友好

1.3 朴素贝叶斯与其他模型对比

特性 逻辑回归 KNN SVM 朴素贝叶斯
训练速度 无训练 最快
预测速度 最快
小数据表现 一般 优秀
可解释性
特征独立假设

第二部分:贝叶斯定理基础

2.1 条件概率

定义 :在事件 B 发生的条件下,事件 A 发生的概率。
P(A∣B)=P(A∩B)P(B) P(A|B) = \frac{P(A \cap B)}{P(B)} P(A∣B)=P(B)P(A∩B)

2.2 贝叶斯定理

P(A∣B)=P(B∣A)⋅P(A)P(B) P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)⋅P(A)

解读

  • P(A)P(A)P(A):先验概率(观察到数据前的信念)
  • P(B∣A)P(B|A)P(B∣A):似然(给定类别下,数据的概率)
  • P(B)P(B)P(B):证据(数据的边际概率)
  • P(A∣B)P(A|B)P(A∣B):后验概率(观察到数据后的信念)

2.3 应用到分类问题

对于分类问题,我们想计算:
P(y=c∣x)=P(x∣y=c)⋅P(y=c)P(x) P(y = c|\mathbf{x}) = \frac{P(\mathbf{x}|y=c) \cdot P(y=c)}{P(\mathbf{x})} P(y=c∣x)=P(x)P(x∣y=c)⋅P(y=c)

预测规则
y^=arg⁡max⁡cP(y=c∣x)=arg⁡max⁡cP(x∣y=c)⋅P(y=c) \hat{y} = \arg\max_c P(y = c|\mathbf{x}) = \arg\max_c P(\mathbf{x}|y = c) \cdot P(y = c) y^=argcmaxP(y=c∣x)=argcmaxP(x∣y=c)⋅P(y=c)

由于 P(x)P(\mathbf{x})P(x) 对所有类别相同,可以忽略。


第三部分:朴素贝叶斯的"朴素"假设

3.1 特征独立性假设

核心假设 :给定类别 yyy 后,各个特征之间条件独立
P(x∣y=c)=P(x1,x2,...,xn∣y=c)=∏i=1nP(xi∣y=c) P(\mathbf{x}|y = c) = P(x_1, x_2, \ldots, x_n|y = c) = \prod_{i=1}^n P(x_i|y = c) P(x∣y=c)=P(x1,x2,...,xn∣y=c)=i=1∏nP(xi∣y=c)

3.2 为什么这个假设"朴素"?

现实情况:特征之间通常存在相关性。

金融数据例子

  • RSI 和 MACD 都与价格相关 → 它们不独立
  • 今日收益率和明日收益率 → 时间序列自相关

为什么还管用?

  1. 模型对依赖关系具有一定鲁棒性
  2. 在小数据集上表现优异
  3. 决策边界可能仍然正确

3.3 独立性假设的影响

情况 效果
特征完全独立 最优分类器
特征弱相关 仍可良好工作
特征强相关 概率估计不准,但分类边界可能仍正确

第四部分:三种朴素贝叶斯模型

4.1 高斯朴素贝叶斯(Gaussian Naive Bayes)

适用场景 :连续特征,假设服从正态分布

公式
P(xi∣y=c)=12πσic2exp⁡(−(xi−μic)22σic2) P(x_i|y = c) = \frac{1}{\sqrt{2\pi\sigma_{ic}^2}} \exp\left(-\frac{(x_i-\mu_{ic})^2}{2\sigma_{ic}^2}\right) P(xi∣y=c)=2πσic2 1exp(−2σic2(xi−μic)2)

其中:

  • μic\mu_{ic}μic:类别 ccc 中特征 iii 的均值
  • σic2\sigma_{ic}^2σic2:类别 ccc 中特征 iii 的方差

在量化中应用

  • 技术指标(RSI、MACD、波动率)
  • 收益率序列

4.2 多项式朴素贝叶斯(Multinomial Naive Bayes)

适用场景 :离散特征(如词频计数),假设服从多项分布

公式
P(x∣y=c)=(∑ixi)!∏ixi!∏iP(xi∣y=c)xi P(\mathbf{x}|y = c) = \frac{(\sum_i x_i)!}{\prod_i x_i!} \prod_i P(x_i|y = c)^{x_i} P(x∣y=c)=∏ixi!(∑ixi)!i∏P(xi∣y=c)xi

在量化中应用

  • 新闻情感词频分析
  • 订单流计数数据

4.3 伯努利朴素贝叶斯(Bernoulli Naive Bayes)

适用场景二值特征 (0/1),假设服从伯努利分布

公式
P(xi∣y=c)=P(xi=1∣y=c)xi⋅(1−P(xi=1∣y=c))1−xi P(x_i|y = c) = P(x_i = 1|y = c)^{x_i} \cdot (1 - P(x_i = 1|y = c))^{1 - x_i} P(xi∣y=c)=P(xi=1∣y=c)xi⋅(1−P(xi=1∣y=c))1−xi

在量化中应用

  • 技术指标的二值化(如 RSI > 70 → 1)
  • 事件标志(如财报发布 → 1)

4.4 模型选择指南

数据类型 推荐模型 例子
连续值(正态分布) 高斯NB 技术指标、收益率
计数/频数 多项式NB 词频、交易次数
二值特征 伯努利NB 阈值化后的指标

第五部分:朴素贝叶斯的优缺点

5.1 优点

优点 说明
训练极快 只需计算统计量(均值、方差、概率)
预测极快 简单的查表和乘法运算
小数据友好 不需要大量样本
天然处理多分类 直接计算每类概率
可解释性强 可以查看每个特征的影响
对无关特征鲁棒 独立假设使其不受无关特征影响

5.2 缺点

缺点 说明 解决方案
特征独立假设 现实中很少成立 特征选择、降维
零概率问题 未出现过的特征组合概率为0 拉普拉斯平滑
概率估计不准 独立假设导致概率失真 关注分类而非概率
对特征分布敏感 高斯假设可能不成立 尝试其他分布或分箱

5.3 在量化交易中的价值

核心价值快速筛选和预警系统

当需要极快的预测速度 (如实时风控)或处理高维稀疏数据时,朴素贝叶斯是理想的基线模型和预警系统。


第六部分:拉普拉斯平滑(Laplace Smoothing)

6.1 零概率问题

问题 :如果测试集中出现训练集未出现过的特征值,概率会变成 0。
P(xi∣y=c)=NicNc=0⇒P(y=c∣x)=0 P(x_i|y = c) = \frac{N_{ic}}{N_c} = 0 \Rightarrow P(y = c|\mathbf{x}) = 0 P(xi∣y=c)=NcNic=0⇒P(y=c∣x)=0

6.2 拉普拉斯平滑公式

P(xi∣y=c)=Nic+αNc+αK P(x_i|y = c) = \frac{N_{ic} + \alpha}{N_c + \alpha K} P(xi∣y=c)=Nc+αKNic+α

其中:

  • NicN_{ic}Nic:类别 ccc 中特征 iii 的计数
  • NcN_cNc:类别 ccc 的总样本数
  • KKK:特征 iii 的可能取值数
  • α\alphaα:平滑参数(通常取 1)→ 加一平滑

6.3 平滑参数的影响

α 值 效果
α = 0 无平滑,可能过拟合
α = 1 加一平滑,最常用
α > 1 强平滑,适用于高维稀疏数据
相关推荐
葡萄城技术团队21 小时前
告别 AI 失忆!基于 Harness 记忆模型,解密 SpreadContext 多实例同步引擎
人工智能
Jet76921 小时前
企业级大模型API中转站选型实测:从接入验证到灰度上线
网络·人工智能·ai
瑞行AI21 小时前
一套数据格式框架搞定大模型微调和对齐训练
算法·语言模型
Luminbox紫创测控21 小时前
汽车(EV)内外饰材料老化测试与标准
人工智能·测试工具·汽车·安全性测试·测试标准
玛卡巴卡ldf21 小时前
【LeetCode 手撕算法】(动态规划)爬楼梯、杨辉三角、打家劫舍、完全平方数、零钱兑换、单词拆分、最长递增子序列、乘积最大子数组、分割等和子集
java·数据结构·算法·leetcode·动态规划·力扣
jake·tang21 小时前
深度解析 VESC 参数辨识源码:电阻、电感与磁链
arm开发·c++·嵌入式硬件·算法·数学建模·傅立叶分析
前端不太难21 小时前
AI Native 鸿蒙 App 的四层架构
人工智能·架构·harmonyos
kobesdu21 小时前
大语言模型与ROS集成的自然语言机器人控制:开源框架与应用实例
人工智能·语言模型·机器人
weelinking21 小时前
2026年三大主流大模型深度对比:GPT-5.5、Claude 4.6与DeepSeek V4谁更值得选择?
java·大数据·人工智能·git·python·gpt·github