实战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’])

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
内容介绍 项目结构: Controller层:使用Spring MVC来处理用户请求,负责将请求分发到相应的业务逻辑层,并将数据传递给视图层进行展示。Controller层通常包含控制器类,这些类通过注解如@Controller、@RequestMapping等标记,负责处理HTTP请求并返回响应。 Service层:Spring的核心部分,用于处理业务逻辑。Service层通过接口和实现类的方式,将业务逻辑与具体的实现细节分离。常见的注解有@Service和@Transactional,后者用于管理事务。 DAO层:使用MyBatis来实现数据持久化,DAO层与数据库直接交互,执行CRUD操作。MyBatis通过XML映射文件或注解的方式,将SQL语句与Java对象绑定,实现高效的数据访问。 Spring整合: Spring核心配置:包括Spring的IOC容器配置,管理Service和DAO层的Bean。配置文件通常包括applicationContext.xml或采用Java配置类。 事务管理:通过Spring的声明式事务管理,简化了事务的处理,确保数据一致性和完整性。 Spring MVC整合: 视图解析器:配置Spring MVC的视图解析器,将逻辑视图名解析为具体的JSP或其他类型的视图。 拦截器:通过配置Spring MVC的拦截器,处理请求的预处理和后处理,常用于权限验证、日志记录等功能。 MyBatis整合: 数据源配置:配置数据库连接池(如Druid或C3P0),确保应用可以高效地访问数据库。 SQL映射文件:使用MyBatis的XML文件或注解配置,将SQL语句与Java对象映射,支持复杂的查询、插入、更新和删除操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值