CN114925702A - 文本相似度识别方法、装置、电子设备及存储介质 - Google Patents
文本相似度识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114925702A CN114925702A CN202210661870.8A CN202210661870A CN114925702A CN 114925702 A CN114925702 A CN 114925702A CN 202210661870 A CN202210661870 A CN 202210661870A CN 114925702 A CN114925702 A CN 114925702A
- Authority
- CN
- China
- Prior art keywords
- text
- similarity
- pair
- standard
- vector
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- 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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及人工智能技术,揭露了一种文本相似度识别方法,包括:获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对,根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断,根据所述长短类型判断选择所述标准文本对的计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。本发明还提出一种文本相似度识别装置、电子设备以及计算机可读存储介质。本发明可以解决文本语义相似度计算不准确的问题。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种文本相似度识别方法、装置、电子设备及计算机可读存储介质。
背景技术
文本相似度识别是自然语言处理领域的关键技术,常见的自然语言处理任务,如机器翻译、问答系统和网页搜索等,都可以归结为文本相似度识别的问题。一般来说,根据文本长度的不同,可以将文本相似度识别问题分为三类:短文本-短文本语义匹配、长文本-长文本语义匹配和长文本-短文本语义匹配。在不同的文本语义匹配类型中,需要采取不同的解决方案,才能取得更不错的效果。而当下的问题是:目前方案都是使用通用模型对文本进行文本语义相似度计算,但是通用模型对不同类型或不同语言的文本对无法完全适配。因此,在实际应用中,会出现由于模型使用错误使得文本语义相似度计算不准确的问题。
发明内容
本申请提供了一种文本相似度识别方法、装置、电子设备及存储介质,以解决文本语义相似度计算不准确的问题。
第一方面,本申请提供了一种文本相似度识别方法,所述方法包括:
获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对;
根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断;
根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
详细地,所述根据所述文本长度对所述标准文本对进行长短类型判断,包括:
获取所述标准文本对中包含的第一文本及第二文本的文本长度;
若所述标准文本对中的第一文本及第二文本的文本长度均小于等于预设的第一文本阈值,则确定所述标准文本对为第一类型文本对;
若所述标准文本对中的第一文本及第二文本的文本长度均大于等于预设的第二文本阈值,则确定所述标准文本对为第二类型文本对;
若所述标准文本对中的第一文本的文本长度小于等于所述第一文本阈值,第二文本的文本长度大于等于所述第二文本阈值,或第二文本的文本长度小于等于所述第一文本阈值,第一文本大于的文本长度等于所述第二文本阈值,则确定所述标准文本对为第三类型文本对。
详细地,所述根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果,包括:
若所述标准文本对的长短类型为第一类型文本对,则选择预设的第一计算策略,并利用所述第一计算策略计算得到所述标准文本对的相似度识别结果;
若所述标准文本对的长短类型为第二类型文本对,则选择预设的第二计算策略,并利用所述第二计算策略计算得到所述标准文本对的相似度识别结果;
若所述标准文本对的长短类型为第三类型文本对,则选择预设的第三计算策略,并利用所述第三计算策略计算得到所述标准文本对的相似度识别结果。
详细地,所述利用所述第一计算策略计算得到所述标准文本对的相似度识别结果,包括:
利用LSTM-DSSM模型的输入层对所述标准文本对中的文本进行向量转化,得到第一向量及第二向量;
利用所述LSTM-DSSM模型的表示层分别对所述第一向量及第二向量进行向量解析,得到第一潜层语义向量及第二潜层语义向量;
利用所述LSTM-DSSM模型的匹配层计算所述第一潜层语义向量及所述第二潜层语义向量的相似度,并将所述相似度作为所述标准文本对的相似度识别结果。
详细地,所述利用所述第二计算策略计算得到所述标准文本对的相似度识别结果,包括:
对所述标准文本对中包含的第一文本及第二文本进行分词处理,得到第一分词集合及第二分词集合;
对所述第一分词集合及所述第二分词集合中的分词进行向量化处理,得到第一词袋向量及第二词袋向量;
对所述第一词袋向量及所述第二词袋向量进行向量转化,得到第一变换向量及第二变换向量,拼接所述第一变换向量及所述第二变换向量,得到向量矩阵;
对所述向量矩阵进行奇异值分解,得到主题分布矩阵及词义分布矩阵;
计算所述主题分布矩阵及词义分布矩阵的相似距离,并将所述相似距离作为所述标准文本对的相似度识别结果。
详细地,所述计算所述主题分布矩阵及词义分布矩阵的相似距离,包括:
利用下述海林格公式计算所述主题分布矩阵及词义分布矩阵的相似距离:
其中,h(P,Q)为所述主题分布矩阵及词义分布矩阵的相似距离,P为主题分布矩阵对应的概率分布,Q为词义分布矩阵对应的概率分布。
详细地,所述利用所述第三计算策略计算得到所述标准文本对的相似度识别结果,包括:
选取所述标准文本对中文本长度最长的文本作为目标文本,未被选取的文本作为非目标文本;
对所述目标文本进行句子分割及编码向量化,得到编码向量;
对所述编码向量进行聚类,得到多个聚类簇,选取所述多个聚类簇中每个聚类簇最接近聚类中心的文本作为摘要文本,根据所述第一匹配策略计算所述摘要文本及所述非目标文本的摘要相似度,并将所述摘要相似度作为所述标准文本对的相似度识别结果。
第二方面,本申请提供了一种文本相似度识别装置,所述装置包括:
标准文本对构建模块,用于获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对;
文本对类型判断模块,用于根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断;
策略匹配及相似度计算模块,用于根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
第三方面,提供了一种文本相似度识别设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例所述的文本相似度识别方法的步骤。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项实施例所述的文本相似度识别方法的步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本发明通过对待匹配文本对进行数据清洗及语言类型检测,得到标准文本对,可以剔除无意义的字符,提高数据处理速率,同时对不同语言进行检测,根据语言类型标签来计算标准文本对的文本长度,提高了文本对长短类型判断的准确率,也提高了语义匹配计算的准确率。同时,对标准文本对进行长短类型判断后,对于不同的文本对采用不同的计算策略计算,进一步提高了文本语义识别计算的准确率。因此本发明提出的文本相似度识别方法、装置、电子设备及计算机可读存储介质,可以解决文本语义相似度计算不准确的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种文本相似度识别方法的流程示意图;
图2为本申请实施例提供的一种文本相似度识别装置的模块示意图;
图3为本申请实施例提供的一种文本相似度识别的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种文本相似度识别方法的流程示意图。在本实施例中,所述文本相似度识别方法包括:
S1、获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对。
本发明实施例中,所述待匹配文本对可以为不同的NLP任务中的长文本或短文本,如信息检索、机器翻译、问答系统、复述问题及对话系统等。所述待匹配文本对包括短-短文本对、长-长文本对及长-短文本对。
详细地,所述对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对,包括:
对所述待匹配文本对中的文本数据进行数据异常检测,并剔除检测到的异常的文本数据,得到初始文本对;
利用预设的语言检测工具对所述初始文本对进行语言类型检测,对检测完成的初始文本对进行语言类型标注,得到所述具有语言类型标签的标准文本对。
其中,所述语言类型检测包括中文检测及英文检测。
本发明实施例中,可以通过正则表达式检测所述文本数据中是否包含一些无意义的字符或者多余的标点符号,并将检测到的无意义的字符或者多余的标点符号,进行剔除。同时,由于中文英文的文本数据处理方式不一样,因此,本发明实施例可以使用python中的第三方库,如langdetect等对所述初始文本对进行语言类型的检测,例如,包含第一文本textA及第二文本textB的初始文本对context_pair{textA,textB}经过语言检测后,第一文本textA及第二文本textB均为中文。
S2、根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断。
本发明实施例中,所述长短类型判断是根据文本的长度进行判断。本发明实施例首先根据所述语言类型标签,计算所述标准文本对的文本长度。其中,对于语言类型标签为英文来说,所述文本长度是单词的个数,对于语言类型标签为中文来说,所述文本长度是字的个数。详细地,本发明实施例中,可以通过函数len(text)计算得到标准文本对的文本长度。
具体地,所述根据所述文本长度对所述标准文本对进行长短类型判断,包括:
获取所述标准文本对中包含的第一文本及第二文本的文本长度;
若所述标准文本对中的第一文本及第二文本的文本长度均小于等于预设的第一文本阈值,则确定所述标准文本对为第一类型文本对;
若所述标准文本对中的第一文本及第二文本的文本长度均大于等于预设的第二文本阈值,则确定所述标准文本对为第二类型文本对;
若所述标准文本对中的第一文本的文本长度小于等于所述第一文本阈值,第二文本的文本长度大于等于所述第二文本阈值,或第二文本的文本长度小于等于所述第一文本阈值,第一文本大于的文本长度等于所述第二文本阈值,则确定所述标准文本对为第三类型文本对。
本发明一可选实施例中,所述第一文本阈值可以设置为300,所述第二文本阈值可以设置为1000。
例如,len(textA)≤300且len(textB)≤300,textA和textB都是短文本,则文本对为短-短文本对(第一类型文本对);len(textA)≥1000且len(textB)≥1000,textA和textB都是长文本,则文本对为长-长文本对(第二类型文本对);len(textA)≤300、len(textB)≥1000,或len(textB)≤300、len(textA)≥1000,则文本对为长-短文本对(第三类型文本对)。
S3、根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
一般来说,文本越长,语义的重要性就越高,因此,处理长、短文本的模型是不一样的,针对不同类型的文本对使用不同的匹配策略计算语义相似度计算,可以提高计算的准确性。因此,本发明实施例根据所述长短类型判断选择所述标准文本对的匹配策略。
详细地,所述根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果,包括:
若所述标准文本对的长短类型为第一类型文本对,则选择预设的第一计算策略,并利用所述第一计算策略计算得到所述标准文本对的相似度识别结果;
若所述标准文本对的长短类型为第二类型文本对,则选择预设的第二计算策略,并利用所述第二计算策略计算得到所述标准文本对的相似度识别结果;
若所述标准文本对的长短类型为第三类型文本对,则选择预设的第三计算策略,并利用所述第三计算策略计算得到所述标准文本对的相似度识别结果。
本发明实施例中,所述第一计算策略可以是使用LSTM-DSSM(Long Short TermMemory-Deep Structured Semantic Models)模型等对所述标准文本对进行相似度匹配。所述LSTM-DSSM模型可以不用分词,直接计算两个文本语义相似度。所述LSTM-DSSM模型包括输入层、表示层及匹配层,其中,输入层用来把句子映射到一个向量空间里并输入到表示层的DNN(Deep Neural Networks,深度神经网络)中;表示层采用LSTM模型的方式,来获取到文本的上下文信息,得到语义向量;匹配层通过计算两者的语义向量的余弦距离来得到相似度识别结果。
详细地,所述利用所述第一计算策略计算得到所述标准文本对的相似度识别结果,包括:
利用LSTM-DSSM模型的输入层对所述标准文本对中的文本进行向量转化,得到第一向量及第二向量;
利用所述LSTM-DSSM模型的表示层分别对所述第一向量及第二向量进行向量解析,得到第一潜层语义向量及第二潜层语义向量;
利用所述LSTM-DSSM模型的匹配层计算所述第一潜层语义向量及所述第二潜层语义向量的相似度,并将所述相似度作为所述标准文本对的相似度识别结果。
本发明一可选实施例中,可以利用下述余弦公式计算所述第一潜层语义向量及所述第二潜层语义向量的相似度:
sim(A,B)=cosine(yA,yB)
其中,A为标准文本对中的第一文本,B为标准文本对中的第二文本,yA为第一潜层语义向量,yB表示第二潜层语义向量。
本发明一可选实施例中,在所述LSTM-DSSM模型的输入层中,对英文和中文的处理方式不同,对于英文处理:通过词散列(word hashing),比如可以用letter-trigrams(可替代技术)来将每个单词映射到向量空间,这样做的好处不仅可以压缩空间,达到降维的效果,例如,50万个词的one-hot向量空间可以通过letter-trigram压缩为一个3万维的向量空间;对于中文处理:中文一般需要分词,但是往往在分词阶段就会引入误差。故这里不分词,而是仿照英文的处理方式,以字为单位进行向量映射处理。例如,常用的单字大约是1.5万个,而常用的双字则到达了百万级别,出于向量空间的考虑,直接采用字向量(one-hot)作为输入,向量空间约为1.5万维。
本发明一可选实施例中,表示层采用LSTM模型的方式,这样可以确保向量获取到了文本的上下文信息。即把输入层的整个句子向量送入LSTM,通过LSTM,得出最后输出的状态向量,作为潜层语义向量。
本发明一可选实施例中,匹配层采用余弦距离来计算第一文本(textA)及第二文本(textA)的匹配结果。
本发明实施例中,由于短-短类型的文本对的文本长度较小,通过使用LSTM-DSSM模型,不用进行分词,直接进行向量转化,再计算相似度的方式可以减少了误差的输入,提高文本对的计算准确率。
本发明一可选实施例中,所述预设的第二计算策略可以为提取所述标准文本对中两个长文本的主题分布及词义分布,再通过计算主题分布及词义分布的距离来衡量两个长文本之间的语义匹配相似度。
本发明实施例中,所述利用所述第二计算策略计算得到所述标准文本对的相似度识别结果,包括:
对所述标准文本对中包含的第一文本及第二文本进行分词处理,得到第一分词集合及第二分词集合;
对所述第一分词集合及所述第二分词集合中的分词进行向量化处理,得到第一词袋向量及第二词袋向量;
对所述第一词袋向量及所述第二词袋向量进行向量转化,得到第一变换向量及第二变换向量,拼接所述第一变换向量及所述第二变换向量,得到向量矩阵;
对所述向量矩阵进行奇异值分解,得到主题分布矩阵及词义分布矩阵;
计算所述主题分布矩阵及词义分布矩阵的相似距离,并将所述相似距离作为所述标准文本对的相似度识别结果。
本发明实施例中,利用下述分解公式对所述向量矩阵进行奇异值分解,得到主题分布矩阵及词义分布矩阵:
详细地,本发明实施例中,所述利用所述第二计算策略计算得到所述标准文本对的相似度识别结果,包括:
步骤A、对所述标准文本对中的第一文本及第二文本进行分词操作,得到第一分词集合及第二分词集合,并根据所述分词操作构建词典,其中,在分词时,对于英文,根据英文文本的空格进行分词,对于中文,使用jieba、Hanlp等分词工具进行分词;
步骤B、根据所述词典,对第一分词集合及第二分词集合中的分词进行向量化处理,得到第一词袋向量及第二词袋向量;
例如对于一个文本,有['human','happy','interest'],这三个单词在文本中各出现1次,它们在上述的字典中的编号分别为2,0,1。则可以将该文本表示如下:[(2,1),(0,1),(1,1)],这种向量表达称为BOW(Bag of Word,词袋)。
步骤C、对第一词袋向量及第二词袋向量进行向量变换,即将输入向量从一个向量空间转换到另外一个向量空间,得到第一变换向量及第二变换向量。
例如,本发明实施例可以采用TF-IDF(Term Frequency*Inverse DocumentFrequency,文档频率*逆文档频率)模型将词袋向量从一个向量空间转换到另外一个向量空间。其中,所述TF-IDF模型输入一个词袋向量,并输出同样维度的变换向量,变换向量中的输出单词表示在文本中的稀有程度,越稀有,则值越大;
步骤D、将上述得到的第一变换向量及第二变换向量拼接写成矩阵A,做SVD(奇异值)分解,得到主题分布矩阵及词义分布矩阵;
例如,经过SVD(奇异值)分解后有k个主题数,则Umk表示第m个文本的第k个主题的相关度,Vnk表示第n个词和第k个词义的相关度;
步骤E、计算所述主题分布矩阵中各主题的概率分布及词义分布矩阵中各词义的概率分布,并计算两个概率分布的相似距离(可以为海林格距离)。
本发明一可选实施例中,所述计算所述主题分布矩阵及词义分布矩阵的相似距离,包括:
利用下述海林格公式计算所述主题分布矩阵及词义分布矩阵的相似距离:
其中,h(P,Q)为所述主题分布矩阵及词义分布矩阵的相似距离,P为主题分布矩阵对应的概率分布,Q为词义分布矩阵对应的概率分布。本发明另一可选实施例中,所述预设的第二匹配策略还可以为基于事件实例的匹配方法:首先,从标准文本对中两个文本中的每个句子中抽取出能够描述事件的有代表性的特征,把它们构成候选事件集合;其次,利用分类器对所述候选事件集合进行二分类,将所述候选事件集合划分为事件实例和非事件实例;最后,计算所述标准文本对中两个文本的事件实例相似度作为匹配结果。
该另一可选实施例中,所述利用所述第二计算策略计算得到所述标准文本对的相似度识别结果,包括:
分别对所述标准文本对中的第一文本及第二文本进行特征选取,并根据选取的特征构建第一候选事件集合及第二候选事件集合;
将所述第一候选事件集合及所述第二候选事件集合进行向量化处理,得到第一候选向量集合及第二候选向量事件集合;
分别对所述第一候选向量集合及所述第二候选向量事件集合中的向量进行筛选,得到第一事件实例集合及第二事件实例集合;
分别对所述第一事件实例集合及第二事件实例集合中的事件实例进行聚类,并计算两个事件实例集合中最靠近聚类中心的事件实例的事件相似度,并将所述事件相似度作为所述标准文本对的相似度识别结果。
详细地,另一可选实施例中,所述利用所述第二计算策略计算得到所述标准文本对的相似度匹配结果包括:
步骤a、对所述标准文本对中的第一文本及第二文本进行分词、标注等处理,在分词的基础上选取句子的特征(包括长度、位置、命名实体的数量、词语的数量、时间的个数等),得到一候选事件集合及第二候选事件集合。本发明实施例中,只有当一个句子含有事件特征时才构成候选事件,否则为非候选事件(相当于有了标签);
步骤b、在所述特征的基础上,利用VSM(Vector Space Model,向量空间模型)对所述候选事件集合进行向量表示,并选用SVM(支持向量机)或者利用常用的经过预训练的网络,如CNN等,完成事件实例的筛选,得到第一事件实例集合及第二事件实例集合;
步骤c、最后采用K-均值方法算法对所述第一事件实例集合及第二事件实例集合进行聚类,得到k个类,其中,每个类表示的是同一个文本中不同实例的集合,选取每个类中最靠近中心点的事件实例作为对文本的描述,并计算相似度作为相似度识别结果。
本发明实施例中,对于长-长类型的文本对,通过语义压缩(计算主题分布或事件实例)的方式,将长文本转换为短文本,再进行匹配计算,提高了匹配计算的效率及准确率。
本发明一可选实施例中,所述预设的第三计算策略可以采用抽取式无监督摘要的方法将长度大于300的文本转化为短文本,再利用第一计算策略的方法计算两个文本的语义相似度作为相似度识别结果。
详细地,所述利用所述第三计算策略计算得到所述标准文本对的相似度识别结果,包括:
选取所述标准文本对中文本长度最长的文本作为目标文本,未被选取的文本作为非目标文本;
对所述目标文本进行句子分割及编码向量化,得到编码向量;
对所述编码向量进行聚类,得到多个聚类簇,选取所述多个聚类簇中每个聚类簇最接近聚类中心的文本作为摘要文本,根据所述第一计算策略计算所述摘要文本及所述非目标文本的摘要相似度,并将所述摘要相似度作为所述标准文本对的相似度识别结果。
详细地,本发明实施例中,所述利用所述第三计算策略计算得到所述标准文本对的相似度识别结果,包括:
步骤一、比较所述标准文本对中两个文本的文本长度,并选择文本长度长的文本作为目标文本,对所述目标文本进行句子分割,例如可以使用NLTK包中的sen_tokenize()方法对所述目标文本进行句子分割;
步骤二、对分割后的句子进行编码向量化,得到编码向量,例如,可以采用预训练好的一个句子嵌入模型Skip-Thoughts对分割后的句子进行编码向量化,所述Skip-Thoughts包含均使用GRU-RNN框架的Encoder Network和两个Decoder Network,其中,所述Encoder Network对输入的每一个句子S(i)都生成一个固定长度的向量表示h(i),两个Decoder Network分别用于生成句子S(i)的前一句S(i-1)和后一句S(i+1)的向量表示,最终输出的编码向量同时包含上下文语句的向量;
步骤三、对所述编码向量进行聚类,得到多个聚类簇。本发明实施例通过将句子的编码向量在高维向量空间中进行聚类,聚类的数量为摘要任务所需要的句子数量,可以将最终摘要的句子数设定为初始输入句子总数的平方根,或者字数限制在短文本长度范围内,例如,可以使用K-均值方法(可替代的方法)实现;
步骤四、提取每个聚类簇最接近聚类中心的文本作为摘要文本。由于聚类之后的每一个簇群都可以认为是一组语义相似的句子集合,只需要使用其中的一句来表示整个类别,选择距离聚类中心最接近的句子作为候选句子,然后将每个簇群相对应的候选句子排序,形成最终的文本摘要,摘要中候选句子的顺序由文本中句子在其相应簇中的位置来确定;
步骤五、将生成的摘要文本作为新的文本,与所述标准文本对中另一个文本组成新的文本对,并采用所述第一计算策略对所述新的文本对进行文本语义相似度计算。
本发明另一可选实施例中,由于第一文本阈值为300,第二文本阈值为1000,对于文本长度在300值1000之间的文本对,本发明未定义为长文本或短文本,因此可采用第二计算策略及第三计算策略计算识别结果,并人工选取最佳结果。
例如,文本对中的文本长度为:300<len(textA)<1000且300<len(textB)<1000,或者文本长度为:300<len(textA)<1000,len(textB)>1000,可采用第二计算策略及第三计算策略进行计算,由人工结合工程实际需求来决定最后的识别结果。
本发明通过对待匹配文本对进行数据清洗及语言类型检测,得到标准文本对,可以剔除无意义的字符,提高数据处理速率,同时对不同语言进行检测,根据语言类型标签来计算标准文本对的文本长度,提高了文本对长短类型判断的准确率,也提高了语义匹配计算的准确率。同时,对标准文本对进行长短类型判断后,对于不同的文本对采用不同的计算策略计算,进一步提高了文本语义识别计算的准确率。因此本发明提出的文本相似度识别方法,可以解决文本语义相似度计算不准确的问题。
如图2所示,本申请实施例提供了一种文本相似度识别装置10的模块示意图,所述文本相似度识别装置10,包括:所述标准文本对构建模块11、所述文本对类型判断模块12和所述策略匹配及相似度计算模块13。
所述标准文本对构建模块11,用于获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对;
所述文本对类型判断模块12,用于根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断;
所述策略匹配及相似度计算模块13,用于根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
详细地,本申请实施例中所述文本相似度识别装置10中的各模块在使用时采用与上述的图1中所述的文本相似度识别方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图3所示,本申请实施例提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111、通信接口112、存储器113通过通信总线114完成相互间的通信;
存储器113,用于存放计算机程序;
在本申请一个实施例中,处理器111,用于执行存储器113上所存放的程序时,实现前述任意一个方法实施例提供的文本相似度识别方法,包括:
获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对;
根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断;
根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述任意一个方法实施例提供的文本相似度识别方法的步骤。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种文本相似度识别方法,其特征在于,所述方法包括:
获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对;
根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断;
根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
2.如权利要求1所述的文本相似度识别方法,其特征在于,所述根据所述文本长度对所述标准文本对进行长短类型判断,包括:
获取所述标准文本对中包含的第一文本及第二文本的文本长度;
若所述标准文本对中的第一文本及第二文本的文本长度均小于等于预设的第一文本阈值,则确定所述标准文本对为第一类型文本对;
若所述标准文本对中的第一文本及第二文本的文本长度均大于等于预设的第二文本阈值,则确定所述标准文本对为第二类型文本对;
若所述标准文本对中的第一文本的文本长度小于等于所述第一文本阈值,第二文本的文本长度大于等于所述第二文本阈值,或第二文本的文本长度小于等于所述第一文本阈值,第一文本大于的文本长度等于所述第二文本阈值,则确定所述标准文本对为第三类型文本对。
3.如权利要求1所述的文本相似度识别方法,其特征在于,所述根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果,包括:
若所述标准文本对的长短类型为第一类型文本对,则选择预设的第一计算策略,并利用所述第一计算策略计算得到所述标准文本对的相似度识别结果;
若所述标准文本对的长短类型为第二类型文本对,则选择预设的第二计算策略,并利用所述第二计算策略计算得到所述标准文本对的相似度识别结果;
若所述标准文本对的长短类型为第三类型文本对,则选择预设的第三计算策略,并利用所述第三计算策略计算得到所述标准文本对的相似度识别结果。
4.如权利要求3所述的文本相似度识别方法,其特征在于,所述利用所述第一计算策略计算得到所述标准文本对的相似度识别结果,包括:
利用LSTM-DSSM模型的输入层对所述标准文本对中的文本进行向量转化,得到第一向量及第二向量;
利用所述LSTM-DSSM模型的表示层分别对所述第一向量及第二向量进行向量解析,得到第一潜层语义向量及第二潜层语义向量;
利用所述LSTM-DSSM模型的匹配层计算所述第一潜层语义向量及所述第二潜层语义向量的相似度,并将所述相似度作为所述标准文本对的相似度识别结果。
5.如权利要求3所述的文本相似度识别方法,其特征在于,所述利用所述第二计算策略计算得到所述标准文本对的相似度识别结果,包括:
对所述标准文本对中包含的第一文本及第二文本进行分词处理,得到第一分词集合及第二分词集合;
对所述第一分词集合及所述第二分词集合中的分词进行向量化处理,得到第一词袋向量及第二词袋向量;
对所述第一词袋向量及所述第二词袋向量进行向量转化,得到第一变换向量及第二变换向量,拼接所述第一变换向量及所述第二变换向量,得到向量矩阵;
对所述向量矩阵进行奇异值分解,得到主题分布矩阵及词义分布矩阵;
计算所述主题分布矩阵及词义分布矩阵的相似距离,并将所述相似距离作为所述标准文本对的相似度识别结果。
7.如权利要求3所述的文本相似度识别方法,其特征在于,所述利用所述第三计算策略计算得到所述标准文本对的相似度识别结果,包括:
选取所述标准文本对中文本长度最长的文本作为目标文本,未被选取的文本作为非目标文本;
对所述目标文本进行句子分割及编码向量化,得到编码向量;
对所述编码向量进行聚类,得到多个聚类簇,选取所述多个聚类簇中每个聚类簇最接近聚类中心的文本作为摘要文本,根据所述第一匹配策略计算所述摘要文本及所述非目标文本的摘要相似度,并将所述摘要相似度作为所述标准文本对的相似度识别结果。
8.一种文本相似度识别装置,其特征在于,所述装置包括:
标准文本对构建模块,用于获取待匹配文本对,对所述待匹配文本对进行数据清洗及语言类型检测,得到具有语言类型标签的标准文本对;
文本对类型判断模块,用于根据所述语言类型标签,计算所述标准文本对的文本长度,并根据所述文本长度对所述标准文本对进行长短类型判断;
策略匹配及相似度计算模块,用于根据所述长短类型判断选择所述标准文本对的相似度计算策略,并利用选择的所述相似度计算策略计算所述标准文本对的相似度识别结果。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-7任一项所述的文本相似度识别方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的文本相似度识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210661870.8A CN114925702A (zh) | 2022-06-13 | 2022-06-13 | 文本相似度识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210661870.8A CN114925702A (zh) | 2022-06-13 | 2022-06-13 | 文本相似度识别方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114925702A true CN114925702A (zh) | 2022-08-19 |
Family
ID=82814121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210661870.8A Pending CN114925702A (zh) | 2022-06-13 | 2022-06-13 | 文本相似度识别方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114925702A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687840A (zh) * | 2023-01-03 | 2023-02-03 | 上海朝阳永续信息技术股份有限公司 | 处理网页中的预定类型信息的方法、设备和存储介质 |
CN116166321A (zh) * | 2023-04-26 | 2023-05-26 | 浙江鹏信信息科技股份有限公司 | 代码克隆检测方法、系统及计算机可读存储介质 |
-
2022
- 2022-06-13 CN CN202210661870.8A patent/CN114925702A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115687840A (zh) * | 2023-01-03 | 2023-02-03 | 上海朝阳永续信息技术股份有限公司 | 处理网页中的预定类型信息的方法、设备和存储介质 |
CN116166321A (zh) * | 2023-04-26 | 2023-05-26 | 浙江鹏信信息科技股份有限公司 | 代码克隆检测方法、系统及计算机可读存储介质 |
CN116166321B (zh) * | 2023-04-26 | 2023-06-27 | 浙江鹏信信息科技股份有限公司 | 代码克隆检测方法、系统及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108959246B (zh) | 基于改进的注意力机制的答案选择方法、装置和电子设备 | |
CN110298037B (zh) | 基于增强注意力机制的卷积神经网络匹配的文本识别方法 | |
CN113761936B (zh) | 一种基于多头自注意力机制的多任务篇章级事件抽取方法 | |
CN113792818B (zh) | 意图分类方法、装置、电子设备及计算机可读存储介质 | |
CN107085581B (zh) | 短文本分类方法和装置 | |
CN110851596A (zh) | 文本分类方法、装置及计算机可读存储介质 | |
CN110969020A (zh) | 基于cnn和注意力机制的中文命名实体识别方法、系统及介质 | |
CN111221944B (zh) | 文本意图识别方法、装置、设备和存储介质 | |
CN114925702A (zh) | 文本相似度识别方法、装置、电子设备及存储介质 | |
CN112560484B (zh) | 用于命名实体识别的改进bert训练模型及命名实体识别方法 | |
CN111859983B (zh) | 基于人工智能的自然语言标注方法及相关设备 | |
CN113033438B (zh) | 一种面向模态非完全对齐的数据特征学习方法 | |
CN113569050B (zh) | 基于深度学习的政务领域知识图谱自动化构建方法和装置 | |
CN112800292B (zh) | 一种基于模态特定和共享特征学习的跨模态检索方法 | |
CN113255320A (zh) | 基于句法树和图注意力机制的实体关系抽取方法及装置 | |
CN113704416A (zh) | 词义消歧方法、装置、电子设备及计算机可读存储介质 | |
CN113836938A (zh) | 文本相似度的计算方法及装置、存储介质、电子装置 | |
CN112100212A (zh) | 一种基于机器学习和规则匹配的案件情节抽取方法 | |
CN113449084A (zh) | 基于图卷积的关系抽取方法 | |
CN113515632A (zh) | 基于图路径知识萃取的文本分类方法 | |
CN114564563A (zh) | 一种基于关系分解的端到端实体关系联合抽取方法及系统 | |
CN114691864A (zh) | 文本分类模型训练方法及装置、文本分类方法及装置 | |
CN113705315B (zh) | 视频处理方法、装置、设备及存储介质 | |
CN116629211B (zh) | 基于人工智能的写作方法及系统 | |
CN115309899B (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 |