1.基于预训练模型和自动感受野的关键词抽取方法,其特征在于,具体步骤如下:步骤1、利用预设标记对未加工文本原生文本进行整理并限制其长度,得到文档序列;
对文档序列进行词元化,随后构建停用词集合和相应的遮罩矩阵;
步骤2、通过重解释BERT预训练模型构建感受野生成网络,将词元化后的文档序列作为输入,生成感受野矩阵;
步骤3、通过重解释BERT预训练模型构建句向量生成网络,将词元化后的文档序列作为输入,生成网络生成句向量;
步骤4、利用句向量和感受野矩阵生成词排序矩阵,通过词排序矩阵和句向量,经过注意力评分层,得到候选词分数矩阵;
步骤5、获取候选词分数矩阵,对候选词分数矩阵进行压缩;
将压缩后的候选词分数矩阵,规整为分数序列,并根据分数序列提取压缩后的位置信息组成长度序列;
步骤6、分数序列和长度序列长度相等,其中元素一一对应,产生元素对;
获取预设关键词抽取数量m,选取元素对中对应分数序列的分数元素最大的前m个的元素对;
利用元素对对应词元作为短语开头,元素对中长度序列元素作为短语长度,获取元素对表征的短语,即为关键词抽取的结果;
步骤7、感受野生成网络、句向量生成网络与注意力评分层构成关键词抽取模型,接受分数序列和长度序列,对关键词抽取模型进行反向传播训练,训练得到可靠的关键词抽取模型。
2.根据权利要求1所述的基于预训练模型和自动感受野的关键词抽取方法,其特征在于,在步骤1中,所述预设标记如下:[CLS]:放在所有文本之前;
[SEP]:用于分开两个句子,句子末尾使用[SEP]标注;
[PAD]:用于整齐化句子的长度,以便后续并行计算。
3.根据权利要求1所述的一种基于预训练模型和自动感受野的关键词抽取方法,其特征在于,在步骤2中,所述感受野矩阵,其中每项元素为一个向量,表示自动生成的滤波器,每条滤波器对应一个词元开头指定长度的短语。
4.根据权利要求3所述的基于预训练模型和自动感受野的关键词抽取方法,其特征在于,步骤2具体过程如下:
2‑1:将词元化后的文档序列D′和遮罩矩阵MT作为输入,在BERT预训练模型输出中,依次从后往前取数目为span的隐藏层的输出结果进行组合拼接,将拼接而成的矩阵重解释为原始感受野矩阵;
将原始感受野矩阵通过一层线程层,进行维度下降,再将结果与MT相乘进行遮罩操作,得到矩阵Mfilter:Mfilter=LinearLayer(BERT(D′))*MT其中,LinearLayer表示线性层,BERT表示BERT模型;
2‑2:构建模具矩阵Mmoudule,构成方式下:
Mmoudule=[mijk=((k<i)OR(k>i+j))?0:1]其中,OR表示或操作,mijk表示三维矩阵Mmoudule中的第i块第j行第k列的元素,三元表达式表示当“(k<i)OR(k>i+j)”的条件满足时,mijk赋值为0,不满足所述“(k<i)OR(k>i+j)”的条件时,mijk赋值为1;
将模具矩阵与矩阵Mfilter相乘,经过SoftMax层,感受野生成网络输出矩阵M′filter:M′filter=softmax(Mmoudule*Mfilter)矩阵M′filter为感受野矩阵。
5.根据权利要求1所述的基于预训练模型和自动感受野的关键词抽取方法,其特征在于,步骤4具体过程如下:
4‑1:将归一化后的感受野矩阵M′filter和句向量X进行叉乘操作获取词排序矩阵Mword:Mword=M′filter×X
4‑2:构建注意力评分层,分别将词排序矩阵Mword和句向量X通过线性层,获取两个不同的矩阵:Mq,Mk;
随后对两个矩阵Mq,Mk进行多头注意力拆分,利用两个多头注意力拆分后的矩阵Mq,Mk进行关注计算,获取候选词分数矩阵Mscore:其中,Dtensor是多头注意力拆分后的维度,concat是向量拼接操作。
6.根据权利要求1所述的基于预训练模型和自动感受野的关键词抽取方法,其特征在于,在步骤7所述反向传播训练中,具体包括:构建新的序列对比范式,评估抽取结果是否齐全,并比较抽取结果的准确性;将参考序列和预测序列规整为统一可比较的结构,规整的序列作为新的序列对比范式中对比对象,调用损失函数对两个序列进行差异计算进行反向传播训练。
7.根据权利要求6所述的基于预训练模型和自动感受野的关键词抽取方法,其特征在于,步骤7具体过程如下:
7‑1:获取训练集提供的参考序列Prefence=[a1,a2,...,aN],其中ai表示参考序列中第i个关键词参考答案,利用其中所有元素的长度构建答案序列Answer,同时针对ai设计预测序列 其中 表示ai开头的短语在长度序列Length对应的长度;
7‑2:根据分数序列Score中所有元素的序号构成集合C={c|sc>0,sc∈Score},其中sc表示下标为c的分数序列中的元素,假设集合C的元素总数量为M,利用C中所有元素索引分数序列Score中成员,构建长度为M的序列S′接在预测序列Predict之后,得到新的预测序列Predict′:其中,c1,c2,...,cM均表示集合C中的元素,M表示集合C中元素总数量;
针对所有S′中的元素,调用函数:
构成同样长度为M的序列,接在Answer之后,得到新的序列Answer′,如下所示:Predict′和Answer′分别作为预测表示和答案表示,两者进行损失计算的方法构成新的序列对比范式进行反向传播训练。
8.基于预训练模型和自动感受野的关键词抽取系统,其特征在于,包括:原生文本预处理模块、感受野生成网络模块、句向量生成网络模块、注意力评分模块、关键词抽取模块和训练模块;
原生文本预处理模块:对输入的原生文本进行处理,得到文档序列,并对其进行词元化处理,以及构造停用词集合和相应的遮罩矩阵;
感受野生成网络模块:将词元化后的文档序列作为输入,生成感受野矩阵;
句向量生成网络模块:将词元化后的文档序列作为输入,生成句向量;
注意力评分层模块:将感受野矩阵和句向量作为输入,通过注意力计算,生成候选词分数矩阵;
序列压缩模块:将候选词分数矩阵作为输入,生成分数序列和长度序列;
关键词抽取模块:规定抽取的关键词数量,将分数序列和长度序列作为输入,由分数序列和长度序列构成元素对,通过对元素对进行分数排序完成对关键词的抽取工作;
训练模块:设置所述系统是否开启训练模式和训练参数,训练模式情况下,将分数序列和长度序列作为输入,利用序列对比范式,生成新的答案序列和新的预测序列,两者计算交叉熵进行反向传播。
9.根据权利要求8所述的基于预训练模型和自动感受野的关键词抽取系统,其特征在于,所述关键词抽取模块:还支持修改排序算法,根据用户需求针对性抽取关键词。