CN111190997B - 一种使用神经网络和机器学习排序算法的问答***实现方法 - Google Patents
一种使用神经网络和机器学习排序算法的问答***实现方法 Download PDFInfo
- Publication number
- CN111190997B CN111190997B CN201811298287.5A CN201811298287A CN111190997B CN 111190997 B CN111190997 B CN 111190997B CN 201811298287 A CN201811298287 A CN 201811298287A CN 111190997 B CN111190997 B CN 111190997B
- Authority
- CN
- China
- Prior art keywords
- word
- paragraphs
- question
- text
- document
- 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
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000010801 machine learning Methods 0.000 title claims abstract description 15
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 7
- 239000012634 fragment Substances 0.000 claims abstract 2
- 239000013598 vector Substances 0.000 claims description 29
- 238000010276 construction Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 230000011218 segmentation Effects 0.000 claims description 7
- 230000015654 memory Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 claims description 3
- 238000000354 decomposition reaction Methods 0.000 claims description 2
- 238000013461 design Methods 0.000 claims description 2
- 238000012549 training Methods 0.000 claims description 2
- 238000013459 approach Methods 0.000 claims 1
- 238000007781 pre-processing Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
一种使用神经网络和机器学习排序算法的问答***实现方法,其根据自然语言格式的问题,使用***文档集作为数据源,给出短文本格式的答案。该方法分为文档检索和机器阅读理解两部分。文档检索部分使用LSI模型对问题和文档进行建模,根据用户提出的问题在***文档库中查找最相关的五篇文档,然后将问题和这五篇文档作为下一阶段的输入,阅读理解部分使用双向神经网络分别对问题和文章中的段落进行建模,最后再使用一个双向神经网络学习最优的答案片段,将最终答案和答案所在段落反馈给用户。
Description
技术领域
本发明属于开源问答领域,特别是以纯文本文档为知识来源的问答实现方法,并且涉及信息检索和机器阅读理解领域。
背景技术
随着互联网产业的不断发展,我们不仅仅是信息的接受者,也是信息的生产者,这也就直接导致了信息***的问题,面对如此庞大冗杂的信息资源,如何快速定位到用户需要的信息也就成为了服务商亟待解决的问题,早期提出的搜索引擎能够根据用户给出的关键词返回相关的文档列表,并且随着算法的精确度不断提高,返回的结果也越来越准确,但是搜索引擎也需要用户在返回的文档结果中二次挑选所需要的答案。问答***正是为了解决这“最后一公里”的问题而诞生的,它是一种可以根据用户提出的自然语言类的问题直接给出答案的***,和搜索引擎相比,其节省了用户浏览返回列表中所有文档的时间。
目前最流行的问答***大多数使用结构化的数据集来提高答***度,但是结构化的数据集本身存在得许多问题却往往被大家所忽略,例如其固定的结构和知识的不完整性。所以我们将注意力重新放在以纯文本为知识来源的问答***领域的研究,以保证知识来源的完整性和可靠性。
发明内容
本发明的目的在于以***的文档库为知识来源,根据用户的自然语言问题,在大量的纯文本文档中定位到包含答案的文档,并且在文档中找到问题对应的答案短句并返回给用户,以节省用户在返回的文档列表中逐一筛选答案的过程所花费的时间。
为了达到以上的目的,本发明设计了一种基于机器学习排序的问答***的方法,主要分为以下三个步骤:
1)文档检索部分。首先对文档和问题进行分词,构建词袋模型及索引,并进行词频和逆文档频率的计算,接着根据已有的词袋矩阵,使用LSI模型对文档集中的所有文档和已知的问题进行特征向量的构建,然后采用余弦相似度分别计算问题和每篇文档之间的相似度,并将文档按照相似度大小排序,得到和问题最相关的五篇文档作为第一部分的输出和下一阶段的输入内容。
2)阅读理解部分。阅读理解部分分为对文章的处理和对问题的处理两个模块。对于文章,我们首先将上一阶段得到的文章切分为段落,作为特征向量构建的最小单位,对于每个段落,我们选取了六种特征作为其特征向量的组成,这六种特征分别为词嵌入向量,是否精确匹配特征,词特征(其中包含词的位置特征,命名实体识别特征以及词频特征),问题对齐嵌入特征,特别地,我们为了能够区分不同的文档在挑选候选答案时的重要程度,还加入了机器学习排序特征,即对于排序靠前的文档增加额外的关注度。这样我们就得到了能够表现段落主题以及段落语义结构的全部人工特征,然后我们将所有的特征向量合并作为整个段落的特征向量,输入到双向的长短期记忆网络中,迭代更新隐含特征权重,最终得到能够表达段落特征的模型。对于问题,我们首先进行分词处理,进行分词处理,然后采用每个词的词嵌入特征作为双向长短期记忆网络学习的输入,得到每个特征的权重,作为问题特征向量的构建模型。
3)候选答案选取。经过上两个阶段的处理,我们已经极大地缩小了答案的范围并将段落和问题表示为向量的格式,接下里我们要定位到具体的答案并返回给用户。本发明假设答案必然出现在相关文章的段落中,所以在做候选答案挑选的时候我们依然采用段落作为其最小的计算单位。对于开放领域的问题,答案可能是一个词或者一个片段,并且段落中的每一个词都有可能是答案片段的开始词或结束词,我们通过计算每个单词作为起始点和终止点时的概率最大值来确定答案片段的位置,在此本发明又使用了一个双向长短期记忆网络来学习起始点和终止点位置的选取。
附图说明
图1为本发明的整体结构图
图2为阅读理解部分的流程图
图3为机器学习排序特征构建的原理图
具体实施方式
为了更清晰的了解本发明的技术内容,我们将在下文中详细介绍方法中每个步骤的具体流程和操作细节。
1.文档检索部分。文档检索部分分为对文档的特征向量构建和对问题的特征向量构建,对于文档集我们可以只构建一次,生成的特征向量可以保存使用,而问题的特征向量则需要根据每次提供的问题分别生成,二者的生成过程是统一的,都分为以下三个步骤:
1)使用corenlp对文本进行分词处理,并去除与文章主题无关的停用词。
2)使用gensim工具构建词袋模型及索引,然后计算词频和逆文档频率,生成文档的tf-idf模型。
3)根据已有的词袋矩阵,利用LSI进行奇异值分解,通过计算余弦相似度,得到最相关的五个文档作为输出结果。
2.阅读理解部分。阅读理解部分的主要任务是构建文档和问题的特征向量,由于文档属于长文本,而问题属于短文本文档,所以有不同的处理方式,我们分别来进行介绍。
1)文章段落特征提取。为了能够进一步缩小答案所在的文本长度,我们首先将文档检索部分返回的文章划分为段落,然后以段落为单位构建文本的特征向量。在对段落进行分词后,本发明选取了5个人工特征来表示文本,特征的介绍和计算方式如下:
①词嵌入特征:本发明在G-love的300维词嵌入特征上进行了调整,考虑了问答***中常出现的词语,例如:what,where,who,when等等,然后以此作为本发明中文本特征的词嵌入特征。
②精确匹配特征:我们使用了三个二进制的特征来分别表示段落是否匹配问题中词语的原本格式、小写格式或者引理格式,如果匹配了则为1,否则为0。
③词特征:包含三个手工的特征,分别为词在文本中的位置信息,词的命名实体识别的结果以及正则化的词频信息。
④问题对齐嵌入特征:本发明考虑了文本和问题中相似但是却不完全相同的词语的对齐问题,所以在词向量的特征中添加了问题对齐的嵌入特征。
⑤机器学习排序特征:本发明对划分后的段落使用了机器学习排序,对于排序靠前的段落,其中包含答案的可能性自然更高,但是也不能作为决定性的因素,所以我们将其作为段落的特征之一。
在得到了表明段落主题和语义结构的所有特征之后,我们将其合并到一起作为整个段落的特征向量,然后输入到双向长短期记忆网络中去,迭代更新隐含的特征权重,最后得到构建段落特征的模型。
2)问题语义模型构建。问题通常是短文本的格式,所以不具有段落文本那么多的特征,过程相对比较简单,我们同样对其进行分词处理后,将词嵌入特征作为双向长短期神经网络的输入,以保留句子的语义特征,通过学习得到每个词的关注度,用来作为问题文本特征向量的构建模型。
3.候选答案选取部分。在得到了包含答案的文本特征向量和问题特征向量后,我们要做的最后一步就是在文本中定位答案的位置,答案可能是一个词也可能是一个文本片段,而不管是任何一种形式,总存在一个起始词和终止词,在这两个词中间即为最终返回的答案,所以我们计算每个词作为起始词和终止词的概率,来确定最终答案的位置。分为以下三个步骤:
1)将段落的向量特征和问题的特征作为输入,通过训练简单的分类器,使用双线性函数来计算段落中每个词和问题之间的相似度,然后计算这个词作为开始词的概率;
2)同样使用双线性函数来计算每个词和问题之间的相似度,然后计算这个词作为终止词的概率;
3)通过寻找起始词概率和终止词概率乘积的最大值,来确定起始点和终止点,二者之间的文本片段即为问题对应的答案。
本发明中涉及的几项关键技术分别是:基于机器学习排序的文本特征的构建,L2RQA方法
1)基于机器学习排序的文本特征的构建方法
在本发明中,我们将机器学习排序作为段落文本的一个特征,对候选答案的选取产生了一定的影响,使挑选答案的结果更加精确。
2)L2RQA方法
L2RQA方法是一个以纯文本文档作为知识来源的开源问答***,可以适用于以富含知识的纯文本格式资源为语料的问答,并且该发明可以解构为文档检索和机器阅读理解两部分分别使用。
Claims (1)
1.一种使用神经网络和机器学习排序算法的问答***实现方法,其特征在于在文档检索阶段使用LSI构建文档和问题的主题和相似特征,并在阅读理解部分将机器学习排序算法的结果添加到文本的特征向量中;方法分为两个部分,第一部分为文档检索,会根据已知的问题从文档集中筛选出最相关的五篇文档,第二部分为机器阅读理解,即从返回的文档中找到最终的文本片段作为答案返回;两个部分分开使用或者合起来作为开放领域问答***的完整设计方法,并且可以应用于富含知识的纯文本数据集;对于问答问题,完整的步骤如下所示:
1)使用corenlp对文档集中的文本和问题进行分词处理,并且去除与文档集主题无关的停用词,文档集的分词结果可以重复使用,问题则需要针对不同的情况分别处理;
2)使用gensim工具构建词袋模型及索引,然后计算词频和逆文档频率,生成tf-idf模型,同样的,文档集的tf-idf模型可以重复使用;
3)根据已有的词袋模型,使用LSI进行奇异值分解,通过计算余弦相似度,得到最相关的五篇文档作为输出结果;
利用步骤3)得到的五篇最相关文档,进行机器阅读理解处理:
4)文档预处理,由于文档粒度太大,将文档切分为段落进行特征向量的构建,然后对段落进行分词;
5)计算段落的词嵌入特征,选择使用微调的300维G-love词嵌入特征,其针对问答***进行了调整,考虑了“what”“when”“who”“where”的重要性;
6)计算段落的精确匹配特征,使用三个二进制的特征来分别表示段落是否匹配了问题中词语的原本格式、小写格式或者引理格式,1表示匹配,0表示不匹配;
7)计算问题对齐嵌入特征,考虑文本和问题中相似但是却不完全相同的词语的对齐问题;
8)计算机器学习排序特征,对划分后的段落使用机器学习排序,排序靠前的段落包含答案的可能性更高,但是也并不能作为决定性的因素,所以将其作为段落的特征之一;
9)问题的语义建模,问题是短文本的格式,所以没有段落文本那么多的特征,同样对其进行分词后取其词嵌入特征向量,作为双向长短期记忆神经网络的输入,通过学习的到每个词的关注度,作为问题文本特征向量的构建模型;
10)计算每个词作为开始词和终止词的概率大小,将段落的向量特征和问题特征作为输入,通过训练简单的分类器,使用双线性函数来计算段落中每个词和问题词之间的相似度,然后计算该词作为开始词和终止词的概率;
11)确定最终答案,通过寻找起始次和终止词概率乘积的最大值,来确定起止点,二者之间的文本片段即为问题对应的答案。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811298287.5A CN111190997B (zh) | 2018-10-26 | 2018-10-26 | 一种使用神经网络和机器学习排序算法的问答***实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811298287.5A CN111190997B (zh) | 2018-10-26 | 2018-10-26 | 一种使用神经网络和机器学习排序算法的问答***实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111190997A CN111190997A (zh) | 2020-05-22 |
CN111190997B true CN111190997B (zh) | 2024-01-05 |
Family
ID=70706956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811298287.5A Active CN111190997B (zh) | 2018-10-26 | 2018-10-26 | 一种使用神经网络和机器学习排序算法的问答***实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111190997B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111639170A (zh) * | 2020-05-29 | 2020-09-08 | 深圳壹账通智能科技有限公司 | 答案选择方法、装置、计算机设备及计算机可读存储介质 |
CN111858879B (zh) * | 2020-06-18 | 2024-04-05 | 达观数据有限公司 | 一种基于机器阅读理解的问答方法及***、存储介质、计算机设备 |
CN111858878B (zh) * | 2020-06-18 | 2023-12-22 | 达观数据有限公司 | 从自然语言文本中自动提取答案的方法、***及存储介质 |
CN112101027A (zh) * | 2020-07-24 | 2020-12-18 | 昆明理工大学 | 基于阅读理解的中文命名实体识别方法 |
CN112100326B (zh) * | 2020-08-28 | 2023-04-18 | 广州探迹科技有限公司 | 一种抗干扰的融合检索和机器阅读理解的问答方法及*** |
CN112052326A (zh) * | 2020-09-30 | 2020-12-08 | 民生科技有限责任公司 | 一种基于长短文本匹配的智能问答方法及*** |
CN112417119A (zh) * | 2020-11-19 | 2021-02-26 | 上海交通大学 | 一种基于深度学习的开放域问答预测方法 |
CN112800202A (zh) * | 2021-02-05 | 2021-05-14 | 北京金山数字娱乐科技有限公司 | 文档处理方法及装置 |
CN113268571A (zh) * | 2021-07-21 | 2021-08-17 | 北京明略软件***有限公司 | 一种确定段落中正确答案位置的方法、装置、设备及介质 |
CN114416914B (zh) * | 2022-03-30 | 2022-07-08 | 中建电子商务有限责任公司 | 一种基于图片问答的处理方法 |
CN118013009B (zh) * | 2024-02-19 | 2024-06-18 | 广东融益数字科技有限公司 | 智能客服交互方法及*** |
CN117909451B (zh) * | 2024-03-18 | 2024-06-28 | 中国电子技术标准化研究院 | 问答结果溯源方法、装置、设备、介质及程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977379A (zh) * | 2016-10-25 | 2018-05-01 | 百度国际科技(深圳)有限公司 | 用于挖掘信息的方法和装置 |
CN108052577A (zh) * | 2017-12-08 | 2018-05-18 | 北京百度网讯科技有限公司 | 一种通用文本内容挖掘方法、装置、服务器及存储介质 |
CN108345585A (zh) * | 2018-01-11 | 2018-07-31 | 浙江大学 | 一种基于深度学习的自动问答方法 |
CN108415977A (zh) * | 2018-02-09 | 2018-08-17 | 华南理工大学 | 一个基于深度神经网络及强化学习的生成式机器阅读理解方法 |
-
2018
- 2018-10-26 CN CN201811298287.5A patent/CN111190997B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977379A (zh) * | 2016-10-25 | 2018-05-01 | 百度国际科技(深圳)有限公司 | 用于挖掘信息的方法和装置 |
CN108052577A (zh) * | 2017-12-08 | 2018-05-18 | 北京百度网讯科技有限公司 | 一种通用文本内容挖掘方法、装置、服务器及存储介质 |
CN108345585A (zh) * | 2018-01-11 | 2018-07-31 | 浙江大学 | 一种基于深度学习的自动问答方法 |
CN108415977A (zh) * | 2018-02-09 | 2018-08-17 | 华南理工大学 | 一个基于深度神经网络及强化学习的生成式机器阅读理解方法 |
Non-Patent Citations (2)
Title |
---|
Ahlam Ansari 等.Intelligent_question_answering_system_based_on_Artificial_Neural_Network.《2016 IEEE International Conference on Engineering and Technology (ICETECH)》.2016,第1页至第7页. * |
郑惺.基于卷积神经网络的多文本特征问答***.《电脑知识与技术》.2018,第14卷(第14期),第177-180页. * |
Also Published As
Publication number | Publication date |
---|---|
CN111190997A (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111190997B (zh) | 一种使用神经网络和机器学习排序算法的问答***实现方法 | |
CN111753060B (zh) | 信息检索方法、装置、设备及计算机可读存储介质 | |
WO2020224097A1 (zh) | 智能语义文档推荐方法、装置及计算机可读存储介质 | |
WO2018049960A1 (zh) | 一种为文本信息匹配资源的方法及装置 | |
CN111241237B (zh) | 一种基于运维业务的智能问答数据处理方法及装置 | |
CN112819023B (zh) | 样本集的获取方法、装置、计算机设备和存储介质 | |
CN111291188B (zh) | 一种智能信息抽取方法及*** | |
CN111539197A (zh) | 文本匹配方法和装置以及计算机***和可读存储介质 | |
CN113434636B (zh) | 基于语义的近似文本搜索方法、装置、计算机设备及介质 | |
CN111737997A (zh) | 一种文本相似度确定方法、设备及储存介质 | |
KR20200087977A (ko) | 멀티모달 문서 요약 시스템 및 방법 | |
CN114462392B (zh) | 一种基于主题关联度与关键词联想的短文本特征扩展方法 | |
CN112434134B (zh) | 搜索模型训练方法、装置、终端设备及存储介质 | |
CN114564563A (zh) | 一种基于关系分解的端到端实体关系联合抽取方法及*** | |
CN111414471A (zh) | 用于输出信息的方法和装置 | |
CN112199954A (zh) | 基于语音语义的疾病实体匹配方法、装置及计算机设备 | |
CN117076946A (zh) | 一种短文本相似度确定方法、装置及终端 | |
CN116842934A (zh) | 一种基于持续学习的多文档融合深度学习标题生成方法 | |
CN115335819A (zh) | 用于搜索和检索信息的方法和*** | |
CN111061939A (zh) | 基于深度学习的科研学术新闻关键字匹配推荐方法 | |
CN116340502A (zh) | 基于语义理解的信息检索方法和装置 | |
CN113792131B (zh) | 一种关键词的提取方法、装置、电子设备及存储介质 | |
CN115344668A (zh) | 一种多领域与多学科科技政策资源检索方法及装置 | |
CN115688804A (zh) | 基于嵌入向量序列抽象的表示生成 | |
CN114328820A (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 |