技术领域
本发明属于自然语言处理、文本分类领域,特别涉及一种基于主动学习混合神经网络的文本分类方法。
背景技术
随着互联网的快速发展,现有的各大招标网站每天都会发布各类行业的招标信息,能够快速从海量招标数据中找到纸包装相关招标信息,即对招标文本数据的分类成为纸包装行业最关心的问题。
现有的文本数据分类方法由于样本数据集较为规范,在实际运用于具体的工程项目上时,基本忽略文本数据复杂、噪音巨大等问题,直接对工程项目的文本数据进行简单的处理后,便进行神经网络学习。常见的神经网络学习分为有无监督学习和有监督学习两种主流学习方法。主要存在的问题有以下几点:
1、有监督学习。该方法所生产的模型的好坏主要依赖于标注数据的量的大小,标注数据量越大,模型效果就越好,往往需要投入很大的人力成本。常用的模型有CNN模型、RNN模型等。
2、无监督学习。在没有先验类别作为样本的条件下,根据像元间相似度大小进行计算机自动判别归类,无须人为干预,分类后需确定地面类别。该方法需对其结果进行大量分析以及后处理,才能得到可靠的分类结果。
3、对文本特点的忽略。在实际的工程项目中,我们所接触到的文本数据往往没有正规数据集那样干净,会参杂各种各样的噪声数据,比如在招标文件中,想要判断一个招标文件是否是纸包装类招标,可能只需要招标文本中的招标标题或者招标简介即可判断,其他的招标要求等数据就是噪声数据了。
针对上述问题,本发明提出:采用word2vec来提取文本关键词,并结合原文本信息组成样本数据;采用基于attention机制的BiLSTM+CNN迭代模型来进行文本分类;利用主动学习的迭代框架降低人工标注大量数据的成本。
最终,本发明所提出的分类方法运用在实际的工程项目---招标文本数据分类上面,解决了纸包装行业最关心的招标文本数据分类问题。
发明内容
本发明的目的在于克服上述现有技术不足,提供一种基于主动学习混合神经网络的文本分类方法。
本发明采用如下技术方案:
一种基于主动学习混合神经网络的文本分类方法,包括以下步骤:
步骤1,从信息库中抽样选取少量数据,作为生成初始训练数据集的原始文本数据集。
步骤2,采用word2vec对1收集到的文本进行关键字的提取,并与原文本进行拼接形成样本数据。
步骤3,对2形成的样本数据进行人工数据标注,形成训练数据。
步骤4,将训练数据喂入BiLSTM+Attention+CNN模型中,进行文本的表征学习。
步骤5,对步骤4的学习结果进行判断,看其是否达到预期效果,若未达到,则对学习的结果进行筛选出最优(前20%条)和最差(后20%条)样本,并对其监督进行重标注。
步骤6,重复步骤4-5,直到学习结果达到预期值,结束训练,并形成最终模型。
采用word2vec进行文本关键词的提取,所述的步骤2具体实现方法如下:
采用自定义停用表,对步骤1得到的样本数据进行数据预处理操作,包括分词、去重、去停用词,形成列表存储;
采用word2vec的skip-gram+Huffman softmax组合模型对估算的词与词之间的转移概率进行建模,完成关键词词向量的提取,存入文件中;
采用欧式距离计算方法,计算得到的每个词与中心词的距离;
按照得到的距离升序排序,选取排名前N个词作为关键词。
采用混合神经网络进行表征学习,所述的步骤4具体实现方法如下:
将步骤3得到的训练样本数据输入混合神经模型的embedding层,将单词转化为词向量;
将词向量输入混合神经模型的BiLSTM层,得到完整的隐藏向量H;
将隐藏向量H传入Attention层,得到最终加权后的向量;
将加权后的向量输入CNN层,进行特征提取,得到表示矩阵;
将表示矩阵输入softmax层进行分类,得到对应的分类标签。
采用主动学习的思想,使得学习算法可以主动地提出一些标注请求,将经过筛选后的数据提交给专家进行标注,所述的步骤5具体实现方法如下:
针对步骤4的学习结果,调用查询函数,查询最优(前20%条)和最差(后20%条)样本;
向督导者询问标签,利用获得的新知识来训练分类器和进行下一轮查询。
采用人工标注的50条标注数据,利用本发明提出的自主学习迭代框架,最后共迭代产生出50000条招标相关数据的训练数据,相比于传统的分类方法,本发明结果节省了大量的人力成本,取得了非常显著的效果。
附图说明
图1是本发明的整体流程图。
图2是本发明所提及到的用来进行表征学习的混合神经网络的模型图。
图3是本发明所提及到的自主学习思想的框架图。
具体实施方式
如图1所示,具体实施方式如下:
1、从信息库中抽样选取少量数据,作为生成初始训练数据集的原始文本数据集。
2、采用word2vec对1收集到的文本进行关键字的提取,并与原文本进行拼接形成样本数据。
3、对2形成的样本数据进行人工数据标注,形成训练数据。
4、将训练数据喂入Attention+BiLSTM+CNN模型中,进行文本的表征学习。
5、对步骤4的学习结果进行判断,看其是否达到预期效果,若未达到,则对学习的结果进行筛选出最优(前20%条)和最差(后20%条)样本,并对其监督进行重标注。
6、重复步骤4-5,直到学习结果达到预期值,结束训练,并形成最终模型。
图2为BiLSTM+Attention+CNN混合神经网络架构图,用来对样本数据进行表征学习。主要包含embedding层、BiLSTM层、Attention层、CNN层和分类层。
图3为本发明采用的主动学习的模型,用来主动地提出一些标注请求,将一些经过筛选的数据提交给专家进行标注,从而大量的减少人工标注的成本。其中C为步BiLSTM+Attention+CNN模型,U为步未标注样本集,L是用于训练已标注的样本。Q是查询函数,用于从未标注样本池U中查询信息量大的信息,这里为抽取top n和buttom m个信息,其中n,m自定义。S是督导者,为U中样本标注正确的标签。
1、使用word2vec提取关键词,与原文本数据组成样本数据,解决实际工程项目(包装行业招标分类)中的文本噪声问题。
2、使用基于attention+BiLSTM+CNN混合神经网络的自主学习迭代框架,采用半监督学习方式解决人工标注量大的问题。
纸箱招标文本的分类,是指根据所给定的招标数据,按照其特征,来识别该条招标数据是否是纸箱类的招标。即给定招标集合D={n
本发明将从文本收集及其预处理、BiLSTM+Attention+CNN进行表征学习以及自主学习进行样本迭代三个方面进行阐述。具体操作如下:
1、文本收集及预处理
1)文本收集
考虑到在实际的工程项目中,招标信息库具有来源广泛性、数据复杂性等特征,采用分层抽样的方式,从不同网站源各抽取2000条数据,共200个网站源。且获取招标数据的标题、简介、正文等字段作为样本数据集,其中正文不超过200个字符。
2)word2vec关键词提取
提到关键词提取,最容易想到的便是TF-IDF以及TextRank等方法,但TF-IDF以及TextRank仅仅是将“相同词”叠加起来进行评估,而word2vec是将“相似词语”进行叠加起来进行评估,能够初步结合语义来进行判断。关键词在数学上的定义为条件概率p(s|w
这样,只需估算词与词之间的转移概率p(w
本发明采用word2vec的skip-gram+Huffman softmax组合模型对转移概率p(w
2、BiLSTM+Attention+CNN进行表征学习
具体步骤如下:
1)embedding。对于1中获取到的样本数据,将一个含有n个词的句子记作X=(x
2)BiLSTM提取文本特征。将一个句子各个字的embedding序列作为双向LSTM各个时间步的输入,将正反向输出的隐状态进
3)Attention加权。将H集合{h
4)CNN进行特征提取。选取指定大小的滑动窗口的卷积核对特征矩阵进行卷积,其间用到0填充操作,目的是为了充分利用和处理输入数据的边缘信息,搭配合适的卷积层参数可保持与输入同等大小,而避免随着网络深度增加,输入大小的急剧减小。公式如下:
f=(map
池化通过对输入的Feature Map进行降维,有效减少后续层需要的参数。除此之外,Translation Invariance平移不变性。它表示对于Input,当其中像素在邻域发生微小位移时,Pooling Layer的输出是不变的。这就使网络的鲁棒性增强了,有一定抗扰动的作用。
5)分类。针对句子X,通过上述的BiLSTM、Attention机制以及CNN,得到对应的表示矩阵作为softmax的输入,最终得到其分类标签。
3、主动学习进行迭代
在真实的数据分析场景中,我们可以获取海量的数据,但是这些数据都是未标注数据,很多经典的分类算法并不能直接使用。且数据标注的代价是很大的,这时候,学习算法可以主动地提出一些标注请求,将一些经过筛选的数据提交给专家进行标注。
本发明采用的主动学习的模型如下:
A=(C,Q,S,L,U),
其中C为步骤2提到的BiLSTM+Attention+CNN模型,U为步骤1得到的未标注样本集,L是步骤1得到的用于训练已标注的样本。Q是查询函数,用于从未标注样本池U中查询信息量大的信息,这里为抽取top n和buttom m个信息,其中n,m自定义。S是督导者,为U中样本标注正确的标签。学习者通过少量初始标记样本L开始学习,通过查询函数Q选择出一个或一批最有用的样本,并向督导者询问标签,然后利用获得的新知识来训练分类器和进行下一轮查询。主动学习是一个循环的过程,直至达到某一停止准则为止。
将本发明所提出的基于主动学习混合神经网络的文本分类模型,运用在实际的工程项目—纸包装行业的招标数据的二分类中,即实现招标数据的二分类(是否是纸箱招标)。
在实际工程项目中,将本发明所提出的基于主动学习混合神经网络的文本分类方法运用于招投标文本数据的分类中,解决了纸包装行业所关心的从海量招投标信息中快速得到纸包装行业的招投标信息的问题。具体实施如下:
1、采用分层抽样的方式,从200个网站源各抽取2000条数据,共400000条数据。且获取招标数据的标题、简介、正文等字段作为样本数据集,其中正文不超过200个字符。
2、从400000条数据中选取500条数据作为训练样本数据,采用word2vec对选取的500条数据进行关键词提取,拼接源数据得到样本数据。
3、将处理后的500条数据输入BiLSTM+Attention+CNN混合神经网络中进行表征学习,得到对应的表征矩阵,
4、将步骤3的结果其作为softmax的输入,得到最终分类标签—纸包装类招标或非纸包装类招标。
5、筛选3得到的最优和最差样本,并对其监督进行重标注得到修正后的样本集,随后再从400000条数据中依次选取数据200条,结合修正样本集得到最终样本集。
6、重复步骤3-4,直到400000条数据处理完毕,得到最终模型。
机译: 基于神经网络模型的文本数据分类方法和装置和存储介质
机译: 基于卷积神经网络的文本分类方法及相关装置
机译: 一种基于分数的文本单元分类方法,计算机程序产品及其计算机