CN112905768A - 一种数据交互方法、装置及存储介质 - Google Patents
一种数据交互方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112905768A CN112905768A CN202110180335.6A CN202110180335A CN112905768A CN 112905768 A CN112905768 A CN 112905768A CN 202110180335 A CN202110180335 A CN 202110180335A CN 112905768 A CN112905768 A CN 112905768A
- Authority
- CN
- China
- Prior art keywords
- answer
- answer document
- question
- documents
- training
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 230000003993 interaction Effects 0.000 title claims abstract description 26
- 239000013598 vector Substances 0.000 claims abstract description 117
- 238000012549 training Methods 0.000 claims description 103
- 230000008569 process Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000013145 classification model Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 5
- 238000009825 accumulation Methods 0.000 claims description 4
- 238000003058 natural language processing Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 8
- 238000013473 artificial intelligence Methods 0.000 abstract description 4
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 230000006872 improvement Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000012216 screening Methods 0.000 description 6
- 238000005065 mining Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000011524 similarity measure Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 244000062793 Sorghum vulgare Species 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 235000019713 millet Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- 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
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种数据交互方法、装置及存储介质,可以应用于人工智能技术领域。包括:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户,以提高问答的效果,提升用户的满意度并获得更好的用户体验。
Description
技术领域
本说明书实施例涉及人工智能技术领域,特别涉及一种数据交互方法、装置及存储介质。
背景技术
人们获取知识从最早的书籍、图书馆、专家系统到如今的搜索引擎,人们一直在追求准确且有效快速的知识获取方法。当前,网络上的信息日新月异,信息如大海一样浩渺,而用户的需求又千变万化,随着人工智能技术的不断发展,基于关键字检索和浅层语义的方法显然不能够返回一个满足用户需求的答案,问答系统通过对数据的精细加工和深度理解,以一种交互式的形式可以提高用户的满意度。
值得注意的是,当前国内的智能问答系统发展的势头强劲,具有代表性的有微软亚洲研究院早期开发的小冰,百度公司的小度,小i公司的小i机器人,以及小米公司的小爱。众多的公司和研究机构都在该领域大力发展,但是从目前的问答机器人的水平来看,对于用户的需求还不能完全满足,这是因为该领域涉及的技术较多,需要有一种能够理解深层语义和进行推理的系统。
计算机进行语义理解就是将自然语言转化为计算机可以理解的形式化语言,然计算机理解语言是有挑战的,这也是自然语言处理技术的核心问题。当前解决问答系统中语义理解一般有两种方法:一、基于信息检索的方法。该方法将语义理解问题转化为检索问题来解决,这样就可以套用很多已用的方法。二、语义解析的方法。这种方法把语句解析为逻辑表达式,然后再将表达式转换为知识库的查询语句。这两种方法各有利弊,但是对于问题和答案的匹配精度不够,使得在实际应用中可能会出现答非所问的情况,使得用户的体验较差。
发明内容
本说明书实施例的目的是提供一种数据交互方法、装置及存储介质,以解决现有技术中对于问题和答案的匹配精度不够的问题,以提高问答的效果,提升用户的满意度并获得更好的用户体验。
为解决上述问题,本说明书实施例提供一种数据交互方法,所述方法包括:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
为解决上述问题,本说明书实施例还提供一种数据交互装置,所述装置包括:检索模块,用于使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;转换模块,用于将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算模块,用于计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并模块,用于合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;打分模块,用于基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
为解决上述问题,本说明书实施例还提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
为解决上述问题,本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
由以上本说明书实施例提供的技术方案可见,本说明书实施例中,可以使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。本说明书实施例提供的方法,采用了两种不同的方式检索问题语句,可以有效的提高答案文档的语义覆盖范围和精度,从而提高问答的效果,提升用户的满意度并获得更好的用户体验。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个场景示例中数据交互系统的结构示意图;
图2为本说明书一个场景示例中各个模块的整体流程示意图;
图3为本说明书一个场景示例中答案初步筛选模块的数据处理过程示意图;
图4为本说明书一个场景示例中领域词语挖掘模块的数据处理过程示意图;
图5为本说明书一个场景示例中打分模型模块的结构图;
图6为本说明书一个场景示例中排序模块的结构图;
图7为本说明书一个场景示例中答案返回模块的结构图;
图8为本说明书实施例一种数据交互方法的流程图;
图9为本说明书实施例一种电子设备的功能结构示意图;
图10为本说明书实施例一种数据交互装置的功能结构示意图。
具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
本说明书提供了一种数据交互系统的场景示例。请参阅图1,所述数据交互系统可以包括答案初步筛选模块1,打分模型模块2,排序模块3和答案返回模块4。
在本场景示例中,所述数据交互系统中各个模块的整体流程如图2所示。S101首先利用答案初步筛选模块,获取到初步的答案召回文档;S102打分模型模块,提供了三个阶段的模型训练。第一阶段,利用通用预训练数据生成单元生成训练数据;第二阶段,利用排序预训练模型语料生成单元和排序预训练模型语料输入单元生成训练数据;第三阶段,使用预训练模型训练单元训练模型;S103,排序模块,把步骤S101中得到的答案召回文档输入S102训练好的排序预训练模型中,获取每个答案文档和问题的相关度得分,并按照得分大小排序;S104,答案返回模块,把得分最高的候选答案返回给用户,剩下的作为候选集返回给用户。
下面对本场景示例中答案初步筛选模块1,打分模型模块2,排序模块3和答案返回模块4进行详细的说明。
在本场景示例中,如图3所示,所述答案初步筛选模块1的数据处理过程可以包括以下步骤。
步骤301:使用Elasticsearch建立答案文档索引。
在本场景示例中,可以利用开源搜索引擎Elasticsearch对要建立的领域的问答系统的答案文档建立索引。其中,Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
步骤302:将答案文档转换为向量形式。
在本场景示例中,可以利用词向量,例如使用Word2Vec、ELMo,将答案文档转换为向量形式。如果使用静态词向量,需要对答案文档进行分词,获得到每个词的向量vci,然后作为该答案文档的向量表示,其中n表示该文档分词后词语的数量,注意这里的加和除运算皆是位加和位除。如果使用动态词向量,直接把答案文档分句后输入到模型中,获取模型的输出向量,把其加权平均后作为该答案文档的向量表示。通过上述方法,可以得到答案文档对应的答案文档向量。
步骤303:语义解析获得基本实体。
在本场景示例中,可以利用开源的语义解析库如LTP、Hanlp等,获得问题语句中关键实体S1。这一步,获得的实体称为基本实体,因为这些实体可能不具有领域特性。其中,所述实体表示所述问题语句中的词语。
步骤304:目标领域的实体词典匹配获得目标领域实体。
在本场景示例中,可以利用目标领域的实体词典匹配,获得问题语句中的实体S2。该步骤中,获得的实体为目标领域的实体,因为这些实体和该领域密切相关。
步骤305:合并基本实体和领域实体。
在本场景示例中,可以合并S1和S2形成实体词集合S3,合并原则需要遵循如下:如果S1是S2的子序列,则以一定概率η抛弃它,得到实体S3,其中η≥0.8。若S1不是S2的子序列,则可以取S1和S2的并集,得到实体词集合S3。
步骤306:获得答案召回文档。
在本场景示例中,首先使用Elasticsearch检索问题语句,返回TOPn的答案文档,即排名前n的答案文档,其中,n大于或等于2;利用相似度量方法,使用和步骤302相同的方法把实体词集合S3转变为向量表示该问题语句,得到问题语句向量,计算问题语句向量和答案文档向量的相似度,返回TOPm的答案文档,即相似度排名前m的答案文档,其中m大于或等于2。综合返回排名前n的答案文档和排名前m的答案文档,构建答案召回文档。
在本场景示例中,所述数据交互系统还可以包括领域词语挖掘模块,所述领域词语挖掘模块可以用于从给定的领域语料中自动挖掘属于该领域的词语,根据该领域的词语构建目标领域的实体词典。具体的,如图4所示,所述领域词语挖掘模块的数据处理过程可以包括以下步骤。
步骤401:候选词语生成。
在本场景示例中,可以获取预设数量目标领域的语料,使用自然语言处理技术对所述语料进行识别,得到多个候选词语。例如可以使用N-Gram模型对语料进行识别,得到多个候选词语。
步骤402:候选词语特征指标计算。
在本场景示例中,所述特征指标用于表征候选词语为目标领域词语的可能性;所述特征指标可以包括tf值、idf值、C-value值、NC-value值、PMI值、左右邻字熵等。
具体的,对于tf值和idf值,如果某个词语在领域语料中频繁出现但是在外部文档中出现很少,则该候选词语很可能是该领域的高质量词语。也就是说,一个词的重要程度与其tf正相关,与其idf反相关。
其中f(u)表示词语u在某个文档中出现的次数,∑u'f(u')表示词语在所有文档中出现的次数和。
其中|D|是该领域语料中所有文档总数,|{j:u∈dj}|表示包含词语的文档个数。α表示平滑项,避免出现次数为零导致的分母为零的情况。
对于C-value值,一般来说,在很多专业领域,越长的词语越有可能是专有名词,也越可能是高质量的词语。这种计算方式可以防止父词语重复统计带来频次估计的偏差。例如,“中国工商银行股份有限公司”是个高质量的词语,那么“工商银行”的词频就不应该重复统计。
对于NC-value值,利用词语丰富的上下文信息,先通过C-value值对候选词语进行初步排序,再选取前5%的候选词语的上下文中所出现的单词作为b。上下文单词b的重要性为weight(b)。weight(b)越大,说明b越倾向于出现在高质量词语的上下文中,以此就越有可能找到高质量词语。
对于点互信息PMI,PMI表达了词语组成部分之间的一致性。假设“中国”和“工商银行”是独立地出现在预料中,那么它们联合出现的概率“中国工商银行”应该就等于两部分相乘。这样可以看出,如果两个部分共现的概率远远大于两部分独立出现的概率则暗示着两者共现的词应该是一个有意义词语。
其中,p(u)表示词语ui,uj共同出现的概率,p(ui)表示词语ui单独出现的概率,p(uj)表示词语uj单独出现的概率。
左右相邻字的熵用来衡量一个词语左右邻字集合的丰富程度,如果改词语的左右搭配约丰富,则该词越有可能是个有意义词语。例如:“中国工商银”这个词语的右邻字比较集中,往往是“行”,所以这样就不会把其作为一个完整的词语,而是应当把“中国工商银行”作为一个完整的词语。设χ为取有限个值的随机变量,χ取值为x的概率为p(x)则χ的熵H(χ)为:
步骤403:构建词语分类模型。
在本场景示例中,可以基于所述特征指标构建词语分类模型,所述词语分类模型用于确定属于目标领域词语的候选词语。所述词语分类模型算法可以使用Xgboost或者决策树但不限于此。
步骤404:进行语料切割。
在本场景示例中,可以根据词语分类模型来对候选词语进行识别,获得属于目标领域词语的候选词语,再根据所述属于目标领域词语的候选词语对所语料进行切割,在此基础上重新统计词频,提升词频统计的精度,得到多个词语。
步骤405:更新目标领域的实体词典。
在本场景示例中,可以将切割后获得的多个词语添加至目标领域的词典中,形成目标领域的实体词典。
在本场景示例中,如图5所示,所述打分模型模块2可以包括领域预训练单元501、语料生成单元502和训练单元503。
在本场景示例中,所述领域预训练单元501可以使用预训练语言模型例如Bert、Robert等作为精排序的基模型进行领域预训练。具体的,预训练模型基本框架保持不变,模型的参数可直接使用bert或者Robert等。这里主要修改模型的训练任务,如下:
(1)句子之间的任务采用SOP(句子顺序预测)。分为三类标签,0表示句子A的下一句是句子B;1表示句子A的上一句是句子B;2表示句子A和句子B没关系,是随机取的。三类数据的生成概率相等,都是1/3。
(2)句子内词的任务采用,动态mask(覆盖)结合全词掩盖的方式,并加入打乱词的顺序的任务。具体地,句子A原始为“即使不去星巴克、很少喝咖啡的朋友,也不会对超大杯这个词感到陌生。”。经过打乱词顺序后变为句子B为“即使不去星巴克、很少喝咖啡的朋友,也不会对杯超大这个词感到陌生。”。可以看出这里把原来的词“超大杯”变为了“杯超大”。加入该任务可以增加任务的难度,一个好的预训练应当能理解词结构上的特征变换,把“杯超大”还原为“超大杯”。打乱词中字的顺序的个数为5%,其他设置和原始bert保持一致。
在本场景示例中,所述语料生成单元502用于构建预设数量的正样本和负样本作为训练数据。与传统的预训练模型所采用的训练数据不同,在本场景示例中,所述正样本由问题语句和所述问题语句相应的答案文档构成;所述负样本由问题语句和所述问题语句非相应的答案文档构成。具体的,问答数据是以问答对的形式存储,一个问题可以对应多个答案文档。这里需要构建问题和答案文档的关系,因此需要将问题和答案作为模型的输入。正样本构建取问答数据中问题和相应的答案文档,形成<问题,相应答案文档>;负样本构建取问答数据中问题和非相应的答案文档,这里因为负例会很多,因此需要进行采样,形成<问题,非相应答案文档>。
在本场景示例中,所述训练单元503,用于使用所述正样本和负样本对预训练语言模型进行训练,得到打分模型。具体的,首先可以对正样本和负样本中问题数据进行聚类,定义每个聚类簇代表问题的类型T,这里聚类算法可以使用K-Means等。具体的,模型输入的单条数据中包含问题类型T、问题Q、答案文档A。形如:Xi=[[CLS],T,[SEP],Q,[SEP],A,[SEP]]其中,[CLS]和[SEP]都为分隔符,模型最终输出的向量中取[CLS]的位置的向量clsi表示Q-A的关系。这里注意需要在模型的嵌入层加上类型嵌入向量,其他和原始一致。以这种方式,使用上述训练数据,以Pointwise的方式训练领域预训练单元501得到的模型。得分通过softmax计算,如下:
si=Softmax(clsi)
模型参数通过交叉熵损失函数进行优化。在模型训练时可以采用如下三种方式进行加速:(1)训练模型采用分布式训练,具体的并行模式为数据并行,数据并行在一定程度上可以加速模型的收敛,因为相当于增大了batch size的大小。(2)训练中采用混合精度和loss scale方法。loss scale方法是指将计算出来的损失loss乘以一个比例因子loss_scale,一个合适的比例因子loss_scale对训练精度有关键作用,loss_scale太小会导致较小的梯度值下溢为0,loss_scale太大则可能导致上溢;混合精度训练方法是通过混合使用单精度和半精度数据格式来加速深度神经网络训练的过程,同时保持了单精度训练所能达到的网络精度。混合精度训练能够加速计算过程,同时减少内存使用和存取,并使得在特定的硬件设备上可以训练各大的模型或者加大batch size。(3)在参数更新阶段,引入梯度积累的方法,目的也是变相增大batch size。
在本场景示例中,如图6所示,所述排序模块3可以包括排序单元601。所述排序单元601可以将所述答案初步筛选模块1构建的答案召回文档按照训练单元503中训练数据的格式输入打分模型中,打分模型的输出即为问题语句和答案召回文档中答案文档的相关性打分,以Pointwise的方式对答案文档进行得分排序。
在本场景示例中,如图7所示,所述答案返回模块4可以包括答案返回单元701。所述答案返回单元701可以根据排序单元601输出的答案文档得分排序,把得分最高的答案文档返回给用户,作为该问题语句对应的答案文档。余下的答案文档作为候选答案文档,若用户点击候选答案文档,则将所述问题语句和用户选择的答案文档作为正样本加入训练数据中,以便于对打分模型进行更新。
本场景示例提供的方法,采用了两种不同的方式检索问题语句,可以有效的提高答案文档的语义覆盖范围和精度,在进行精细排序的时候采用了基于预训练语言模型的方法,有针对的设计了基于问答数据集的打分模型,能够提高在精细语义排序阶段的精度,从而提高问答的效果,提升用户的满意度并获得更好的用户体验。
请参阅图8。本说明实施例还提供一种数据交互方法。在本说明书实施例中,执行所述数据交互方法的主体可以是具有逻辑运算功能的电子设备,所述电子设备可以是服务器。所述服务器可以是具有一定运算处理能力的电子设备。其可以具有网络通信单元、处理器和存储器等。当然,所述服务器并不限于上述具有一定实体的电子设备,其还可以为运行于上述电子设备中的软体。所述服务器还可以为分布式服务器,可以是具有多个处理器、存储器、网络通信模块等协同运作的系统。或者,服务器还可以为若干服务器形成的服务器集群。所述方法可以包括以下步骤。
S810:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2。
在一些实施例中,可以预先利用开源搜索引擎Elasticsearch对要建立的领域的问答系统的答案文档建立索引,生成答案文档库。然后使用Elasticsearch检索问题语句,返回TOP n的答案文档,即排名前n的答案文档,其中,n大于或等于2。
S820:将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量。
在一些实施例中,可以利用词向量,例如使用Word2Vec、ELMo,将所述答案文档转换为向量形式。如果使用静态词向量,需要对答案文档进行分词,获得到每个词的向量vci,然后作为该答案文档的向量表示,其中n表示该文档分词后词语的数量,注意这里的加和除运算皆是位加和位除。如果使用动态词向量,直接把答案文档分句后输入到模型中,获取模型的输出向量,把其加权平均后作为该答案文档的向量表示。通过上述方法,可以得到答案文档对应的答案文档向量。
在一些实施例中,也可以利用词向量的方法将所述问题语句转换为向量形式,得到问题语句向量。具体的,可以包括以下步骤:
S821:使用语义解析库对问题语句进行解析,获得所述问题语句的第一关键词集合。
在一些实施例中,可以利用开源的语义解析库如LTP、Hanlp等,获得问题语句中的第一关键词S1。这一步,获得的第一关键词可以称为基本关键词体,因为这些关键词可能不具有领域特性。
S822:用目标领域的实体词典对问题语句进行匹配,获得所述问题语句的第二关键词集合。
在一些实施例中,可以利用目标领域的实体词典匹配,获得问题语句中的第二关键词集合S2。该步骤中,获得的第二关键词为目标领域的关键词,因为这些关键词和该领域密切相关。
S823:合并所述第一关键词集合和第二关键词集合,得到第三关键词集合。
在一些实施例中,所述合并所述第一关键词集合和第二关键词集合,得到第三关键词集合包括:在所述第一关键词集合为所述第二关键词集合的子集的情况下,以预设概率删除所述第一关键词集合,得到得到第三关键词集合。
在一些实施例中,在所述第一关键词集合不为所述第二关键词集合的子集的情况下,将所述第一关键词集合和第二关键词集合的并集作为第三关键词集合。具体的,可以合并S1和S2形成第三关键词集合S3,合并原则需要遵循如下:如果S1是S2的子序列,则以一定概率η抛弃它,得到第三关键词集合S3,其中η≥0.8;若S1不是S2的子序列,则可以取S1和S2的并集,得到第三关键词集合S3。通过这种合并方式,可以去除重复的关键词,能够减少后续相似度计算过程的计算量。
S824:将第三关键词集合中的关键词转换为向量形式,得到问题语句向量。
在一些实施例中,可以通过词向量的方法将第三关键词集合中的关键词转换为向量形式,得到问题语句向量。
通过使用语义解析库对问题语句进行解析以及用目标领域的实体词典对问题语句进行匹配这两种方法对问题语句进行解析,从而获得问题语句的关键词,结合了两者的优点,使得关键词的获取更为准确,能够进一步提高答案文档的语义覆盖范围和精度,从而提高问答的效果。
在一些实施例中,所述目标领域的实体词典可以根据以下方式得到:获取预设数量目标领域的语料;使用自然语言处理技术对所述语料进行识别,得到多个候选词语;计算所述多个候选词语的特征指标;所述特征指标用于表征候选词语为目标领域词语的可能性;基于所述特征指标构建词语分类模型;所述词语分类模型用于确定属于目标领域词语的候选词语;根据所述属于目标领域词语的候选词语对所语料进行切割,基于切割后得到的词语构建目标领域的实体词典。通过这种方式能够有效挖掘目标领域的高质量词语,以便于提高问题语句的关键词匹配精度。
在一些实施例中,所述特征指标包括tf值、idf值、C-value值、NC-value值、PMI值、左右邻字熵中的至少一种。这些特征指标能够用于表征候选词语为目标领域词语的可能性,通过对于这些特征指标的计算,能够从多方面挖掘目标领域的高质量词语,从而使得目标领域的实体词典更具有代表性,提高问题语句的关键词匹配精度。
对于所述目标领域的实体词典的获取步骤的说明可以参照上述场景示例中,步骤401-步骤405的介绍,在此不再赘述。
S830:计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2。
在一些实施例中,可以利用相似度量方法,计算问题语句向量和答案文档向量的相似度,返回TOP m的答案文档,即相似度排名前m的答案文档,其中m大于或等于2。
S840:合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集。
在一些实施例中,可以将所述第一答案文档集和所述第二答案文档集合并,形成第三答案文档集。其中,所述第三答案文档集中的答案文档即为初步筛选得出的答案文档。具体的,可以取所述第一答案文档集和所述第二答案文档集并集形成第三答案文档集。
S850:基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
在一些实施例中,可以根据预先建立的打分模型基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分;所述打分模型基于预训练语言模型训练得到。通过机器学习的方法,使用打分模型进行打分,有利于提高打分的效率。
在一些实施例中,所述预训练语言模型通过训练得到;训练所述预训练语言模型的任务包括:句子之间的任务采用句子顺序预测;句子内词语的任务采用动态覆盖和全词掩盖的方式,结合打乱词语的次序。具体的,对于所述预训练语言模型的训练步骤的说明可以参照上述场景示例中,领域预训练单元501的介绍,在此不再赘述。通过上述方式,能够使预训练语言模型加深对语义的分析,提高语义分析的效率和准确性。
在一些实施例中,所述打分模型根据以下方法训练得到:构建预设数量的正样本和负样本,得到训练数据;所述正样本由问题语句和所述问题语句相应的答案文档构成;所述负样本由问题语句和所述问题语句非相应的答案文档构成;使用所述训练数据对预训练语言模型进行训练,得到打分模型。具体的,对于所述打分模型的训练步骤的说明可以参照上述场景示例中,领域预训练单元501、语料生成单元502和训练单元503的介绍,在此不再赘述。
在本说明书实施例中,打分模型的训练数据与传统的预训练模型所采用的训练数据不同,打分模型的训练采用了基于预训练语言模型的方法,有针对的设计了基于问答数据集的打分模型,能够提高模型的打分精度。相对于传统方法具有较强的泛化能力,并在一定程度上提升了问题和答案的匹配精度。
在一些实施例中,所述使用所述训练数据对预训练语言模型进行训练,得到打分模型包括:对所述训练语句中问题语句进行聚类,得到所述训练语句中问题语句的类别;将所述训练语句和所述训练语句中问题语句的类别输入所述预训练语言模型进行训练,得到打分模型。具体的,可以对训练数据中问题语句进行聚类,定义每个聚类簇代表问题的类型T,以使输入的单条数据中包含问题类型T、问题、答案文档,从而对预训练语言模型进行训练,得到打分模型。通过对问题语句聚类的方式,使得训练过程中使用到训练数据之外,还使用了问题语句的类型,使得得到的打分模型在进行打分时,进一步考虑到问题语句的类型,提高打分的准确性。
在一些实施例中,所述打分模型的训练过程采用以下方式中的至少一种:采用分布式训练方式;采用混合精度方式和loss scale方式;采用梯度积累方式。具体的,采用分布式训练方式的模式为数据并行,数据并行可以在一定程度上加速模型的收敛,具体表现为增大了batch size(一次训练所选取的样本数)大小,从而提高模型的训练效率;lossscale方法是指将计算出来的损失loss乘以一个比例因子loss_scale,一个合适的比例因子loss_scale对训练精度有关键作用,loss_scale太小会导致较小的梯度值下溢为0,loss_scale太大则可能导致上溢;采用混合精度训练方法是通过混合使用单精度和半精度数据格式来加速深度神经网络训练的过程,同时保持了单精度训练所能达到的网络精度。混合精度训练能够加速计算过程,同时减少内存使用和存取,并使得在特定的硬件设备上可以训练各大的模型或者加大batch size,从而提高模型的训练效率;在参数更新阶段,引入梯度积累的方式,目的也是变相增大batch size,从而提高模型的训练效率
在一些实施例中,为提高打分模型对于答案文档打分的准确性,所述方法还包括:选取所述第三答案文档集中除得分最高的答案文档外的答案文档作为候选答案返回给用户;在用户选择所候选答案中的答案文档的情况下,将所述问题语句和用户选择的答案文档作为正样本加入训练数据中,以便于对打分模型进行更新。若用户选择了候选答案,则可以说明打分模型精度还不够,通过将问题语句和用户选择的答案文档作为正样本加入训练数据中,作为打分模型更新的训练数据,不断对打分模型进行更新迭代,能够不断提高模型的打分准确性。
由以上本说明书实施例提供的技术方案可见,本说明书实施例中,可以使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。本说明书实施例提供的方法,采用了两种不同的方式检索问题语句,可以有效的提高答案文档的语义覆盖范围和精度,从而提高问答的效果,提升用户的满意度并获得更好的用户体验。
图9为本说明书实施例一种电子设备的功能结构示意图,所述电子设备可以包括存储器和处理器。
在一些实施例中,所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现数据交互方法的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据用户终端的使用所创建的数据。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(APPlication Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。所述处理器可以执行所述计算机指令实现以下步骤:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
在本说明书实施例中,该电子设备具体实现的功能和效果,可以与其它实施例对照解释,在此不再赘述。
图10为本说明书实施例一种故障原因确定装置的功能结构示意图,该装置具体可以包括以下的结构模块。
检索模块1010,用于使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;
转换模块1020,用于将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;
计算模块1030,用于计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;
合并模块1040,用于合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;
打分模块1050,用于基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
本说明书实施例还提供了一种数据交互方法的计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
在本说明书实施例中,上述存储介质包括但不限于随机存取存储器(RandomAccess Memory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(HardDisk Drive,HDD)或者存储卡(Memory Card)。所述存储器可用于存储所述计算机程序和/或模块,所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据用户终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器。在本说明书实施例中,该计算机可读存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
需要说明的是,本说明书实施例提供的数据交互方法、装置及存储介质,可以应用于人工智能技术领域。当然,也可以应用于金融领域,或者除金融领域之外的任意领域,本说明书实施例对所述数据交互方法、装置及存储介质的应用领域不做限定。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(AlteraHardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽取数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。
Claims (15)
1.一种数据交互方法,其特征在于,所述方法包括:
使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;
将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;
计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;
合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;
基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
2.根据权利要求1所述的方法,其特征在于,将所述问题语句转换为向量形式,得到问题语句向量包括:
使用语义解析库对问题语句进行解析,获得所述问题语句的第一关键词集合;
用目标领域的实体词典对问题语句进行匹配,获得所述问题语句的第二关键词集合;
合并所述第一关键词集合和第二关键词集合,得到第三关键词集合;
将第三关键词集合中的关键词转换为向量形式,得到问题语句向量。
3.根据权利要求2所述的方法,其特征在于,所述合并所述第一关键词集合和第二关键词集合,得到第三关键词集合包括:
在所述第一关键词集合为所述第二关键词集合的子集的情况下,以预设概率删除所述第一关键词集合,得到得到第三关键词集合。
4.根据权利要求2所述的方法,其特征在于,所述合并所述第一关键词集合和第二关键词集合,得到第三关键词集合包括:
在所述第一关键词集合不为所述第二关键词集合的子集的情况下,将所述第一关键词集合和第二关键词集合的并集作为第三关键词集合。
5.根据权利要求2所述的方法,其特征在于,所述目标领域的实体词典根据以下方式得到:
获取预设数量目标领域的语料;
使用自然语言处理技术对所述语料进行识别,得到多个候选词语;
计算所述多个候选词语的特征指标;所述特征指标用于表征候选词语为目标领域词语的可能性;
基于所述特征指标构建词语分类模型;所述词语分类模型用于确定属于目标领域词语的候选词语;
根据所述属于目标领域词语的候选词语对所语料进行切割,基于切割后得到的词语构建目标领域的实体词典。
6.根据权利要求5所述的方法,其特征在于,所述特征指标包括tf值、idf值、C-value值、NC-value值、PMI值、左右邻字熵中的至少一种。
7.根据权利要求1所述的方法,其特征在于,根据预先建立的打分模型基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分;所述打分模型基于预训练语言模型训练得到。
8.根据权利要求7所述的方法,其特征在于,所述预训练语言模型通过训练得到;训练所述预训练语言模型的任务包括:
句子之间的任务采用句子顺序预测;
句子内词语的任务采用动态覆盖和全词掩盖的方式,结合打乱词语的次序。
9.根据权利要求7所述的方法,其特征在于,所述打分模型根据以下方法训练得到:
构建预设数量的正样本和负样本,得到训练数据;所述正样本由问题语句和所述问题语句相应的答案文档构成;所述负样本由问题语句和所述问题语句非相应的答案文档构成;
使用所述训练数据对预训练语言模型进行训练,得到打分模型。
10.根据权利要求9所述的方法,其特征在于,所述使用所述训练数据对预训练语言模型进行训练,得到打分模型包括:
对所述训练语句中问题语句进行聚类,得到所述训练语句中问题语句的类别;
将所述训练语句和所述训练语句中问题语句的类别输入所述预训练语言模型进行训练,得到打分模型。
11.根据权利要求8所述的方法,其特征在于,所述打分模型的训练过程采用以下方式中的至少一种:
采用分布式训练方式;
采用混合精度和loss scale方法;
采用梯度积累方式。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
选取所述第三答案文档集中除得分最高的答案文档外的答案文档作为候选答案返回给用户;
在用户选择所候选答案中的答案文档的情况下,将所述问题语句和用户选择的答案文档作为正样本加入训练数据中,以便于对打分模型进行更新。
13.一种数据交互装置,其特征在于,所述装置包括:
检索模块,用于使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;
转换模块,用于将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;
计算模块,用于计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;
合并模块,用于合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;
打分模块,用于基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
14.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
15.一种计算机可读存储介质,其特征在于,其上存储有计算机指令,所述指令被执行时实现:使用Elasticsearch从预设的答案文档库中检索问题语句,获得第一答案文档集;所述第一答案文档集中包括Elasticsearch返回的排名前n的答案文档;其中n大于或等于2;将所述问题语句和所述答案文档库中的答案文档转换为向量形式,得到问题语句向量和多个答案文档向量;计算所述问题语句向量与所述多个答案文档向量的相似度,获得第二答案文件集;所述第二答案文档集中包括相似度排名前m的答案文档;其中,m大于或等于2;合并所述第一答案文档集和所述第二答案文档集,形成第三答案文档集;基于问题语句与答案文档的相关性对所述第三答案文档集中的答案文档打分,选取得分最高的答案文档作为所述问题语句对应的答案文档返回给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110180335.6A CN112905768B (zh) | 2021-02-08 | 2021-02-08 | 一种数据交互方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110180335.6A CN112905768B (zh) | 2021-02-08 | 2021-02-08 | 一种数据交互方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112905768A true CN112905768A (zh) | 2021-06-04 |
CN112905768B CN112905768B (zh) | 2024-07-09 |
Family
ID=76123230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110180335.6A Active CN112905768B (zh) | 2021-02-08 | 2021-02-08 | 一种数据交互方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112905768B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553416A (zh) * | 2021-07-19 | 2021-10-26 | 用友网络科技股份有限公司 | 基于语义相似度的问答方法、系统和可读存储介质 |
CN113780006A (zh) * | 2021-09-27 | 2021-12-10 | 广州金域医学检验中心有限公司 | 医学语义匹配模型的训练方法、医学知识匹配方法及装置 |
CN114780672A (zh) * | 2022-03-23 | 2022-07-22 | 清华大学 | 一种基于网络资源的医学问题问答处理方法及装置 |
CN115129847A (zh) * | 2022-08-30 | 2022-09-30 | 北京云迹科技股份有限公司 | 智能回答方法及装置 |
CN115455160A (zh) * | 2022-09-02 | 2022-12-09 | 腾讯科技(深圳)有限公司 | 一种多文档阅读理解方法、装置、设备及存储介质 |
CN117575020A (zh) * | 2023-11-14 | 2024-02-20 | 平安创科科技(北京)有限公司 | 基于人工智能的智能问答方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006039881A (ja) * | 2004-07-26 | 2006-02-09 | Nippon Telegr & Teleph Corp <Ntt> | 質問応答システム、方法及びプログラム |
CN109271505A (zh) * | 2018-11-12 | 2019-01-25 | 深圳智能思创科技有限公司 | 一种基于问题答案对的问答系统实现方法 |
CN110309283A (zh) * | 2019-06-28 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 一种智能问答的答案确定方法及装置 |
CN111090664A (zh) * | 2019-07-18 | 2020-05-01 | 重庆大学 | 基于神经网络的高仿人多模式对话方法 |
CN111611361A (zh) * | 2020-04-01 | 2020-09-01 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 抽取式机器智能阅读理解问答系统 |
-
2021
- 2021-02-08 CN CN202110180335.6A patent/CN112905768B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006039881A (ja) * | 2004-07-26 | 2006-02-09 | Nippon Telegr & Teleph Corp <Ntt> | 質問応答システム、方法及びプログラム |
CN109271505A (zh) * | 2018-11-12 | 2019-01-25 | 深圳智能思创科技有限公司 | 一种基于问题答案对的问答系统实现方法 |
CN110309283A (zh) * | 2019-06-28 | 2019-10-08 | 阿里巴巴集团控股有限公司 | 一种智能问答的答案确定方法及装置 |
CN111090664A (zh) * | 2019-07-18 | 2020-05-01 | 重庆大学 | 基于神经网络的高仿人多模式对话方法 |
CN111611361A (zh) * | 2020-04-01 | 2020-09-01 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 抽取式机器智能阅读理解问答系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553416A (zh) * | 2021-07-19 | 2021-10-26 | 用友网络科技股份有限公司 | 基于语义相似度的问答方法、系统和可读存储介质 |
CN113780006A (zh) * | 2021-09-27 | 2021-12-10 | 广州金域医学检验中心有限公司 | 医学语义匹配模型的训练方法、医学知识匹配方法及装置 |
CN113780006B (zh) * | 2021-09-27 | 2024-04-09 | 广州金域医学检验中心有限公司 | 医学语义匹配模型的训练方法、医学知识匹配方法及装置 |
CN114780672A (zh) * | 2022-03-23 | 2022-07-22 | 清华大学 | 一种基于网络资源的医学问题问答处理方法及装置 |
CN115129847A (zh) * | 2022-08-30 | 2022-09-30 | 北京云迹科技股份有限公司 | 智能回答方法及装置 |
CN115129847B (zh) * | 2022-08-30 | 2023-01-06 | 北京云迹科技股份有限公司 | 智能回答方法及装置 |
CN115455160A (zh) * | 2022-09-02 | 2022-12-09 | 腾讯科技(深圳)有限公司 | 一种多文档阅读理解方法、装置、设备及存储介质 |
CN115455160B (zh) * | 2022-09-02 | 2024-08-06 | 腾讯科技(深圳)有限公司 | 一种多文档阅读理解方法、装置、设备及存储介质 |
CN117575020A (zh) * | 2023-11-14 | 2024-02-20 | 平安创科科技(北京)有限公司 | 基于人工智能的智能问答方法、装置、设备及介质 |
CN117575020B (zh) * | 2023-11-14 | 2024-09-24 | 平安创科科技(北京)有限公司 | 基于人工智能的智能问答方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112905768B (zh) | 2024-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112507715B (zh) | 确定实体之间关联关系的方法、装置、设备和存储介质 | |
CN107862027B (zh) | 检索意图识别方法、装置、电子设备及可读存储介质 | |
CN112905768B (zh) | 一种数据交互方法、装置及存储介质 | |
CN109101479B (zh) | 一种用于中文语句的聚类方法及装置 | |
CN112800170A (zh) | 问题的匹配方法及装置、问题的回复方法及装置 | |
Nagamanjula et al. | A novel framework based on bi-objective optimization and LAN2FIS for Twitter sentiment analysis | |
JP2019504413A (ja) | 絵文字を提案するためのシステムおよび方法 | |
CN111368042A (zh) | 智能问答方法、装置、计算机设备及计算机存储介质 | |
CN104899322A (zh) | 搜索引擎及其实现方法 | |
JP5710581B2 (ja) | 質問応答装置、方法、及びプログラム | |
CN110162768B (zh) | 实体关系的获取方法、装置、计算机可读介质及电子设备 | |
US20220129448A1 (en) | Intelligent dialogue method and apparatus, and storage medium | |
CN111401033A (zh) | 事件抽取方法、事件抽取装置和电子设备 | |
CN112528001B (zh) | 一种信息查询方法、装置及电子设备 | |
CN112115232A (zh) | 一种数据纠错方法、装置及服务器 | |
CN108875065B (zh) | 一种基于内容的印尼新闻网页推荐方法 | |
CN111753167A (zh) | 搜索处理方法、装置、计算机设备和介质 | |
JP5538185B2 (ja) | テキストデータ要約装置、テキストデータ要約方法及びテキストデータ要約プログラム | |
Gunawan et al. | Multi-document summarization by using textrank and maximal marginal relevance for text in Bahasa Indonesia | |
CN112632285A (zh) | 一种文本聚类方法、装置、电子设备及存储介质 | |
CN115238039A (zh) | 文本生成方法、电子设备及计算机可读存储介质 | |
CN113407814A (zh) | 文本搜索方法、装置、可读介质及电子设备 | |
CN113806510B (zh) | 一种法律条文检索方法、终端设备及计算机存储介质 | |
CN117932000A (zh) | 基于主题聚类全局特征的长文档稠密检索方法及系统 | |
CN113505196A (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 |