机器学习算法整理(三)

朴素贝叶斯

利用朴素贝叶斯解决邮件分类(文本分析)问题(监督学习)

模型的输入是 P ( 邮 件 内 容 ∣ 正 常 ) P(邮件内容|正常) P() P ( 邮 件 内 容 ∣ 垃 圾 ) P(邮件内容|垃圾) P()(似然概率);先验概率 P ( 垃 圾 ) P(垃圾) P() P ( 正 常 ) P(正常) P()

任务内容是计算 P ( 垃 圾 o r 正 常 ∣ 邮 件 内 容 ) P(垃圾or正常|邮件内容) P(or)(后验概率)

联合概率分布 P ( X 1 , X 2 , ⋯   , X n ∣ Y ) = ∏ i = 1 N P ( X i ∣ Y ) P(X_1,X_2,\cdots,X_n|Y)=\prod_{i=1}^{N}P(X_i|Y) P(X1,X2,,XnY)=i=1NP(XiY)(其中 X i X_i Xi是相互独立的)

贝叶斯定理:
P ( A ∣ B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B)=\frac{P(B|A)P(A)}{P(B)} P(AB)=P(B)P(BA)P(A)

  • 处理似然概率为0的情况?
    Smoothing:
  1. Add-one smoothing (分子加一,分母加词库大小)
    p = x + 1 y + V p=\frac{x+1}{y+V} p=y+Vx+1 V:词库大小

文本的处理

文本的数据需要转换成向量形式(vector)

即计算 P ( 邮 件 内 容 ∣ 正 常 ) P(邮件内容|正常) P() P ( 邮 件 内 容 ∣ 垃 圾 ) P(邮件内容|垃圾) P()(似然概率)的两种方法

from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfVectorizer
  1. 词频计算
    图源来自GreedyAIAcademy
    在这里插入图片描述
  2. Tfidf
    t f i d f ( w ) = t f ( d , w ) ∗ i d f ( w ) tfidf(w) = tf(d,w)*idf(w) tfidf(w)=tf(d,w)idf(w) t f ( d , w ) tf(d,w) tf(d,w) w w w d d d字典中的词频;
    i d f ( w ) = l o g N N ( w ) idf(w)=log\frac{N}{N(w)} idf(w)=logN(w)N N N N是文档总数, N ( w ) N(w) N(w) w w w在几个文档中出现
    同样要进行平滑处理。

问题

  1. 当特征为实数型时,例如w2v的向量一般为float型,连乘导致结果出现underfloor,如何解决?
    A:1. 取 l o g ( P ) log(P) log(P) 2. kenerl函数
  2. 为什么叫朴素贝叶斯?
    A:因为各项条件独立
  3. 生成模型和判别模型
  4. 朴素贝叶斯的最大似然函数

exercise

 # 待完成
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值