一种情感分类模型的训练方法及装置与流程

文档序号:24730153发布日期:2021-04-20 12:51阅读:130来源:国知局
一种情感分类模型的训练方法及装置与流程

1.本发明涉及人工智能技术领域,尤其涉及一种情感分类模型的训练方法及装置。


背景技术:

2.随着电子商务的快速发展,越来越多的消费者在互联网平台上发表产品评论。评论可以反映出消费者对某一产品的某个属性的喜好程度,即情感分类,例如可以为积极、消极或中立。
3.现有技术通过建立情感分类模型来实现对情感进行分类,例如可以采用如下步骤:1.构造语言学特征,包括n-gram特征、语义特征、句法依赖特征、属性类别特征等;2.通过奇异值分解进行特征降维;3.采用one-vs-all策略的分类算法训练分类器;4.将模型效果反馈到特征空间进行进一步优化。
4.由于,上述模型的训练方法中用到的训练样本的特征类别繁多,并且,标记带有一定的主观因素,甚至可能存在错误,因此,给整个模型的训练加大了难度,甚至会导致模型无法收敛。


技术实现要素:

5.针对现有技术存在的问题,本发明实施例提供一种情感分类模型的训练方法及装置。
6.本发明实施例提供一种情感分类模型的训练方法,包括:
7.获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;
8.确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;
9.利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
10.其中,所述根据文本的文本长度划分文本,包括:
11.根据依次递减的预设文本长度阈值和所有文本的文本长度,依次划分所有文本。
12.其中,所述确定与划分后每类文本分别对应的批量样本数,包括:
13.根据依次递增的预设批量样本数阈值和划分后每类文本,依次确定与划分后每类文本分别对应的批量样本数。
14.其中,所述利用利用与每批批量样本数相对应的批量样本分别训练情感分类模型之前,所述情感分类模型的训练方法还包括:
15.在一批批量样本中设置至少一个未知分类词。
16.其中,所述在在一批批量样本中设置至少一个未知分类词,包括:
17.在预设数值区间内生成随机数,并根据所述随机数和一批批量样本中的词数量,确定未知分类词的数量;其中,所述预设数值区间为(0,0.1);
18.随机抽取等于未知分类词的数量的未知分类词。
19.其中,所述在一批批量样本中设置至少一个未知分类词,包括:
20.通过mask技术设置至少一个未知分类词。
21.其中,所述利用与每批批量样本数相对应的批量样本分别训练情感分类模型,包括:
22.固定一部分模型权重,以使固定后的模型权重不在训练所述情感分类模型的过程中进行变化。
23.本发明实施例提供一种情感分类模型的训练装置,包括:
24.划分单元,用于获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;
25.确定单元,用于确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;
26.训练单元,用于利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
27.本发明实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,
28.所述处理器执行所述计算机程序时实现如下方法步骤:
29.获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;
30.确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;
31.利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
32.本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
33.获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;
34.确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;
35.利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
36.本发明实施例提供的情感分类模型的训练方法及装置,通过确定与划分后每类文本分别对应的批量样本数,并利用与每批批量样本数相对应的批量样本分别训练情感分类模型,能够加快情感分类模型的训练速度。
附图说明
37.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1为本发明情感分类模型的训练方法实施例流程图;
39.图2为本发明实施例划分文本和确定批量样本数的示意图;
40.图3为本发明情感分类模型的训练装置实施例结构示意图;
41.图4为本发明实施例提供的电子设备实体结构示意图。
具体实施方式
42.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
43.图1为本发明情感分类模型的训练方法实施例流程图,如图1所示,本发明实施例提供的一种情感分类模型的训练方法,包括以下步骤:
44.s101:获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本。
45.具体的,获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本。执行该方法步骤的可以是计算机设备。可以理解的是,该文本的数量通常较大,例如可以为1万个。文本的文本长度可以是文本中包含词的词数量,例如文本a包含200个词,则文本a的文本长度为200。根据文本的文本长度划分文本可以具体包括:将相近文本长度的文本划分为一类,具体方式不作具体限定。
46.进一步地,可以具体包括:根据依次递减的预设文本长度阈值和所有文本的文本长度,依次划分所有文本。预设文本长度阈值的初始值和依次递减的幅度值可以根据实际情况自主设置,例如,初始值可选为1000,依次递减的幅度值可选为500。图2为本发明实施例划分文本和确定批量样本数的示意图;如图2所示,例如,文本总数为1万个,在其中有100个文本长度大于1000,则将这100个文本划分出来,记为集合a;剩余9900个文本中有4900个文本长度大于500,则将这4900个文本划分出来,记为集合b;剩余5000个文本全部记为集合c。可以理解的是,用户评论文本可以包括用户购物后对产品的某属性(例如外观、可操控性等)的情感(例如积极、中立或消极等),因此,通过该文本能够作为训练情感分类模型的训练样本。
47.s102:确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化。
48.具体的,确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化。需要说明的是,如果每类文本的文本长度越长,则对应的批量样本数的数量越少;如果每类文本的文本长度越短,则对应的批量样本数的数量越多,即呈反比例变化,举例说明如下:上述集合a中的文本长度在1000以上,则对应的批量样本数可以为8;上述集合b中的文本长度在500-1000之间,则对应的批量样本数可以为16。
49.进一步地,所述确定与划分后每类文本分别对应的批量样本数,可以具体包括:
50.根据依次递增的预设批量样本数阈值和划分后每类文本,依次确定与划分后每类文本分别对应的批量样本数。预设批量样本数阈值的初始值和依次递增的幅度值可以根据实际情况自主设置,例如,初始值可选为8,依次递增的幅度值可选为前一数值的4倍,例如为32。参照图2,预设文本长度阈值的初始值为1000,对于1000以上,与之对应的预设批量样
本数阈值(对应batch size)为8;预设文本长度阈值第一次递减为500,对于500-1000,与之对应的预设批量样本数阈值第一次递增为32;对于500以下,与之对应的预设批量样本数阈值第二次递增为64。
51.s103:利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
52.具体的,利用与每批批量样本数相对应的批量样本分别训练情感分类模型。batch size即是训练模型时一次输入的样本数据量。参照上述举例,对于集合a,共有100个文本,对应的批量样本数为8,则可以第一次输入这100个文本中的第1号-第8号训练样本训练模型,第二次输入这100个文本中的第9号-第16号训练样本训练模型,以此类推,不再赘述。对于集合b,则每次输入32个训练样本训练模型,具体可参照集合a,不再赘述。可以将上述基于文本长度确定每批批量样本数的方法定义为长度分桶方法,通过该长度分桶方法可以避免每一批批量样本中的文本长度相差较大,从而有利于提高模型训练的整体训练速度。上述情感分类模型可以具体为bert,在特征提取之后,可以标记训练样本,再对bert进行预训练,进一步可以节省工作,并且能加快训练速度。
53.本发明实施例提供的情感分类模型的训练方法,通过确定与划分后每类文本分别对应的批量样本数,并利用与每批批量样本数相对应的批量样本分别训练情感分类模型,能够加快情感分类模型的训练速度。
54.在上述实施例的基础上,所述根据文本的文本长度划分文本,包括:
55.具体的,根据依次递减的预设文本长度阈值和所有文本的文本长度,依次划分所有文本。可参照上述说明,不再赘述。
56.本发明实施例提供的情感分类模型的训练方法,进一步实现了高效划分所有文本,进而能够加快情感分类模型的训练速度。
57.在上述实施例的基础上,所述确定与划分后每类文本分别对应的批量样本数,包括:
58.具体的,根据依次递增的预设批量样本数阈值和划分后每类文本,依次确定与划分后每类文本分别对应的批量样本数。可参照上述说明,不再赘述。
59.本发明实施例提供的情感分类模型的训练方法,进一步实现了高效确定批量样本数,进而能够加快情感分类模型的训练速度。
60.在上述实施例的基础上,所述利用利用与每批批量样本数相对应的批量样本分别训练情感分类模型之前,所述情感分类模型的训练方法还包括:
61.在一批批量样本中设置至少一个未知分类词。
62.具体的,在一批批量样本中设置至少一个未知分类词。参照上述举例,对于集合a,在这100个文本中的第1号-第8号训练样本中设置至少一个未知分类词,未知分类词可以理解为没有标记分类类别的分类词,有利于通过在原文本缺少一些词的情况下,获得语义信息,能够加强一些词的权重,提高模型的鲁棒性,降低过拟合的概率。
63.本发明实施例提供的情感分类模型的训练方法,能够提高模型的鲁棒性,降低过拟合的概率。
64.在上述实施例的基础上,所述在在一批批量样本中设置至少一个未知分类词,包括:
65.在预设数值区间内生成随机数,并根据所述随机数和一批批量样本中的词数量,
确定未知分类词的数量;其中,所述预设数值区间为(0,0.1)。
66.具体的,在预设数值区间内生成随机数,并根据所述随机数和一批批量样本中的词数量,确定未知分类词的数量;其中,所述预设数值区间为(0,0.1)。进一步地可以在更小的数值区间,例如(0,0.03)内生成一个随机数,例如生成随机数为0.01,参照上述举例,集合a中这100个文本中的第1号-第8号训练样本中的词数量为1万,可以将0.01与1万的乘积作为未知分类词的数量,即100个。
67.随机抽取等于未知分类词的数量的未知分类词。
68.具体的,随机抽取等于未知分类词的数量的未知分类词。参照上述举例,在这1万个词中随机抽取100个未知分类词。
69.本发明实施例提供的情感分类模型的训练方法,进一步提高模型的鲁棒性,降低过拟合的概率。
70.在上述实施例的基础上,所述在一批批量样本中设置至少一个未知分类词,包括:
71.通过mask技术设置至少一个未知分类词。
72.具体的,通过mask技术设置至少一个未知分类词。mask通常应用在图像处理领域中,例如可以实现对图像层创建任意形状、任意大小的遮罩,方便素材的融合与影片合成。本发明实施例将该技术应用在文本处理领域,参照上述举例,通过mask技术设置这100个未知分类词,即实现了对未知分类词进行遮罩,从而隐藏未知分类词的某些属性,例如词的字体类型、字体颜色、词所在文本的背景颜色等。
73.本发明实施例提供的情感分类模型的训练方法,进一步能够加快情感分类模型的训练速度。
74.在上述实施例的基础上,所述利用与每批批量样本数相对应的批量样本分别训练情感分类模型,包括:
75.固定一部分模型权重,以使固定后的模型权重不在训练所述情感分类模型的过程中进行变化。
76.具体的,固定一部分模型权重,以使固定后的模型权重不在训练所述情感分类模型的过程中进行变化。对如何确定哪一部分模型权重,不作具体限定,固定权重能够进一步能够起到加快模型收敛的有益效果。
77.本发明实施例提供的情感分类模型的训练方法,通过使固定后的模型权重不进行变化,进一步能够改善情感分类模型的训练速度。
78.还可以对bert进行改进,包括:将词进行embedding(向量化)映射输入到bert的编码器中,bert的编码器主要由6个transformer构成,流程如下:
79.bert模型是谷歌研发的预训练模型,编码器主要6层的transformer进行特征提取,使用了双向的transformer block连接。每一个transformer每个位置的词向量都会通过一个multi-head attention层,然后将通过之前的词向量和输出加在一起并采用l2 norm进行处理,这样可以避免发生梯度弥散。最终的输出再通过前馈神经网络,然后将通过之前的输出与其加在一起并采用l2norm进行处理。
80.multi-head attention层是将一个词的vector切分成h个维度,求attention相似度时计算每个h维度。由于单词映射在高维空间作为向量形式,每一维空间都可以学到不同的特征,相邻空间所学结果更相似,相较于全体空间放到一起对应更加合理。比如对于
vector size是512的词向量,取h=8,每64个空间做一个attention,学到结果更细化。
81.在模型训练完成后,使用模型的阶段,可以包括:从编码阶段得到句子的语义信息先通过全连接网络得到与输出词表维度相同的向量,用gelu激活函数能够输出高斯分布的信息,使得得到的向量符合预期分布,最后每经过一个操作,这里都需要进行layer norm处理,也就是特征参数规范化操作。这里在训练过程中采用l2 norm处理。
82.最终通过embedding vocab和softmax输出情感类别。
83.在训练模型中,学习率可以采取基于验证集的自适应下降,以优化模型。
84.通过基于bert的网络结构进行情感分类,克服了使用循环神经网络的训练时间慢、更新时间长的缺点。该情感分类在输入数据上就进行了长度分桶,能够在根本上提升分类准确率。
85.图3为本发明情感分类模型的训练装置实施例结构示意图,如图3所示,本发明实施例提供了一种情感分类模型的训练装置,包括划分单元301、确定单元302和训练单元303,其中:
86.划分单元301用于获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;确定单元302用于确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;训练单元303用于利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
87.具体的,划分单元301用于获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;确定单元302用于确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;训练单元303用于利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
88.本发明实施例提供的情感分类模型的训练装置,通过确定与划分后每类文本分别对应的批量样本数,并利用与每批批量样本数相对应的批量样本分别训练情感分类模型,能够加快情感分类模型的训练速度。
89.本发明实施例提供的情感分类模型的训练装置具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
90.图4为本发明实施例提供的电子设备实体结构示意图,如图4所示,所述电子设备包括:处理器(processor)401、存储器(memory)402和总线403;
91.其中,所述处理器401、存储器402通过总线403完成相互间的通信;
92.所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
93.本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本
长度呈反比例变化;利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
94.本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:获取作为训练样本的文本,并根据文本的文本长度划分文本的分类;所述文本是用户评论文本;确定与划分后每类文本分别对应的批量样本数;其中,所述批量样本数的数量与划分后每类文本的文本长度呈反比例变化;利用与每批批量样本数相对应的批量样本分别训练情感分类模型。
95.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
96.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
97.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
98.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1