文本分类随笔
2016-04-07 14:56
239 查看
最近需要做些自然语言处理中的文本分类的相关任务,把Python捡起来了,之前用Python弄过爬虫,现在装Python的时候,组里面推荐了一个比较好的集成器PyCharm,能很方便的实现调试,
文本分类流程:分词-去除停用词-提取特征-分类
今天遇到一个很奇葩的问题: Python3.4 的编码问题是一个很奇葩的问题,我的文本编码格式为utf-8,读取文本的时候同样也是utf-8,为什么读出来还是会有乱码?
在请教老师之后,老师给出了一个方向:看看乱码是哪些字,是随记的还是有有规律的字出现乱码,进而确定问题的性质。
果然在观察乱码的出现的情况之后,发现了一个规律,就是乱码只是出现在固定2个类别之中,我便在这两个类别中的原文档逐一查看,发现原文档之中就乱码。原来在文档预处理的过程之中,对原文档的处理能力不足,导致出现遗漏的情况。
文本分词,得到特征单词集合库 --> 去停用词 --> 卡方检验,去前N个特征词,得到一个文件库的特征词集合,这一步过滤一些特征单词 --> 计算文本库中所有文本中单词的 tfidf 值,作为该文本的特征。
分类效果不好用的原因:
1. 分词系统不好用,因为微博或者论坛中的文本中往往会错别字,所以导致分词结果不甚理想
2. 文本太短,或者文本太长。文本来源导致文本长度相差太大
3. 训练数据不够
4. 参数没调好
5. 垃圾特征太多
6. 模型表达能力不足
7. 情感词表不全
8. 微博、论坛语料分布不一
文本分类流程:分词-去除停用词-提取特征-分类
今天遇到一个很奇葩的问题: Python3.4 的编码问题是一个很奇葩的问题,我的文本编码格式为utf-8,读取文本的时候同样也是utf-8,为什么读出来还是会有乱码?
在请教老师之后,老师给出了一个方向:看看乱码是哪些字,是随记的还是有有规律的字出现乱码,进而确定问题的性质。
果然在观察乱码的出现的情况之后,发现了一个规律,就是乱码只是出现在固定2个类别之中,我便在这两个类别中的原文档逐一查看,发现原文档之中就乱码。原来在文档预处理的过程之中,对原文档的处理能力不足,导致出现遗漏的情况。
文本分词,得到特征单词集合库 --> 去停用词 --> 卡方检验,去前N个特征词,得到一个文件库的特征词集合,这一步过滤一些特征单词 --> 计算文本库中所有文本中单词的 tfidf 值,作为该文本的特征。
分类效果不好用的原因:
1. 分词系统不好用,因为微博或者论坛中的文本中往往会错别字,所以导致分词结果不甚理想
2. 文本太短,或者文本太长。文本来源导致文本长度相差太大
3. 训练数据不够
4. 参数没调好
5. 垃圾特征太多
6. 模型表达能力不足
7. 情感词表不全
8. 微博、论坛语料分布不一
相关文章推荐
- Android SELinux Enforing 和 Permissive 模式切换
- 6.2.8 QMGR_ENTRY:一封邮件的同域发送
- 文件操作——图片保存到本地
- metadata简介
- GitHub学习笔记
- ORA-01102: cannot mount database in EXCLUSIVE mode
- 高仿探探/QQ巧遇手势滑动选项卡切换源码
- 【完全背包】HDU1963Investment【数据压缩】
- HDU 1181 变形课
- iOS 9.3 升级后无法真机测试 Could not find Developer Disk Image
- 如何把AndroidStudio项目向Eclipse项目迁移
- options controlling C dialect
- STM32启动后系统初始化SystemInit()
- 5_2 木块问题(UVa101)<vector的使用>
- 052(三十)
- ubunto开启root账户并开启SSH远程访问
- Spring事务Transaction配置的五种注入方式详解
- 一个程序员的时间管理
- 史上最全的maven pom.xml文件教程详解
- RabbitMq、ActiveMq、ZeroMq、kafka之间的比较,资料汇总