scikit-learn 中实现了朴素贝叶斯的方法来源于sklearn.naive_bayes模块,在这个模块下,基于的计算方法不同,存在三种实现模块:Gaussian Naive Bayes、Multinomial Naive Bayes、Bernoulli Naive Bayes.

1.Bernoulli Naive Bayes

函数说明:https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.BernoulliNB.html

此方法主要是针对数据符合多元伯努利分布的朴素贝叶斯分类算法。例如,可能会有多个特征,但每一个被假定为一个二进制值(伯努利、布尔)变量,因此,这类要求的样品被表示为二进制值的特征向量;如果交给其他任何类型的数据,一个bernoullinb实例可以进行输入(取决于二值化参数)

伯努利朴素贝叶斯决策规则的基础上

在文本分类中,词出现的频次(不是词数量)可以使用该分类器。bernoullinb对某些数据集执行效果比较好,尤其是那些短的文件。如果时间允许的话,建议对两种模型进行评估。

调用方法:

sklearn.naive_bayes.BernoulliNB(alpha=1.0, binarize=0.0, fit_prior=True, class_prior=None)

例子:

import numpy as np
X = np.random.randint(2, size=(6, 100))
Y = np.array([1, 2, 3, 4, 4, 5])
from sklearn.naive_bayes import BernoulliNB
clf = BernoulliNB()
clf.fit(X, Y)
BernoulliNB(alpha=1.0, binarize=0.0, class_prior=None, fit_prior=True)
print(clf.predict(X[2:3]))

2.Gaussian Naive Bayes

scikit-learn中高斯贝叶斯应用于分类,特征满足高斯分布:

函数说明:https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.GaussianNB.html#sklearn.naive_bayes.GaussianNB

调用方法:

sklearn.naive_bayes.GaussianNB(priors=None, var_smoothing=1e-09)

例子:

3.Multinomial Naive Bayes

适用于数据满足multinomially的分布的朴素贝叶斯,经典应用于文本分类(其中的数据是通常表示为词的数量,虽然TF-IDF向量在实际项目中表现得更好),每一类y的分布为,n是特征的数目(在文本分类中,表示词汇量的长度),表示特征i属于类别y的概率

函数说明:https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.ComplementNB.html#sklearn.naive_bayes.ComplementNB

调用方法:

sklearn.naive_bayes.ComplementNB(alpha=1.0, fit_prior=True, class_prior=None, norm=False)

机器学习——python scikit-learn 贝叶斯相关推荐

  1. 机器学习:基于朴素贝叶斯对花瓣花萼的宽度和长度分类预测

    机器学习:基于朴素贝叶斯对花瓣花萼的宽度和长度分类预测 作者:i阿极 作者简介:Python领域新星作者.多项比赛获奖者:博主个人首页

  2. python贝叶斯优化算法_【干货】手把手教你Python实现自动贝叶斯调整超参数

    [导读]机器学习中,调参是一项繁琐但至关重要的任务,因为它很大程度上影响了算法的性能.手动调参十分耗时,网格和随机搜索不需要人力,但需要很长的运行时间.因此,诞生了许多自动调整超参数的方法.贝叶斯优化 ...

  3. Python实现朴素贝叶斯算法

    Python实现朴素贝叶斯算法 1.算法介绍 朴素贝叶斯假设特征相互独立,于是有下面的公式: x表示特征向量,c表示类别. 原理: 通过数据集计算出公式中右边分子中的各个概率.预测时根据公式计算出该样 ...

  4. 《机器学习实战》朴素贝叶斯

    机器学习实战的朴素贝叶斯一章中的源文件老是提示 IndexError: range object index out of range 看源码里怎么都不会溢出啊,除非minLen为0:所以看了下测试集 ...

  5. 机器学习实战之朴素贝叶斯

    机器学习实战之朴素贝叶斯 一.朴素贝叶斯算法概述 1.贝叶斯决策理论 2.条件概率 3.全概率公式 4.贝叶斯推断 5.朴素贝叶斯推断 二.实战 三.总结 1.朴素贝叶斯推断的一些优点: 2.朴素贝叶 ...

  6. 电影评论情感分析-IMDB数据集 | python 利用朴素贝叶斯、神经网络模型

    载入包 import torch # torch==1.7.1 import torch.nn as nn from torch.utils.data import Dataset from torc ...

  7. 机器学习面试题——朴素贝叶斯

    机器学习面试题--朴素贝叶斯 提示:这些知识点也是大厂笔试经常考的题目,我记得阿里和京东就考!!!想必在互联网大厂就会用这些知识解决实际问题 朴素贝叶斯介绍一下 朴素贝叶斯优缺点 贝叶斯公式 朴素贝叶 ...

  8. 在Python中使用贝叶斯网络的实例

    我们在之前的文章中(请见文末给出的参考资料[1])已经介绍了贝叶斯网络的基本原理,以及基于贝叶斯网络进行概率推断(Exact Inference)的消去法.本文将结合一个具体的例子来演示在Python ...

  9. python基于朴素贝叶斯模型的预测概率和标签信息可视化ROC曲线

    python基于朴素贝叶斯模型的预测概率和标签信息可视化ROC曲线 目录 python基于朴素贝叶斯模型的预测概率和标签信息可视化ROC曲线

  10. 机器学习实验:朴素贝叶斯算法

    机器学习实验:朴素贝叶斯算法 问题如下: 根据给出的算法naivebayes.py,实现: 1.将数据集文件naivebayes_data.csv中的数据替换成14天打球与天气数据: 2.预测样本{O ...

最新文章

  1. Thymeleaf 入门
  2. 如何获取python的当前工作目录-python如何获取当前工程根目录
  3. MacOS系统下的图形化工具
  4. RecyclerView的下拉刷新和加载更多 动画
  5. MySQL 高级 - 语法 - if判断
  6. python怎么运行_程序员大牛讲解,Python程序的执行原理
  7. python pickle模块:数据序列化和反序列化
  8. 文末赠书100本 | 当下最火爆的机器学习算法
  9. 读DS18B20序列号(c语言)
  10. mysql,php和js根据经纬度计算距离
  11. 为了云计算的安全需要自己控制加密密钥
  12. 【基于UML软件建模的选课系统】
  13. 电脑远程连接打印机打印
  14. Android Studio download fastutil-7.2.0.jar下载依赖包超时问题
  15. 【洛谷】入门2 分支结构
  16. mysql error unpacking_error: unpacking of archive failed on file错误的解决
  17. mysql htap 开源_基于开源应用快速构建HTAP系统
  18. 2. Bean Validation声明式校验方法的参数、返回值
  19. Antd 的 Upload 上传组件 uploading 状态踩坑记
  20. 管理后台服务通用化设计拙见

热门文章

  1. listlength函数头文件_酷町问答 - 我们编程时,通常要用到哪些头文件,包含什么函数...
  2. android按钮背景颜色函数,Android按钮背景颜色(Android button background color)
  3. Kafka 命令之查看topic生产消费数据查看组的消费信息
  4. STM32定时器中断实现
  5. 我们在设计类时应该注意的问题
  6. 高清中国风墨迹墨点ps笔刷
  7. 用友U8与NC的区别?
  8. 电气自动化需要学c语言,电气自动化专业需要学C语言吗?
  9. 绿盟WEB防火墙(waf)规则编写
  10. 【联邦学习】联邦学习