2.自动文本分类
现在对于文本分类的定义和范围有所了解。当提到 “文本分类系统” 可以将文本文件划分到它们代表的类或类别时,也从该概念和数学上对文本分类进行了正式的定义。假设几个人通过浏览每个文本并进行分类完成文本分类任务,那么他们就是我们所讨论的文档分类系统的一部分。然而,一旦文档数量超过百万并且需要快速进行分类处理时,该方法则不能很好地扩展。为了使文档分类的过程更加高效和快速,需要思考文本分类任务的自动化,这给我们带来了自动文本分类。
为实现自动文本分类,可以充分利用一些机器学习的技术和概念。这里主要有两类与解决该问题相关的技术:
- 有监督机器学习。
- 无监督机器学习。
此外,还有一些其他的机器学习算法家族,例如强化学习和半监督学习。接下来,更加升入地了解有监督机器学习和无监督机器学习算法,从机器学习方面了解如何利用这些算法进行文本文件分类。
无监督学习指的是不需要提前标注训练数据样本来建立模型的具体的机器学习技术或算法。通常,有一个数据点集合,它可以是文本或数字类型的,这取决于要解决的具体问题。我们通过名为 “特征提取” 的过程从每个数据中提取特征,然后将来自于每个数据的特征集合输入算法。尽力从这些数据中提取有意义的模式,例如使用聚类或基于主题模型的文本摘要技术对相似的数据进行分组。这项技术在文本分类中非常有用,也称为文档聚类,即我们仅仅依靠文本的特征、相似度和属性,而不需要使用标注数据训练任何模型进行文档分组。后续将讲解并讨论无监督学习,包括主题建模、文档照耀、相似性分析和聚类。
有监督学习指的是训练预标注数据样本(也称为训练数据)的具体机器学习技术或算法。使用特征提取从数据中提取特征或属性,对于每个数据点,将拥有特征集合对应的类型/标签。算法从训练数据中学习每个分类的不同模式。学习完成后,将得到一个训练好的模型。一旦将未来测试数据样本的特征送入这个模型,模型就可以预测这些测试数据样本的分类。这样机器就学会了任何基于训练的数据样本预测位置的新数据样本的分类。
目前,有两种主要的有监督学习算法。
分类:当预测的输出是离散的类型时,有监督的学习的构成称为分类,因此,这种情况下输出变量是类别的变量。这样的例子有新闻分类或电影分类。
回归:当我们希望输出的结果是连续的数值变量时,有监督机器学习算法称为回归算法。这样的例子有房屋价格或人的体重。
目前主要关于分类的问题,尽力将文本文件划分为离散的类别或分类。
现在,已经准备好从数学上对自动或基于机器的文本分类过程进行定义。有一个文档集合,集合中文档带有相应的类别或分类标签。这个集合可以用 TS 表示,这是一个文档和标签对的集合,TS = {(d1,c1),(d2,c2),...,(dn,cn)},其中 d1,d2,...,dn 是文本列表,c1,c2,...,cn 是这些文本对应的类型。这里 cx € C = {c1,c2,...,cn},其中 cx 表示文档 x 对应的类型,C 表示所有可能离散分类的集合,集合中任何元素可能是文档的一个或多个类型。假设已经又有了训练数据集,可以定义一个有监督学习算法 F,当算法在训练数据 TS 集上训练之后,得到训练好的分类器 Y,可以表示为 F (TS) = Y。因此,有监督学习算法 F 使用输入集 (document, class) 对 TS,得到训练的分类器 Y,这就是我们的模型。上述过程就称之为训练过程。
这个模型输入一个新的、未知的文档 ND,可以预测文档的类型 CND,使得 CND € C,这一个过程称为预测过程,可以表示为 Y:TD → CND。这样看到有监督文本分类过程由两个主要的过程:
- 训练
- 预测。
一个需要记住的关键点就是有监督文本分类也需要一些手工标注的训练数据,即使我们谈的是自动文本分类,也需要一些手工的工作以启动我们的自动处理。当然,这一点的收益也是多方面的,可以使用较少的努力和人力监督来不停地进行新文档的预测与分类。
下面将讨论不同的学习方法或算法。这些散发不仅针对文本数据,它们是通用的机器学习算法,可以应用到各类经过预处理的特征提取的数据上。将涉及很多有监督机器学习算法,并使用它们解决真实的文本分类问题。这些算法通常在训练数据集上进行训练,在一个可选的验证数据集上进行杨振以避免模型在训练数据上过拟合。过拟合 基本的的意思是对于新的内部参数,使用性能度量(如验证集的准确率)或使用交叉验证来评估性能。交叉验证时,使用随机样本将训练数据分为训练集和验证集。这些构成了训练过程,其输出是完全训练好的模型,可以进行预测。在预测阶段,一般使用测试数据集中新的数据。在规范化处理和特征提取之后,将它们送入训练好的模型,然后通过评估预测性能来观察模型执行的好坏程度。
基于预测类型的数量和预测的本质,有多种文本分类。这些分类基于数据集、与数据集相关的类型或类别数量、数据点上可以预测的类型数量。
- 二元分类是当离散类型或类别的数量是 2 时,任何预测可以是二者之一。
- 多类分类也称为多元分类,指的是当一个问题中类型的数量超过 2 时,每个预测给出这些类型中的一个类或类别。当全部类型数量超过 2 时,这是二元类别问题的一个扩展。
- 多标签分类指的是对于任何数据,每个预测结果可以产生多个结果/预测类型。