一:文本分类的处理大致分为文本预处理、文本特征提取、分类模型构建等。和英文文本处理分类相比,

中文文本的预处理是关键技术。

1:文本预处理(解决特征空间高维性、语义相关性和特征分布稀疏)

1.1中文分词技术

为什么分词处理?因为研究表明特征粒度为词粒度远远好于字粒度,其大部分分类算法不考虑词序信息,基于字粒度的损失了过多的n-gram信息。

中文分词主要分为两类方法:基于词典的中文分词和基于统计的中文分词。

1.1.1:基于词典的中文分词:核心是首先建立统一的词典表,当需要对一个句子进行分词时,首先将句子

拆分成多个部分,将每一个部分与字典一一对应,如果该词语在词典中,分词成功,否则继续拆分匹配直到成功

所以:字典,切分规则和匹配顺序是核心。

1.12:基于统计的中文分词方法:

统计学认为分词是一个概率最大化问题,即拆分句子,基于语料库,统计相邻的字组成的词语出现的概率,相邻的词出现的

次数多,就出现的概率大,按照概率值进行分词,所以一个完整的语料库很重要。

1.2:去除停用词

建立停用词字典,目前停用词字典有2000个左右,停用词主要包括一些副词、形容词及其一些连接词。通过维护一个停用词表,实际上是一个特征提取的过程,本质 上是特征选择的一部分。

1.3:文本特征提取

1.3.1:词袋模型:

思想:建立一个词典库,该词典库包含训练语料库的所有词语,每个词语对应一个唯一识别的编号,利用one-hot文本表示。

文档的词向量维度与单词向量的维度相同,每个位置的值是对应位置词语在文档中出现的次数,即词袋模型(BOW))

问题:1:容易引起维度灾难问题,语料库太大,字典的大小为每个词的维度,高维度导致计算困难,每个文档包含的词语数少于词典的总词语数,导致文档稀疏。2:仅仅考虑词语出现的次数,没有考虑句子词语之间的顺序信息,即语义信息未考虑

1.3.2:TF-IDF文本特征提取

前面的博客整理过,这里再提一下吧,加强记忆:

利用TF和IDF两个参数来表示词语在文本中的重要程度

TF是词频:指的是一个词语在一个文档中出现的频率,一般情况下,每一个文档中出现的词语的次数越多词语的重要性更大,例如BOW模型一样用出现次数来表示特征值,即出现文档中的词语次数越多,其权重就越大,问题就是在长文档中 的词语次数普遍比短文档中的次数多,导致特征值偏向差异情况。

TF体现的是词语在文档内部文档内部文档内部的重要性(重要的话说三遍)

IDF是体现词语在文档间文档间文档间的重要性(还是三遍),即如果某个词语出现在极少数的文档中,说明该词语对于文档的区别性强,对应的特征值高,IDF值高,IDFi=log(|D|/Ni),D指的是文档总数,Ni指的是出现词语i的文档个数,很明显Ni越小,IDF的值越大。

最终TF-IDF的特征值的表达式为:TF-IDF(i,j)=TFij*IDFi

1.3.3:基于词向量的特征提取模型:

想基于大量的文本语料库,通过类似神经网络模型训练,将每个词语映射成一个定维度的向量,送个维度在几十到化百维之间,每个向量就代表着这个词语,词语的语义和语法相似性和通过向量之间的相似度来判断。

常用的word2vec主要是CBOW和skip-gram两种模型,由于这两个模型实际上就是一个三层的深度神经网络,其实NNLM的升级,去掉了隐藏层,由输入层、投影层、输出层三层构成,简化了模型和提升了模型的训练速度,其在时间效率上、语法语义表达上效果明显都变好。word2vec通过训练大量的语料最终用定维度的向量来表示每个词语,词语之间语义和语法相似度都可以通过向量的相似度来表示。

1.3.4:特征提取:

文本表示的特征提取对应特征项的选择和特征权重计算两部分,特征选择的思想是根据某个评价指标独立的对原始特征项(词项)进行评分排序,从而选择得分最高的一些特征项,过滤掉其余的特征项,常用的评价有文档频率、互信息、信息增益、X……2统计剂量的那个。特征权重主要是经典的TF-IDF方法及其扩展方法,主要思路是一个词的重要度与在类别内的词频成正比,与所有类别出现的次数成反比。

2:分类模型

2.1:NB模型

这里NB模型前面的博客详细说过,这里略过;

2.2:随机森林模型(RF)

随机森林是一种集成学习方法,这里主要说一下RF的构造过程:

(1)假设数据样本集共有N个数据,数据的特征维度为M,采用有放回的随机抽取n个数据样本,并随机选择m个特征,形成单棵树的训练数据集和特征集。

(2)根据(1)中的数据集和m个特征,基于信息增益或者互信息等规则建立决策树,每棵树尽量生成且不做剪枝操作。

(3)根据设置的决策树个数K,循环重复步骤(1)和(2),直至生成K棵决策树。

RF通过随机选择样本和特征来构建多棵决策树,所以决策树的构建是关键步骤,构造决策树的根节点的分裂标准或者度量标准来作为判断属性分类样例的能力的大小,然后根据根节点的每个可能的属性值进行递归操作,直至最后回归树完成。

ID3决策树算法选择根节点的依据是信息增益;C4.5是根据信息增益率;还有的是根据基尼指数。

总结一句话就是:根据节点选择指标选择最优属性作为分类属性后递归的扩展决策树的分支构造一颗完整决策树

2.3:SVM分类模型

思想:任何一个分类问题可以认为求解数据集划分超平面问题,即使该问题非线性,也可以利用核函数将其转化为线性划分的问题,SVM算法最终优化目标就是极大化最大分类间隔;

大部分SVM都是基于拉格朗日变换和二元优化得到参数的解,从而得到SVM分类模型。

但是现实分类问题一般都是非线性可分的,对于这类问题我们需要利用SVM中核函数来解决。核函数就是将低维度数据空间映射到高维度数据空间,这样之后就使得其线性可分了,高维度的向量内积运算通过核函数来直接得到,避免在高维度数据空间的计算带来时间成本的增高。

SVM近些年在研究其应用以及多分类问题,比如SVM模型研究信用评估模型,基于SVM模型提高图形检索关联度,新型的多分类SVM模型Twin-KSVC,进一步提高多类别SVM模型的泛化能力。

2.4:KNN分类模型

思想:类别相似的样本距离也较为靠近,从训练集中找到和特定样本距离最近的k个样本,统计k个样本的类别,通过投票得到特定样本的类别。具体流程太简单了我就不在说了;KNN就一个模型参数K,k的大小影响文本分类的结果,一般情况较大的k值能够减小噪声的影响,一个较好的K值可以通过交叉验证来获得防止过拟合,研究结合决策树思想将每个训练样本和测试样本结合起来,提出一种搞扩展的KNN算法,还有基于参数自动参数调节来解决错误数据问题的高容错率KNN算法。

2.5:神经网络分类模型

这里主要有BP神经网络算法,输入层为原始的文本特征项,隐藏层为原始特征的映射,输出层为类别层与层之间通过权值相连,然后利用梯度下降法得到权值的更新法则。

CNN也可以用于文本分类,需要先将原始的文本进行预处理,得到其词向量作为CNN的输入。

NLP之文本分类方法之基础知识相关推荐

  1. 零基础入门NLP - 新闻文本分类

    本文是对阿里云新人竞赛中的"零基础入门NLP - 新闻文本分类"解体过程进行的记录,目前仅使用了textCNN模型进行预测,后续还会考虑使用LSTM进行对比. 赛题数据 赛题以新闻 ...

  2. Task01——零基础入门NLP - 新闻文本分类之赛题理解

    本篇目标 首先本篇文章会对赛题进行介绍以及个人对赛题的理解,带大家接触NLP的预处理.模型构建和模型训练等知识点. 赛题介绍 赛题名称:零基础入门NLP - 新闻文本分类 赛题任务:赛题以自然语言处理 ...

  3. 零基础入门NLP - 新闻文本分类,正式赛第一名方案分享

    零基础入门NLP - 新闻文本分类,正式赛第一名方案分享:https://mp.weixin.qq.com/s/7WpZUqdlItBToLYuRLm44g

  4. 【初学者入门】零基础入门NLP - 新闻文本分类

    序言 从今天开始入门学习NLP,虽然有点晚,但是我觉得任何时候都值得开始,尤其是面对你去感兴趣的事情.今天的任务是 [零基础入门NLP - 新闻文本分类],这是天池大赛中的入门级算法比赛,入口链接请自 ...

  5. 天池零基础入门NLP - 新闻文本分类Top1方案的bert4torch复现

    天池有些长期比赛可以练习玩玩(还可以继续提交),于是试了下简单的新闻文本分类任务,Top1的解决方案思路是"预训练+fgm+交叉验证模型融合",代码是基于bert4keras的,本 ...

  6. 基于朴素贝叶斯和LSTM的两种新闻文本分类方法

    新闻文本分类 文章目录 新闻文本分类 一.项目背景 二.数据处理与分析 三.基于机器学习的文本分类--朴素贝叶斯 1. 模型介绍 2. 代码结构 3. 结果分析 四.基于深度学习的文本分类--LSTM ...

  7. 五年12篇顶会论文综述!一文读懂深度学习文本分类方法

    作者 | 何从庆 来源 | AI算法之心(ID:AIHeartForYou) 最近有很多小伙伴想了解深度学习在文本分类的发展,因此,笔者整理最近几年比较经典的深度文本分类方法,希望帮助小伙伴们了解深度 ...

  8. 【多标签文本分类】MSML-BERT模型的层级多标签文本分类方法研究

    ·阅读摘要:   本文在BERT模型上,提出了利用多任务架构来解决层级多标签文本分类问题. ·参考文献:   [1] MSML-BERT模型的层级多标签文本分类方法研究 [0] 摘要   在摘要中,作 ...

  9. 【NLP】 文本分类 主题预测 综述

    文本分类解决方法综述 一.传统文本分类方法 文本分类问题算是自然语言处理领域中一个非常经典的问题了,相关研究最早可以追溯到上世纪50年代,当时是通过专家规则(Pattern)进行分类,甚至在80年代初 ...

  10. 一文综述经典的深度文本分类方法

    作者 |  何从庆 转载自AI算法之心(ID:AIHeartForYou) 笔者整理最近几年比较经典的深度文本分类方法,希望帮助小伙伴们了解深度学习在文本分类中的应用. Convolutional N ...

最新文章

  1. 畅通工程 HDU - 1233 
  2. linux 查端口 三种,Linux查看端口常用的三种用例
  3. 砥砺前行,不忘初心,我的运维学习之路.
  4. Google 各语言网站合集
  5. javaSE各阶段练习题--流程控制
  6. SAP UI5 应用开发教程之二十五 - 使用代理服务器解决 SAP UI5 应用访问远端 OData 服务的跨域问题
  7. 手把手教你写一个spring IOC容器
  8. K BEST(最大化平均值)
  9. 风力发电机液压偏航控制系统设计
  10. 类似print shopmail可变数据生成,排版、拼版实现
  11. 使用javassist
  12. 计算机专业课科目,考研计算机专业课科目有哪些
  13. java电驴_转:java写的电驴下载完成关机小程序
  14. 谷歌动态验证码二次验证ssh
  15. Python到底是干啥的?
  16. 如何判断一个整型数字是不是对称数字
  17. vue element-ui 中走马灯自适应图片高度
  18. 悲观锁的实现方式java_并发编程--锁--悲观锁和乐观锁
  19. 赠书福利丨Kubernetes权威指南第4版
  20. Boot strap

热门文章

  1. 坎德拉、流明、勒克斯之间的关系
  2. 下一清分日期是几年前_我驾驶证有违章我是在清分之前处理的清分日期过后才交的罚款那我那个分还能不能清零那个分还能不能清零?-免费法律咨询-华律网...
  3. 计算机组装考核记录表,电脑组装与维护考核方案.doc
  4. java版我的世界快速建造_1分钟教你建造《我的世界》最精致的窑洞!从此告别穴居人生活?...
  5. 【BZOJ2794】[Poi2012]Cloakroom 离线+背包
  6. 张家界3天旅游攻略(带你的想象给我游玩一遍)
  7. 股市股票基金市场研报合集(2022年,共195份)
  8. 最美春三月,又到一年迎新时——烟台北大青鸟喜迎2019级新生入学报到
  9. 纯css的大于号样式
  10. Ubuntu18.04 使用gnome-tweak美化系统主题