一、NLP中的文本分类

目录

1.0 文本分类的应用场景

1.1 文本分类流程

​编辑

1.2 判别式模型

1.3 生成式模型

1.4 评估

 1.5 参考文献


1.0 文本分类的应用场景

(1)情感分析:中性,正向评论,负向评论,黄色言论,暴力言论,反政言论等;

(2)主题、话题分类:法律、经济类话题等;

(3)垃圾邮件识别;

(4)意图识别:开关车门,开关车灯,闲聊等类别。

1.1 文本分类流程

(0)数据预处理:将本文中的停用词、空格、大小写等进行去除和归一。

(1)特征提取:将本文字符转换成数学模型能够识别的向量或者token,也就是第零章节中讲到的部分。

(2)维度处理:传统机器学习模型在处理分类任务前,通常会对输入的特征进行降维处理,以避免资源爆炸及训练时间过长,常用的维度处理方法有:主成分分析PCA(无监督、降维后的方差diff最大)、线性判别分析LDA(有监督)等。对于深度学习模型,由于大部分进行了词嵌入处理,因此一般不需要对维度进行特殊处理。

PCA的具体推导和实现:主成分分析法(PCA)-CSDN博客

LDA的具体推导和实现:线性判别分析LDA

其他降维方法:机器学习降维算法汇总!

(3)分类模型:处理好特征后,就可以利用机器学习或者深度学习模型对数据进行分类,常用的分类模型分为判别式模型和生成式模型,将在下面两节着重介绍。

1.2 判别式模型

人为设定好模型框架,通过数据的不断训练修正模型参数,最后输入数据,直接判断数据所属类别的概率。要确定一个羊是山羊还是绵羊,用判别式模型的方法是从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。

LR:Logistic Regression逻辑回归,最常用及最简单的一种分类模型。曾经写的LR的博客

KNN:k-最近邻,一种有监督的模型,对于一个未知类别的数据,去计算得到K个与之距离最近的有标签的数据,最后通过投票的方式得到未知数据的类别。

SVM:支持向量机,通过计算得到一个超平面将数据进行分类。曾经写的关于SVM的博客

决策树:一种基于树结构进行决策判断的模型,它通过多个条件判别过程将数据集分类,最终获取需要的结果。(根据计算熵增方式的不同,分为ID3决策树、C4.5决策树、CART决策树)

集成分类器:XGBoost, GBDT。

MLP:多层感知器 ,通常由一个输入层、多个隐藏层和一个输出层组成,能够通过学习给出输入数据的类别概率。曾经写的关于MLP的博客

RNN:循环神经网络,在MLP的隐藏层中加入上一次计算得到的结果同时作为当前隐藏层的输入,来保存时序性数据的信息。曾经写的RNN的博客

LSTM:类似电路设计,会有输入门、遗忘门、输出门,遗忘门会有选择的遗忘低概率的数据。

BERT、ERNIE

1.3 生成式模型

通过数据学习得到数据的联合概率分布,基于条件概率P(X|Y)和先验概率P(Y)来作为预测模型的预测基础,预测联合概率分布P(Y,X)。是根据山羊的特征首先学习出一个山羊的模型,然后根据绵羊的特征学习出一个绵羊的模型,然后从这只羊中提取特征,放到山羊模型中看概率是多少,再放到绵羊模型中看概率是多少,哪个大就是哪个。

贝叶斯网络:一种生成式模型,给定一些先验知识(例如,每个类别的先验概率以及每个特征在不同类别下的条件概率),我们可以计算出某个数据点属于每个类别的后验概率,然后选择具有最高后验概率的类别作为预测结果。

马尔科夫随机场:MRF

隐马尔科夫模型:HMM

不管是生成式模型还是判别式模型,它们最终的判断依据都是条件概率P(y|x),但是生成式模型先计算了联合概率P(x,y),再由贝叶斯公式计算得到条件概率。因此,生成式模型可以体现更多数据本身的分布信息,其普适性更广。由生成式模型可以得到判别式模型,但反过来不行。

1.4 评估

NLP分类任务中,常用的评价指标有准确率、精准率、召回率、F1值,宏平均、微平均等。这些评价指标常依赖于混淆矩阵的计算,混淆矩阵主要包括其中包括真阳性(TP),假阳性(FP),假阴性(FN)和真阴性(TN),一般来说,他们的计算方式如下:

TP:预测为正例的,且标签值也为正例的;

FP:预测为正例的,但标签值为负例的;

TN:预测为负例的,且标签值也为负例的;

FN:预测为负例的,但标签值为正例的;

(1)准确率:

(2)精准率:

(3)召回率:

(4)F1值:

(5)宏F1值:

求取每一类的F值之后求平均值,对于类别分布不均的数据集,数据量大的类别对总体影响大:

(6)微F1值

求取每一类的TP/FP/TN/FN,然后按照P、R的计算公式计算微平均P、微平均R,最后计算得到微平均F1。

(7)ROC曲线

根据学习器的预测结果对样例进行排序,按此顺序逐个把样本作为正例进行预测(例如第一个样本的值为分界线,小于的为负例,大于的为正例),每次计算出两个重要量的值(TPR真阳率、FPR假阳率),分别以它们为横、纵坐标作图。

TPR = 召回率

FPR = FP / (TP + FP)

(8)AUC:

ROC曲线下的面积,介于0.1和1之间,作为数值可以直观的评价分类器的好坏,值越大越好。

 1.5 参考文献

Text Classification Algorithms: A Survey

相关推荐

  1. NLP(13)--文本分类任务

    2024-03-10 01:56:01       8 阅读
  2. NLP嵌入层

    2024-03-10 01:56:01       39 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-10 01:56:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-10 01:56:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-10 01:56:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-10 01:56:01       18 阅读

热门阅读

  1. Unix Network Programming Episode 88

    2024-03-10 01:56:01       26 阅读
  2. elementUI Table组件点击取当前行索引

    2024-03-10 01:56:01       22 阅读
  3. android 快速实现 圆角矩形控件 及 圆形控件

    2024-03-10 01:56:01       20 阅读
  4. es BadRequestError问题情况

    2024-03-10 01:56:01       22 阅读
  5. 【动态规划入门】不同的子序列

    2024-03-10 01:56:01       23 阅读
  6. 97. 常用的HTTP服务压测工具

    2024-03-10 01:56:01       26 阅读