CN113934835B - 结合关键词和语义理解表征的检索式回复对话方法及系统 - Google Patents
结合关键词和语义理解表征的检索式回复对话方法及系统 Download PDFInfo
- Publication number
- CN113934835B CN113934835B CN202111538357.1A CN202111538357A CN113934835B CN 113934835 B CN113934835 B CN 113934835B CN 202111538357 A CN202111538357 A CN 202111538357A CN 113934835 B CN113934835 B CN 113934835B
- Authority
- CN
- China
- Prior art keywords
- dialogue
- text
- reply
- sentence
- dialog
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3347—Query execution using vector based model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了结合关键词和语义理解表征的检索式回复对话方法及系统,系统结合了两种层次粒度的向量表征,分别是词袋向量表征和语义理解表征,结合过程中不只考虑了对话中关键词的信息,还考虑了基于上下文的语义理解,极大地提升了检索式回复模型的性能。本发明中采取了中文预训练模型Bert网络模型获取句向量表征,不仅理解句意,并且排除了词向量加权引起的误差。该系统采取了Bert网络模型在自己的单轮对话上训练分类任务——对话是否匹配的任务,通过微调,学习到了Bert中线性层和激活函数的权重。该系统使用了精排模型LGMRanker,可以直接预测与query相关的回复相对顺序,返回一个排好序的列表回来。
Description
技术领域
本发明涉及人工智能检索式回复对话领域,尤其是涉及一种结合关键词和语义理解表征的检索式回复对话方法及系统。
背景技术
当前,对话系统在各个领域越来越引起人们的重视,主要是通过对话的形式让机器理解并处理人类语言的系统,其核心是模仿及抽象人与人之间沟通的方式,将对话抽象成可以建模的对话过程。而对话建模不是一个简单的任务,这是一个涉及理解、生成、交互等多个方向技术的综合实体。其对话场景的复杂性,比如客服、语音助手、闲聊等,也造就了对话系统的复杂性。
检索式对话是一种经典的解决方案,把一个对话问题抽象为一个搜索问题,早期的对话系统都是采用这种解决方案来实现的,直到现在,工业界首先会采用检索式对话实现一些简单的对话任务。
检索式回复模型的核心是其所使用的语义匹配算法。在目前的技术中,获取对话文本的语义表征时,往往采取RNN-based模型获取,当文本过长时,往往捕捉不到关键信息,且无法过滤掉自身冗余的信息,检索的相关回复质量不高。而单纯的使用关键词表征检索相关匹配回复,在语义上达不到流畅自然的回复效果。
发明内容
为解决现有技术的不足,基于关键词和语义理解两种不同粒度的表征,检索匹配回复,实现有效丰富检索回复的内容和质量的目的,本发明采用如下的技术方案:
结合关键词和语义理解表征的检索式回复对话方法,包括如下步骤:
S1,根据对话文本语料,得到单句对话文本和单句对话分词信息;
预处理对话文本,分别将对话文本语料[]
处理成单轮对话文本,获取单句对话分词信息;单轮对话文本,是以相邻的两句对话[ ]作为单轮的对话,其中i和j的关系满足i+1 = j,使用结巴分词将
单轮对话的两句对话分词]。
S2,分别获取单句对话文本和单句对话分词信息的句向量表示;
S3,根据句向量表示,分别构建第一、第二高速通道模型;
通过S2得到的句向量表示 ,基于关键词表征学习的
句向量表示,构建分层的高速通道模型HNSW_1;通过S2得到的句向量表示 ,构建分层的高速通道模型HNSW_2;获取的单句对话[[ ]],分别将每句对话utterance i 按照S2步骤计
算每句的句向量表示sen i ,拼接在一起形成corpus_embedding=[[]]。
将单句对话文本,输入到输出宽度为n的中文预训练Bert(Bidirectional
Encoder Representation from Transformers--基于transformer的双向编码器)网络,得
到当前对话整体隐藏的语义表征 ,即基于语义理解模型Bert网络学习
的query文本句向量表示;
S4,将当前查询对话文本输入第一、第二高速通道模型,得到第一、第二回复列表;
S5,获取当前查询对话文本与第一、第二回复列表的句向量表示的距离,及词向量转换距离;
将返回的回复列表res_1和res_2,与query建立一一对应的对话形式dataframe:
根据dataframe,通过S2分别计算出query与res_1和res_2中每个回复 和的句
向量表示,并计算query的句向量表示分别与res_1和res_2中每个回复 和的句向量表
示之间的最长公共字串的长度lcs、consine距离和bm25相关值;
根据dataframe,通过训练好的word2vec模型,分别获取query的向量表示分别与
res_1和res_2中每个回复 和 的向量表示,计算query与每个回复 和 之间的余弦
距离word2vec_cosine,皮尔逊距离word2vec_pearson和词移距离word2vec_wmd。
S6,通过预训练模型,获取当前查询对话文本与第一、第二回复列表的匹配分数,匹配分数与S5得到的距离作为排序特征,通过精排模型得到排序结果;
通过已经预训练好的中文网络模型Bert可以计算上下文是否匹配,将query分别
与res_1和res_2的每个回复 和,输入到训练好的预训练网络Bert中,得到最后的匹配
分数match_score具体的表示为
基于获取的各种距离作为下一步精排的特征,即将匹配分数与其对应的所述最长
公共字串的长度lcs、consine距离、bm25相关值、word2vec距离作为排序特征: ,输入到训练
好的精排模型LGBMRanker中,获取精排后的回复结果顺序res,选取res的最优回复作为当
前query的回复。
进一步地,所述S2中的TF-IDF=TF(x)*IDF(x),
S2_2,对矩阵的每行进行加权求和;
进一步地,所述S3中,将句向量表示输入Faiss的HNSW接口模型,建立HNSW_1和/或HNSW_2,HNSW将D维空间中所有的向量构建成一张相互联通的图,并基于该图搜索某个顶点的K个最近邻。
进一步地,所述S6的预训练网络采用输出宽度为n的Bert网络,包括如下步骤:
将单句对话文本,调整为Bert网络的输入格式[CLS]chat[SEP]response[SEP]或[CLS]chat[SEP],当没有答复文本response时,学习第一个文本chat的向量表示,当有答复文本response时,学习chat和response整体文本的向量表示;
Bert网络输出整体句向量表示sequence_output。
进一步地,所述S6中的距离包括最长公共字串的长度lcs、consine距离和bm25相关值的计算,计算过程包括如下步骤:
最长公共子串的长度lcs:有两个字符串(可能包含空格),找出其中最长的公共连续子串,并输出其长度;
consine距离:
bm25相关值,用于评价搜索词和文本之间相关性,对每个词与文档的相似度IDF×R求和,公式为:
其中 , , ,b,k1,k2都是自定义参数,一般k1=2,k2=1,b=0.75,dl是文档长
度,avgdl是平均文档长度,fi是词在文档中的出现的次数,qfi是词在query中出现的次数,N
是所有的文档数量,n(query i )是包含词query i 的文档数量;
res_2的每个回复a公式与r相似,其是S2步骤计算的句向量表示。
进一步地,所述S6中的word2vec距离包括余弦距离、皮尔逊距离和词移距离的计算,计算过程包括如下步骤:
词移距离:是度量两个文本之间距离的一种方式(方法),用于判断两个文本之间的相似度,WMD是通过将一个文本中包含的词语“移动”(travel)到另一个文本中的词语,这个“移动”过程产生的距离总和的最小值作为词移距离,首先根据S2至S5步骤计算的句向量表示,然后按照以下方式计算出两个文本向量之间的词移距离:
res_2的每个回复a公式与r相似,其是S2步骤计算的句向量表示。
进一步地,所述S6中预训练网络的训练,包括如下步骤:
S6_12,根据S6_11获取的正负对话样本集合处理成与训练网络Bert的输入格式:
[CLS] [SEP] [SEP],label为0或1,0表示负样本,说明两句对话不匹配,1表示
正样本,说明两句对话是上下文匹配的;
进一步地,所述S6中的精排包括如下步骤:
S6_23,将S6_22获取的特征与S6_21获取的对应的label,输入精排模型LGBMranker进行有监督的训练,得到已经训练好的精排模型LGBMRanker;
S6_24,通过训练好的精排模型LGBMRanker,对query获取检索结果排序,输出一个排好序的检索结果列表,选取第一个回复作为query的回复。其输入就是将S6_21的正负样本按照S6_22所计算的特征形式输入到LGBMRanker模型训练。
结合关键词和语义理解表征的检索式回复对话系统,包括:对话语料采集模块、对话语料预处理模块、训练word2vec模型、HNSW模型、训练精排模型;
所述对话语料采集模块,用于采集对话系统所需的对话语料以及匹配标注;
所述对话语料预处理模块,用于处理成单轮对话文本以及对话分词信息,将所有样本按比例分配训练集、测试集以及验证集;
所述word2vec模型,获取训练集所有的对话语料之后,训练word2vec模型;
所述HNSW模型,建立了两种表征的HNSW模型,一种是基于关键词表征获取句向量表示后,根据训练集的对话样本,在word2vec模型基础上获取每句的关键词向量表示,利用Faiss检索开源工具,初始化HNSW_1模型;另一种是基于语义理解表征获取句向量表示后,根据训练集的对话样本,利用Faiss检索开源工具,初始化HNSW_2模型;
训练精排模型,根据训练集的单轮对话样本,基于各种不同的距离度量特征,训练精排模型;基于查询对话文本query检索召回、排序,根据当前的query进行检索召回,依据召回的结果,进行精排,最后返回精排结果的最优回复。
本发明的优势和有益效果在于:
1、本发明结合了两种不同粒度的向量表征形式,基于关键词表征和语义理解表征的两种不同方式检索相关回复,使检索回复在关键词上具有相关性,对话的主题意识不会脱离,在语义理解上具有很近的相似匹配,提高了检索式回复的流畅性和自然性,能够提高最终检索式回复对话质量;
2、本发明中采取了中文预训练模型Bert网络模型获取句向量表征,优点在于不仅理解句意,并且排除了词向量加权引起的误差;
3、本发明采取了BertForSequenceClassification网络模型在自己的单轮对话上训练分类任务——对话是否匹配的任务,通过微调,学习到了BertForSequenceClassification中线性层+激活函数的权重,可以做到后续对话的分类任务;
附图说明
图1是本发明的方法流程图。
图2是本发明中HNSW构建的向量联通结构示意图。
图3是本发明中Bert网络的结构示意图。
图4是本发明中Encoder结构示意图。
图5是本发明的系统结构示意图。
图6是本发明另一种结合关键词和语义理解表征的检索式回复对话装置的结构图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
如图1所示,一种结合关键词和语义理解表征的检索式回复对话方法,包括如下步骤:
S1、根据对话文本语料,得到单句对话文本和单句对话分词信息;
预处理对话文本,分别将对话预料[]处理
成单轮对话文本,即以相邻的两句对话作为单轮的对话[ ],其中i
和j的关系满足i+1 = j,使用结巴分词将单轮对话的两句对话分词,获取每句对话分词信
息 ];
比如text = "我来到北京清华大学"
S2、分别获取单句对话文本和单句对话分词信息的句向量表示;
计算过程可表示为:
每句对话的句向量表示为,相应的TF-IDF向量表示为,两者相乘之后得,然后按行求每行得加和可得,再对每个求和后得数值分别除以d,可得最后的表示结果sen,是一个embbed_size*1维度的向量;
其中 表示第i个分词的向量表示,其维度为embed_size,所以每句对话的句向
量表示其实为矩阵; 表示第i个分词的TF-IDF数值,所以每句对话分词对应的TF-IDF是
一维向量。emded_size为word2vec词向量维度。
S3、根据句向量表示,分别构建第一、第二高速通道模型;
dim = embed_size
index = faiss.IndexHNSWFlat(dim, m, measure) # build the index
index.add(corpus_embedding) # add vectors to the index
HNSW(Hierarchical Navigable Small World--分层的高速通道)是把D维空间中所有的向量构建成一张相互联通的图,并基于这张图搜索某个顶点的K个最近邻,如图2所示;
第0层中包含图中所有节点;
向上节点数依次减少,遵循指数衰减概率分布;
建图时新加入的节点由指数衰减概率函数得出该点最高投影到第几层;
从最高的投影层向下的层中该点均存在;
搜索时从上向下依次查询;
初始化模型时,需要的是将所有单轮对话表示为学习的向量表示后,按照列表的形式加入模型中,会自动按照图的形式建图。
将每句对话文本,输入到输出宽度为n的中文预训练Bert(Bidirectional
Encoder Representation from Transformers--基于transformer的双向编码器)网络,如
图3、4所示,得到当前对话整体隐藏的语义表征 ,即基于语义理解模型
Bert学习的query文本句向量表示。
Bert(Bidirectional Encoder Representation from Transformers)是一个预训练的语言表征模型。其输入格式表示为[CLS]chat[SEP]response[SEP]或[CLS]chat[SEP],第二个答复文本response如果没有的话,那就是在学习第一个文本的向量表示,如果有response的话,那就是在学习chat和response整体文本的向量表示;
针对Bert模型的输出sequence_output,一般情况下,使用sequence_output表示整体句向量表示。
计算过程是分别将每个按照S2步骤计算句向量表示为,拼接在一起就形成了corpus_embedding。
输入Faiss的HNSW接口模型:
dim = hiddien_size
index = faiss.IndexHNSWFlat(dim, m, measure) # build the index
index.add(corpus_embedding) # add vectors to the index。
S4、将当前查询对话文本输入第一、第二高速通道模型,得到第一、第二回复列表;
针对当前的query对话文本,基于S2至S5的计算获取query文本的向量表示,具体的表示为:
建立好的HNSW_1模型为index_1,输入S9学习到的query的向量表示,检索出与query相似的对话文本,然后将相似的对话文本对应的回复返回作为此时的检索结果,即res_1。
比如:query:我下周要去爬山
检索出和query相似的文本有:1)我下星期要去爬山,2)我下星期登山等。
1)和谁2)哪个山...
针对当前的query对话文本,计算获取query文本的向量表示,具体表示为:
建立好的HNSW_2模型为index_2,输入S12学习到的query向量表示,检索出与query相似的对话文本,然后将相似的对话文本对应的回复返回作为此时的检索结果,即res_1。
比如:query:我晚上睡不着
检索出和query相似的文本有:1)我最近天天睡不着 2)我晚上睡的不舒服等
1)怎么了2)陪你...。
S5、获取当前查询对话文本与第一、第二回复列表的句向量表示的距离,及词向量转换距离;
对返回的回复列表res_1和res_2,与当前的query文本建立一一对应的对话形式dataframe,具体地:
比如:[‘我下周要去爬山’,‘和谁’]这样的文本;
最长公共子串的长度lcs:有两个字符串(可能包含空格),请找出其中最长的公共连续子串,输出其长度。例如:输入:“我下周要去爬山”和“我下星期要去登山”,则lcs的结果就是5。
bm25是一种用来评价搜索词和文本之间相关性的算法。
简而言之就是对每个词与文档的相似度IDF×R的求和。公式为:
其中,b,k1,k2都是自己设置的参数,一般k1=2,k2=1,b=
0.75。dl是文档长度,avgdl是平均文档长度,fi是词在文档中的出现的次数,qfi是词在
query中出现的次数,N是所有的文档数量,n(query i )是包含词query i 的文档数量。
针对获取的dataframe,基于S1训练的word2vec模型,分别获取query的向量表示
和每个回复 和 的向量表示,进而计算query与每个回复 和之间的余弦距离
word2vec_cosine,皮尔逊距离word2vec_pearson和词移距离word2vec_wmd;
词移距离(WMD)是度量两个文本之间距离的一种方式(方法),用于判断两个文本之间的相似度。WMD是通过将一个文本中包含的词语“移动”(travel)到另一个文本中的词语,这个“移动”过程产生的距离总和的最小值作为词移距离。首先按照S2步骤计算的句向量表示,然后按照以下方式计算出两个文本向量之间的词移距离:
S6、通过预训练模型,获取当前查询对话文本与第一、第二回复列表的匹配分数,匹配分数与S5得到的距离作为排序特征,通过精排模型得到排序结果;
S6_12:根据S6_1获取的对话样本集合处理成Bert的输入格式具体的表示为[CLS] [SEP] [SEP],label则为0或1,0表示负样本,说明两句对话是不匹配的意思;1
表示正样本,说明两句对话是上下文匹配的意思。
S6_23:将获取的特征和获取的对应的label,输入到LGBMranker模型进行有监督的训练,最后得到已经训练好的精排模型LGBMRanker。
S6_24:LGBMRanker模型是一种排序模型,主要是针对query文本获取的检索结果的排序,输出一个排好序的检索结果列表。其输入就是将正负样本按照计算的特征形式输入到LGBMRanker模型训练。
综上所述,本实施提供的方法,通过结合关键词表征和语义理解表征,提高了检索式回复的流畅性和自然性,能够提高最终检索式回复对话质量。
如图5所示,一种结合关键词和语义理解表征的检索式回复对话系统,包括:
对话语料采集模块,用于采集对话系统所需的对话语料以及匹配标注;
对话语料预处理模块,用于处理成单轮对话文本以及对话分词信息,将所有样本按比例分配训练集、测试集以及验证集;
word2vec模型训练模块,用于获取训练集所有的对话语料之后,训练word2vec模型;
HNSW模型建立模块,用于整体模型中建立了两种表征的HNSW模型,一种是基于关键词表征获取句向量表示之后,根据训练集的对话样本,在word2vec模型基础上获取每句的关键词向量表示,利用Faiss检索开源工具,初始化HNSW_1模型;另一种是基于语义理解表征获取句向量表示之后,根据训练集的对话样本,利用Faiss检索开源工具,初始化HNSW_2模型;
精排模型训练模块,用于根据训练集的单轮对话样本,基于各种不同的距离度量特征,训练精排模型;基于query检索召回、排序,根据当前的query进行检索召回,依据召回的结果,进行精排,最后返回精排结果的第一个回复。
与前述结合关键词和语义理解表征的检索式回复对话方法的实施例相对应,本发明还提供了结合关键词和语义理解表征的检索式回复对话装置的实施例。
参见图6,本发明实施例提供的一种结合关键词和语义理解表征的检索式回复对话装置,包括一个或多个处理器,用于实现上述实施例中的结合关键词和语义理解表征的检索式回复对话方法。
本发明结合关键词和语义理解表征的检索式回复对话装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本发明结合关键词和语义理解表征的检索式回复对话装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图6所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的结合关键词和语义理解表征的检索式回复对话方法。
所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。
Claims (10)
1.结合关键词和语义理解表征的检索式回复对话方法,其特征在于包括如下步骤:
S1,预处理对话文本语料,得到单句对话文本和单句对话分词信息;
S2,根据单句对话分词信息,通过训练好的词向量转换模型,获取单句对话向量表示;计算单句对话分词信息与所有单句对话文本的词频-逆向文件频率向量表示,根据单句对话向量表示与其对应的词频-逆向文件频率向量表示,得到该句对话的基于关键词表征学习的句向量表示;将单句对话文本,输入到预训练网络,得到基于语义理解网络学习的句向量表示;
S3,通过S2得到的基于关键词表征学习的句向量表示,构建分层的第一高速通道模型;通过S2得到的基于语义理解模型网络学习的句向量表示,构建分层的第二高速通道模型;
S4,针对当前的查询对话文本,基于S2获取当前查询对话文本的向量表示作为第一查询对话文本,将第一查询对话文本输入第一高速通道模型,检索出相似的对话文本,再将相似的对话文本对应的回复返回,得到第一回复列表;基于S2获取当前查询对话文本的向量表示作为第二查询对话文本,将第二查询对话文本输入第二高速通道模型,检索出相似的对话文本,再将相似的对话文本对应的回复返回,得到第二回复列表;
S5,将第一回复列表和第二回复列表,与当前查询对话文本建立一一对应的对话形式数据结构,根据该数据结构,通过S2分别计算出当前查询对话文本与第一回复列表和第二回复列表中每个回复的句向量表示,并计算当前查询对话文本的句向量表示分别与第一回复列表和第二回复列表中每个回复的句向量表示之间的距离;根据一一对应的对话形式数据结构,通过训练好的词向量转换模型,分别获取当前查询对话文本的向量表示分别与第一回复列表和第二回复列表中每个回复的向量表示,计算当前查询对话文本与每个回复之间词向量转换距离;
S6,通过训练好的预训练网络计算上下文是否匹配,将当前查询对话文本分别与第一回复列表和第二回复列表的每个回复,输入预训练网络中,得到匹配分数;将匹配分数与其对应的所述当前查询对话文本与第一回复列表和第二回复列表中每个回复的句向量表示之间的距离、词向量转换距离作为排序特征,输入精排模型中,获取精排后的回复结果顺序,选取回复结果顺序中最优回复作为当前查询对话文本的回复。
2.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于根据采集的对话文本语料,预处理得到单句对话文本和单句对话分词信息,将单句对话文本和单句对话分词信息输入词向量转换模型进行训练,得到训练好的词向量转换模型。
3.根据权利要求1或2所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述预处理,是对采集的对话文本语料进行拆分,得到单轮对话文本,单轮对话文本是以相邻的两句对话作为单轮的对话,对相邻的两句对话进行拆分,得到单句对话分词信息。
4.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述S2中的词频-逆向文件频率向量表示,是根据词频TF(x)与逆向文件频率IDF(x)的乘积确定,TF(x)根据词x在该句中出现的次数与该句所有的词数的比值确定,IDF(x)根据对话的所有数量与包含词x的所有对话数量的比值确定。
5.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述S2中,根据单句对话向量表示与其对应的词频-逆向文件频率向量表示,得到该句对话的基于关键词表征学习的句向量表示,包括如下步骤:
S2_1,将单句对话向量表示与其相应的词频-逆向文件频率向量表示相乘,得到矩阵;
S2_2,对矩阵的每行进行加权求和;
S2_3,对每个求和后的数值,分别除以单句对话的向量数,得到句向量表示。
6.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述S3中,将句向量表示输入高速通道模型,建立第一高速通道模型和/或第二高速通道模型,高速通道模型将向量构建成一张相互联通的图,并基于该图搜索某个顶点的K个最近邻。
7.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述预训练网络采用语言表征网络,将单句对话文本调整为语言表征网络的输入格式,当没有答复文本时,学习第一个文本的向量表示,当有答复文本时,学习第一个文本和答复文本整体文本的向量表示;语言表征网络输出整体句向量表示。
8.根据权利要求3所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述S6中预训练网络通过如下步骤进行训练:
S6_11,根据S2处理好的单轮对话文本,随机抽取部分对话文本作为正样本并标记1,随机抽取部分对话文本,并将其随机组合作为负样本并标记0,将正样本和负样本打乱;
S6_12,正负对话样本集合处理成预训练网络的输入格式,标记为0或1,0表示负样本,说明两句对话不匹配,1表示正样本,说明两句对话是上下文匹配的;
S6_13,将调整格式后的对话文本输入预训练网络进行训练。
9.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法,其特征在于所述S6中的精排包括如下步骤:
S6_21,根据S2处理好的单轮对话文本,随机抽取部分对话文本作为正样本并标记1,随机抽取部分对话,并将其随机组合作为负样本并标记0,将正样本和负样本打乱;
S6_22,通过前后对话文本获取分词信息,依据S5至S6中计算方式,计算排序特征;
S6_23,将S6_22获取的特征与S6_21获取的对应的标记,输入精排模型进行训练;
S6_24,通过训练好的精排模型,对当前查询对话文本获取检索结果排序,选取第一个回复作为当前查询对话文本的回复。
10.根据权利要求1所述的结合关键词和语义理解表征的检索式回复对话方法的系统,包括:对话语料采集模块、对话语料预处理模块、词向量转换模型训练模块、高速通道模型建立模块、精排模型训练模块,其特征在于:
所述对话语料采集模块,用于采集对话系统所需的对话语料以及匹配标注;
所述对话语料预处理模块,用于处理成单轮对话文本以及对话分词信息,将所有样本按比例分配训练集、测试集以及验证集;
所述词向量转换模型训练模块,用于获取训练集所有的对话语料之后,训练词向量转换模型;
所述高速通道模型建立模块,用于建立两种表征的高速通道模型,一种是基于关键词表征获取句向量表示后,根据训练集的对话样本,在词向量转换模型基础上获取每句的关键词向量表示,利用检索工具,初始化第一高速通道模型;另一种是基于语义理解表征获取句向量表示后,根据训练集的对话样本,利用检索工具,初始化第二高速通道模型;
所述精排模型训练模块,根据训练集的单轮对话文本,基于各种不同的距离度量特征,训练精排模型;基于当前查询对话文本检索召回、排序,根据当前查询对话文本进行检索召回,依据召回的结果,进行精排,最后返回精排结果中的最优回复。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111538357.1A CN113934835B (zh) | 2021-12-16 | 2021-12-16 | 结合关键词和语义理解表征的检索式回复对话方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111538357.1A CN113934835B (zh) | 2021-12-16 | 2021-12-16 | 结合关键词和语义理解表征的检索式回复对话方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113934835A CN113934835A (zh) | 2022-01-14 |
CN113934835B true CN113934835B (zh) | 2022-03-25 |
Family
ID=79289101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111538357.1A Active CN113934835B (zh) | 2021-12-16 | 2021-12-16 | 结合关键词和语义理解表征的检索式回复对话方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113934835B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115048944B (zh) * | 2022-08-16 | 2022-12-20 | 之江实验室 | 一种基于主题增强的开放域对话回复方法及系统 |
CN117312500B (zh) * | 2023-11-30 | 2024-02-27 | 山东齐鲁壹点传媒有限公司 | 一种基于ann和bert的语义检索模型建立方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112256860A (zh) * | 2020-11-25 | 2021-01-22 | 携程计算机技术(上海)有限公司 | 客服对话内容的语义检索方法、系统、设备及存储介质 |
CN113505198A (zh) * | 2021-07-09 | 2021-10-15 | 和美(深圳)信息技术股份有限公司 | 关键词驱动的生成式对话回复方法、装置及电子设备 |
US20210326371A1 (en) * | 2020-04-15 | 2021-10-21 | Adobe Inc. | Model-based semantic text searching |
-
2021
- 2021-12-16 CN CN202111538357.1A patent/CN113934835B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210326371A1 (en) * | 2020-04-15 | 2021-10-21 | Adobe Inc. | Model-based semantic text searching |
CN112256860A (zh) * | 2020-11-25 | 2021-01-22 | 携程计算机技术(上海)有限公司 | 客服对话内容的语义检索方法、系统、设备及存储介质 |
CN113505198A (zh) * | 2021-07-09 | 2021-10-15 | 和美(深圳)信息技术股份有限公司 | 关键词驱动的生成式对话回复方法、装置及电子设备 |
Non-Patent Citations (3)
Title |
---|
Adaptively Multi-Objective Adversarial Training for Dialogue Generation;Xuemiao Zhang等;《Proceedings of the Twenty-Ninth Inter national Joint Conference on Ar tificial Intelligence》;20201231;第2872-2878页 * |
一种基于多粒度循环神经网络与词注意力的多轮对话回答选择方法;谢琪 等;《小型微型计算机系统》;20211208;第42卷(第12期);第2553-2560页 * |
检索式聊天机器人技术综述;吴俣 等;《计算机科学》;20211209;第48卷(第12期);第278-285页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113934835A (zh) | 2022-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110427463B (zh) | 搜索语句响应方法、装置及服务器和存储介质 | |
CN111738003B (zh) | 命名实体识别模型训练方法、命名实体识别方法和介质 | |
CN110597961B (zh) | 一种文本类目标注方法、装置、电子设备及存储介质 | |
Wu et al. | Learning of multimodal representations with random walks on the click graph | |
CN109800437A (zh) | 一种基于特征融合的命名实体识别方法 | |
CN113392209B (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN113934835B (zh) | 结合关键词和语义理解表征的检索式回复对话方法及系统 | |
CN107688870B (zh) | 一种基于文本流输入的深度神经网络的分层因素可视化分析方法及装置 | |
CN112749274B (zh) | 基于注意力机制和干扰词删除的中文文本分类方法 | |
CN111898369B (zh) | 文章标题生成方法、模型的训练方法、装置和电子设备 | |
CN113515632B (zh) | 基于图路径知识萃取的文本分类方法 | |
CN115952292B (zh) | 多标签分类方法、装置及计算机可读介质 | |
CN111581364B (zh) | 一种面向医疗领域的中文智能问答短文本相似度计算方法 | |
Song et al. | Text sentiment analysis based on convolutional neural network and bidirectional LSTM model | |
CN113627151B (zh) | 跨模态数据的匹配方法、装置、设备及介质 | |
CN113204624B (zh) | 一种多特征融合的文本情感分析模型及装置 | |
CN111145914A (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN114330483A (zh) | 数据处理方法及模型训练方法、装置、设备、存储介质 | |
CN113486143A (zh) | 一种基于多层级文本表示及模型融合的用户画像生成方法 | |
CN116522165B (zh) | 一种基于孪生结构的舆情文本匹配系统及方法 | |
CN112818106A (zh) | 一种生成式问答的评价方法 | |
CN111859955A (zh) | 一种基于深度学习的舆情数据分析模型 | |
CN116932736A (zh) | 一种基于用户需求结合倒排表的专利推荐方法 | |
Hua et al. | A character-level method for text classification | |
CN115934951A (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 |