CN115599915A - 基于TextRank与注意力机制的长文本分类方法 - Google Patents

基于TextRank与注意力机制的长文本分类方法 Download PDF

Info

Publication number
CN115599915A
CN115599915A CN202211280953.9A CN202211280953A CN115599915A CN 115599915 A CN115599915 A CN 115599915A CN 202211280953 A CN202211280953 A CN 202211280953A CN 115599915 A CN115599915 A CN 115599915A
Authority
CN
China
Prior art keywords
text
vector
textrank
layer
sequence
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.)
Pending
Application number
CN202211280953.9A
Other languages
English (en)
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.)
Guangxi University
Nanning University
Original Assignee
Guangxi University
Nanning University
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 Guangxi University, Nanning University filed Critical Guangxi University
Priority to CN202211280953.9A priority Critical patent/CN115599915A/zh
Publication of CN115599915A publication Critical patent/CN115599915A/zh
Pending legal-status Critical Current

Links

Images

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

基于TextRank与注意力机制的长文本分类方法,包括以下步骤;将长文本序列输入TextRank层计算出长文本的关键句序列与关键词序列,选出关键句序列中权重最高的句子作为该文本的关键句,对长文本序列进行数据预处理操作;将经过TextRank层处理后的文本序列输入WordEmbedding层生成词向量表示;将长文本向量输入BiGRU层中,BiGRU将结合文本的上下文提取其特征信息;结合文本的关键句对文本向量进行注意力计算,得出文本向量里对应关键句的注意力分数,根据注意力分数更新文本特征向量;将更新后的文本特征向量输入到Linear与Softmax层得出分类结果。本发明能够对于较长的文本会根据文中词语的重要程度裁剪文本,提高了每段文本的质量。

Description

基于TextRank与注意力机制的长文本分类方法
技术领域
本发明属于长文本特征提取技术领域,特别涉及基于TextRank与注意力机制的长文本分类方法。
背景技术
文本分类任务可按照文本长度,分为短文本分类与长文本分类。而长文本分类任务相较于短文本分类,难点在于对较长序列的特征信息提取与重点内容划分。现有的文本分类方法没有很好地针对长文本做一些方法上的改进,在应用时没有充分考虑长文本与短文本的不同,这样会导致分类模型在长文本语境与短文本语境上的性能存在差异。
如文献提出一种多尺度卷积注意力结合GRU(Gated Recurrent Unit)的分类方法,虽然该分类方法取得了不错的分类性能,但是其实验所应用的数据集都是短文本数据集,最长数据集的平均文本长度也仅为45。文献采用SRU(Simple Recurrent Unit)和Attention的方式提取特征信息,普通的Attention没法充分地提取长文本中的关键特征信息。
发明内容
为了克服以上技术问题,本发明的目的在于提供基于TextRank与注意力机制的长文本分类方法,该方法适用于长文本的主题分类与情感分析,对于较长的文本会根据文中词语的重要程度裁剪文本,提高了每段文本的质量。其次,该方法会提取当前文本的关键句作为注意力机制的查询向量,根据关键句向量计算文本的注意力得分,使模型更关注与关键句语义相近的部分。
为了实现上述目的,本发明采用的技术方案是:
基于TextRank与注意力机制的长文本分类方法,包括以下步骤;
Step1:将长文本序列输入TextRank层计算出长文本的关键句序列与关键词序列,关键句序列与关键词序列按照权重排序,权重越接近1,则越重要,选出关键句序列中权重最接近1的句子作为该文本的关键句,对长文本序列进行数据预处理操作,按照设置好的样本统一长度裁剪或填充每条文本,对于较长的文本将其权重较低的关键词裁剪掉,对于较短的文本在其尾部填充上权重较高的关键词;
Step2:将经过TextRank层处理后的文本序列输入Word Embedding层生成词向量表示;
Step3:将长文本向量输入BiGRU层中,BiGRU将结合文本的上下文提取其特征信息;
Step4:结合文本的关键句对文本向量进行注意力计算,得出文本向量里对应关键句的注意力分数,根据注意力分数更新文本特征向量;
Step5:将更新后的文本特征向量输入到Linear与Softmax层得出分类结果。
所述TextRank是利用图网络生成各词的带权图节点,若两词存在一个共现窗口中,则在两词节点之间建立边,在训练中不断迭代更新各节点的权值,各节点权值的更新公式如下:
Figure BDA0003898216010000031
其中,WS{Vi}、WS{Vj}代表i词与j词的权重值;Vi、Vj代表i词与j词在图中的节点;InVi、OutVj分别代表Vi的入度集合与Vj的出度集合;d为阻尼系数,通常设置为0.85,说明该点指向另一个节点的概率为85%。
所述TextRank的关键句序列是以句子间相似度为依据,通过构造句子级别的有权图,更新句子节点之间的相似度权重,再根据各句子的相似度分数排列成关键句序列,各句子节点之间的相似度计算公式如下:
Figure BDA0003898216010000032
其中Si、Sj为两句子节点,wk为两句子间的单词,整个公式(2)就是在计算两句子间的内容重复度。
所述TextRank层的处理步骤如下:
Step1:首先要进行的是数据预处理操作,将长文本序列输入TextRank层中,通过停用词表分词并过滤掉无关词;
Step2:根据式(1)更新各词节点的权重,根据权重值将各词排序成关键词序列,根据长文本中任意表示句子结束的标点符号分句,通过式(2)计算出关键句;
Step3:根据设置好的文本统一长度,对于较长文本删除其中的较不重要关键词,对于较短文本在其尾部添加较重要关键词,以这种方法保证各样本长度相同,同时也保留了较长样本的重要内容,加强了较短样本的特征信息;
Step4:将关键句序列中权值最高的句子作为当前样本的关键句,将处理好的文本输入下一层;
所述BiGRU层的作用是提取输入文本的特征信息,通过前向GRU层与反向GRU层充分考虑文本的上下文关系;
GRU网络的核心公式如下:
zt=σ(Wz·[ht-1,xt]) ⑶
rt=σ(Wr·[ht-1,xt]) ⑷
Figure BDA0003898216010000041
Figure BDA0003898216010000042
其中,式(3)(4)为更新门和重置门的计算公式,由ht-1与当前输入xt计算得出,σ为sigmoid函数;公式(5)为当前时刻候选记忆单元
Figure BDA0003898216010000043
的计算公式,由重置门筛选出ht-1中要留下的信息结合xt构成
Figure BDA0003898216010000044
公式(6)为当前时刻ht的计算公式,zt决定丢弃多少ht-1中的信息,决定留下多少
Figure BDA0003898216010000045
中的信息。
所述BiGRU是双向的GRU,将文本序列正向输入GRU得出正向特征,将文本序列反向输入GRU得出反向特征,结合正向特征与反向特征作为文本序列的整体上下文特征;
将正向输出与反向输出想加作为长文本的内容向量H,公式如下:
Figure BDA0003898216010000051
将关键句输入BiGRU中,将所有隐藏层的最后时间步输出想加作为关键句的总结向量,公式如下:
Figure BDA0003898216010000052
其中num_layers为隐藏层层数,hi为第i层的最后时间步输出,将Ksen与H一起输入Attention层。
所述Attention层根据长文本中内容的重要程度为其分配权重值,将关键句与注意力机制相结合;
将关键句向量Ksen作为注意力机制的Query,将长文本内容向量H作为注意力机制的Key与Value,计算公式如下:
Figure BDA0003898216010000053
其中d为收敛因子,通常为词向量维度,Q与KT相乘得出文本向量相对于关键句的分数矩阵,除以收敛因子后通过softmax函数归一化得到文本向量权重矩阵,通过权重矩阵更新文本向量V得到向量C,将向量C输入最后一层得出分类结果。
本发明的有益效果。
本发明给现有的文本分类方法提供了新思路,设计了一款适用于长文本的主题分类模型。提出了基于TextRank的文本预处理方法,以及基于关键句的注意力计算方法,提升了长文本分类任务的准确率。对于日常生活中的长篇文章与新闻的主题分类、社交平台长评情感分类提供了一种现实可行的解决方案。
附图说明:
图1为本发明的长文本分类方法。
图2为GRU网络结构示意图。
图3为BiGRU网络结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
步骤一:输入一段长文本,长文本如下:
长文本 标签
This movie is very good.I like it very much.The hero in... positive
结合TextRank算法挑选出长文本中的关键词,关键词序列如下[movie,like,good,hero,...],若文本长度为480,文本统一长度为500,则需要从关键词序列中挑选出最重要的20个关键词填充到该长文本的末尾。
步骤二:将经过TextRank处理后的长文本输入GloVe模型生成向量表示,该长文本的向量形状为[1,500,100],其中1为文本数量,500为文本的长度,100为词向量的大小。
步骤三:将该长文本向量输入BiGRU模型,根据上下文语义提取长文本的特征信息。
将第一个时间步的输出与最后一个时间步的输出拼接,作为当前长文本的总结向量,输入到注意力层。
步骤四:注意力层将“positive”作为查询向量Query,将当前长文本作为待查向量Key,通过点积注意力计算方式,给长文本的各个单词分配注意力权重。计算公式如下:
Figure BDA0003898216010000071
其中Vpositive为“positive”的词向量表示,KT为矩阵转置后的K向量,d为词向量的维度,用于缩放点积后的值,softmax为归一化函数。
步骤五:将当前长文本的向量C属于到linear层与softmax层得出分类结果。
实验选用两个长文本数据集:IMdb、Yelp。IMdb和Yelp为都为二分类数据集。过滤掉IMdb数据集中长度小于400的样本,过滤后的IMdb数据集中共有3370条样本作为训练集,3147条样本作为测试集。过滤掉Yelp中长度小于400的样本,其中训练集设置为20000条,测试集设置为5000条。
其中IMdb数据集的平均样本长度为590,Yelp数据集中平均样本长度为545。设置各数据集信息如下表所示:
表1数据集信息
Figure BDA0003898216010000081
实验参数设置
本文实验采用对比实验法,选用的对比模型为LSTM、GRU、Bi GRU、BiLSTM、TextCNN、BiGRU-Att、CNN-BiGRU、TextRank-Bi GRU-Att。本文所有模型的词嵌入模型都为GloVe(Global Vectors)模型,优化函数为Adam,词向量维度为100。学习率为1e-4,在IMd b与Yelp数据集上的批量大小分别为128和64,隐藏层个数为100,训练迭代次数为10,CNN的卷积核大小为[3,4,5],通道数为100。
4.3实验评价指标
本实验采用的评价指标为精确率、召回率、F1值,计算公式如下:
Figure BDA0003898216010000082
Figure BDA0003898216010000083
Figure BDA0003898216010000084
其中TP为正类中预测为正类的数量;FP为吧负类预测为正类的数量;FN为把正类预测为负类的数量。
实验结果及分析
各模型在Imdb、Yelp数据集的实验结果如下表所示:
表2 Imdb数据集各模型实验结果(%)
Figure BDA0003898216010000085
Figure BDA0003898216010000091
表3 Yelp数据集各模型实验结果(%)
Figure BDA0003898216010000092
如表2所示,本文方法在Imdb数据集上的精确率为74.52%、召回率为80.06%、F1为77.44%。如表3所示,本文方法在Yelp数据集上的精确率为87.01%、召回率为87.64%、F1值为87.32%。本文方法在两长文本数据集上的实验结果都优于对比模型,其中F1值比TextRank-BiGRU-Att模型高3.03%、8.13%,说明本文结合了关键句来做长文本的注意力计算能加强模型的特征提取能力,能凸显长文本的中的重要特征信息。当文本较长时,普通的注意力机制只能找出相对于长文本内部来说比较重要的内容,这样的特征提取方式范围太广,没有针对性。而长文本的关键句一般蕴含着文本的主题思想,用主题思想去做注意力计算能加强特征提取的针对性,使内容上更贴近关键句的部分获得更高的权重。将TextRank-BiGRU-Att对比BiGRU-Att模型,F1值高出0.17%、2.33%,证明了基于TextRank的数据预处理,在保证样本长度一致的同时也能充分保留较长文本的重要信息,增强较短文本的特征信息。

Claims (7)

1.基于TextRank与注意力机制的长文本分类方法,其特征在于,包括以下步骤;
Step1:将长文本序列输入TextRank层,TextRank模型将计算出权重在[0-1]范围内的长文本关键句序列与关键词序列,句子和词语的权重越接近1则重要系数越大,而后选出关键句序列中权重最接近1的句子作为该文本的关键句,对长文本序列进行数据预处理操作,按照设置好的样本统一长度裁剪或填充每条文本,对于较长的文本将其权重较低的关键词裁剪掉,对于较短的文本在其尾部填充上权重较高的关键词;
Step2:将经过TextRank层处理后的文本序列输入Word Embedding层生成词向量表示;
Step3:将长文本向量输入BiGRU层中,BiGRU将结合文本的上下文提取其特征信息;
Step4:结合文本的关键句对文本向量进行注意力计算,得出文本向量里对应关键句的注意力分数,根据注意力分数更新文本特征向量;
Step5:将更新后的文本特征向量输入到Linear与Softmax层得出分类结果。
2.根据权利要求1所述的基于TextRank与注意力机制的长文本分类方法,其特征在于,所述TextRank是利用图网络生成各词的带权图节点,若两词之间处于一个共现窗口中,则在两词节点之间建立边,在训练中不断迭代更新各节点的权值,各节点权值的更新公式如下:
Figure FDA0003898214000000021
其中,WD{Vi}、WS{Vj}代表i词与j词的权重值;Vi、Vj代表i词与j词在图中的节点;InVi、OutVj分别代表Vi的入度集合与Vj的出度集合;d为阻尼系数,通常设置为0.85,说明该点指向另一个节点的概率为85%。
3.根据权利要求1所述的基于TextRank与注意力机制的长文本分类方法,其特征在于,所述TextRank的关键句序列是以句子间相似度为依据,通过构造句子级别的有权图,更新句子节点之间的相似度权重,再根据各句子的相似度分数排列成关键句序列,各句子节点之间的相似度计算公式如下:
Figure FDA0003898214000000022
其中Si、Sj为两句子节点,wk为两句子间的单词,整个公式(2)就是在计算两句子间的内容重复度。
4.根据权利要求1所述的基于TextRank与注意力机制的长文本分类方法,其特征在于,所述TextRank层的处理步骤如下:
Step1:首先要进行的是数据预处理操作,将长文本序列输入TextRank层中,通过停用词表分词并过滤掉无关词;
Step2:根据式(1)更新各词节点的权重,根据权重值将各词排序成关键词序列,根据长文本中任意表示句子结束的标点符号分句,通过式(2)计算出关键句;
Step3:根据设置好的文本统一长度,对于较长文本删除其中的较不重要关键词,对于较短文本在其尾部添加较重要关键词,以这种方法保证各样本长度相同,同时也保留了较长样本的重要内容,加强了较短样本的特征信息;
Step4:将关键句序列中权值最高的句子作为当前样本的关键句,将处理好的文本输入下一层;
5.根据权利要求1所述的基于TextRank与注意力机制的长文本分类方法,其特征在于,所述BiGRU层的作用是提取输入文本的特征信息,通过前向GRU层与反向GRU层充分考虑文本的上下文关系;
GRU网络的核心公式如下:
zt=σ(Wz·[ht-1,xt]) ⑶
rt=σ(Wr·[ht-1,xt]) ⑷
Figure FDA0003898214000000031
Figure FDA0003898214000000032
其中,式(3)(4)为更新门和重置门的计算公式,由ht-1与当前输入xt计算得出,σ为sigmoid函数;公式(5)为当前时刻候选记忆单元
Figure FDA0003898214000000033
的计算公式,由重置门筛选出ht-1中要留下的信息结合xt构成
Figure FDA0003898214000000034
公式(6)为当前时刻ht的计算公式,zt决定丢弃多少ht-1中的信息,决定留下多少
Figure FDA0003898214000000035
中的信息。
6.根据权利要求5所述的基于TextRank与注意力机制的长文本分类方法,其特征在于,所述BiGRU是双向的GRU,将文本序列正向输入GRU得出正向特征,将文本序列反向输入GRU得出反向特征,结合正向特征与反向特征作为文本序列的整体上下文特征;
将正向输出与反向输出想加作为长文本的内容向量H,公式如下:
Figure FDA0003898214000000041
将关键句输入BiGRU中,将所有隐藏层的最后时间步输出想加作为关键句的总结向量,公式如下:
Figure FDA0003898214000000042
其中num_layers为隐藏层层数,hi为第i层的最后时间步输出,将Ksen与H一起输入Attention层。
7.根据权利要求6所述的基于TextRank与注意力机制的长文本分类方法,其特征在于,所述Attention层根据长文本中内容的重要程度为其分配权重值,将关键句与注意力机制相结合;
将关键句向量Ksen作为注意力机制的Query,将长文本内容向量H作为注意力机制的Key与Value,计算公式如下:
Figure FDA0003898214000000043
其中d为收敛因子,通常为词向量维度,Q与KT相乘得出文本向量相对于关键句的分数矩阵,除以收敛因子后通过softmax函数归一化得到文本向量权重矩阵,通过权重矩阵更新文本向量V得到向量C,将向量C输入最后一层得出分类结果。
CN202211280953.9A 2022-10-19 2022-10-19 基于TextRank与注意力机制的长文本分类方法 Pending CN115599915A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211280953.9A CN115599915A (zh) 2022-10-19 2022-10-19 基于TextRank与注意力机制的长文本分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211280953.9A CN115599915A (zh) 2022-10-19 2022-10-19 基于TextRank与注意力机制的长文本分类方法

Publications (1)

Publication Number Publication Date
CN115599915A true CN115599915A (zh) 2023-01-13

Family

ID=84848992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211280953.9A Pending CN115599915A (zh) 2022-10-19 2022-10-19 基于TextRank与注意力机制的长文本分类方法

Country Status (1)

Country Link
CN (1) CN115599915A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116186562A (zh) * 2023-04-27 2023-05-30 中南大学 基于编码器的长文本匹配方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116186562A (zh) * 2023-04-27 2023-05-30 中南大学 基于编码器的长文本匹配方法

Similar Documents

Publication Publication Date Title
CN110413986B (zh) 一种改进词向量模型的文本聚类多文档自动摘要方法及系统
CN113239181B (zh) 基于深度学习的科技文献引文推荐方法
CN108595632B (zh) 一种融合摘要与主体特征的混合神经网络文本分类方法
CN107133213B (zh) 一种基于算法的文本摘要自动提取方法与系统
CN109960724B (zh) 一种基于tf-idf的文本摘要方法
CN110263325B (zh) 中文分词系统
CN111143549A (zh) 一种基于主题的舆情情感演化的方法
CN110321563B (zh) 基于混合监督模型的文本情感分析方法
CN111078833B (zh) 一种基于神经网络的文本分类方法
CN110413768B (zh) 一种文章题目自动生成方法
WO2017193685A1 (zh) 社交网络中数据的处理方法和装置
CN113505200B (zh) 一种结合文档关键信息的句子级中文事件检测的方法
Qu et al. Improved Bayes method based on TF-IDF feature and grade factor feature for chinese information classification
CN112163089B (zh) 一种融合命名实体识别的高技术文本分类方法及系统
CN110879834A (zh) 一种基于循环卷积网络的观点检索系统及其观点检索方法
CN115952292B (zh) 多标签分类方法、装置及计算机可读介质
CN111984791A (zh) 一种基于注意力机制的长文分类方法
CN111625647A (zh) 一种无监督的新闻自动分类方法
CN114611491A (zh) 基于文本挖掘技术的智慧政务舆情分析研究方法
CN111930936A (zh) 一种平台留言文本挖掘方法及系统
CN113158659B (zh) 一种基于司法文本的涉案财物计算方法
CN115599915A (zh) 基于TextRank与注意力机制的长文本分类方法
CN114265936A (zh) 一种科技项目文本挖掘的实现方法
US20220156489A1 (en) Machine learning techniques for identifying logical sections in unstructured data
CN112925907A (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