掌桥专利:专业的专利平台
掌桥专利
首页

文本分类方法、文本分类装置、计算机设备及存储介质

文献发布时间:2024-01-17 01:27:33


文本分类方法、文本分类装置、计算机设备及存储介质

技术领域

本申请涉及金融科技技术领域,尤其涉及一种文本分类方法、文本分类装置、计算机设备及存储介质。

背景技术

随着互联网的高速发展和大数据时代的到来,文本分类成为当前自然语言处理领域的一个热点研究问题。例如,在金融科技领域,各电商平台会收集用户的商品评价文本等数据,并根据收集的数据构建商品推荐模型,以向用户推荐商品。目前,长尾分布是指实际应用中获取的数据标注类别存在分布不均衡的现象。例如,当获取商品的评价文本时,正面的评价文本往往多于负面的评价文本,从而产生正负类别标签对应的文本分布不均衡的问题,进而影响对评价文本分类的准确性。相关技术的文本分类方法在训练时通常是通过对标签数量较少的类别数据进行数据增强处理,以得到分布均衡的训练样本。例如,相关技术通常采用对标签数量较少的类别的文本内容进行内容添加、内容删减、内容改写等方法,以生成该类别的新样本文本。然而,该方法虽然能够提升样本分布的均衡性,但容易生成内容含义相反或语句不通顺的新样本文本,从而无法控制新样本文本的有效性和合理性,即对提高文本分类的准确性并无作用,并且无效的样本文本的分类对商品推荐模型的构建也会产生影响。因此,如何提供一种文本分类方法,能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性,成为了亟待解决的技术问题。

发明内容

本申请实施例的主要目的在于提出了一种文本分类方法、文本分类装置、计算机设备及存储介质,能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性。

为实现上述目的,本申请实施例的第一方面提出了一种文本分类方法,所述方法包括:

获取初始文本数据,所述初始文本数据包括初始标注数据和未标注文本,所述初始标注数据包括标注有第一标注类别的第一标注文本和标注有第二标注类别的第二标注文本,其中,所述第一标注文本的文本数量小于所述第二标注文本的文本数量;

根据预设提示模板对所述未标注文本进行文本改写,得到改写文本,并将所述改写文本输入至预设的掩码预测模型进行掩码类别预测,得到所述改写文本的掩码类别;

若所述第一标注类别和所述掩码类别相同,将所述未标注文本确定为初始扩充文本;

获取所述第一标注文本的第一聚类中心数据和所述第二标注文本的第二聚类中心数据,根据所述初始扩充文本和所述第一聚类中心数据确定第一类别距离,根据所述初始扩充文本和所述第二聚类中心数据确定第二类别距离;

根据所述第一类别距离和所述第二类别距离对所述初始扩充文本进行文本筛选,确定目标扩充文本;

对所述目标扩充文本和所述第一标注文本进行合并,得到第一数据集,根据所述第二标注文本得到第二数据集,所述第一数据集的文本数量和所述第二数据集的文本数量相同;

根据所述第一数据集和所述第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型;

根据所述文本分类模型对预先获取到的目标文本进行文本分类。

在一些实施例中,所述根据所述第一类别距离和所述第二类别距离对所述初始扩充文本进行文本筛选,确定目标扩充文本,包括:

对所述第一类别距离和所述第二类别距离进行数值比较,得到距离比较结果;

若所述距离比较结果表示所述第二类别距离大于所述第一类别距离,将所述初始扩充文本确定为所述目标扩充文本。

在一些实施例中,所述根据所述第一数据集和所述第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型,包括:

根据所述第一数据集和所述第二数据集确定训练数据;

根据所述训练数据对所述初始分类模型进行参数调整,得到所述文本分类模型。

在一些实施例中,所述根据所述第一数据集和所述第二数据集确定训练数据,包括:

根据所述目标扩充文本和所述第一聚类中心数据确定第三类别距离;

根据所述第一标注文本和所述第一聚类中心数据确定第四类别距离;

根据所述第三类别距离和所述第四类别距离对所述第一数据集的文本进行文本排序,得到扩充文本序列;

对所述扩充文本序列进行文本采样,得到第一文本子序列,所述第一文本子序列包括文本类别为所述第一标注类别的第一训练文本;

根据所述第一文本子序列的文本数量对所述第二数据集进行随机采样,确定第二文本子序列,所述第二文本子序列包括文本类别为所述第二标注类别的第二训练文本;

对所述第一训练文本和所述第二训练文本进行合并,得到训练数据。

在一些实施例中,所述根据所述训练数据对所述初始分类模型进行参数调整,得到所述文本分类模型,包括:

根据所述训练数据对所述初始分类模型进行参数调整,得到候选分类模型;

根据所述第一文本子序列对所述扩充文本序列进行文本采样,确定第三文本子序列,其中,所述第三文本子序列包括文本类别为所述第一标注类别的第三训练文本,所述第三训练文本和所述第一聚类中心数据的类别距离大于或等于所述第一训练文本和所述第一聚类中心数据的类别距离;

根据所述第三文本子序列的文本数量对所述第二数据集进行随机采样,确定第四文本子序列,所述第四文本子序列包括文本类别为所述第二标注类别的第四训练文本;

根据所述第三训练文本和所述第四训练文本进行合并,并根据合并的结果更新所述训练数据;

根据更新后的所述训练数据对所述候选分类模型进行参数调整,得到所述文本分类模型。

在一些实施例中,所述根据所述第一文本子序列对所述扩充文本序列进行文本采样,确定第三文本子序列,包括:

获取所述第一文本子序列的采样截止数据;

根据所述采样截止数据对所述扩充文本序列进行文本采样,确定所述第三文本子序列。

在一些实施例中,所述获取所述第一标注文本的第一聚类中心数据和所述第二标注文本的第二聚类中心数据,包括:

获取初始聚类中心数据和所述初始标注数据的目标聚类数据,所述初始聚类中心数据包括所述第一标注文本的第一中心数据和所述第二标注文本的第二中心数据;

根据所述第一中心数据和所述初始标注数据进行距离计算,得到第一聚类距离数据;

根据所述第二中心数据和所述初始标注数据进行距离计算,得到第二聚类距离数据;

根据所述第一聚类距离数据和所述第二聚类距离数据进行数值比较,以根据数值比较的结果确定所述初始标注数据的预测聚类数据;

根据所述预测聚类数据和所述目标聚类数据确定类别损失数据,并根据所述类别损失数据对所述初始聚类中心数据进行数据调整,得到所述第一聚类中心数据和所述第二聚类中心数据。

为实现上述目的,本申请实施例的第二方面提出了一种文本分类装置,所述装置包括:

文本数据获取模块,用于获取初始文本数据,所述初始文本数据包括初始标注数据和未标注文本,所述初始标注数据包括标注有第一标注类别的第一标注文本和标注有第二标注类别的第二标注文本,其中,所述第一标注文本的文本数量小于所述第二标注文本的文本数量;

掩码类别预测模块,用于根据预设提示模板对所述未标注文本进行文本改写,得到改写文本,并将所述改写文本输入至预设的掩码预测模型进行掩码类别预测,得到所述改写文本的掩码类别;

类别判断模块,用于若所述第一标注类别和所述掩码类别相同,将所述未标注文本确定为初始扩充文本;

聚类距离计算模块,用于获取所述第一标注文本的第一聚类中心数据和所述第二标注文本的第二聚类中心数据,根据所述初始扩充文本和所述第一聚类中心数据确定第一类别距离,根据所述初始扩充文本和所述第二聚类中心数据确定第二类别距离;

文本筛选模块,用于根据所述第一类别距离和所述第二类别距离对所述初始扩充文本进行文本筛选,确定目标扩充文本;

数据集构建模块,用于对所述目标扩充文本和所述第一标注文本进行合并,得到第一数据集,根据所述第二标注文本得到第二数据集,所述第一数据集的文本数量和所述第二数据集的文本数量相同;

模型构建模块,用于根据所述第一数据集和所述第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型;

文本分类模块,用于根据所述文本分类模型对预先获取到的目标文本进行文本分类。

为实现上述目的,本申请实施例的第三方面提出了一种计算机设备,包括:

至少一个存储器;

至少一个处理器;

至少一个计算机程序;

所述至少一个计算机程序被存储在所述至少一个存储器中,所述至少一个处理器执行所述至少一个计算机程序以实现上述第一方面所述的文本分类方法。

为实现上述目的,本申请实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于使计算机执行上述第一方面所述的文本分类方法。

本申请实施例提出的文本分类方法、文本分类装置、计算机设备及存储介质,首先,获取初始文本数据,该初始标注数据包括标注有第一标注类别的第一标注文本和标注有第二标注类别的第二标注文本,且第一标注文本的文本数量小于第二标注文本的文本数量。然后,根据预设提示模板对未标注文本进行文本改写,得到改写文本,并将改写文本输入至预设的掩码预测模型进行掩码类别预测,得到改写文本的掩码类别。若第一标注类别和掩码类别相同,将未标注文本确定为初始扩充文本。为了进一步确定扩充文本符合需要扩充的文本类别,获取第一标注文本的第一聚类中心数据和第二标注文本的第二聚类中心数据,并根据初始扩充文本和第一聚类中心数据确定第一类别距离,根据初始扩充文本和第二聚类中心数据确定第二类别距离。之后,根据第一类别距离和第二类别距离对初始扩充文本进行文本筛选,确定目标扩充文本。在模型训练前,对目标扩充文本和第一标注文本进行合并,得到第一数据集,根据第二标注文本得到第二数据集,该第一数据集的文本数量和第二数据集的文本数量相同。根据第一数据集和第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型。最后,根据文本分类模型对获取到的目标文本进行文本分类。本申请实施例能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性。

附图说明

图1是本申请实施例提供的文本分类方法的流程图;

图2是图1中的步骤S140的流程图;

图3是图1中的步骤S150的流程图;

图4是图1中的步骤S170的流程图;

图5是图4中的步骤S410的流程图;

图6是图4中的步骤S420的流程图;

图7是图6中的步骤S620的流程图;

图8是本申请实施例提供的文本分类装置的结构示意图;

图9是本申请实施例提供的计算机设备的硬件结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

首先,对本申请中涉及的若干名词进行解析:

人工智能(Artificial Intelligence,AI):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。

提示学习:是指在不显著改变预训练语言模型结构和参数的情况下,通过向输入的文本增加“提示信息”,实现将下游任务改为文本生成任务的方法。

掩码(MASK):指的是用选定的图像、图形或物体,对处理的图像(全部或局部)进行遮挡,来控制图像处理的区域或处理过程,即用于覆盖的特定图像或物体称为掩模或模板。

token:是一种计算机术语,在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思,代表执行某些操作的权利的对象。

BERT(Bidirectional Encoder Representation from Transformers):用于进一步增加词向量模型泛化能力,充分描述字符级、词级、句子级甚至句间关系特征,是基于Transformer构建而成。BERT中有三种Embedding,即Token Embedding,SegmentEmbedding,Position Embedding;其中Token Embeddings是词向量,第一个单词是CLS标志,可以用于之后的分类任务。

随着互联网的高速发展和大数据时代的到来,文本分类成为当前自然语言处理领域的一个热点研究问题。例如,在金融科技领域,各电商平台会收集用户的商品评价文本等数据,并根据收集的数据构建商品推荐模型,以向用户推荐商品。目前,长尾分布是指实际应用中获取的数据标注类别存在分布不均衡的现象。例如,当获取商品的评价文本时,正面的评价文本往往多于负面的评价文本,从而产生正负类别标签对应的文本分布不均衡的问题,进而影响对评价文本分类的准确性。相关技术的文本分类方法在训练时通常是通过对标签数量较少的类别数据进行数据增强处理,以得到分布均衡的训练样本。例如,相关技术通常采用对标签数量较少的类别的文本内容进行内容添加、内容删减、内容改写等方法,以生成该类别的新样本文本。然而,该方法虽然能够提升样本分布的均衡性,但容易生成内容含义相反或语句不通顺的新样本文本,从而无法控制新样本文本的有效性和合理性,进而对提高文本分类的准确性并无作用。因此,如何提供一种文本分类方法,能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性,成为了亟待解决的技术问题。

基于此,本申请实施例提供了一种文本分类方法、文本分类装置、计算机设备及存储介质,能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性。

本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。

人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

本申请实施例提供的文本分类方法,涉及人工智能技术领域。本申请实施例提供的文本分类方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现文本分类方法的应用等,但并不局限于以上形式。

本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络个人计算机(Personal Computer,PC)、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

请参阅图1,图1是本申请实施例提供的文本分类方法的一个可选的流程图。在本申请的一些实施例中,图1中的方法具体可以包括但不限于步骤S110至步骤S180,下面结合图1对这八个步骤进行详细介绍。

步骤S110,获取初始文本数据,初始文本数据包括初始标注数据和未标注文本,初始标注数据包括标注有第一标注类别的第一标注文本和标注有第二标注类别的第二标注文本,其中,第一标注文本的文本数量小于第二标注文本的文本数量;

步骤S120,根据预设提示模板对未标注文本进行文本改写,得到改写文本,并将改写文本输入至预设的掩码预测模型进行掩码类别预测,得到改写文本的掩码类别;

步骤S130,若第一标注类别和掩码类别相同,将未标注文本确定为初始扩充文本;

步骤S140,获取第一标注文本的第一聚类中心数据和第二标注文本的第二聚类中心数据,根据初始扩充文本和第一聚类中心数据确定第一类别距离,根据初始扩充文本和第二聚类中心数据确定第二类别距离;

步骤S150,根据第一类别距离和第二类别距离对初始扩充文本进行文本筛选,确定目标扩充文本;

步骤S160,对目标扩充文本和第一标注文本进行合并,得到第一数据集,根据第二标注文本得到第二数据集,所述第一数据集的文本数量和所述第二数据集的文本数量相同;

步骤S170,根据第一数据集和第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型;

步骤S180,根据文本分类模型对预先获取到的目标文本进行文本分类。

在一些实施例的步骤S110至步骤S180中,首先,获取初始文本数据,该初始标注数据包括标注有第一标注类别的第一标注文本、标注有第二标注类别的第二标注文本和未标注文本,且第一标注文本的文本数量小于第二标注文本的文本数量。然后,根据预设提示模板对未标注文本进行文本改写,得到改写文本,并将改写文本输入至预设的掩码预测模型进行掩码类别预测,得到改写文本的掩码类别。若第一标注类别和掩码类别相同,将未标注文本确定为初始扩充文本。为了进一步确定扩充文本符合需要扩充的文本类别,获取第一标注文本的第一聚类中心数据和第二标注文本的第二聚类中心数据,并根据初始扩充文本和第一聚类中心数据确定第一类别距离,根据初始扩充文本和第二聚类中心数据确定第二类别距离。之后,根据第一类别距离和第二类别距离对初始扩充文本进行文本筛选,确定目标扩充文本。在模型训练前,对目标扩充文本和第一标注文本进行合并,得到第一数据集,根据第二标注文本得到第二数据集,该第一数据集的文本数量和第二数据集的文本数量相同。根据第一数据集和第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型。最后,根据文本分类模型对获取到的目标文本进行文本分类。本申请实施例能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性。

在一些实施例的步骤S110中,初始标注数据用于表示已经标注过的样本文本,未标注文本用于表示未标注过的样本文本。在实际应用领域,获取的标注类别对应的文本数量通常容易存在不均衡性。例如,在对商品的评价中,初始标注数据用于表示已经划分好标注类别的评价文本,未标注文本可以用于表示新上传的评价文本。其中,所获取的评价中正面评价往往多于负面评价,则评价文本可以对应划分为正标签和负标签两种类型的文本,正标签用于表示正面评价,负标签用于表示负面评价。因此,第一标注类别可以用于表示负标签,第二标注类别可以用于表示正标签,则第一标注类别对应的第一标注文本的文本数量通常小于第二标注类别下的第二标注文本的文本数量。

需要说明的是,当初始标注数据包括三种或三种以上的标注类别,则根据标注类别对应的文本数量从小到大进行排序,将文本数量最小的标注类别作为第一标注类别,将文本数量最大的标注类别作为第二标注类别。根据当前设置的标注类别对其对应的文本进行本申请的文本分类方法,以使得第一标注类别对应的文本数量与第二标注类别对应的文本数量相同。之后,依次将比文本数量最小的标注类别大的标注类别作为新的第一标注类别进行迭代处理,以使得全部标注类别对应的文本数量相同。

需要说明的是,样本文本可以是用户上传至服务器或终端的文本文件,也可以是存储在服务器或终端的本地磁盘中的文本文件,还可以是存储在区块链的节点中的文本文件。

需要说明的是,在一些实施例中,对于初始文本数据的获取可以通过编写网络爬虫或者脚本程序,进行有目标性地爬取数据得到。

在一些实施例的步骤S120中,为了减少未标注文本的标注成本,并提高对未标注文本的标注准确性,本申请实施例根据预设提示模板对未标注文本进行文本改写,得到改写文本。为了判断标注类别为正标签还是负标签,本申请实施例所构建的预设提示模板的形式可以为“[CLS][MASK]情绪:未标记文本[SEP]”。其中,“[MASK]情绪”用于表示提示信息,则根据提示信息对改写文本进行文本分类,可以预测出[MASK]处的文本信息为“正”或“负”,且正情绪用于对应正标签即第二标注类别,负情绪用于对应负标签即第一标注类别。

需要说明的是,本申请实施例可以基于BERT模型结构的掩码语言模型(MaskedLanguage Model,MLM)任务构建掩码预测模型。具体地,例如,在金融科技的购物平台场景中,当获取用户对商品的评价文本中的未标注文本为“这个衣服质量不错”,则将未标注文本改写后的改写文本为“[CLS][MASK]情绪:这个衣服质量不错[SEP]”。然后,将改写文本至掩码预测模型进行掩码类别预测,得到改写文本在每个标注类别下的预测得分。其中掩码类别为第一标注类别和第二标注类别。本申请实施例通过结合提示学习的方法对未标注文本进行文本改写,以实现对文本语料中标注类别对应的文本数量较少的类别样本的扩充,能够有效避免相关技术中通过直接对标注样本进行字词的改变而导致的无效样本或意义改变的问题。

需要说明的是,掩码预测模型包括嵌入表示处理层、掩膜语言模型处理层和预测处理层。通过嵌入表示处理层对每个改写文本进行嵌入表示处理,得到嵌入表示向量。其中,在改写文本传递到嵌入表示处理层之前,需要对该改写文本中的内容进行token化,以实现对token位置的分类任务。之后,通过掩膜语言模型处理层对得到的嵌入表示向量进行掩膜语言模型处理,得到掩膜表示向量,即本申请实施例能够充分利用MLM预训练的特性,通过对[MASK]位置的原生输入输出偏差来判断最终的映射,从而避免了三方知识库引入可能存在的偏差和统计计算的消耗。最后,通过预测处理层对掩膜表示向量进行预测处理,得到每个改写文本的在不同预测字下的token概率得分,即预测[MASK]处的字为“正”或者“负”的预测得分。最后,对token概率得分进行数值比较,确定token概率得分最高的字所对应的标注类别为掩码类别。

需要说明的是,本申请实施例将改写文本输入掩码预测模型后,还可以得到每个未标注文本的文本向量。具体地,该文本向量由掩码预测模型最后一层的token向量和[CLS]向量并求平均得到,即满足E(text)=(E(CLS)+E(token1)+…+E(token n))/n,其中,text表示未标注文本,n表示未标注文本中文本字的数量,E(·)表示向量。

在一些实施例的步骤S130中,为了实现对标注类别对应的文本数量较少的类别样本的扩充,因此,若第一标注类别和掩码类别相同,将未标注文本确定为初始扩充文本;若第一标注类别和掩码类别不相同,则该未标注文本属于标注类别对应的文本数量较多的标注类别,将该未标注文本剔除。本申请实施例通过引入提示学习来完成在原始少量标注的情况下,改造样本的形式并使用BERT的MLM任务进行样本类别的预测,能够有效利用掩码预测模型本身预训练任务。其次,本申请实施例能够得到在少量标注样本下得到较高精度的标注样本,从而保证训练数据在不同类别下的均衡性,以有效解决文本数据长尾分布的问题,且无需人力标注成本。

在一些实施例的步骤S140中,由于本申请实施例对标注类别对应的文本数量较少的类别样本的扩充,是通过提示学习的无标注且无需训练得到的,其对未标注文本的标注准确性不一定很高。因此,为了提高对未标注文本的标注准确性,以保留所需标注类别的文本,从而提高文本分类的准确性。本申请实施例在确定初始扩充文本后,通过聚类方法对初始扩充文本进行文本筛选,以准确地确定标注类别为文本数量较少的类别样本。

请参阅图2,图2是本申请实施例提供的步骤S140的具体方法的流程图。在本申请的一些实施例中,步骤S140具体可以包括但不限于步骤S210至步骤S250,下面结合图2对这五个步骤进行详细介绍。

步骤S210,获取初始聚类中心数据和初始标注数据的目标聚类数据,初始聚类中心数据包括第一标注文本的第一中心数据和第二标注文本的第二中心数据;

步骤S220,根据第一中心数据和初始标注数据进行距离计算,得到第一聚类距离数据;

步骤S230,根据第二中心数据和初始标注数据进行距离计算,得到第二聚类距离数据;

步骤S240,根据第一聚类距离数据和第二聚类距离数据进行数值比较,以根据数值比较的结果确定初始标注数据的预测聚类数据;

步骤S250,根据预测聚类数据和目标聚类数据确定类别损失数据,并根据类别损失数据对初始聚类中心数据进行数据调整,得到第一聚类中心数据和第二聚类中心数据。

在一些实施例的步骤S210中,为了提高对未标注文本的标注准确性,以保留所需标注类别的文本,首先根据初始标注数据确定每个标注类别的聚类中心数据,从而保证对初始扩充文本的聚类准确性。其中,初始聚类中心数据用于表征预先给定的每个标注类别的聚类中心数据,其包括第一标注文本对应的第一中心数据和第二标注文本对应的第二中心数据,根据第一中心数据和第二中心数据能够将输入的文本划分到不同类别。目标聚类数据用于表征根据该初始标注数据对应的标注类别,则目标聚类数据可以为第一标注类别或第二标注类别。

在一些实施例的步骤S220至步骤S250中,由于聚类是通过样本点与聚类中心的最近距离来划分每个样本点的类别,假设每个初始标注数据为一个样本点,则将每个初始标注数据对应的向量分别与第一中心数据和第二中心数据进行距离计算,得到第一聚类距离数据和第二聚类距离数据。通过对第一聚类距离数据和第二聚类距离数据进行数值比较,以根据数值较小的聚类距离确定初始标注数据的预测聚类数据,该预测聚类数据用于表征根据第一中心数据和第二中心数据对该初始标注数据预测的标注类别,且预测聚类数据可以为第一标注类别或第二标注类别。根据预测聚类数据和目标聚类数据确定类别损失数据,以确定当前的第一中心数据和第二中心数据是否可以准确地对输入的样本点进行准确分类。通过不断迭代,并根据类别损失数据对初始聚类中心数据进行数据调整,当最后样本中不再有类别变化时,则可以确定当前的第一聚类中心数据和第二聚类中心数据。

需要说明的是,初始标注数据与第一中心数据和第二中心数据进行距离计算的方法,可以采用欧式距离计算、曼哈顿距离、切比雪夫距离等任一种,在此不作具体限定和赘述。类别损失数据的计算可以采用交叉熵损失函数、0-1损失函数等,在此不作具体限定和赘述。

在一些实施例的步骤S150中,在确定第一聚类中心数据和第二聚类中心数据后,将初始扩充文本在掩码预测得到的文本向量分别与第一聚类中心数据和第二聚类中心数据进行距离计算。其中,第一类别距离用于表征初始扩充文本和第一聚类中心数据的距离,第二类别距离用于表征初始扩充文本和第而聚类中心数据的距离。为了准确地判断初始扩充文本是否为所需标注类别的文本,根据第一类别距离和第二类别距离对初始扩充文本进行文本筛选,确定目标扩充文本,则目标扩充文本为文本数量较少的标注类别的类别样本,即第一标注类别的文本。此外,本申请实施例所采用的聚类算法可以为k-means聚类算法、Mean shift聚类算法等。因此,本申请实施例在通过提示学习得到初始扩充文本后,通过结合聚类算法和距离计算的方法对初始扩充文本进行数据清洗,以进一步删除不符合所需标注类别的样本文本。

需要说明的是,聚类中心距离计算方法可参考上述初始标注数据与第一中心数据和第二中心数据进行距离计算的方法,在此不作具体限定和赘述。

请参阅图3,图3是本申请实施例提供的步骤S150的具体方法的流程图。在本申请的一些实施例中,步骤S150具体可以包括但不限于步骤S310和步骤S320,下面结合图3对这两个步骤进行详细介绍。

步骤S310,对第一类别距离和第二类别距离进行数值比较,得到距离比较结果;

步骤S320,若距离比较结果表示第二类别距离大于第一类别距离,将初始扩充文本确定为目标扩充文本。

在一些实施例的步骤S310和步骤S320中,为了进一步删除不符合所需标注类别的样本文本,对第一类别距离和第二类别距离进行数值比较。若距离比较结果表示第二类别距离大于第一类别距离,表示初始扩充文本属于第一标注类别,将该初始扩充文本作为目标扩充文本。若距离比较结果表示第二类别距离小于或等于第一类别距离,表示初始扩充文本属于第二标注类别。由于本申请是对类别的文本数量少的第一标注类别的样本扩充,则标注为第二标注类别的初始扩充文本为不符合所需标注类别的样本文本,将该初始扩充文本进行剔除。

在一些实施例的步骤S160中,为了提高文本分类模型的分类准确率,在获取到少类别的目标扩充文本后,对目标扩充文本和第一标注文本进行排序合并,得到第一数据集。根据第二标注文本构建第二数据集,且当前第一数据集的文本数量和第二数据集的文本数量相同。本申请实施例通过提示学习结合聚类算法的方式,扩充了训练数据的文本数量,使得不同标注类别的文本数量相同。且根据均衡的训练文本进行模型的训练,有效解决了文本数据长尾分布的问题。例如,在对商品的评价中,正面评价往往多于负面评价,本申请实施例通过提示学习结合聚类算法的方式,扩充了负面评价的数据量,从而可以有效提升文本分类的准确性。

在一些实施例的步骤S170中,为了提升文本分类模型的分类效率和分类准确性,本申请实施例通过课程学习将数据集中的样本按照从易到难的顺序对模型不断进行训练,以优化模型效果,从而提升文本分类模型的分类效率。

请参阅图4,图4是本申请实施例提供的步骤S170的具体方法的流程图。在本申请的一些实施例中,步骤S170具体可以包括但不限于步骤S410和步骤S420,下面结合图4对这两个步骤进行详细介绍。

步骤S410,根据第一数据集和第二数据集确定训练数据;

步骤S420,根据训练数据对初始分类模型进行参数调整,得到文本分类模型。

在一些实施例的步骤S410和步骤S420中,为了实现将数据集中的样本按照从易到难的顺序对模型不断进行训练,本申请实施例根据预设划分轮次对第一数据集和第二数据集进行数据划分,以划分为多个训练轮次的训练数据,并将训练轮次表示为epoch。其中,预设划分轮次为正整数,可以根据实际需要进行设定,在此不作具体限定。例如,当预设划分轮次为5,则每一epoch的训练数据包括20%的第一数据集中少类别的文本和相同数量的第二数据集中多类别的文本。根据训练数据对初始分类模型进行训练,并根据训练得到的预测标注类别和数据已标注的类别进行比对,以实现对初始分类模型进行参数调整。本申请实施例通过课程学习方法,将数据集中的样本按照从易到难的顺序对模型不断进行训练,即通过多个epoch实现全量少类别样本的全量训练,有效提升了文本分类模型的分类效率。

请参阅图5,图5是本申请实施例提供的步骤S410的具体方法的流程图。在本申请的一些实施例中,步骤S410具体可以包括但不限于步骤S510至步骤S560,下面结合图5对这六个步骤进行详细介绍。

步骤S510,根据目标扩充文本和第一聚类中心数据确定第三类别距离;

步骤S520,根据第一标注文本和第一聚类中心数据确定第四类别距离;

步骤S530,根据第三类别距离和第四类别距离对第一数据集的文本进行文本排序,得到扩充文本序列;

步骤S540,对扩充文本序列进行文本采样,得到第一文本子序列,第一文本子序列包括文本类别为第一标注类别的第一训练文本;

步骤S550,根据第一文本子序列的文本数量对第二数据集进行随机采样,确定第二文本子序列,第二文本子序列包括文本类别为第二标注类别的第二训练文本;

步骤S560,对第一训练文本和第二训练文本进行合并,得到训练数据。

在一些实施例的步骤S510至步骤S560中,由于文本与聚类中心的距离越近,则说明该文本更易进行类别划分,即记为简单样本。而文本与聚类中心的距离越远,则说明该文本不容易进行类别划分,即记为复杂样本。具体地,根据距离计算确定目标扩充文本和第一聚类中心数据之间的第三类别距离,根据距离计算确定第一标注文本和第一聚类中心数据之间的第四类别距离。根据第三类别距离和第四类别距离对第一数据集中的全部文本进行文本排序,以得到从距离最小到距离最大的升序排列的扩充文本序列,且该扩充文本序列中的文本标记类别都是第一标注类别。例如,当预设划分轮次为5,根据预设划分轮次对扩充文本序列进行文本采样得到第一文本子序列,该第一文本子序列包括扩充文本序列中20%的文本。根据第一文本子序列的文本数量对第二数据集进行随机采样,以得到和第一文本子序列文本数量相同的第二文本子序列。因此,第一训练文本和第二训练文本构成了第一个epoch的训练数据。本申请实施例基于距离对扩充后的数据进行排序,按距离从小到大的样本顺序即从易到难的顺序对模型进行训练,且易为简单样本,难为复杂样本,则能够更加合理且有效地提升模型的效果。

请参阅图6,图6是本申请实施例提供的步骤S420的具体方法的流程图。在本申请的一些实施例中,步骤S420体可以包括但不限于步骤S610至步骤S650,下面结合图6对这五个步骤进行详细介绍。

步骤S610,根据训练数据对初始分类模型进行参数调整,得到候选分类模型;

步骤S620,根据第一文本子序列对扩充文本序列进行文本采样,确定第三文本子序列,其中,第三文本子序列包括文本类别为第一标注类别的第三训练文本,第三训练文本和第一聚类中心数据的类别距离大于或等于第一训练文本和第一聚类中心数据的类别距离;

步骤S630,根据第三文本子序列的文本数量对第二数据集进行随机采样,确定第四文本子序列,第四文本子序列包括文本类别为第二标注类别的第四训练文本;

步骤S640,根据第三训练文本和第四训练文本进行合并,并根据合并的结果更新训练数据;

步骤S650,根据更新后的训练数据对候选分类模型进行参数调整,得到文本分类模型。

在一些实施例的步骤S610至步骤S650中,在划分了第一个epoch的训练数据对初始分类模型进行参数调整得到候选分类数据之后,根据第一文本子序列对扩充文本序列进行文本采样。其中,所构成的第三文本子序列用于表示排序在第一文本子系列之后的20%的文本,且第三训练文本和第一聚类中心数据的类别距离大于或等于第一训练文本和第一聚类中心数据的类别距离。并在第二数据集中随机采样与第三文本子系列数量相同的第四文本子序列。

示例性的,当预设划分轮次为5,根据第一数据集和第二数据集得到的5个epoch的训练数据。在根据第一个epoch的训练数据对初始分类模型进行参数调整得到候选分类数据后,根据第三训练文本和第四训练文本构成的第二个epoch继续对的得到的候选分类模型进行参数调整。不断对模型的参数调整后,当得到的5个epoch的训练数据都依据前一个训练数据调整后的模型结构对模型参数调整后,得到文本分类准确率更高的文本分类模型。

需要说明的是,本申请实施例还可以根据第二数据集中的文本与第二聚类中心数据的距离对文本也进行升序排列,则在随机采样时也根据课程学习的方法进行采样,以根据排列后的文本子序列所构建的训练数据对模型进行训练,从而提高模型的训练效果。

请参阅图7,图7是本申请实施例提供的步骤S620的具体方法的流程图。在本申请的一些实施例中,步骤S620具体可以包括但不限于步骤S710和步骤S720,下面结合图7对这两个步骤进行详细介绍。

步骤S710,获取第一文本子序列的采样截止数据;

步骤S720,根据采样截止数据对扩充文本序列进行文本采样,确定第三文本子序列。

在一些实施例的步骤S710至步骤S720中,为了实现对全量少类别样本的训练,在对扩充文本序列进行文本采样,得到第一文本子序列时,同时记录第一文本子序列的采样截止数据。该采样截止数据用于表征第一文本子序列中类别距离最大的文本。因此,在对扩充文本序列再次进行文本采样时,从采样截止数据对应的下一个文本作为下一个训练数据的第一个采样文本,并根据采样的数量采样构建第三文本子序列。

在一些实施例的步骤S180中,在进行文本分类时,服务器会先获取到待分类的目标文本。服务器获取目标文本的方式可以为从预先已存储目标文本的数据库中获取,也可以为直接从目标对象终端获取,当目标对象需要进行文本分类时,可以通过目标对象终端将目标文本传输至服务器。并根据预先训练的文本分类模型进行文本分类,得到目标文本类别。

需要说明的是,由于大数据时代下文本的数量非常多,则无法对每个评价文本进行标注。为了更好地解决文本数据长尾分布的问题,本申请实施例可以将采集的初始文本数据执行本申请的文本分类方法,以构建分类效果更好的文本分类模型,从而能够更好地解决文本数据长尾分布的问题,且提高文本分类的准确性。示例性的,在金融科技的购物平台场景中,目标对象在购买商品后会发表对商品的评价文本即目标文本,例如,“这件衣服真好看”。或者,在金融科技的保险理赔场景中,目标对象在完成理赔操作后也可以发表对该理赔产品或商家的评价文本即目标文本,例如,“这个产品的理赔流程较为复杂”等,则可以将目标文本输入至训练后的文本分类模型,从而得到更准确的目标文本类别。例如,“这件衣服真好看”为正面评价,“这个产品的理赔流程较为复杂”为负面评价等。

请参阅图8,图8是本申请实施例提供的文本分类装置的模块结构示意图。该装置可以实现上述实施例的文本分类方法,该装置包括文本数据获取模块810、掩码类别预测模块820、类别判断模块830、聚类距离计算模块840、文本筛选模块850、数据集构建模块860、模型构建模块870和文本分类模块880。

文本数据获取模块810,用于获取初始文本数据,初始文本数据包括初始标注数据和未标注文本,初始标注数据包括标注有第一标注类别的第一标注文本和标注有第二标注类别的第二标注文本,其中,第一标注文本的文本数量小于所述第二标注文本的文本数量;

掩码类别预测模块820,用于根据预设提示模板对未标注文本进行文本改写,得到改写文本,并将改写文本输入至预设的掩码预测模型进行掩码类别预测,得到改写文本的掩码类别;

类别判断模块830,用于若第一标注类别和掩码类别相同,将未标注文本确定为初始扩充文本;

聚类距离计算模块840,用于获取第一标注文本的第一聚类中心数据和第二标注文本的第二聚类中心数据,根据初始扩充文本和第一聚类中心数据确定第一类别距离,根据初始扩充文本和第二聚类中心数据确定第二类别距离;

文本筛选模块850,用于根据第一类别距离和第二类别距离对初始扩充文本进行文本筛选,确定目标扩充文本;

数据集构建模块860,用于对目标扩充文本和第一标注文本进行合并,得到第一数据集,根据第二标注文本得到第二数据集,第一数据集的文本数量和第二数据集的文本数量相同;

模型构建模块870,用于根据第一数据集和第二数据集对预设的初始分类模型进行参数调整,得到文本分类模型;

文本分类模块880,用于根据文本分类模型对预先获取到的目标文本进行文本分类。

需要说明的是,本申请实施例的文本分类装置用于实现上述实施例的文本分类方法,本申请实施例的文本分类装置与前述的文本分类方法相对应,具体的处理过程请参照前述的文本分类方法,在此不再赘述。

本申请实施例还提供了一种计算机设备,该计算机设备包括:至少一个存储器,至少一个处理器,至少一个计算机程序,至少一个计算机程序被存储在至少一个存储器中,至少一个处理器执行至少一个计算机程序以实现上述实施例中任一种的文本分类方法。该计算机设备可以为包括平板电脑、车载电脑等任意智能终端。

请参阅图9,图9示意了另一实施例的一种计算机设备的硬件结构,该计算机设备包括:

处理器910,可以采用通用的中央处理器(Central Processing Unit,CPU)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;

存储器920,可以采用只读存储器(Read Only Memory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(Random Access Memory,RAM)等形式实现。存储器920可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器920中,并由处理器910来调用执行本申请实施例的文本分类方法;

输入/输出接口930,用于实现信息输入及输出;

通信接口940,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;

总线950,在设备的各个组件(例如处理器910、存储器920、输入/输出接口930和通信接口940)之间传输信息;

其中处理器910、存储器920、输入/输出接口930和通信接口940通过总线950实现彼此之间在设备内部的通信连接。

本申请实施例还提供了一种存储介质,该存储介质为计算机可读存储介质,该计算机可读存储介质存储有计算机程序,计算机程序用于使计算机执行上述实施例中文本分类方法。

存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

本申请实施例提供的文本分类方法、文本分类装置、计算机设备及存储介质,通过结合提示学习的方法对未标注文本进行文本改写,能够在原始少量标注的情况下,得到较高精度的标注样本。根据该方法能够实现对文本语料中标注类别对应的文本数量较少的类别样本的扩充,且保证了训练数据在不同类别下的均衡性,从而在无需人力标注成本的消耗下有效解决文本数据长尾分布的问题。其次,由于本申请实施例是对标注类别对应的文本数量较少的类别样本的扩充,是通过提示学习的无标注且无需训练得到的,其对未标注文本的标注准确性不一定很高。则本申请实施例在通过提示学习得到初始扩充文本后,通过结合聚类算法和距离计算的方法对初始扩充文本进行数据清洗,能够进一步删除不符合所需标注类别的样本文本。此外,本申请实施例按距离从小到大的样本顺序对样本进行划分,并根据划分后的训练数据,从简单样本到复杂样本对模型进行训练,能够合理且有效地提升模型的效果。因此,本申请实施例能够更好地解决文本数据长尾分布的问题,且提高文本分类的效率和分类准确性。

本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

本领域技术人员可以理解的是,图中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。

本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。

以上参阅附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。

相关技术
  • 文本分类方法、装置、计算机设备及存储介质
  • 词表生成方法、文本分类方法、装置、设备及存储介质
  • 一种文本分类方法、装置、终端及计算机可读存储介质
  • 短文本分类模型的生成方法、分类方法、装置及存储介质
  • 基于深度学习的医疗文本分类方法、装置及存储介质
  • 文本分类方法、文本分类装置、计算机设备及存储介质
  • 文本分类方法、文本分类装置、计算机设备及存储介质
技术分类

06120116223401