机器学习————朴素贝叶斯

目录

一、朴素贝叶斯概述

1.1 概述

1.2 贝叶斯公式

1.3 先验概率&后验概率

1.4 例子

1.5 拉普拉斯修正

1.6 对数似然防溢出

二、实现

2.1 垃圾邮箱分类

2.1.1 数据集介绍

2.1.2 代码介绍

2.1.3 结果

三、总结

3.1 优点

3.2 缺点


一、朴素贝叶斯概述

1.1 概述

朴素贝叶斯算法是一种基于贝叶斯定理条件独立性假设分类方法。
其中,朴素贝叶斯的朴素代表属性之间独立
该算法的核心思想分为两个部分:
首先,基于特征条件独立性假设,算法学习输入和输出联合概率分布
然后,利用贝叶斯定理,对于给定的输入特征 x,计算各个输出类别 y 的后验概率

1.2 贝叶斯公式

贝叶斯公式如下:

 

通俗来讲是以下形式:

不同类别之间进行大小比较,其分母相同的因此正比关系如下:

由于朴素贝叶斯的朴素代表属性独立性的假设因此式子也可以改写为这样:

1.3 先验概率&后验概率

先验概率指根据以往经验和分析。在实验或采样前就可以得到的概率。
上文中P(类别)就是先验概率

后验概率指某件事已经发生,想要计算这件事发生的原因是由某个因素引起的概率。
上文中P(类别|特征)就是后验概率

1.4 例子

假设我们现在有两个盒子,分别为红色和蓝色。在红色盒子中放着2个苹果和6个橙子,在蓝色盒子中放着1个橙子和3个苹果,如下图所示:

图中绿色表示苹果,橙色代表橙子。
假设我们每次实验的时候会随机从某个盒子里挑出一个水果,
随机变量B表示挑出的是哪个盒子,并且P(B=blue) = 0.6(蓝色盒子被选中的概率),P(B=red) = 0.4(红色盒子被选中的概率)。
随机变量F表示挑中的是哪种水果,F的取值为"a "和"o "。
假设我们已经得知某次实验中挑出的水果是orange,求这

### 什么是贝叶斯算法机器学习中的应用? 贝叶斯算法是一种基于贝叶斯定理的概率统计方法,广泛应用于分类问题中。它通过计算后验概率 \(P(C|X)\) 来预测样本属于某一类别的可能性[^1]。朴素贝叶斯算法是其中最常用的变体之一,其假设特征之间相互独立,从而简化了概率计算的复杂度。 在手机相关的应用场景中,贝叶斯算法常用于垃圾短信过滤、用户行为预测和个性化推荐等任务。例如,在垃圾短信过滤领域,可以通过训练朴素贝叶斯模型来识别短信是否为垃圾信息[^3]。模型会根据历史数据学习关键词与垃圾短信之间的关联性,并利用这些信息对新短信进行分类。 ### 贝叶斯算法的核心原理 贝叶斯定理的核心公式如下所示: \[ P(C|X) = \frac{P(X|C) \cdot P(C)}{P(X)} \] 其中: - \(P(C|X)\) 表示给定特征 \(X\) 下类别 \(C\) 的后验概率。 - \(P(X|C)\) 表示类别 \(C\) 下特征 \(X\) 的条件概率。 - \(P(C)\) 是类别 \(C\) 的先验概率。 - \(P(X)\) 是特征 \(X\) 的边缘概率。 为了防止数值下溢(underflow)问题,通常采用对数转换的方式计算概率乘积[^2]。具体公式为: \[ \log(P(C|X)) = \log(P(C)) + \sum_{i=1}^{n} \log(P(x_i|C)) \] ### 手机中的贝叶斯算法应用实例 以下是一个使用 R 语言实现的朴素贝叶斯分类器代码示例,用于垃圾短信过滤: ```r # 加载必要的库 library("e1071") # 创建朴素贝叶斯分类器 data_classifier <- naiveBayes(data3_train1, data3_train_labels) # 对测试数据进行预测 predictions <- predict(data_classifier, data3_test1) ``` 上述代码展示了如何通过 `naiveBayes` 函数构建分类器,并使用训练好的模型对新数据进行预测[^3]。 ### 相关扩展 除了垃圾短信过滤外,贝叶斯算法还可以应用于以下场景: 1. **个性化推荐**:根据用户的浏览历史或购买记录,预测其可能感兴趣的商品。 2. **情感分析**:通过分析文本内容,判断用户对某产品的正面或负面评价。 3. **手写数字识别**:结合图像特征提取技术,识别手写数字。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值