CN114357166B - 一种基于深度学习的文本分类方法 - Google Patents
一种基于深度学习的文本分类方法 Download PDFInfo
- Publication number
- CN114357166B CN114357166B CN202111662807.8A CN202111662807A CN114357166B CN 114357166 B CN114357166 B CN 114357166B CN 202111662807 A CN202111662807 A CN 202111662807A CN 114357166 B CN114357166 B CN 114357166B
- Authority
- CN
- China
- Prior art keywords
- layer
- training
- input
- lstm
- loss
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000013135 deep learning Methods 0.000 title claims abstract description 10
- 238000012549 training Methods 0.000 claims abstract description 22
- 230000007246 mechanism Effects 0.000 claims abstract description 13
- 238000013528 artificial neural network Methods 0.000 claims abstract description 12
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 11
- 239000013598 vector Substances 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 8
- 210000004027 cell Anatomy 0.000 claims description 5
- 210000002569 neuron Anatomy 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims 2
- 238000003058 natural language processing Methods 0.000 abstract description 8
- 230000000694 effects Effects 0.000 abstract description 4
- 230000035945 sensitivity Effects 0.000 abstract description 2
- 238000013145 classification model Methods 0.000 description 5
- 241000282414 Homo sapiens Species 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 2
- 238000004880 explosion Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种基于深度学习的文本分类方法,首先进行噪音清除,包含去除标点符号、特殊字符。构建字典、依据字典构建数据集;词嵌入和对抗训练;训练双向长短时记忆网络层;训练注意力机制层;计算输出结果。本发明方法将广泛应用于图像领域的对抗训练方法应用于自然语言处理领域,通过在深度神经网络中添加对抗扰动,使得模型训练过程中网络向loss增大的方向改变,利用loss对输入求导从而更新参数,从而降低模型对于对抗扰动的敏感性,有效地缓解模型过拟合,提高文本分类效果。
Description
技术领域
本发明属于自然语言处理领域。文本分类是自然语言处理中最基础、最关键的技术之一,准确而高效的文本分类对于自然语言处理任务具有重要意义。对此利用深度学习算法进行准确的文本分类。
背景技术
在人工智能发展的各个领域中,自然语言处理是其中发展最快,应用最广泛的领域之一。自然语言处理是人类语言的机器处理,旨在教授机器如何处理和理解人类的语言,从而在人与机器之间建立一个简单的沟通渠道。而文本分类是自然语言处理中最基础、最关键的技术之一,是将文本进行转换然后自动分类到指定的某个或某几个类别当中的技术。在大数据时代背景下,应用深度学习算法的文本分类技术可以自动高效地执行分类任务,大大降低了成本消耗。文本分类任务在情感分析、舆论分析、领域识别、意图识别等多个领域都发挥着重要作用。
文本分类任务包含了两个部分:文本表示和文本分类。文本表示经历了从符号表示到隐性语义表示的过程,包括文本预处理技术和文本表示技术。文本预处理指在大多数情况下,文本中存在着一定的噪声和无用的部分,因此,在进行分类之前,我们需要对文本进行预处理,其通常包含清除噪声、去停用词、中文分词、统一英文大小写等步骤。文本表示技术是指在原始的自然语言是由人类才能识别的自然语言文字组成的情况下,计算机无法直接进行理解和处理,所以需要将由自然语言构成的文本转换成计算机可以识别的数字化表示方式。。其中包含基于独热编码的表示方法、基于向量空间模型的表示方法和基于分布式词向量的表示方法等。
目前基于深度学习的文本分类模型首先有基于卷积神经网络的文本分类模型;其次是基于循环神经网络的分类模型,它的出现主要是为了更好地处理序列信息,以序列数据作为输入,在序列的演进方向上进行递归,且所有节点按链式连接,可以有效的识别顺序特征并使用先前的模式来预测下一个可能的情况,从而有效地解决了传统神经网络无法捕获各输入之相关性的问题,但由于RNN反馈环路的缘故,梯度可以很快的发散到无穷大或迅速变为0,即存在梯度消失和梯度***的问题,在这两种情况下,网络将停止学习任何有用的东西。其中梯度***的问题可以通过梯度裁剪解决,而梯度消失问题则需要更复杂的RNN基本单元来定义;还有使用了更复杂的RNN基本单元,改进得到的长短时记忆网络模型和门控循环单元模型,他们都通过“门”这一机制,从而有选择性的使信息通过,更新或保留历史信息,从而一定程度上解决梯度问题;还包括可以对重要的内容和次要的内容给予不同注意力程度的注意力机制,它作为深度学习领域常用的辅助技术,使神经网络更专注某些特定神经元的学习。
发明内容
针对现有的大部分基于深度学习的文本分类模型没有通过在训练中引入噪音,模型鲁棒性都有待增强的问题。
本发明采用的技术方案为提出了一种在模型训练过程中引入噪音数据的基于深度学习的文本分类模型。为了实现上述目的,本发明采用的技术方案包括以下步骤:
步骤1,文本预处理。
对本文进行噪音清除,包含去除标点符号、特殊字符。构建字典、依据字典构建数据集。
步骤2,词嵌入和对抗训练。
步骤2.1使用基于预训练的词向量进行词嵌入的方式,以词+字为上下文特征的预训练词向量,并通过微调的方式适应当前语境。
步骤2.2用X+δ作为新的样本输入表示,其中X为原有的输入表示,δ为叠加在输入上的扰动,δ的计算方法为δ=α*Sign(g),其中g表示损失函数Loss关于输入X的梯度。计算在样本X上叠加一个扰动δ,再经过神经网络函数fθ(),与标签y比较得到的损失,并寻找到使该损失最大的δ。
步骤2.3,针对上一步得到的损失值,用最小化公式对神经网络进行优化。
步骤3,训练双向长短时记忆网络层。
把词嵌入结果输入到双向长短时记忆神经网络层,由前项的LSTM和后向的LSTM组合而成,通过Bi-LSTM更好地捕捉双向的语义依赖。其中Bi-LSTM的第i个隐层状态hi由hi→和hi←拼接而成,hi→和hi←分别是前向和反向的所有信息。其中每个LSTM层都由多个cell构成,任一时刻t的输出Ht由Ht-1、Ct-1和Xt计算得出,其中Ct-1为t-1时刻的候选单元状态,Xt为时间步长t的输入。
步骤4,训练注意力机制层。
训练注意力机制层输入为H=[h1,h2,...,hT],其中T表示输入序列的长度。注意力得分M由tanh(H)计算得到,注意力得分的概率分布α由softmax(ωTM)计算得到,其中ωT是可训练的参数。
训练注意力机制层的输出r由H与αT进行矩阵相乘得到。
步骤5,计算输出结果。
使用全连接层则将提取到的特征映射到具体类别中,输入由两个LSTM层提取到的特征拼接而成,通过与权重矩阵的相乘并加上偏置项从而将特征信息映射到各个类别中,最后再通过Softmax函数得到概率,计算方法为Lable[]=softmax(Fc(A)),其中A=[A0,A2,...,Ai]为输入特征,i为输入特征的维度。C=[C0,C2,...,Cn]为特征经过全连接层后得到的各个类别的分数,n代表了类别的个数。然后C0到Cn再经过了Softmax函数从而得到类别分数到各个类别的概率分布L。
本发明方法将广泛应用于图像领域的对抗训练方法应用于自然语言处理领域,通过在深度神经网络中添加对抗扰动,使得模型训练过程中网络向loss增大的方向改变,利用loss对输入求导从而更新参数,从而降低模型对于对抗扰动的敏感性,有效地缓解模型过拟合,提高文本分类效果。
附图说明
图1为本发明具体实施方式的流程图。
具体实施方式
实施方式的流程图如图1所示,包括以下步骤:
(1)文本预处理
包括清除噪声的操作,即去除标点符号、特殊字符等噪声。然后进行构建字典、依据字典构建数据集的工作。
(2)词嵌入和FGSM攻击层
词嵌入的作用是将简单的词语ID映射成稠密的空间向量。词语是深度学习模型进行文本处理的基本单元,首先需要对词语进行符号化表示,将由自然语言构成的文本转换成数字化的向量表示。在进行词语表示时,对于给定的一个由T个词语组成的文本,词嵌入层的目的是把每个词语表示为一个合适维度的向量。
在词嵌入上通过FGSM方法,针对梯度增加一次扰动,生成对抗样本,将对抗样本以原始样本同样的形式输入到后续处理层,通过优化两类样本的损失函数的和来训练模型。FGSM会让扰动的方向沿着梯度提升的方向进行。沿着梯度提升也意味着能让损失增大的最大。
扰动结束后,会把参数加到Embedding上,完成对词嵌入部分的对抗训练。
(3)双向LSTM层
由于在文本中,某个词语包含的语义信息,不仅和前文有关,还和后文有关,而单向LSTM会忽略前文或后文的重要信息。若同时从前往后并从后往前的学习文本,可以更好的提取文本语义信息,并考虑到具体的语境含义。双向长短时记忆神经网络,由前项的LSTM和后向的LSTM组合而成,得到词向量后,双向LSTM层将前向隐藏层和后向隐藏层拼接,最终输出当前细胞状态乘以输出门的权重矩阵所得到输出矩阵H:[h1,h2,…,hT]。
为防止在训练数据集上的预测准确率较高,在测试数据集上的预测准确率低,即出现过拟合的情况,在双向LSTM层结合Dropout和参数优化算法进行训练:在每次迭代过程中隐藏层的神经元会以一定的概率被临时丢弃,然后对新的网络进行训练,对保留下来的神经元进行参数的更新。
(4)Attention层
注意力机制(Attention Mechanism)的主要思想是模仿人类观察事物的方式,即由内部经验到外部感官的对齐从而增加对部分区域观察精度的机制。在进行文本分类时,在某个句子里面肯定会涉及到有关类别信息的关键词语,而这些句子里面的其他词语则是其上下文信息词汇,它们所起的作用远没有关键词大。注意力机制可以决定整个句子中哪些词汇需要重点关注,从而让模型可以从关键词汇中提取到更加具有鉴别性的特征。
得到双向LSTM层的输出矩阵H:[h1,h2,…,hT]之后,Attention层将每个时刻学习该时刻的向量表示的权重分布,然后根据这个权重分布进行资源分配并加权求和,得到一个关键信息更丰富的当前时刻i的向量表示hi。
(5)分类
之前的双向LSTM以及注意力层的主要功能均是在完成对习题文本数据进行特征提取的工作,而全连接层则将提取到的特征映射到具体类别中。它的输入由两个不同深度的双向LSTM层提取到的特征拼接而成,通过与权重矩阵的相乘并加上偏置项从而将特征信息映射到各个类别中,最后再通过Softmax函数得到习题数据在各个类别上的概率p,得到最后的分类结果。
下面给出应用本发明的实验结果。
表1给出了本发明方法在THUCNews中抽取的二十万条新闻标题数据集下的测试结果,测试评价方法由准确率、精确率、召回率F1值组成。由表可知,本发明方法在数据集上的四项衡量指标均高于未加入对抗训练的Bi-LSTM-Attention方法,说明本发明方法相比于不使用对抗训练的Bi-LSTM-Attention方法效果更好
表1本发明方法与基准模型方法的性能比较
衡量指标 | Bi-LSTM-Attention | 本发明方法 |
准确率 | 90.47% | 91.93% |
精确率 | 90.6% | 92.02% |
召回率 | 90.4% | 91.93% |
F1值 | 90.4% | 91.95% |
Claims (1)
1.一种基于深度学习的文本分类方法,其特征在于:该方法的实现步骤如下:
步骤1,文本预处理;
对本文进行噪音清除,包含去除标点符号和特殊字符,构建字典,依据字典构建数据集;
步骤2,词嵌入和对抗训练;
步骤2.1使用基于预训练的词向量进行词嵌入的方式,以词+字为上下文特征的预训练词向量,并通过微调的方式适应当前语境;
步骤2.2用X+δ作为新的样本输入表示,其中X为原有的输入表示,δ为叠加在输入上的扰动,δ的计算方法为δ=α*Sign(g),其中g表示损失函数Loss关于输入X的梯度;计算在样本X上叠加一个扰动δ,再经过神经网络函数fθ(),与标签y比较得到的损失,并寻找到使该损失最大的δ;
步骤2.3,针对上一步得到的损失值,用最小化公式对神经网络进行优化;
步骤3,训练双向长短时记忆网络层;
把词嵌入结果输入到双向长短时记忆神经网络层,由前项的LSTM和后向的LSTM组合而成,通过Bi-LSTM更好地捕捉双向的语义依赖;其中Bi-LSTM的第i个隐层状态hi由hi→和hi←拼接而成,hi→和hi←分别是前向和反向的所有信息;其中每个LSTM层都由多个cell构成,任一时刻t的输出Ht由Ht-1、Ct-1和Xt计算得出,其中Ct-1为t-1时刻的候选单元状态,Xt为时间步长的输入;在每次迭代过程中隐藏层的神经元会以一定的概率被临时丢弃,然后对新的网络进行训练,对保留下来的神经元进行参数的更新;
步骤4,训练注意力机制层;
训练注意力机制层输入为H=[h1,h2,...,hT],其中T表示输入序列的长度;注意力得分M由tanh(H)计算得到,注意力得分的概率分布α由softmax(ωTM)计算得到,其中ωT是可训练的参数;
训练注意力机制层的输出r由H与αT进行矩阵相乘得到;
步骤5,计算输出结果;
使用全连接层将提取到的特征映射到具体类别中,输入由两个不同深度的双向LSTM层提取到的特征拼接而成,通过与权重矩阵的相乘并加上偏置项从而将特征信息映射到各个类别中,最后再通过Softmax函数得到概率,计算方法为Lable[ ]=softmax(FC(A)),其中A=[A1,A2,...,Ai]为输入特征,i为输入特征的维度;C=[C1,C2,...,Cn]为特征经过全连接层后得到的各个类别的分数,n代表了类别的个数;然后C1到Cn再经过Softmax函数从而得到类别分数到各个类别的概率分布L。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111662807.8A CN114357166B (zh) | 2021-12-31 | 2021-12-31 | 一种基于深度学习的文本分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111662807.8A CN114357166B (zh) | 2021-12-31 | 2021-12-31 | 一种基于深度学习的文本分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114357166A CN114357166A (zh) | 2022-04-15 |
CN114357166B true CN114357166B (zh) | 2024-05-28 |
Family
ID=81104826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111662807.8A Active CN114357166B (zh) | 2021-12-31 | 2021-12-31 | 一种基于深度学习的文本分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114357166B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114743081B (zh) * | 2022-05-10 | 2023-06-20 | 北京瑞莱智慧科技有限公司 | 模型训练方法、相关装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740148A (zh) * | 2018-12-16 | 2019-05-10 | 北京工业大学 | 一种BiLSTM结合Attention机制的文本情感分析方法 |
CN109992780A (zh) * | 2019-03-29 | 2019-07-09 | 哈尔滨理工大学 | 一种基于深度神经网络特定目标情感分类方法 |
CN111274405A (zh) * | 2020-02-26 | 2020-06-12 | 北京工业大学 | 一种基于gcn的文本分类方法 |
CN111444346A (zh) * | 2020-03-31 | 2020-07-24 | 广州大学 | 一种用于文本分类的词向量对抗样本生成方法及装置 |
CN113822328A (zh) * | 2021-08-05 | 2021-12-21 | 厦门市美亚柏科信息股份有限公司 | 防御对抗样本攻击的图像分类方法、终端设备及存储介质 |
-
2021
- 2021-12-31 CN CN202111662807.8A patent/CN114357166B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740148A (zh) * | 2018-12-16 | 2019-05-10 | 北京工业大学 | 一种BiLSTM结合Attention机制的文本情感分析方法 |
CN109992780A (zh) * | 2019-03-29 | 2019-07-09 | 哈尔滨理工大学 | 一种基于深度神经网络特定目标情感分类方法 |
CN111274405A (zh) * | 2020-02-26 | 2020-06-12 | 北京工业大学 | 一种基于gcn的文本分类方法 |
CN111444346A (zh) * | 2020-03-31 | 2020-07-24 | 广州大学 | 一种用于文本分类的词向量对抗样本生成方法及装置 |
CN113822328A (zh) * | 2021-08-05 | 2021-12-21 | 厦门市美亚柏科信息股份有限公司 | 防御对抗样本攻击的图像分类方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114357166A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110609891B (zh) | 一种基于上下文感知图神经网络的视觉对话生成方法 | |
CN110298037B (zh) | 基于增强注意力机制的卷积神经网络匹配的文本识别方法 | |
CN112163426B (zh) | 一种基于注意力机制与图长短时记忆神经网络结合的关系抽取方法 | |
CN108984526B (zh) | 一种基于深度学习的文档主题向量抽取方法 | |
CN110765775B (zh) | 一种融合语义和标签差异的命名实体识别领域自适应的方法 | |
CN110134946B (zh) | 一种针对复杂数据的机器阅读理解方法 | |
CN112883738A (zh) | 基于神经网络和自注意力机制的医学实体关系抽取方法 | |
CN111966812B (zh) | 一种基于动态词向量的自动问答方法和存储介质 | |
CN110555084A (zh) | 基于pcnn和多层注意力的远程监督关系分类方法 | |
CN106682089A (zh) | 一种基于RNNs的短信自动安全审核的方法 | |
CN113641809B (zh) | 一种基于XLNet模型与知识图谱的智能问答方法 | |
CN111984791A (zh) | 一种基于注意力机制的长文分类方法 | |
CN112347269A (zh) | 基于BERT和Att-BiLSTM的论点对识别方法 | |
CN112988970A (zh) | 一种服务于智能问答***的文本匹配算法 | |
CN114417851A (zh) | 一种基于关键词加权信息的情感分析方法 | |
CN114239574A (zh) | 一种基于实体和关系联合学习的矿工违规行为知识抽取方法 | |
CN114254645A (zh) | 一种人工智能辅助写作*** | |
CN115496072A (zh) | 一种基于对比学习的关系抽取方法 | |
CN115858750A (zh) | 基于自然语言处理的电网技术标准智能问答方法及*** | |
CN115879546A (zh) | 一种复合神经网络心理医学知识图谱构建方法及*** | |
CN115169349A (zh) | 基于albert的中文电子简历命名实体识别方法 | |
CN114357166B (zh) | 一种基于深度学习的文本分类方法 | |
CN116522165B (zh) | 一种基于孪生结构的舆情文本匹配***及方法 | |
CN114239584A (zh) | 一种基于自监督学习的命名实体识别方法 | |
CN111353032B (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 |