实战04 似是而非,概率大小——朴素贝叶斯

朴素贝叶斯决策论的核心思想:选择高概率对应的类别。
贝叶斯概率:先验概率 p ( c ) p(c) p(c) 和后验概率 p ( c ∣ x ) p(c|x) p(cx)
贝叶斯准则: p ( c ∣ x ) = p ( x ∣ c ) p ( c ) p ( x ) p(c|x) = \frac{p(x|c) p(c)}{p(x)} p(cx)=p(x)p(xc)p(c)

一 本章的核心是:

利用条件概率来分类
如果 p ( c 1 ∣ x , y ) > p ( c 2 ∣ x , y ) p(c_1|x,y) > p(c_2|x,y) p(c1x,y)>p(c2x,y) 那么属于类别c1
如果 p ( c 1 ∣ x , y ) &lt; p ( c 2 ∣ x , y ) p(c_1|x,y) &lt; p(c_2|x,y) p(c1x,y)<p(c2x,y) 那么属于类别c2

二 使用python进行文本分类
1 准备数据:从文本中构建词向量

  • 词表(wordList)
    [
    [‘my’, ‘dog’, ‘has’, ‘flea’, ‘problems’, ‘help’, ‘please’],-------------(文档1)
    [‘maybe’, ‘not’, ‘take’, ‘him’, ‘to’, ‘dog’, ‘park’, ‘stupid’],-----------(文档2)
    … …------------------------------------------------------------------(文档 n)
    ]
  • 总词表(vocabList)
    [‘my’, ‘dog’, ‘has’, ‘flea’, ‘problems’, ‘help’, ‘please’,‘maybe’, ‘not’, ‘take’, ‘him’, ‘to’, ‘park’, ‘stupid’…] (无重复单词)
  • 词向量 [0,0,1,0,0,0,0,1,0,0,0,1,0,0,0,1,…](长度取决于vocabList)(setOfWords2Vec, bagOfWords2Vec)
    词矩阵 trainMat
  • 类别标签集 classVec = [0,1,0,1,0,1](#1表示侮辱性文字,0表示正常言论)
    - 以上词表中的文档与类别标签中的元素一一对应。
    - 文档中的每个单词与词向量中的元素一一对应。

三 改进分类器

  • “连乘为0”问题 =》 所有词的出现数初始为1,分母初始为2
  • “下溢出”问题 =》取对数 log、
  • 计算时忽略分母 p ( w ) p(w) p(w)
  • 停用词
  • 优化切分器

四 收集数据:导入RSS源
使用python 下载文本,可用RSS。
安装了anaconda的用户,可以直接在anaconda prompt 中使用以下命令行:

conda install feedparser
conda list

没有安装anaconda的用户,百度Universal Feed Parser找到相应的下载页面,使用
python setup.py install

使用feedparser:

import feedparser
ny=feedparser.parse(‘http://www.nasa.gov/rss/dyn/image_of_the_day.rss’)

ny[‘entries’]
len(ny[‘entries’])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值