CN111444700A - 一种基于语义文档表达的文本相似度量方法 - Google Patents
一种基于语义文档表达的文本相似度量方法 Download PDFInfo
- Publication number
- CN111444700A CN111444700A CN202010256057.3A CN202010256057A CN111444700A CN 111444700 A CN111444700 A CN 111444700A CN 202010256057 A CN202010256057 A CN 202010256057A CN 111444700 A CN111444700 A CN 111444700A
- Authority
- CN
- China
- Prior art keywords
- text
- semantic
- word
- vector
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明提供一种基于语义文档表达的文本相似度量方法,包括:获取待比较的两个文本,对每个文本的句子分别进行分词预处理;将两个文本预处理后的词汇进行映射,生成词向量;通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征和BiLSTM句子语义特征;对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;根据两个文本的词汇语义关联特征向量构建相似度计算函数,计算出两个文本句子的相似度。
Description
技术领域
本发明属于自然语言处理技术领域,具体涉及一种基于语义文档表达的文本相似度量方法。
背景技术
针对文本类题目的智能评卷时,考虑是否存在考生答案雷同,是否抄袭题干,考生答案和参考答案的相似度量等都是具有现实意义的需求,而实现智能评卷如何在文本相似度量上给出更为合理有效的度量方法是研究重点和难点,当前现有的语义相似度计算方法可归纳为三类:
基于字面匹配的语义相似度计算方法。比较典型的有基于LCS、TF-IDF的语义相似度计算方法。基于LCS的语义相似度计算方法是利用两个文本中词语的最大公共子串的长度来计算文本之间的相似度;基于TF-IDF的语义相似度计算方法是将文本建模成词频向量,运用余弦相似度来衡量文本之间的相似度。这类方法的优点是计算速度快、工作量小,缺点是忽略了词语的语义信息,需要人工设定停用词表。
基于潜在语义分析的概率主题语义相似度计算方法。比较典型的有基于LSA、LDA的文本语义相似度计算模型。主要思想是利用词语中的共同信息对文本进行主题建模,挖掘出文本中潜在的语义信息,从而计算出文本之间的语义相似度。优点是考虑到了词语的深层语义信息,缺点是没有考虑到词与词之间的位置关系,受样本种类限制较大。
基于深度学习的语义相似度计算方法。有些文献同时关注词汇间的语义信息和句子间的整体信息,即用分布式词向量表示方法计算词汇之间的相似性,再通过句子变换矩阵来度量句子间的语义距离,然而上述方法忽略了句子间的潜在特征。有些文献采用CNN整合局部词语之间的语义关系,但缺少长时序列依赖的解决,有些采用LSTM对整个句子进行编码结合注意力机制,但对于局部特征提取不足。
此外还有基于编辑树和句法特征的语义相似度计算方法,这些方法需要大量的人工进行特征工程的工作,同时还受到其他大量因素的影响,在实际应用时受限较大。
综上所述,基于字面匹配与基于潜在语义分析的语义相似度模型方法均存在一定的问题,前者未考虑到文本的语义、语法含义,后者忽视了文本中词与词之间的位置关系,需人工进行特征提取,误差较大。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种基于语义文档表达的文本相似度量方法,是非常有必要的。
发明内容
针对现有技术的上述基于字面匹配与基于潜在语义分析的语义相似度模型方法均存在一定的问题,前者未考虑到文本的语义、语法含义,后者忽视了文本中词与词之间的位置关系,需人工进行特征提取,误差较大的缺陷,本发明提供一种基于语义文档表达的文本相似度量方法。
本发明提供一种基于语义文档表达的文本相似度量方法,包括如下步骤:
S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;
S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;
S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;
S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;
S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度。
进一步地,步骤S1具体步骤如下:
S11.获取待比较第一文本及第二文本的领域;
S12.根据文本计算目标构建专业词典;
S13.根据文本领域及构建的专业词典,通过分词工具进行分词,去除设定停用词及标点符号,并设定待进行分词的句子长度。对文本进行分词处理的目的是为后续进行词向量映射做准备,借助文本的领域及专业词典实现分词的准确,并去除无意义的停用词及标点符号。
进一步地,步骤S13中,所述分词工具采用结巴分词工具。结巴分词工具为一种中文分词工具,支持三种分词模式包括:精确模式、全模式以及搜索引擎模式。
进一步地,步骤S2具体步骤如下:
S21.根据设定的待分词句子长度,从每个文本中获取与句子长度等长的句子序列;
S22.将句子序列的每个词汇均进行映射,生成词向量;
S23.通过word2vec向量映射工具将词向量生成词向量矩阵,所述词向量矩阵与卷积神经网络模型CNN输入匹配;
S24.根据词向量生成词向量序列,所述词向量序列与双向长短时记忆循环网络模型BiLSTM输入匹配。将词汇映射到词向量,生成词向量矩阵提供给后续的卷积神经网络模型CNN使用,生成词向量序列提供给后续的双向长短时记忆循环网络模型BiLSTM输入匹配。
进一步地,步骤S22具体步骤如下:
S221.获取每个文本的句子序列的每个词汇,并设定当前词汇;
S222.判断当前词汇是否存在词向量;
若是,将当前词汇进行映射,生成词向量,进入步骤S224;
S223.将当前词汇进行二次分词,获取子词,将当前词汇的所有子词的词向量的均值作为词向量;
S224.判断句子序列的每个词汇是否均映射完成;
若是,进入步骤S23;
若否,定位句子序列的下一个词汇为当前词汇,返回步骤S222。为没有词向量的词汇进行二次分词,取子词的均值作为该词汇的词向量。
进一步地,步骤S223中,若子词仍然没有词向量,则将对子词继续拆分,将每层词向量的均值返回上层;
若拆分至单字序列仍然没有词向量,则进行确实标记,标记为未知词向量,用相应长度的零向量表示。对经过分词也没有词向量的词汇则用零向量表示。
进一步地,步骤S22中,词汇映射的词向量为稠密向量;
步骤S23中,通过word2vec向量映射工具将句子序列的每个词汇映射到词向量,并对词向量进行预训练。稠密向量是与稀疏向量相对的一种词向量。稠密向量的值就是一个普通的Double数组,而稀疏向量由两个并列的数组顺序和值组成。
进一步地,步骤S3具体步骤如下:
S31.获取每个文本的词向量矩阵,并通过卷积核对词向量矩阵的每个元素进行一维卷积,生成特征映射集合;
S32.设置最大池化层,对卷积后的特征映射集合提取局部关注特征;
S33.通过卷积神经网络CNN输出CNN句子语义特征向量;
S34.获取每个文本的词向量序列;
S35.以词向量序列为输入,通过双向长短时记忆循环网络模型BiLSTM输出BiLSTM句子语义特征向量。分别通过卷积神经网络CNN和双向长短时记忆循环网络模型BiLSTM两种网络模型对词向量矩阵和词向量序列进行训练输出语义特征向量。
进一步地,步骤S4具体步骤如下:
S41.获取每个文本的CNN句子语义特征向量,并通过tanh激活函数进行非线性变换;
S42.通过softmax函数得到线性变换后各CNN句子语义特征分量的权重,并计算出每个文本的各CNN句子语义特征向量加权和;
S43.获取每个文本的BiLSTM句子语义特征向量,并通过tanh激活函数进行非线性变换;
S44.通过softmax函数得到线性变换后各BiLSTM句子语义特征分量的权重,并计算出每个文本的各BiLSTM句子语义特征向量加权和;
S45.将每个文本各自的CNN句子语义特征向量加权和与BiLSTM句子语义特征向量加权和进行拼接,生成文本的词汇语义关联特征向量。将卷积神经网络CNN和双向长短时记忆循环网络模型BiLSTM两种网络模型两种网络模型输出的语义特征向量通过注意机制模型进行加权求和后,进行拼接输出。
进一步地,步骤S5具体步骤如下:
S51.获取第一文本的词汇语义关联特征向量及第二文本的词汇语义关联特征向量;
S52.通过余弦相似度评价函数计算第一文本的词汇语义关联特征向量与第二文本的词汇语义关联特征向量的相似度。余弦相似度函数计算两个文本的相似度。
本发明的有益效果在于,
本发明提供的基于语义文档表达的文本相似度量方法,结合了卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM两种神经网络在文本处理领域中的优势,通过卷积神经网络模型CNN提取了文本的局部信息,又借助双向长短时记忆循环网络模型LSTM关联了语句前后的结构信息,更全面的理解了文本内容;两个神经网络结合输出向量空间相对固定的已训练好的词向量,再采用余弦相似度量必将两个文本的相似性,采用余弦距离能够表现出两个文本在同一空间的远近程度。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的方法流程示意图一;
图2是本发明的方法流程示意图二;
图3是本发明的方法流程示意图三。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
如图1所示,本发明提供一种基于语义文档表达的文本相似度量方法,包括如下步骤:
S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;
S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;
S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;
S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;
S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度。
实施例2:
如图2所示,本发明提供一种基于语义文档表达的文本相似度量方法,包括如下步骤:
S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;具体步骤如下:
S11.获取待比较第一文本及第二文本的领域;
S12.根据文本计算目标构建专业词典;
S13.根据文本领域及构建的专业词典,通过分词工具进行分词,去除设定停用词及标点符号,并设定待进行分词的句子长度;所述分词工具采用结巴分词工具;
S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;具体步骤如下:
S21.根据设定的待分词句子长度,从每个文本中获取与句子长度等长的句子序列;
S22.将句子序列的每个词汇均进行映射,生成词向量;词汇映射的词向量为稠密向量;
S23.通过word2vec向量映射工具将词向量生成词向量矩阵,所述词向量矩阵与卷积神经网络模型CNN输入匹配;通过word2vec向量映射工具将句子序列的每个词汇映射到词向量,并对词向量进行预训练;
S24.根据词向量生成词向量序列,所述词向量序列与双向长短时记忆循环网络模型BiLSTM输入匹配;
S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;具体步骤如下:
S31.获取每个文本的词向量矩阵,并通过卷积核对词向量矩阵的每个元素进行一维卷积,生成特征映射集合;
S32.设置最大池化层,对卷积后的特征映射集合提取局部关注特征;
S33.通过卷积神经网络CNN输出CNN句子语义特征向量;
S34.获取每个文本的词向量序列;
S35.以词向量序列为输入,通过双向长短时记忆循环网络模型BiLSTM输出BiLSTM句子语义特征向;
S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;具体步骤如下:
S41.获取每个文本的CNN句子语义特征向量,并通过tanh激活函数进行非线性变换;
S42.通过softmax函数得到线性变换后各CNN句子语义特征分量的权重,并计算出每个文本的各CNN句子语义特征向量加权和;
S43.获取每个文本的BiLSTM句子语义特征向量,并通过tanh激活函数进行非线性变换;
S44.通过softmax函数得到线性变换后各BiLSTM句子语义特征分量的权重,并计算出每个文本的各BiLSTM句子语义特征向量加权和;
S45.将每个文本各自的CNN句子语义特征向量加权和与BiLSTM句子语义特征向量加权和进行拼接,生成文本的词汇语义关联特征向量;
S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度;具体步骤如下:
S51.获取第一文本的词汇语义关联特征向量及第二文本的词汇语义关联特征向量;
S52.通过余弦相似度评价函数计算第一文本的词汇语义关联特征向量与第二文本的词汇语义关联特征向量的相似度。
实施例3:
如图3所示,上述实施例2中,步骤S22具体步骤如下:
S221.获取每个文本的句子序列的每个词汇,并设定当前词汇;
S222.判断当前词汇是否存在词向量;
若是,将当前词汇进行映射,生成词向量,进入步骤S224;
若否,进入步骤S223;
S223.将当前词汇进行二次分词,获取子词,将当前词汇的所有子词的词向量的均值作为词向量;
若子词仍然没有词向量,则将对子词继续拆分,将每层词向量的均值返回上层;
若拆分至单字序列仍然没有词向量,则进行确实标记,标记为未知词向量,用相应长度的零向量表示;
S224.判断句子序列的每个词汇是否均映射完成;
若是,进入步骤S23;
若否,定位句子序列的下一个词汇为当前词汇,返回步骤S222。
实施例4:
本发明提供一种基于语义文档表达的文本相似度量方法,以某专业资格考试的主观题,给定参考答案、17000份考生答案以及相应的考生答案得分,其中考生答案得分是有专业阅卷人给出的最终得分,我们需要将考生最终得分与该题目满分的比值作为后续网络训练所需的相似值,包括如下步骤:
S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;具体步骤如下:考生数据集和参考答案数据集分别作为待比较的第一文本和第二文本;
S11.获取待比较第一文本及第二文本的领域;
S12.根据文本计算目标构建专业词典;
S13.根据文本领域及构建的专业词典,通过分词工具进行分词,去除设定停用词及标点符号,并设定待进行分词的句子长度;所述分词工具采用结巴分词工具;
对考生答案进行清洗处理,形成有效的考生答案数据集作为第一文本,参考答案作为第二文本,使用结巴分词工具对第一文本及第二文本进行分词处理,去除考生答案中没有意义的符号和少量的关联词语;
由于处理的是专业领域的资格考试数据,为确保分词阶段能够更有效的将专业领域的词汇区分出来,借助领域知识建设构建关于该领域的专业词汇库和停用词汇表;
为后续神经网络输入的需要我们约定每个文本分词长度L,这里L的取值采用词频统计的方式,将作为第一文本的所有考生答案和作为第二文本的参考答案分词后进行词频统计,去除“的”“了”这类助词以及标点符号后,选取前30个词汇作为基准,这些基准词汇能基本覆盖参考答案分词词汇最好,如果一个考生答案分词后,其词汇组包含30个基准词汇,则直接将基准组作为该考生的分词序列;若作为第一文本的考生答案分词后达不到30个基准词汇,在作为第一文本的该考生答案分词中按顺序补足,如考生词汇凑不足30个,则用确实标记UNK进行替代补足;如果作为第一文本的该考生答案分词为空,则将作为第一文本的该考生答案与作为第二文本的参考答案相似值直接置为0;
S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;具体步骤如下:
S21.根据设定的待分词句子长度,从每个文本中获取与句子长度等长的句子序列;
S22.将句子序列的每个词汇均进行映射,生成词向量;词汇映射的词向量为稠密向量;
S23.通过word2vec向量映射工具将词向量生成词向量矩阵,所述词向量矩阵与卷积神经网络模型CNN输入匹配;通过word2vec向量映射工具将句子序列的每个词汇映射到词向量,并对词向量进行预训练;
S24.根据词向量生成词向量序列,所述词向量序列与双向长短时记忆循环网络模型BiLSTM输入匹配;
采用结巴分词对文本进行分词处理后,使用北京师范大学和中国人民大学的研究者开源的“中文词向量语料库”中训练好的300维词向量,该语料综合了百度百科、中文维基百科、人民日报、搜狗新闻、金融新闻、知乎问答、微博信息等各大语料库,是目前最全的中文预训练词向量集合;
当采用通用分词工具对学生答案进行分词和基于通用语料库学习的词向量集合,对比分词结果和词向量,存在一些没有词向量的词汇,为此通过调整分词工具,将未获取词向量的专业词汇进行颗粒化处理,采用更小单位的词向量进行融合表示,解决专业词汇词向量问题;即对未找到词向量的词汇,调整分词工具,进行二次切分,若子词汇仍没有词向量,则对该词继续进行拆分直至可以最大限度找到词向量,如果拆分至单字序列仍有未找到对应词向量则用UNK(确实标记)处理,对于UNK直接用300维零向量表示,300表示所采用的向量长度,也是对应于我们所采用的预训练词向量库的维度;
经过以上处理,分词结果每个词汇都有了词向量表示,获取长度为L的等长句子序列s=(w1,w2,…,w30),将每个词汇wi都映射到词向量Ei作为后边神经网络结构的输入,此处采用word2vec的预训练好的具有语义信息的词向量,形成该句的词向量矩阵M,用于后边输入到卷积神经网络模型CNN;
另外将v=(E1,E2,…E30)作为句子的词向量序列用于双向长短时记忆循环网络模型BiLSTM学习句子特征;
S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;具体步骤如下:
S31.获取每个文本的词向量矩阵,并通过卷积核对词向量矩阵的每个元素进行一维卷积,生成特征映射集合;
S32.设置最大池化层,对卷积后的特征映射集合提取局部关注特征;
S33.通过卷积神经网络CNN输出CNN句子语义特征向量;
S34.获取每个文本的词向量序列;
S35.以词向量序列为输入,通过双向长短时记忆循环网络模型BiLSTM输出BiLSTM句子语义特征向;
利用步骤S2所构建的句子词向量矩阵和词向量序列分别输入两种神经网络分别提取文本特征;
卷积神经网络模型CNN提取特征部分,将步骤S2构建好的句子的词向量矩阵M,利用卷积核对句子矩阵M,从上到下进行一维卷积,得到大小为L×f的特征映射,其中L为序列长度,f为卷积核的数量;
将步骤S2构建好的句子的词向量矩阵M,利用100个1×300的卷积核对句子矩阵M从上到下进行一维卷积,得到100个大小为30×1的特征映射,其中100为卷积核的数量,30为序列长度,在卷积层后边接入一个概率池化层,通过对元素数值大小赋予概率,按照概率进行采样,因为学生答案本身的不确定性以及采用预训练词向量,用概率池化可以随机化提取出通过卷积处理的局部重要特征,如果神经元数目过大,学习能力强,有可能出现过拟合;因此,可以引入丢弃操作,来随机删除神经网络中的部分神经元,来解决此问题;接下来通过降维的压平操作将获取到的特征值平整化,即得到卷积神经网络模型CNN提取的词汇级别的特征,将通过卷积神经网络模型CNN得到的文本特征记为[C1,C2,…C200];
双向长短时记忆循环网络模型LSTM提取特征,将步骤S2形成的句子的词汇向量序列,输入双向长短时记忆循环网络模型Bi-LSTM对句子建模,作为语句序列的基本构建,双向长短时记忆循环网络模型LSTM具有三个门和一个记忆存储单元的循环神经网络,这三个门分别是输入门it、遗忘门ft和输出门ot,记忆存储单元ct,用来计算和存储时刻t的信息。对于给定文本词汇向量序列,wt∈Rd是序列中第t个词汇的词向量,各个存储单元的更新公式如下:
ht=ot·tanh(ct) (5)
其中Wf、Wi、Wo、Uf、Ui、Uo∈Rd*d′,分别是LSTM中三个门对应于输入w和隐藏状态h的权重矩阵,bf、bi、bo∈Rd'分别是LSTM中三个门的偏移量,d'=100。ht是时间步长t的隐藏状态向量,ct是当前的单元格状态,σ和tanh为激活函数;
利用长短时记忆循环网络模型LSTM对句子进行建模,只能编码单向信息,通过双向长短时记忆循环网络模型Bi-LSTM可以更好的捕捉双向的语义依赖;对于每个句子,经过双向长短时记忆循环网络模型Bi-LSTM融合前向传播输出向量和后向传播输出向量,把它每个方向的长短时记忆循环网络模型LSTM最后的隐藏层的输出拼接作为该短文本的句子向量表示;
将步骤S2形成的句子的词汇向量序列v=(E1,E2,…EL),输入双向长短时记忆循环网络模型BiLSTM对句子建模,在网络中可以看到前向层和后向层共同连接着输出层,其中包含了6个共享权值w1-w6,在前向层从1时刻到t时刻正向计算一遍,得到并保存每个时刻向前隐含层的输出,在后向层沿着时刻t到时刻1反向计算一遍,得到并保存每个时刻向后隐含层的输出;最后在每个时刻结合前向和后向层的相应时刻输出的结果得到最终的输出,用数学公式表达如下:
Ot=g(w4ht+w6ht')
其中ht是由(5)式计算得出的正向输出,ht'是由(5)式计算得出的反向输出,计算反向输出时即(4)式注意时刻是由大到小,将双向长短时记忆循环网络模型BiLSTM输出的短文本句子向量表示为O=[O1,O2,…O200];
S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;具体步骤如下:
S41.获取每个文本的CNN句子语义特征向量,并通过tanh激活函数进行非线性变换;
S42.通过softmax函数得到线性变换后各CNN句子语义特征分量的权重,并计算出每个文本的各CNN句子语义特征向量加权和;
S43.获取每个文本的BiLSTM句子语义特征向量,并通过tanh激活函数进行非线性变换;
S44.通过softmax函数得到线性变换后各BiLSTM句子语义特征分量的权重,并计算出每个文本的各BiLSTM句子语义特征向量加权和;
S45.将每个文本各自的CNN句子语义特征向量加权和与BiLSTM句子语义特征向量加权和进行拼接,生成文本的词汇语义关联特征向量;
在步骤S3提取到文本内容词汇级别特征向量后,利用注意机制模型attention将单词级别的特征组合成句子级别的特征,能更准确地表达句子的语义,将卷积神经网络模型CNN的输出向量[C1,C2,…C200],vi=tanh(WcCi+bc)对卷积得到的特征Ci利用tanh激活函数进行一次非线性变换得到vi,对输出特征加入非线性因素以提升模型的表达能力;αi=softmax(Wαvi)利用softmax函数得到各个分量vi的attention权重Wcnn=(α1,α2,…αn),权重大小代表单词的重要程度大小;
对CNN结构输出的句向量[C1,C2,…C200]加权和,得到卷积神经网络模型CNN提取的句子级别的语义向量表示Scnn;
同理,双向长短时记忆循环网络模型Bi-LSTM的输出向量表示为O=[O1,O2,…O200],对双向长短时记忆循环网络模型Bi-LSTM编码得到的特征hi利用tanh激活函数进行一次非线性变换得到ui,即ui=tanh(WhOi+bh);利用softmax函数得到各个分量ui的attention权重Wlstm=(β1,β2,…βn),其中βi=softmax(Wβui),最后对双向LSTM结构输出的向量[O1,O2,…O200]加权和,得到LSTM提取的句子级别的语义向量表示Slstm,
最后将卷积神经网络模型CNN和双向长短时记忆循环网络模型Bi-LSTM分别提取到的CNN句子语义特征向量和BiLSTM句子语义特征向量进行拼接,即S=[Scnn,Slstm],将其作为后面匹配层的输入,这样就结合了卷积神经网络模型CNN和双向长短时记忆循环网络模型Bi-LSTM两个神经网络结构的优势,提取了文本局部词汇信息和文本前后语义关联特征,可以更好的表达文本的语义信息;
S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度;具体步骤如下:
S51.获取第一文本的词汇语义关联特征向量及第二文本的词汇语义关联特征向量;
S52.通过余弦相似度评价函数计算第一文本的词汇语义关联特征向量与第二文本的词汇语义关联特征向量的相似度;
将两个文本按照步骤S1-S4进行处理,在完成后得到作为第一文本考生答案和作为第二文本参考答案两个文本的语义表示分别记为S1和S2后,在句子语义空间中计算两个向量的相似度,从而判断两个文本是否语义相同;
其中相似值大小在[0,1]之间,相似度越大。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种基于语义文档表达的文本相似度量方法,其特征在于,包括如下步骤:
S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;
S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;
S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;
S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;
S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度。
2.如权利要求1所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S1具体步骤如下:
S11.获取待比较第一文本及第二文本的领域;
S12.根据文本计算目标构建专业词典;
S13.根据文本领域及构建的专业词典,通过分词工具进行分词,去除设定停用词及标点符号,并设定待进行分词的句子长度。
3.如权利要求2所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S13中,所述分词工具采用结巴分词工具。
4.如权利要求2所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S2具体步骤如下:
S21.根据设定的待分词句子长度,从每个文本中获取与句子长度等长的句子序列;
S22.将句子序列的每个词汇均进行映射,生成词向量;
S23.通过word2vec向量映射工具将词向量生成词向量矩阵,所述词向量矩阵与卷积神经网络模型CNN输入匹配;
S24.根据词向量生成词向量序列,所述词向量序列与双向长短时记忆循环网络模型BiLSTM输入匹配。
5.如权利要求4所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S22具体步骤如下:
S221.获取每个文本的句子序列的每个词汇,并设定当前词汇;
S222.判断当前词汇是否存在词向量;
若是,将当前词汇进行映射,生成词向量,进入步骤S224;
若否,进入步骤S223;
S223.将当前词汇进行二次分词,获取子词,将当前词汇的所有子词的词向量的均值作为词向量;
S224.判断句子序列的每个词汇是否均映射完成;
若是,进入步骤S23;
若否,定位句子序列的下一个词汇为当前词汇,返回步骤S222。
6.如权利要求5所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S223中,若子词仍然没有词向量,则将对子词继续拆分,将每层词向量的均值返回上层;
若拆分至单字序列仍然没有词向量,则进行确实标记,标记为未知词向量,用相应长度的零向量表示。
7.如权利要求4所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S22中,词汇映射的词向量为稠密向量;
步骤S23中,通过word2vec向量映射工具将句子序列的每个词汇映射到词向量,并对词向量进行预训练。
8.如权利要求4所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S3具体步骤如下:
S31.获取每个文本的词向量矩阵,并通过卷积核对词向量矩阵的每个元素进行一维卷积,生成特征映射集合;
S32.设置最大池化层,对卷积后的特征映射集合提取局部关注特征;
S33.通过卷积神经网络CNN输出CNN句子语义特征向量;
S34.获取每个文本的词向量序列;
S35.以词向量序列为输入,通过双向长短时记忆循环网络模型BiLSTM输出BiLSTM句子语义特征向量。
9.如权利要求8所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S4具体步骤如下:
S41.获取每个文本的CNN句子语义特征向量,并通过tanh激活函数进行非线性变换;
S42.通过softmax函数得到线性变换后各CNN句子语义特征分量的权重,并计算出每个文本的各CNN句子语义特征向量加权和;
S43.获取每个文本的BiLSTM句子语义特征向量,并通过tanh激活函数进行非线性变换;
S44.通过softmax函数得到线性变换后各BiLSTM句子语义特征分量的权重,并计算出每个文本的各BiLSTM句子语义特征向量加权和;
S45.将每个文本各自的CNN句子语义特征向量加权和与BiLSTM句子语义特征向量加权和进行拼接,生成文本的词汇语义关联特征向量。
10.如权利要求9所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S5具体步骤如下:
S51.获取第一文本的词汇语义关联特征向量及第二文本的词汇语义关联特征向量;
S52.通过余弦相似度评价函数计算第一文本的词汇语义关联特征向量与第二文本的词汇语义关联特征向量的相似度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010256057.3A CN111444700A (zh) | 2020-04-02 | 2020-04-02 | 一种基于语义文档表达的文本相似度量方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010256057.3A CN111444700A (zh) | 2020-04-02 | 2020-04-02 | 一种基于语义文档表达的文本相似度量方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111444700A true CN111444700A (zh) | 2020-07-24 |
Family
ID=71649695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010256057.3A Pending CN111444700A (zh) | 2020-04-02 | 2020-04-02 | 一种基于语义文档表达的文本相似度量方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111444700A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984777A (zh) * | 2020-09-01 | 2020-11-24 | 中国平安财产保险股份有限公司 | 基于自然语言处理的生产系统上报问题处理方法及装置 |
CN112084778A (zh) * | 2020-08-04 | 2020-12-15 | 中南民族大学 | 基于新型关系注意力机制的实体关系抽取方法及设备 |
CN112101043A (zh) * | 2020-09-22 | 2020-12-18 | 浙江理工大学 | 一种基于注意力的语义文本相似度计算方法 |
CN112101014A (zh) * | 2020-08-20 | 2020-12-18 | 淮阴工学院 | 一种混合特征融合的中文化工文献分词方法 |
CN112182166A (zh) * | 2020-10-29 | 2021-01-05 | 腾讯科技(深圳)有限公司 | 一种文本匹配方法、装置、电子设备及存储介质 |
CN112183111A (zh) * | 2020-09-28 | 2021-01-05 | 亚信科技(中国)有限公司 | 长文本语义相似度匹配方法、装置、电子设备及存储介质 |
CN112232053A (zh) * | 2020-09-16 | 2021-01-15 | 西北大学 | 一种基于多关键词对匹配的文本相似度计算系统、方法、及存储介质 |
CN112328751A (zh) * | 2020-12-03 | 2021-02-05 | 三星电子(中国)研发中心 | 用于处理文本的方法和装置 |
CN112434514A (zh) * | 2020-11-25 | 2021-03-02 | 重庆邮电大学 | 基于多粒度多通道的神经网络的语义匹配方法、装置及计算机设备 |
CN113158685A (zh) * | 2021-04-23 | 2021-07-23 | 平安科技(深圳)有限公司 | 文本的语义预测方法、装置、计算机设备和存储介质 |
CN113177414A (zh) * | 2021-04-27 | 2021-07-27 | 桂林电子科技大学 | 一种语义特征处理方法、装置及存储介质 |
CN113705158A (zh) * | 2021-09-26 | 2021-11-26 | 上海一者信息科技有限公司 | 一种文档翻译中智能还原原文样式的方法 |
CN113779978A (zh) * | 2021-09-26 | 2021-12-10 | 上海一者信息科技有限公司 | 一种无监督跨语言句对齐实现方法 |
CN113987115A (zh) * | 2021-09-26 | 2022-01-28 | 润联智慧科技(西安)有限公司 | 一种文本相似度计算方法、装置、设备及存储介质 |
CN114461943A (zh) * | 2022-04-14 | 2022-05-10 | 中国测绘科学研究院 | 基于深度学习的多源poi语义匹配方法、装置及其存储介质 |
CN114492420A (zh) * | 2022-04-02 | 2022-05-13 | 北京中科闻歌科技股份有限公司 | 文本分类方法、装置、设备及计算机可读存储介质 |
CN116167353A (zh) * | 2023-04-26 | 2023-05-26 | 成都博智云创科技有限公司 | 一种基于孪生长短期记忆网络的文本语义相似度度量方法 |
CN117436445A (zh) * | 2023-12-21 | 2024-01-23 | 珠海博维网络信息有限公司 | 一种粤语词组分词处理方法及系统 |
CN113158685B (zh) * | 2021-04-23 | 2024-10-18 | 平安科技(深圳)有限公司 | 文本的语义预测方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109284506A (zh) * | 2018-11-29 | 2019-01-29 | 重庆邮电大学 | 一种基于注意力卷积神经网络的用户评论情感分析系统及方法 |
CN109740148A (zh) * | 2018-12-16 | 2019-05-10 | 北京工业大学 | 一种BiLSTM结合Attention机制的文本情感分析方法 |
CN110413741A (zh) * | 2019-08-07 | 2019-11-05 | 山东山大鸥玛软件股份有限公司 | 一种面向主观题的智能阅卷方法 |
-
2020
- 2020-04-02 CN CN202010256057.3A patent/CN111444700A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109284506A (zh) * | 2018-11-29 | 2019-01-29 | 重庆邮电大学 | 一种基于注意力卷积神经网络的用户评论情感分析系统及方法 |
CN109740148A (zh) * | 2018-12-16 | 2019-05-10 | 北京工业大学 | 一种BiLSTM结合Attention机制的文本情感分析方法 |
CN110413741A (zh) * | 2019-08-07 | 2019-11-05 | 山东山大鸥玛软件股份有限公司 | 一种面向主观题的智能阅卷方法 |
Non-Patent Citations (1)
Title |
---|
郭浩等: "基于CNN和BiLSTM的短文本相似度计算方法", 《信息技术与网络安全》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112084778A (zh) * | 2020-08-04 | 2020-12-15 | 中南民族大学 | 基于新型关系注意力机制的实体关系抽取方法及设备 |
CN112101014A (zh) * | 2020-08-20 | 2020-12-18 | 淮阴工学院 | 一种混合特征融合的中文化工文献分词方法 |
CN111984777A (zh) * | 2020-09-01 | 2020-11-24 | 中国平安财产保险股份有限公司 | 基于自然语言处理的生产系统上报问题处理方法及装置 |
CN112232053A (zh) * | 2020-09-16 | 2021-01-15 | 西北大学 | 一种基于多关键词对匹配的文本相似度计算系统、方法、及存储介质 |
CN112101043B (zh) * | 2020-09-22 | 2021-08-24 | 浙江理工大学 | 一种基于注意力的语义文本相似度计算方法 |
CN112101043A (zh) * | 2020-09-22 | 2020-12-18 | 浙江理工大学 | 一种基于注意力的语义文本相似度计算方法 |
CN112183111A (zh) * | 2020-09-28 | 2021-01-05 | 亚信科技(中国)有限公司 | 长文本语义相似度匹配方法、装置、电子设备及存储介质 |
CN112182166A (zh) * | 2020-10-29 | 2021-01-05 | 腾讯科技(深圳)有限公司 | 一种文本匹配方法、装置、电子设备及存储介质 |
CN112434514B (zh) * | 2020-11-25 | 2022-06-21 | 重庆邮电大学 | 基于多粒度多通道的神经网络的语义匹配方法、装置及计算机设备 |
CN112434514A (zh) * | 2020-11-25 | 2021-03-02 | 重庆邮电大学 | 基于多粒度多通道的神经网络的语义匹配方法、装置及计算机设备 |
CN112328751A (zh) * | 2020-12-03 | 2021-02-05 | 三星电子(中国)研发中心 | 用于处理文本的方法和装置 |
CN113158685A (zh) * | 2021-04-23 | 2021-07-23 | 平安科技(深圳)有限公司 | 文本的语义预测方法、装置、计算机设备和存储介质 |
CN113158685B (zh) * | 2021-04-23 | 2024-10-18 | 平安科技(深圳)有限公司 | 文本的语义预测方法、装置、计算机设备和存储介质 |
CN113177414A (zh) * | 2021-04-27 | 2021-07-27 | 桂林电子科技大学 | 一种语义特征处理方法、装置及存储介质 |
CN113705158A (zh) * | 2021-09-26 | 2021-11-26 | 上海一者信息科技有限公司 | 一种文档翻译中智能还原原文样式的方法 |
CN113987115A (zh) * | 2021-09-26 | 2022-01-28 | 润联智慧科技(西安)有限公司 | 一种文本相似度计算方法、装置、设备及存储介质 |
CN113705158B (zh) * | 2021-09-26 | 2024-05-24 | 上海一者信息科技有限公司 | 一种文档翻译中智能还原原文样式的方法 |
CN113779978B (zh) * | 2021-09-26 | 2024-05-24 | 上海一者信息科技有限公司 | 一种无监督跨语言句对齐实现方法 |
CN113779978A (zh) * | 2021-09-26 | 2021-12-10 | 上海一者信息科技有限公司 | 一种无监督跨语言句对齐实现方法 |
CN114492420A (zh) * | 2022-04-02 | 2022-05-13 | 北京中科闻歌科技股份有限公司 | 文本分类方法、装置、设备及计算机可读存储介质 |
CN114492420B (zh) * | 2022-04-02 | 2022-07-29 | 北京中科闻歌科技股份有限公司 | 文本分类方法、装置、设备及计算机可读存储介质 |
CN114461943A (zh) * | 2022-04-14 | 2022-05-10 | 中国测绘科学研究院 | 基于深度学习的多源poi语义匹配方法、装置及其存储介质 |
CN114461943B (zh) * | 2022-04-14 | 2022-08-26 | 中国测绘科学研究院 | 基于深度学习的多源poi语义匹配方法、装置及其存储介质 |
CN116167353A (zh) * | 2023-04-26 | 2023-05-26 | 成都博智云创科技有限公司 | 一种基于孪生长短期记忆网络的文本语义相似度度量方法 |
CN117436445A (zh) * | 2023-12-21 | 2024-01-23 | 珠海博维网络信息有限公司 | 一种粤语词组分词处理方法及系统 |
CN117436445B (zh) * | 2023-12-21 | 2024-04-02 | 珠海博维网络信息有限公司 | 一种粤语词组分词处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444700A (zh) | 一种基于语义文档表达的文本相似度量方法 | |
Zhu et al. | Knowledge-based question answering by tree-to-sequence learning | |
CN111221939B (zh) | 评分方法、装置和电子设备 | |
CN111209401A (zh) | 网络舆情文本信息情感极性分类处理系统及方法 | |
CN110287323B (zh) | 一种面向目标的情感分类方法 | |
Cai et al. | Intelligent question answering in restricted domains using deep learning and question pair matching | |
CN108874896B (zh) | 一种基于神经网络和幽默特征的幽默识别方法 | |
CN111931506A (zh) | 一种基于图信息增强的实体关系抽取方法 | |
CN114818717B (zh) | 融合词汇和句法信息的中文命名实体识别方法及系统 | |
Wu et al. | Community answer generation based on knowledge graph | |
CN110489554B (zh) | 基于位置感知互注意力网络模型的属性级情感分类方法 | |
CN112784602B (zh) | 基于远程监督的新闻情感实体抽取方法 | |
CN112417155B (zh) | 基于指针-生成Seq2Seq模型的庭审询问生成方法、装置、介质 | |
CN115599899A (zh) | 基于飞行器知识图谱的智能问答方法、系统、设备及介质 | |
Qing-Dao-Er-Ji et al. | Research on Mongolian-Chinese machine translation based on the end-to-end neural network | |
CN111984782A (zh) | 藏文文本摘要生成方法和系统 | |
Yu et al. | Question classification based on MAC-LSTM | |
CN114742069A (zh) | 一种代码相似度检测方法及装置 | |
CN114169447B (zh) | 基于自注意力卷积双向门控循环单元网络的事件检测方法 | |
Zheng et al. | Weakly-supervised image captioning based on rich contextual information | |
Göker et al. | Neural text normalization for turkish social media | |
Hua et al. | A character-level method for text classification | |
Kim et al. | A study of profanity effect in sentiment analysis on natural language processing using ann | |
Zhu et al. | A Semantic Similarity Computing Model based on Siamese Network for Duplicate Questions Identification. | |
CN111813927A (zh) | 一种基于主题模型和lstm的句子相似度计算方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200724 |
|
RJ01 | Rejection of invention patent application after publication |