[scikit-learn 机器学习] 7. 朴素贝叶斯

文章目录

    • 1. 朴素贝叶斯
    • 2. NB 与 逻辑回归对比

本文为 scikit-learn机器学习(第2版)学习笔记

相关知识参考:《统计学习方法》朴素贝叶斯法(Naive Bayes,NB)

1. 朴素贝叶斯

通过最大概率来预测类:

y=arg max⁡ckP(Y=ck)∏jP(X(j)=x(j)∣Y=ck)\color{red} y=\argmax\limits_{c_k} P(Y=c_k) \prod\limits_{j} P(X^{(j)}=x^{(j)}|Y=c_k)y=ckargmaxP(Y=ck)jP(X(j)=x(j)Y=ck)

模型假设:

  • 样本独立同分布;

  • 条件独立性 X(j)X^{(j)}X(j) 之间条件独立
    P(X=x∣Y=ck)=P(X(1)=x(1),...,X(n)=x(n)∣Y=ck)=∏j=1nP(X(j)=x(j)∣Y=ck)P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},...,X^{(n)}=x^{(n)}|Y=c_k)=\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)P(X=xY=ck)=P(X(1)=x(1),...,X(n)=x(n)Y=ck)=j=1nP(X(j)=x(j)Y=ck)

模型变体:

  • 多项式NB:适合于类别特征
  • 高斯NB:适合连续特征,假设每个特征对每个类都符合正态分布
  • 伯努利NB:适合所有特征为二元值的情况

朴素贝叶斯的假设很少为真,但是NB模型可以有效地判别线性可分类

  • 当训练数据缺乏时,性能通常优于判别模型
  • 模型简单,运行速度快,易于实现

2. NB 与 逻辑回归对比

%matplotlib inline
import pandas as pd
from sklearn.datasets import load_breast_cancer
from sklearn.linear_model import LogisticRegression
from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import train_test_split
import matplotlib.pyplot as pltX, y = load_breast_cancer(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, stratify=y, random_state=11)
# stratify=y, 对标签进行分层抽样,确保数据集之间的样本占比一致lr = LogisticRegression()
nb = GaussianNB()lr_scores = []
nb_scores = []train_sizes = range(10, len(X_train), 10)for train_size in train_sizes:X_slice, _, y_slice, _ = train_test_split(X_train, y_train, train_size=train_size, stratify=y_train, random_state=11)nb.fit(X_slice, y_slice)nb_scores.append(nb.score(X_test, y_test))lr.fit(X_slice, y_slice)lr_scores.append(lr.score(X_test, y_test))plt.plot(train_sizes, nb_scores, label='Naive Bayes')
plt.plot(train_sizes, lr_scores, linestyle='--', label='Logistic Regression')
plt.rcParams['font.sans-serif'] = 'SimHei' # 消除乱码
plt.title("NB vs LogRg 对比")
plt.xlabel("训练样本数")
plt.ylabel("测试集预测准确率")
plt.legend()

在这里插入图片描述

  • 在小型数据集上,NB模型性能优于逻辑回归
  • 当训练样本数增多以后,逻辑回归模型性能逐渐提升

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475395.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

塔菲克蓝牙适配器驱动_小身材,大功能,biaze毕亚兹USB蓝牙适配器开箱体验

在日常生活中,我们平时使用的台式电脑或是笔记本电脑,想要传输数据或者音频的时候,都是需要借助数据传输线或是U盘等传输设备,使用过程可想而知,有点麻烦。我们都知道,手机是有蓝牙传输功能的,只…

HDU1003——MAX SUM

简单DP&#xff0c;状态转移公式&#xff1a;num[j].data max{num[j].data, num[j].datanum[j-1].data}&#xff0c;也就是保证加上前一个数不失自己的值减小。 View Code #include <stdio.h>#define N 100010#define inf 9999999struct _num{int data;int pre;int nex…

[scikit-learn 机器学习] 8. 非线性分类和决策树

文章目录1. 特征选择标准2. 网页广告预测2.1 数量处理2.2 网格搜索模型参数3. 决策树优缺点本文为 scikit-learn机器学习&#xff08;第2版&#xff09;学习笔记相关知识&#xff1a;《统计学习方法》决策树&#xff08;Decision Tree&#xff0c;DT&#xff09; 1. 特征选择…

智慧新泰时空大数据与云平台_智慧警务大数据云平台开发情报研判系统解决方案...

智慧公安作为公安信息化开展到高级阶段的一种警务形态&#xff0c;“智慧公安”主要采用物联网、云计算、无线通讯、智能动态感知分析等新一代信息技术,将公安工作IT根底设备与物理设备、人际环境等高度交融,以提供智能化公安决策与效劳。智慧警务大数据云平台开发情报研判系统…

RGB颜色查询对照表#FFFFFF

大致是下图这样的&#xff0c;有需要的可以点击下面的连接复制使用&#xff1a; https://www.114la.com/other/rgb.htm

ikbc机械键盘打字出现重复_超小无线机械键盘,绝佳移动打字体验

NuType筹资信息产品名称NuType上线平台Kickstarter发起团队NUPHY发起地区中国香港目标金额80,000HKD筹集金额1,301,212HKD完全进度1,627%支持人数1,612最低价格697HKD上线时间2019/11/13-2019/12/28创次方/制表时间&#xff1a;2019年12月28日文/大智笔电键盘的打字体验远不及桌…

MySQL - 定时任务(每天凌晨1点、每小时、每分钟、某一时间点)

常用的一定要写在前面 # 从2019-10-11开始&#xff0c;每天的00:30:00执行定时任务 ON SCHEDULE EVERY 1 DAY STARTS 2019-10-11 00:30:00 # 每天的凌晨1点执行定时任务 ON SCHEDULE EVERY 1 DAY STARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL 1 HOUR)# 特…

极光无限渗透测试面经_认识工业以太网及线缆测试

工业以太网由于其固有的可靠性、高性能和互操作性&#xff0c;已经渗透到工厂车间&#xff0c;成为自动化和控制系统的首选通信协议。近年&#xff0c;工业以太网的市场份额已经超过了传统的现场总线协议&#xff0c;总线协议通常需要多个独立和专有的布线设施。为了满足工业环…

LeetCode 286. 墙与门(BFS)

文章目录1. 题目2. 解题2.1 BFS 超时解2.2 从门开始逆向BFS1. 题目 你被给定一个 m n 的二维网格&#xff0c;网格中有以下三种可能的初始化值&#xff1a; -1 表示墙或是障碍物0 表示一扇门INF 无限表示一个空的房间。然后&#xff0c;我们用 231 - 1 2147483647 代表 INF…

法斗几个月长鼻筋_路医生说丨脚底板早起一下地特别疼?得了足底筋膜炎,该怎么办?...

老李很奇怪&#xff0c;他压根就没有受过伤&#xff0c;怎么突然就脚底板疼了起来。就是这两天走的稍多了点&#xff0c;也不知道为什么脚底板就开始疼了&#xff0c;走路踩地就疼&#xff0c;尤其是早晨起床脚一踩地&#xff0c;那酸爽简直了&#xff0c;刚下地的前几步走起来…

Power BI连接MySQL 提示错误......未能加载文件或程序集......或它的某一个依赖项

Power BI连接MySQL数据库时报错&#xff1a; 提示错误未能加载文件或程序集“MySql.Data, Version5.1.4.0, Cultureneutral,........”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 解决办法&#xff1a;下载MySQL.Data.dll(5.1.4)程序集&#xff01; 解压…

LeetCode 346. 数据流中的移动平均值(队列)

文章目录1. 题目2. 解题1. 题目 给定一个整数数据流和一个窗口大小&#xff0c;根据该滑动窗口的大小&#xff0c;计算其所有整数的移动平均值。 示例: MovingAverage m new MovingAverage(3); m.next(1) 1 m.next(10) (1 10) / 2 m.next(3) (1 10 3) / 3 m.next(5) …

系统错误_Win10系统提示0x80004005错误的解决方法

win7系统虽然身手大家喜爱&#xff0c;但是最新的PC和笔记本电脑想要装win7很难了&#xff0c;所以现在越来越多人开始使用Win10系统&#xff0c;但是&#xff0c;最近有用户在使用win10系统的时候&#xff0c;发现因为电脑没有正确注册某些动态链接库文件&#xff0c;或者计算…

LeetCode 270. 最接近的二叉搜索树值

文章目录1. 题目2. 解题2.1 暴力查找2.2 二分查找1. 题目 给定一个不为空的二叉搜索树和一个目标值 target&#xff0c;请在该二叉搜索树中找到最接近目标值 target 的数值。 注意&#xff1a; 给定的目标值 target 是一个浮点数 题目保证在该二叉搜索树中只会存在一个最接近…

getset原子性 redis_一文看透 Redis 分布式锁进化史(解读 + 缺陷分析)

各个版本的Redis分布式锁V1.0V1.1 基于[GETSET]V2.0 基于[SETNX]V3.0V3.1分布式Redis锁&#xff1a;Redlock总结《Netty 实现原理与源码解析 —— 精品合集》《Spring 实现原理与源码解析 —— 精品合集》《MyBatis 实现原理与源码解析 —— 精品合集》《Spring MVC 实现原理与…

LeetCode 702. 搜索长度未知的有序数组(二分查找)

文章目录1. 题目2. 解题1. 题目 给定一个升序整数数组&#xff0c;写一个函数搜索 nums 中数字 target。 如果 target 存在&#xff0c;返回它的下标&#xff0c;否则返回 -1。注意&#xff0c;这个数组的大小是未知的。 你只可以通过 ArrayReader 接口访问这个数组&#xff0…

11个非常漂亮动物为主题的高品质图标集

今天发布一些令人振奋的动物为主题的图标集。这里收集了世界各地的设计师和艺术家的图标集杰作&#xff0c;如果你在做卡通设计网站&#xff0c;这个是你合适的选择 Birdie Adium Dock Icons Animals Tweeties: A Free Twitter Icon Set Birdies Zoom-eyed Creatures FREE Plus…

ae中心点重置工具_7步学习AE 入门篇 第2步 初学乍练

【1】做动画需要什么&#xff1f;如果动画的制作是因果关系&#xff0c;那么需要的成因具备了 结果自然就出现了。在AE中做动画一共需要3个工具&#xff0c;合成、关键帧和图层。在体验动画制作之前 我们对一些名词术语先来解释一下。合成&#xff1a;AE中用来承载视频的容器&a…

LeetCode 359. 日志速率限制器(哈希map)

文章目录1. 题目2. 解题1. 题目 请你设计一个日志系统&#xff0c;可以流式接收日志以及它的时间戳。 该日志会被打印出来&#xff0c;需要满足一个条件&#xff1a;当且仅当日志内容 在过去的 10 秒钟内没有被打印过。 给你一条日志的内容和它的时间戳&#xff08;粒度为秒…

linux 内存溢出排查_【开发者成长】JAVA 线上故障排查完整套路!

云栖号资讯&#xff1a;【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯&#xff0c;还在等什么&#xff0c;快来&#xff01;线上故障主要会包括 CPU、磁盘、内存以及网络问题&#xff0c;而大多数故障可能会包含不止一个层面的问题&#xff0c;所以进行…