当前位置: 首页 > news >正文

做网站文字编辑好不好长春网站设计网站建设网站制作880元

做网站文字编辑好不好,长春网站设计网站建设网站制作880元,版面设计图大全 模板,网站如何留住用户文章目录 引言一、朴素贝叶斯定理概述1.从贝叶斯定理说起2.朴素贝叶斯的“朴素”之处3.朴素贝叶斯算法的应用 二、朴素贝叶斯算法的优缺点三、python代码实现案例1.导入库2.数据预处理3.模型训练4.模型评估5.完整代码 四、总结 引言 朴素贝叶斯算法,一个听起来充满…

文章目录

  • 引言
  • 一、朴素贝叶斯定理概述
    • 1.从贝叶斯定理说起
    • 2.朴素贝叶斯的“朴素”之处
    • 3.朴素贝叶斯算法的应用
  • 二、朴素贝叶斯算法的优缺点
  • 三、python代码实现案例
    • 1.导入库
    • 2.数据预处理
    • 3.模型训练
    • 4.模型评估
    • 5.完整代码
  • 四、总结

引言

朴素贝叶斯算法,一个听起来充满统计学气息的名字,却是机器学习领域最直观易懂的算法之一。它就像一位经验丰富的医生,凭借“朴素”的经验法则,快速高效地进行疾病诊断。今天,就让我们一起揭开朴素贝叶斯算法的神秘面纱,探索其背后的原理和应用。

一、朴素贝叶斯定理概述

1.从贝叶斯定理说起

要理解朴素贝叶斯,首先要了解它的理论基础——贝叶斯定理。贝叶斯定理描述了在已知某些条件下,某事件发生的概率如何更新。简单来说,就是利用新的信息,不断修正我们对事件的认知。

公式表示为:

P ( A ∣ B ) = P ( B ∣ A ) ∗ P ( A ) / P ( B ) P(A|B) = P(B|A) * P(A) / P(B) P(AB)=P(BA)P(A)/P(B)

其中:

  • P(A|B):在事件 B 发生的条件下,事件 A 发生的概率(后验概率)
  • P(B|A):在事件 A 发生的条件下,事件 B 发生的概率(似然度)
  • P(A):事件 A 发生的先验概率
  • P(B):事件 B 发生的边际概率

2.朴素贝叶斯的“朴素”之处

朴素贝叶斯算法基于一个非常朴素的假设:特征之间相互独立。也就是说,算法假设数据集中每个特征与其他特征都不相关。例如,在垃圾邮件分类中,算法会假设邮件中出现“免费”和“中奖”这两个词之间没有任何联系。

虽然这个假设在现实中往往不成立,但朴素贝叶斯算法却在许多实际应用中表现出色,尤其是在文本分类领域。

3.朴素贝叶斯算法的应用

朴素贝叶斯算法广泛应用于各种分类任务,例如:

  • 垃圾邮件过滤: 判断一封邮件是否是垃圾邮件。
  • 情感分析: 分析一段文本表达的情感是积极还是消极。
  • 新闻分类: 将新闻文章自动分类到不同的主题类别,例如体育、科技、娱乐等。
  • 医疗诊断: 根据患者的症状,判断其可能患有的疾病。

二、朴素贝叶斯算法的优缺点

优点:

  • 简单易懂,易于实现。
  • 训练速度快,对大规模数据集处理效率高。
  • 对于高维数据表现良好。
  • 对小规模数据也能取得不错的效果。

缺点:

  • 特征独立性假设在现实中往往不成立,会影响模型精度。
  • 对输入数据的表达形式比较敏感。

三、python代码实现案例

1.导入库

import pandas as pd
  • pandas:用于数据处理和分析。

2.数据预处理

data = pd.read_csv("iris.csv",header=None)
data = data.drop(0,axis=1)
x = data.iloc[:,:-1]
y = data.iloc[:,-1]from sklearn.model_selection import train_test_splitx_train,x_test,y_train,y_test = \train_test_split(x,y,test_size=0.2,random_state=42)
  • 读取数据:使用pandas库读取iris.csv文件。数据集在下方链接中。
  • 链接: iris.csv
  • x:保留所有行,删除最后一列。
  • y:只保留最后一列。
  • train_test_split:对数据集进行划分

3.模型训练

from sklearn.naive_bayes import MultinomialNB #导入朴素贝叶斯分类器
#实例化贝叶斯分类器
classifier  = MultinomialNB(alpha=1)
classifier.fit(x_train,y_train)
  • 导入模型MultinomialNB
  • 使用fit()函数训练模型

4.模型评估

train_predicted = classifier.predict(x_train)
print(metrics.classification_report(y_train, train_predicted))# 在完整测试集上评估模型
train_predicted1 =classifier.predict(x_test)
print(metrics.classification_report(y_test, train_predicted1))
  • 打印分类报告

5.完整代码

import pandas as pddata = pd.read_csv("iris.csv",header=None)
data = data.drop(0,axis=1)
x = data.iloc[:,:-1]
y = data.iloc[:,-1]from sklearn.model_selection import train_test_splitx_train,x_test,y_train,y_test = \train_test_split(x,y,test_size=0.2,random_state=42)from sklearn.naive_bayes import MultinomialNB #导入朴素贝叶斯分类器
#实例化贝叶斯分类器
classifier  = MultinomialNB(alpha=1)
classifier.fit(x_train,y_train)from sklearn import metrics# 在小训练集上评估模型
train_predicted = classifier.predict(x_train)
print(metrics.classification_report(y_train, train_predicted))
# cm_plot(y_train, train_predicted).show()# 在完整测试集上评估模型
train_predicted1 =classifier.predict(x_test)
print(metrics.classification_report(y_test, train_predicted1))
# cm_plot(y_test, train_predicted1).show()

四、总结

朴素贝叶斯算法以其简单高效的特点,成为机器学习入门学习的经典算法。尽管其“朴素”的假设存在一定局限性,但在许多实际应用中依然表现出色。理解朴素贝叶斯算法,不仅能够帮助我们解决实际问题,更能为我们打开机器学习世界的大门,探索更广阔的算法天地。

希望这篇博客能够帮助你更好地理解朴素贝叶斯算法!

http://www.dtcms.com/a/596085.html

相关文章:

  • 第一次做网站选多大空间常用的做网站的工具都有哪些
  • 怎么做网站的关键词库设计师培训班怎么样
  • 用git 做网站佛山网站建设专业
  • 月嫂网站模板辽宁建设工程信息网为什么打不开
  • 免费网站模板psd徐州网络优化招聘网
  • 湖南建工交通建设有限公司网站网站建设整个流程图
  • 网站建设的过程有哪些网站建设公司注册
  • 网站建设 吉林网站建设(信奈辉煌电商)
  • 网站职业技能培训学校网页设计课程总结500字
  • 自己做网站给自己淘宝引流七台河新闻直播
  • hefei 网站制作电商网站会员体制怎么做
  • 用vs2010做网站论文河北省建设机械协会是正规网站吗
  • 网站实名认证流程通州广州网站建设
  • 郑州网站推广公司哪家好智慧团建系统官方网站登录
  • 网站软件下载安装免费版有没有什么需要推广的平台
  • 校园网站建设的感受论文网站建设完成后期维护
  • 宁德做网站的公司淘宝运营培训机构
  • 怎么自己改自己做的网站的图片柳州网站虚拟主机公司
  • 自己搭建服务器网站开发软件wordpress用户管理 插件
  • 随州网站建设公司望城经开区建设开发公司门户网站
  • 有没有什么 网站能够做试卷济南网页制作设计营销
  • 国内可以做的国外兼职网站wordpress程序慢
  • 网站优化 济南课程设计报告 网站开发
  • 有什么网站可以免费建站免费建网站南宁互联网推广
  • 电子商务网站建设(论文洛阳霞光建设网站
  • 做字幕模板下载网站图片生成器软件
  • 唐山网站排名推广整站优化工具
  • 中国建设银行个人网站银行南宁seo主管
  • 网站建设店淘宝网站不能风格
  • 企业网站做多大甘德县wap网站建设公司