三十九、【人工智能】【机器学习】【监督学习】- 多项式朴素贝叶斯分类器(Multinomial Naive Bayes)

 

系列文章目录

第一章 【机器学习】初识机器学习

第二章 【机器学习】【监督学习】- 逻辑回归算法 (Logistic Regression)

第三章 【机器学习】【监督学习】- 支持向量机 (SVM)

第四章【机器学习】【监督学习】- K-近邻算法 (K-NN)

第五章【机器学习】【监督学习】- 决策树 (Decision Trees)

第六章【机器学习】【监督学习】- 梯度提升机 (Gradient Boosting Machine, GBM)

第七章 【机器学习】【监督学习】-神经网络 (Neural Networks)

第八章【机器学习】【监督学习】-卷积神经网络 (CNN)

第九章【机器学习】【监督学习】-循环神经网络 (RNN)

第十章【机器学习】【监督学习】-线性回归

第十一章【机器学习】【监督学习】-局部加权线性回归 (Locally Weighted Linear Regression, LWLR)

第十二章【机器学习】【监督学习】- 岭回归 (Ridge Regression)

十三、【机器学习】【监督学习】- Lasso回归 (Least Absolute Shrinkage and Selection Operator)

十四、【机器学习】【监督学习】- 弹性网回归 (Elastic Net Regression)

十五、【机器学习】【监督学习】- 神经网络回归 

十六、【机器学习】【监督学习】- 支持向量回归 (SVR)

十七、【机器学习】【非监督学习】- K-均值 (K-Means) 

十八、【机器学习】【非监督学习】- DBSCAN (Density-Based Spatial Clustering of Applications with Noise)十九、【机器学习】【非监督学习】- 层次聚类 (Hierarchical Clustering)二十、【机器学习】【非监督学习】- 均值漂移 (Mean Shift)

二十一、【机器学习】【非监督学习】- 谱聚类 (Spectral Clustering)​​ 


目录

系列文章目录

一、基本定义

(一)、监督学习

(二)、监督学习的基本流程

(三)、监督学习分类算法(Classification)

二、 多项式朴素贝叶斯分类器(Multinomial Naive Bayes)

(一)、定义

(二)、基本概念

(三)、训练过程

1. 计算先验概率

2. 计算条件概率

3. 应用拉普拉斯平滑

4.整体流程概览

(四)、特点

(五)、适用场景

(六)、扩展

三、总结

四、相关书籍介绍


一、基本定义

(一)、监督学习

        监督学习(Supervised Learning)是机器学习中的一种主要方法,其核心思想是通过已知的输入-输出对(即带有标签的数据集)来训练模型,从而使模型能够泛化到未见的新数据上,做出正确的预测或分类。在监督学习过程中,算法“学习”的依据是这些已标记的例子,目标是找到输入特征与预期输出之间的映射关系。

(二)、监督学习的基本流程

        数据收集:获取包含输入特征和对应正确输出标签的训练数据集。
        数据预处理:清洗数据,处理缺失值,特征选择与转换,标准化或归一化数据等,以便于模型学习。
        模型选择:选择合适的算法,如决策树、支持向量机、神经网络等。
        训练:使用训练数据集调整模型参数,最小化预测输出与实际标签之间的差距(损失函数)。
        验证与调优:使用验证集评估模型性能,调整超参数以优化模型。
        测试:最后使用独立的测试集评估模型的泛化能力,确保模型不仅在训练数据上表现良好,也能在未见过的新数据上做出准确预测。

(三)、监督学习分类算法(Classification)

        定义:分类任务的目标是学习一个模型,该模型能够将输入数据分配到预定义的几个类别中的一个。这是一个监督学习问题,需要有一组已经标记好类别的训练数据,模型会根据这些数据学习如何区分不同类别。
        例子:垃圾邮件检测(垃圾邮件 vs. 非垃圾邮件)、图像识别(猫 vs. 狗)。


二、 多项式朴素贝叶斯分类器(Multinomial Naive Bayes)

(一)、定义

Multinomial Naive Bayes(多项式朴素贝叶斯分类器)是一种基于贝叶斯定理的分类方法,特别适合处理特征可以被看作是事件出现次数的情况,例如文档分类中词频的计数。在Multinomial Naive Bayes模型中,每个类别下的特征频率独立于其他特征,这是“朴素”假设的由来,尽管这种假设在现实世界中很少成立,但它在很多情况下依然能给出有效的分类结果。

(二)、基本概念

  1. 贝叶斯定理:Multinomial Naive Bayes的基础是贝叶斯定理,它描述了在给定某些证据的情况下,某个假设的概率。公式为:,其中P(A∣B)是在观测到B的情况下A发生的概率。

  2. 多项式分布:在Multinomial Naive Bayes中,特征(如单词出现的次数)遵循多项式分布。这意味着,对于给定的文档,每个单词的出现次数被建模为来自一个多项式分布。

  3. 朴素假设:假定特征之间相互独立,即使在现实中它们可能不是。这个假设简化了模型,使得计算变得可行。

(三)、训练过程

Multinomial Naive Bayes的训练过程主要包括两个关键步骤:计算先验概率和计算条件概率。下面是对这两个步骤的详细解析,以及如何应用拉普拉斯平滑来避免概率估计中的零值问题。

1. 计算先验概率

先验概率是指在看到任何特征之前,每个类别的基础概率。这通常基于训练数据集中各个类别的频率来计算。具体步骤如下:

  • 对于每个类别 c,计算该类别样本在训练集中的比例:

这个概率提供了对类别分布的基本了解,是朴素贝叶斯分类器分类决策的重要组成部分。

2. 计算条件概率

条件概率 P(fi​∣c) 指的是在给定类别 c 下特征 fi​ 出现的概率。对于Multinomial Naive Bayes,我们关心的是特征的计数,所以计算条件概率通常涉及以下几个步骤:

  • 对于每个类别 c,统计特征 fi​ 在该类别样本中出现的总次数
  • 同时,记录该类别下所有特征的总出现次数nc​。
  • 最后,计算条件概率:

其中,V 是词汇表大小(特征空间的维度),α 是拉普拉斯平滑系数,通常设置为1。

3. 应用拉普拉斯平滑

在计算条件概率时,拉普拉斯平滑(或称为加一平滑)是非常重要的,尤其是当训练数据集较小,某些特征在某些类别中未出现时。如果不使用平滑,那么 P(fi​∣c) 将会是0,这会导致在乘法过程中整个条件概率变为0,即使其他特征给出了非零的概率。

通过在分子和分母上添加一个小的正值 α,我们可以避免这种情况。这样即使某个特征在训练数据中未出现,我们也能得到一个非零的概率估计,从而不会使整个分类器失效。

4.整体流程概览
  • 初始化:设置每个类别的先验概率为0,初始化每个特征的条件概率。
  • 遍历训练集:对于每个样本,更新对应类别的先验概率和特征的条件概率计数。
  • 计算最终概率:使用上述公式计算先验概率和条件概率。
  • 应用平滑:在计算条件概率时应用拉普拉斯平滑,以避免零概率问题。
  • 保存模型:将计算得到的先验概率和条件概率存储下来,供后续的分类预测使用。

训练过程完成后,Multinomial Naive Bayes模型可以用于新的输入数据的分类,通过计算每个类别的后验概率,并选择具有最高后验概率的类别作为预测结果。由于其简单性和计算效率,Multinomial Naive Bayes在文本分类和其他特征可视为计数的场景中非常流行。

(四)、特点

  • 快速且简单:Multinomial Naive Bayes的训练和预测都非常快,因为它只需要简单的概率计算。
  • 对输入数据要求低:不需要特征缩放或归一化,因为它是基于频率的。
  • 处理高维特征:非常适合处理具有大量特征的数据,如文本数据,即使特征间可能存在依赖关系。

(五)、适用场景

  • 文本分类:如情感分析、垃圾邮件过滤、新闻分类等。
  • 推荐系统:基于用户的历史行为预测其可能感兴趣的内容。
  • 生物信息学:如基因表达数据的分类。

(六)、扩展

  1. Bernoulli Naive Bayes:与Multinomial Naive Bayes类似,但用于二进制特征,即特征要么存在要么不存在,而不是计算其频率。
  2. Gaussian Naive Bayes:用于连续特征,假设特征服从高斯分布。
  3. Kernel Naive Bayes:使用核函数来处理非线性关系,可以处理更复杂的特征分布。

三、总结

Multinomial Naive Bayes因其简单性和在文本分类等领域的有效性而广受欢迎,尽管它的“朴素”假设在实际中往往不成立,但在很多情况下,它仍然能提供令人满意的结果。

四、相关书籍介绍

《Python机器学习算法》这本书是由赵志勇编写,由电子工业出版社出版的一本关于机器学习的入门书籍,出版时间为2017年7月。该书的特点是结合理论与实践,旨在帮助读者不仅理解机器学习算法的理论基础,而且能够动手实践,最终熟练掌握算法的应用。以下是本书的主要内容和适用读者群体的总结:

内容概览

本书分为六个主要部分:

  1. 基本概念:介绍监督学习、无监督学习和深度学习的基本概念。
  2. 分类算法:包括Logistic回归、Softmax Regression、Factorization Machine、支持向量机(SVM)、随机森林和BP神经网络等。
  3. 回归算法:涵盖线性回归、岭回归和CART树回归。
  4. 聚类算法:如K-Means、Mean Shift、DBSCAN和Label Propagation算法。
  5. 推荐算法:基于协同过滤、矩阵分解和基于图的推荐算法。
  6. 深度学习:介绍AutoEncoder和卷积神经网络(CNN)。

此外,本书还特别安排了一章来讲解算法在具体项目中的实践案例,以及附录部分介绍了Python语言、numpy库和TensorFlow框架的使用方法。

适用读者

这本书适合以下几类读者:

  • 机器学习初学者:书中从算法原理出发,逐步深入,适合没有机器学习背景的读者入门。
  • 具有一定项目经验的读者:书中不仅有理论介绍,还有大量实践代码,可以帮助已有一定经验的读者深化理解,提升技能。
  • 对推荐系统、广告算法和深度学习感兴趣的读者:书中详细介绍了这些领域的实用算法,有助于读者在这些方向上进行深入研究。

总之,《Python机器学习算法》是一本全面介绍机器学习算法的书籍,它兼顾理论与实践,无论是对初学者还是有一定经验的读者,都能从中找到适合自己的内容。

书籍下载链接:

链接:https://pan.baidu.com/s/1ngX9yoC1HMZ2ORmHvSEtlA?pwd=0qbm 
提取码:0qbm 

  • 12
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值