CN112579777B - 一种未标注文本的半监督分类方法 - Google Patents

一种未标注文本的半监督分类方法 Download PDF

Info

Publication number
CN112579777B
CN112579777B CN202011537909.2A CN202011537909A CN112579777B CN 112579777 B CN112579777 B CN 112579777B CN 202011537909 A CN202011537909 A CN 202011537909A CN 112579777 B CN112579777 B CN 112579777B
Authority
CN
China
Prior art keywords
text
vector
unlabeled
positive
vectors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011537909.2A
Other languages
English (en)
Other versions
CN112579777A (zh
Inventor
黄翰
梁展宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN202011537909.2A priority Critical patent/CN112579777B/zh
Publication of CN112579777A publication Critical patent/CN112579777A/zh
Application granted granted Critical
Publication of CN112579777B publication Critical patent/CN112579777B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Abstract

本发明属于自然语言处理领域,涉及一种未标注文本的半监督分类方法。该方法首先使用预训练语言模型计算输入文本的文本向量;然后提取类向量和未标注文本对应的增广类向量;接着使用类向量对正、负例文本进行预测并计算标注文本预测误差,同时使用增广类向量计算未标注文本的伪标签并计算未标注文本的预测误差;接着使用预测误差对网络参数进行更新完成神经网络模型训练;最后以正例文本和未标注文本作为已训练好的神经网络模型的输入,输出未标注文本的类别。本发明不需要人工对大量未标注文本进行标注,相对于传统监督学习文本分类算法,本发明能在仅有少量标注文本的情况下,较准确地区分未标注文本的类别。

Description

一种未标注文本的半监督分类方法
技术领域
本发明属于人工智能自然语言处理领域,涉及一种未标注文本的半监督分类方法。
背景技术
随着我国互联网的普及,各个互联网平台每天都会产生有海量的文本数据。对这些文本数据进行分析,能够有效提高诸如客服、搜索等服务的质量。文本分类,即判断文本是否属于特定类别,是基础的文本分析工作之一。传统基于规则的文本分类方法需要人工针对特定类别构建规则进行分类。这种做法需要耗费大量的人力物力,而且构建出规则可能受人工理解偏差的影响。因此,基于监督学习的端到端神经网络被广泛应用于文本分类任务上。文本分类的结果在实际应用中可以用于优化舆情监控、问答机器人和内容检索等服务。
现有基于监督学习的文本分类方法,需要事先标注大量正负例文本用于模型训练。由于新定义的文本类别往往缺乏标注数据,训练数据的标注需要耗费人力以及较长的时间,这导致无法快速针对新出现的类别进行分类。
发明内容
本发明针对现有文本分类方法的不足,提供一种未标注文本的半监督分类方法。
本发明采用如下技术方案实现:
一种未标注文本的半监督分类方法,包括以下步骤:
S1、对每一条采集到的正例文本、负例文本和未标注文本,使用预训练语言模型得到对应的正例文本向量、负例文本向量和未标注文本向量;
S2、使用动态路由算法从步骤S1中的正例文本向量提取类向量
S3、使用神经张量模型计算类向量和文本向量/>距离的方法计算步骤S1中的正例文本向量和负例文本向量到步骤S2的类向量/>的距离,并计算正、负例文本预测误差值L1
S4、对于每一条未标注文本假定其为正例文本,使用动态路由算法使用步骤S1中的正例文本向量和未标注文本向量计算提取增广类向量;
S5、使用增广类向量计算未标注文本伪标签
S6、使用神经张量模型计算步骤S1中未标注文本向量和步骤S2的类向量的距离d′,并根据步骤S5的未标注文本伪标签/>计算未标注文本预测误差值L2
S7、使用步骤S3和步骤S6的误差L1和L2,利用反向传播算法进行神经网络模型参数的更新并完成神经网络模型训练;
S8、使用步骤S7训练好的神经网络模型和正例文本对待分类的文本进行分类。
优选地,步骤S1中使用预训练的BERT模型,计算各个字符在所在文本中的向量表示,并取文本首字符的向量表示作为文本的向量表示,最终得到正例文本向量、负例文本向量和未标注文本向量。
优选地,步骤S2包括:使用动态路由算法对k个正例文本向量进行r次迭代,计算出各个正例文本向量的权重/>最终通过/>计算出类向量/>
优选地,使用神经张量模型计算类向量和文本向量/>距离的方法包括:根据类向量/>和文本向量/>的维度定义N个矩阵,对于每个矩阵Mi使用/>作为向量中的第i维,并使用/>作为类向量/>和文本向量之间的距离d。
优选地,文本预测误差L1的计算方法包括:使用L1=y-(1-d)作为文本的预测误差;如果文本为正例则y=1,如果文本为负例则y=0。
优选地,未标注文本伪标签的计算方法包括:首先使用与S3相同的神经张量模型,计算每个未标注文本对应的增广类向量与正例文本和负例文本向量的距离;然后使用和S3相同的正、负例文本预测误差计算方法,计算采用增广类向量对正、负例文本的预测误差L′;最后计算未标注文本伪标签/>其中:N表示正例文本和负例文本数量和。
优选地,未标注文本预测误差L2的计算方法包括:使用作为未标注文本的预测误差。
优选地,在使用反向传播算法过程中,不计算未标注文本伪标签对其它网络参数的梯度,从而使得误差不会经由未标注文本伪标签/>向前传播;神经网络模型总预测误差L=(1-λ)L1+λL2,λ为未标注文本预测损失的权重。
优选地,将训练好的神经网络模型用于文本分类时,使用待测文本向量与类向量的距离d和1的差值作为待测文本为正例的概率p=1-d;设置阈值pthreshold,若p≥pthreshold则待测文本为正例文本,若p<pthreshold则待测文本为负例文本。
与现有技术相比,本发明具有如下优点和技术效果:
(1)本发明目的在保证分类准确率的同时,减少端到端的神经网络文本分类模型训练所需要的标注样本数量,从而能短时间低成本地对新定义的文本类别进行分类,最终为下游服务提供支撑。
(2)现有使用神经网络在处理文本分类任务时候,大多直接将文本特征向量输入到分类层中对文本直接分类,但是这种做法在标注文本不足的情况下会出现过拟合现象。本发明从多条正例文本的特征向量之中提取能够代表正例文本类别的特征向量,继而使用足以区分正负例文本的距离度量方式对未标注文本进行分类,能够在标注文本数量不足的情况下缓解过拟合现象,从而获得更高的分类精度。
(3)现有基于距离的分类方法,大多限定了距离度量方法。但是不同类别会有不同的距离度量方法。本发明采用神经张量模型对距离计算方法进行参数化表示,并在模型训练过程中进行参数优化,从而得出当前类别最优的距离度量方法,提高了分类的精度。
(4)现有利用自洽性的半监督方法,是对未标注数据通过随机缩放、旋转或者平移等操作进行增广产生新数据,最终检查模型对新数据预测结果应该和对原来数据的预测结果一致情况作为未标记数据的伪标签生成依据。但是随机缩放、旋转或者平移这些操作不适用于文本。本发明伪标签基于的自洽性假设为:如果一个未标注文本属于正例,那么使用这个未标注文本和标注的正例文本中提取的增广类向量也应该能正确区分正负例。本发明将这个自洽性假设,结合类向量的提取方法和参数化的距离度量方法,能够生成置信度相对较高的伪标签,从而让最终分类精度更高。
(5)本发明能自动计算未标注文本的伪标签,不需要人工对大量未标注文本进行标注;相对于在训练需要大量标注文本数据的传统监督学习文本分类算法,本发明能在仅有少量标注文本的情况下,较准确地区分未标注文本的类别。
附图说明
图1为一个实施例中未标注文本的半监督分类方法流程图。
图2为一个实施例中未标注文本的半监督分类方法步骤S1到步骤S7的数据流程图。其中,名字相同的模块具有相同的权重,虚线表示用于训练的梯度回传。
具体实施方式
以下结合实施例对本发明的实施方式作进一步说明,但本发明的实施不限于此。
本专利的核心思路包括:将未标注文本看作正例文本来提取增广类向量,再根据增广类向量能否正确预测已经标注的文本确定未标注文本的伪标签,最后神经网络模型就可以对打上伪标签的未标注文本和已标注文本预测其类别,并计算用于更新网络权重的误差。其中:类向量和增广类向量提取的方法以及根据类向量预测文本类别的计算方法相同,只是输入不同所以造成输入的语义也不同。
首先使用预训练语言模型计算输入文本的文本向量;然后提取类向量和未标注文本对应的增广类向量;接着使用类向量对正、负例文本进行预测并计算标注文本预测误差,同时使用增广类向量计算未标注文本的伪标签并计算未标注文本的预测误差;接着使用所有预测误差对网络参数进行更新完成神经网络模型训练;最后以正例文本和未标注文本作为已训练好的神经网络模型的输入,输出未标注文本的类别。
如图1,一种未标注文本的半监督分类方法包括以下步骤:
S1、使用语言模型计算文本向量。
对每一条采集到的正例文本、负例文本和未标注文本,使用预训练语言模型得到正例文本向量、负例文本向量和未标注文本向量。
在一个实施例中,使用预训练的BERT模型,计算各个字符在所在文本中的向量表示,并取文本首字符的向量表示作为文本的向量,最终得到正例文本向量、负例文本向量和未标注文本向量。
说明:BERT模型在计算字符在文本中的向量表示时候,每个字符的向量表示会考虑该字符与其他字符的在文本中上下文关系。在本实施例中,取文本首字符的向量并经过训练后,文本首字符的向量表示足够表达整条文本的特征信息。实际上取任意位置字符的向量表示都能表示该文本,但是由于输入文本长度是不确定的,只有首字符向量是必定存在,故取文本首字符的向量表示作为文本的向量。
S2、使用正例文本向量提取类向量
使用动态路由算法对k个正例文本向量进行r次迭代,计算出各个正例文本向量的权重/>最终通过/>计算出类向量/>
动态路由算法具体过程包括:首先初始化向量各个维度为1,然后计算并使用/>更新/>各个维度,重复/>更新过程r次,最后使用最后一次迭代所计算的/>作为文本向量的类向量/>下一步中增广类向量的提取方法相同,仅输入数据发生变化。
S3、使用类向量计算正、负例文本预测误差。
首先,使用神经张量模型计算类向量和各个正、负例文本向量的距离。
类向量和任意文本向量/>距离的神经张量模型具体包括:根据类向量/>和文本向量/>的维度定义N个矩阵,对于每个矩阵Mi使用/>作为向量/>中的第i维,并使用/>作为类向量和文本向量之间的距离d。
然后,根据类向量与文本向量的距离d,计算正、负例文本预测误差L1。具体方法包括:使用L1=y-(1-d)作为文本的预测误差;如果文本为正例则y=1,如果文本为负例则y=0。
S4、使用正例文本和未标注文本向量提取增广类向量。
对于每条未标注文本,将未标注文本看作是正例文本,在k个正例文本向量末尾添加未标注文本的文本向量,使用和S2相同的动态路由算法,提取未标注文本对应的增广类向量。
S5、使用增广类向量计算未标注文本伪标签
未标注文本伪标签的计算方法包括:首先使用与S3相同的神经张量模型,计算每个未标注文本对应的增广类向量与正例文本和负例文本向量的距离;然后使用和S3相同的正、负例文本预测误差计算方法,计算采用增广类向量对正、负例文本的预测误差L′;最后计算未标注文本伪标签/>其中:N表示正例文本和负例文本数量和。
本步骤假设未标注文本属于正例,将未标注文本向量添加到k个正例文本向量末尾中,从而提取到新的增广类向量。若假设成立,即未标注文本属于正例,那么增广类向量能和类向量/>对正、负例文本正确分类,即得到较小的预测误差L′,因此可以采用/>作为未标注文本伪标签。
S6、计算未标注文本预测误差
未标注文本预测误差L2的计算方法包括:使用作为未标注文本的预测误差。/>为S5计算得到的未标注文本伪标签,d′为使用S4中的神经张量模型计算得到的类向量/>和未标注文本向量的距离。
S7、计算神经网络模型总误差并进行神经网络模型参数更新。
使用梯度下降方法,对预测误差进行反向传播并更新神经网络模型参数。在使用反向传播算法过程中,不计算对其它网络参数的梯度,从而使得误差不会经由/>向前传播;神经网络模型总预测误差为L=(1-λ)L1+λL2,λ为未标注文本预测损失的权重。
在一个实施例中,λ设置为0.2;训练正例文本数量20条,负例文本数量100条,未标注文本2000条;以学习率0.001进行训练,当总预测误差小于0.7%时停止训练,得到训练好的神经网络模型。
S8、基于训练好的神经网络模型和正例文本对未标注文本进行分类。
将训练得到的神经网络模型用于文本二分类时,输入待测文本和正例文本,使用与S2相同的动态路由算法提取类向量使用待测文本向量与类向量/>的距离d和1的差值作为待测文本为正例的概率p,即p=1-d;设置阈值pthreshold=0.5,若p≥pthreshold,则待测文本为正例文本,若p<pthreshold,则待测文本为负例文本。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (8)

1.一种未标注文本的半监督分类方法,其特征在于,包括以下步骤:
S1、对每一条采集到的正例文本、负例文本和未标注文本,使用预训练语言模型得到对应的正例文本向量、负例文本向量和未标注文本向量;
S2、使用动态路由算法从步骤S1中的正例文本向量提取类向量
S3、使用神经张量模型计算类向量和文本向量/>距离的方法计算步骤S1中的正例文本向量和负例文本向量到步骤S2的类向量/>的距离,并计算正、负例文本预测误差值L1
使用神经张量模型计算类向量和文本向量/>距离的方法包括:根据类向量/>和文本向量/>的维度定义N个矩阵,对于每个矩阵Mi使用/>作为向量/> 中的第i维,并使用/>作为类向量/>和文本向量/>之间的距离d;
S4、对于每一条未标注文本假定其为正例文本,使用动态路由算法使用步骤S1中的正例文本向量和未标注文本向量计算提取增广类向量;
S5、使用增广类向量计算未标注文本伪标签
S6、使用神经张量模型计算步骤S1中未标注文本向量和步骤S2的类向量的距离d′,并根据步骤S5的未标注文本伪标签/>计算未标注文本预测误差值L2
S7、使用步骤S3和步骤S6的误差L1和L2,利用反向传播算法进行神经网络模型参数的更新并完成神经网络模型训练;
S8、使用步骤S7训练好的神经网络模型和正例文本对待分类的文本进行分类。
2.根据权利要求1所述的半监督分类方法,其特征在于,步骤S1中使用预训练的BERT模型,计算各个字符在所在文本中的向量表示,并取文本首字符的向量表示作为文本的向量表示,最终得到正例文本向量、负例文本向量和未标注文本向量。
3.根据权利要求1所述的半监督分类方法,其特征在于,步骤S2包括:使用动态路由算法对k个正例文本向量进行r次迭代,计算出各个正例文本向量的权重/>最终通过/>计算出类向量/>
4.根据权利要求1所述的半监督分类方法,其特征在于,文本预测误差L1的计算方法包括:使用L1=y-(1-d)作为文本的预测误差;如果文本为正例则y=1,如果文本为负例则y=0。
5.根据权利要求4所述的半监督分类方法,其特征在于,未标注文本伪标签的计算方法包括:首先使用与S3相同的神经张量模型,计算每个未标注文本对应的增广类向量与正例文本和负例文本向量的距离;然后使用和S3相同的正、负例文本预测误差计算方法,计算采用增广类向量对正、负例文本的预测误差L′;最后计算未标注文本伪标签其中:N表示正例文本和负例文本数量和。
6.根据权利要求5所述的半监督分类方法,其特征在于,未标注文本预测误差L2的计算方法包括:使用作为未标注文本的预测误差。
7.根据权利要求1所述的半监督分类方法,其特征在于,在使用反向传播算法过程中,不计算未标注文本伪标签对其它网络参数的梯度,从而使得误差不会经由未标注文本伪标签/>向前传播;神经网络模型总预测误差L=(1-λ)L1+λL2,λ为未标注文本预测损失的权重。
8.根据权利要求1所述的半监督分类方法,其特征在于,步骤S8包括:将训练好的神经网络模型用于文本分类时,使用待测文本向量与类向量的距离d和1的差值作为待测文本为正例的概率p=1-d;设置阈值pthreshold,若p≥pthreshold则待测文本为正例文本,若p<pthreshold则待测文本为负例文本。
CN202011537909.2A 2020-12-23 2020-12-23 一种未标注文本的半监督分类方法 Active CN112579777B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011537909.2A CN112579777B (zh) 2020-12-23 2020-12-23 一种未标注文本的半监督分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011537909.2A CN112579777B (zh) 2020-12-23 2020-12-23 一种未标注文本的半监督分类方法

Publications (2)

Publication Number Publication Date
CN112579777A CN112579777A (zh) 2021-03-30
CN112579777B true CN112579777B (zh) 2023-09-19

Family

ID=75139068

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011537909.2A Active CN112579777B (zh) 2020-12-23 2020-12-23 一种未标注文本的半监督分类方法

Country Status (1)

Country Link
CN (1) CN112579777B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113377959B (zh) * 2021-07-07 2022-12-09 江南大学 基于元学习及深度学习的少样本社交媒体谣言检测方法
CN113919499A (zh) * 2021-11-24 2022-01-11 威盛电子股份有限公司 模型训练方法与模型训练系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108388914A (zh) * 2018-02-26 2018-08-10 中译语通科技股份有限公司 一种基于语义计算的分类器构建方法、分类器
CN110472665A (zh) * 2019-07-17 2019-11-19 新华三大数据技术有限公司 模型训练方法、文本分类方法及相关装置
CN111046183A (zh) * 2019-12-11 2020-04-21 金蝶软件(中国)有限公司 用于文本分类的神经网络模型的构建方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108388914A (zh) * 2018-02-26 2018-08-10 中译语通科技股份有限公司 一种基于语义计算的分类器构建方法、分类器
CN110472665A (zh) * 2019-07-17 2019-11-19 新华三大数据技术有限公司 模型训练方法、文本分类方法及相关装置
CN111046183A (zh) * 2019-12-11 2020-04-21 金蝶软件(中国)有限公司 用于文本分类的神经网络模型的构建方法和装置

Also Published As

Publication number Publication date
CN112579777A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
CN110134757B (zh) 一种基于多头注意力机制的事件论元角色抽取方法
CN111309912B (zh) 文本分类方法、装置、计算机设备及存储介质
CN108763931A (zh) 基于Bi-LSTM和文本相似性的漏洞检测方法
CN111143569A (zh) 一种数据处理方法、装置及计算机可读存储介质
CN113722493B (zh) 文本分类的数据处理方法、设备、存储介质
CN112163424A (zh) 数据的标注方法、装置、设备和介质
CN112579777B (zh) 一种未标注文本的半监督分类方法
CN113011191B (zh) 一种知识联合抽取模型训练方法
CN110633467B (zh) 一种基于改进特征融合的语义关系抽取方法
CN110162972B (zh) 一种基于语句联合编码深度神经网络的uaf漏洞检测方法
CN113138920B (zh) 基于知识图谱与语义角色标注的软件缺陷报告分派方法及装置
CN113204967B (zh) 简历命名实体识别方法及系统
CN110580308A (zh) 信息审核方法及装置、电子设备、存储介质
CN110851176A (zh) 一种自动构造并利用伪克隆语料的克隆代码检测方法
CN110555205A (zh) 否定语义识别方法及装置、电子设备、存储介质
CN113742733A (zh) 阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置
CN110674642B (zh) 一种用于含噪稀疏文本的语义关系抽取方法
CN116361147A (zh) 测试用例根因定位方法及其装置、设备、介质、产品
CN116756041A (zh) 代码缺陷预测与定位方法、装置、存储介质及计算机设备
CN115328782A (zh) 基于图表示学习和知识蒸馏的半监督软件缺陷预测方法
CN111860981A (zh) 一种基于lstm深度学习的企业国民行业类别预测方法及系统
CN114840685A (zh) 一种应急预案知识图谱构建方法
CN113806538B (zh) 标签提取模型训练方法、装置、设备与存储介质
CN114817516A (zh) 零样本条件下基于逆向匹配的画像映射方法、装置和介质
CN114330350A (zh) 一种命名实体识别方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant