文本清洗+文本分类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文本清洗+文本分类相关的知识,希望对你有一定的参考价值。
参考技术A 这个系列会包含两部分与金融数据处理有关的文章,第一部分分析数据,第二部分从已经分析的数据中进行信息提取,具体涉及到的内容:现实世界中非结构化信息太多,例如网络上大量html、txt文本,想要利用这些数据,我们需要将这些非结构化信息转换为结构化信息,让计算机理解。
传统的文本方法的主要流程是人工设计一些特征,从原始文档中提取特征,然后指定分类器如LR、SVM,训练模型对文章进行分类,比较经典的特征提取方法如频次法、tf-idf、互信息方法、N-Gram。
深度学习火了之后,也有很多人开始使用一些经典的模型如CNN、LSTM这类方法来做特征的提取。
文本分类应该是自然语言处理中最普遍的一个应用,例如文章自动分类、邮件自动分类、垃圾邮件识别、用户情感分类等等,现在很多文本分类项目直接用了CNN,但这篇文章暂时只介绍LR用于文本分类,再加上一些规则方法,实现效果并不比CNN差。
获取文本语料通常有以下几种方式:
1。 标准开放公开测试数据集,比如国内的中文汉语有搜狗语料、人民日报语料;国际English的有stanford的语料数据集、semavel的数据集等等
除了一般分类问题的数据清洗都包含的缺失值处理、去重处理和噪声处理等步骤之外,还包括:
接下来我们需要将文本符号串转变为数字,更确切滴说是向量阵列:矩阵
经过上面几步处理后的数据我们得到了常规的广义特征数据结构,我们所要做的就是将这些特征喂入学习模型,然后适用于心得测试数据集,最后得到结果。
对于各种算法内部的原理和实现,本文并不打算深入探讨。在机器学习算法库趋于成熟的今天,无论是在单机还是分布式甚至GPU集群上,所有你需要做的就是调用和调参即可。因此,在条件允许的情况下,建议尽可能多的在各种数据集上测试不同算法,并且记录其在各项指标上的效果,从而清楚地了解各种算法的特点。
下表总结了各个常用分类算法在中文文本分类情景下的对比情况,可供参考。
*注:TextCNN和LSTM模型的训练一般需要通过GPU加速。
事实上分类算法并没有绝对的好坏之分,在合适的场合才用适当的算法才是关键。如果是在线分类场景,那么预测速度较快的算法应该成为首选;如果需要快速迭代,那么训练速度快且调参难度小的算法更合适;若不考虑时间开销,那么尝试对多个模型进行集成(Ensemble)是最常用的提升分类效果的方法。
以上是关于文本清洗+文本分类的主要内容,如果未能解决你的问题,请参考以下文章