CN111078875B - 一种基于机器学习的从半结构化文档中提取问答对的方法 - Google Patents
一种基于机器学习的从半结构化文档中提取问答对的方法 Download PDFInfo
- Publication number
- CN111078875B CN111078875B CN201911222877.4A CN201911222877A CN111078875B CN 111078875 B CN111078875 B CN 111078875B CN 201911222877 A CN201911222877 A CN 201911222877A CN 111078875 B CN111078875 B CN 111078875B
- Authority
- CN
- China
- Prior art keywords
- sentence
- sentences
- answer
- question
- feature
- 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/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
-
- 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/35—Clustering; Classification
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于自然语言处理技术领域,具体涉及一种基于机器学习的从半结构化文档中提取问答对的方法。本发明应用机器学习的方法,通过应用Apriori进行特征选择和朴素贝叶斯分类方法进行分类,得到半结构化文本中的答案句。本发明结合命名实体识别和依存句法分析理论,将答案句转为对应的问句。命名实体识别采用crf+BiLstm神经网络模型,识别答案句中的实体,补充到网络爬取的实体中。句法分析通过揭示句子中各个词之间的依存关系,从而在问句生成时替换依存于实体的词,得到合理的问句。本发明通过从半结构化文档中提取高质量的问答对,为以后构建问答系统奠定了良好的基础。
Description
技术领域
本发明属于自然语言处理技术领域,具体涉及一种基于机器学习的从半结构化文档中提取问答对的方法。
背景技术
目前大多数限定域问答系统的问答对来源于互动式知识分享平台。其中构建知识库的数据源包括百度百科、问答社区和领域网站等。在面向心脏病咨询的问答系统中,对于知识库内部的知识,往往可以得到准确的回答,而对于不包含在知识库中的知识,往往很难回答。因此,知识库构建的好坏之间直接影响问答系统性能的高低。在医疗相关的问答系统中,知识库中的知识关系到患者的生命安全。而互动式知识分享平台中的知识,往往是来源于广大的网民回答,缺乏权威性的保证。由于网络社区中的问答对是无法保证知识的准确性,因此,在医疗相关的问答系统知识库的构建中,需要更具有权威性的问答对。
获取高质量的问答对是构建医疗领域问答系统的基本任务之一。目前以问答社区作为数据源来获取问答对的方法无法保证问答对的质量。为了获取高质量的问答对,本文将提出了从心脏病电子病例中提取问答对的方法。电子病例是由专业的医生来填写,其知识的准确性是具有保障的,因此可以作为可靠的问答对数据源。心脏病电子病例中的病程记录、医嘱和诊疗计划等包含了医生对疾病的描述,诊断,药品介绍和使用方法等知识。从这些记录中抽取的问答对将具有极高的准确性,可以极大的提高之后构建的心脏病问答系统的性能。
随着我国医院信息化水平的不断提高,积累了大量的临床数据,如何有效利用这些数据成为目前数据科学领域关注的重点之一。目前可采用机器学习相关的方法,从非结构化的电子病历中提取所需要的数据,并重新组织成结构化的文本。具体有提取医疗事件和时间信息等。同时可通过对需要抽取的信息进行标注,根据标注结果,进行抽取模版归纳,通过重写抽取模板,生成抽取规则,并利用这些规则进行实际信息抽取,从而从非结构化电子病历中进行有效信息抽取并组织成可分析利用形式。也有通过上下文感知方法来处理糖尿病患者的电子病历,提取出包含有关心脏病危险因素的信息。
问题生成(QG)的目的是从给定的句子或段落中创建自然问题。这些方法的成功与否,关键在于是否存在精心设计的陈述句到疑问句的转换规则。纯粹基于规则的方法往往依赖于深层的语言知识。除了采用各种NLP技术,包括术语提取和浅层解析,还利用语料库和本体等语言资源。改进的基于规则的系统通过过度生成和排序方法,使用一种基于规则的方法生成输入句的多个问题,然后使用基于监督学习的Ranker对它们进行排序。引进深度学习的方法通过借鉴机器翻译领域里的编码器-解码器神经网络模型,不依赖于手工制作的规则或复杂的NLP管道,通过序列到序列学习进行端到端的训练,生成陈述句的疑问句。
发明内容
本发明的目的在于提供一种基于机器学习的从半结构化文档中提取问答对的方法。
本发明的目的通过如下技术方案来实现:包括以下步骤:
步骤1:输入待提取的半结构化文档集合,将pdf格式的半结构化文档转化为txt文档;
步骤2:使用正则表达式提取txt文本中陈述句,将得到的陈述句集合按照文档排序,在文档内部对陈述句随机排序;随机抽取各个文档中的部分句子,对句子是否是答案句进行判断,标注答案句,构造训练集;
步骤3:对训练集使用Apriori算法提取集合中的频繁项集作为特征,通过关联规则扩展特征,得到特征集合;
步骤4:根据特征集合,将句子表示成特征向量,将训练集的特征向量输入到朴素贝叶斯分类模型中训练,得到训练好的分类模型;
步骤5:利用训练好的分类模型对未标注的句子进行分类,提取出答案句,得到答案句集合;
步骤6:通过网络爬虫爬取部分领域实体;对答案句集合中的部分句子进行字标注,将字标注为BIO,建立命名实体识别的训练集;
步骤7:构建BiLstm+crf神经网络模型,使用训练集训练;将训练好的模型对答案句集合中未标注的句子进行序列标注,将标注转化为命名实体;结合网络爬虫爬取的部分领域实体和命名实体,得到实体集合;
步骤8:对答案句集合进行分词,词性标注,依存句法分析,分析句子中词之间以来关系,通过将句子中的实体以及依存于实体的词进行替换,得到答案句对应的问句,并输出问答对,完成问答对的提取。
本发明还可以包括:
所述的步骤3中对训练集使用Apriori算法提取集合中的频繁项集作为特征,通过关联规则扩展特征,得到特征集合的方法具体为:
句子集合S包含已提取的所有陈述句{s1,s2,…,sm},一共m条;通过使用分词工具对陈述句分词,得到词集合{x1,x2,…,xn};遍历所有陈述句,计算每个词的支持度,计算方法为:
其中num(x)为句子集合S中包含词x的句子数量,m为S中句子的总数;设定阈值K,将sup(x)大于K的词x放入到特征集合中;设定关联规则为(x,y),即词x为特征则y也为特征,初始设定所有的二元组为关联规则,计算关联规则的置信度:
其中sup(x∪y)为词x,y一起出现在句子中的概率;设定阈值K2,将置信度大于该阈值的关联规则作为特征扩充规则,即将词y放入到特征集合中。
所述的步骤5中利用训练好的分类模型对未标注的句子进行分类,提取出答案句,得到答案句集合的方法具体为:根据得到的特征结合,将训练集中的句子表示成特征向量,作为朴素贝叶斯分类模型的输入;特征向量是1×n维的,n表示n个特征;如果句子中包含该特征,则对应位置为1;如果句子中不包含,对应位为0;分类模型使用朴素贝叶斯分类模型,设x={a1,a2,…,an}为待分类项,类别集合为C={y1,y2},通过计算P(y1|x),p(y2|x)得到x各属于两个类别的概率,选取概率最大的类别作为x的所属类别p(yk|x)=max{p(y1|x),p(y2|x)};其中P(y1|x),p(y2|x)是根据贝叶斯定理求得的;通过计算出每个类别所对应的概率,从而找到最大概率的类,通过分类模型,对陈述句分类,找到陈述句中的答案句,最终得到答案句集合。
所述的步骤7中构建BiLstm+crf神经网络模型具体为:BiLstm+crf神经网络模型包含两个层BiLstm层和crf层;BiLstm层是双向LSTM神经网络,输入的是一句中的字向量,字向量使用的One-Hot编码,输出的是每个类别标签概率,一个句子最后以矩阵的形式给出P,Pij为第i个词标注为第j个标签的概率;Crf层是条件随机场,可以从输入序列中学习到标签的约束,从而在多类别实体的识别时更精确,其中有一个转移矩阵A,Aij表示第i个标签转移为第j个标签的概率;因此输入句子序列X,得到标签y,最后评分函数为:通过softmax函数,可得到概率函数在训练时,最大化似然概率p(y|X),即损失函数为-log(p(y|X))。
本发明的有益效果在于:
本发明提供了一种基于机器学习的从半结构化文档中提取问答对的方法。本发明应用机器学习的方法,通过应用Apriori进行特征选择和朴素贝叶斯分类方法进行分类,得到半结构化文本中的答案句。本发明结合命名实体识别和依存句法分析理论,将答案句转为对应的问句。命名实体识别采用crf+BiLstm神经网络模型,识别答案句中的实体,补充到网络爬取的实体中。句法分析通过揭示句子中各个词之间的依存关系,从而在问句生成时替换依存于实体的词,得到合理的问句。本发明通过从半结构化文档中提取高质量的问答对,为以后构建问答系统奠定了良好的基础。
附图说明
图1为本发明的总体流程图。
具体实施方式
下面结合附图对本发明做进一步描述。
本发明公开了一种基于机器学习的从半结构化文档中提取问答对的方法。该方法包含数据预处理模块,PDF文档解析,陈述句采样与标记,得到文档中的句子和已标注的训练集;答案句提取模块,短文本中频繁词集挖掘和特征扩展,基于朴素贝叶斯的句子分类,提取出句子中的答案句;问句生成模块,基于BiLstm-crf模型的命名实体识别,网络爬取命名实体,依存句法分析,将答案句转换成问句;该方法通过从半结构化文档中提取高质量的问答对,为以后构建问答系统奠定了良好的基础。
一种基于机器学习的从半结构化文档中提取问答对的方法,包括以下步骤:
步骤1:输入待提取的半结构化文档集合,将pdf格式的半结构化文档转化为txt文档;
步骤2:使用正则表达式提取txt文本中陈述句,将得到的陈述句集合按照文档排序,在文档内部对陈述句随机排序;随机抽取各个文档中的部分句子,对句子是否是答案句进行判断,标注答案句,构造训练集;
步骤3:对训练集使用Apriori算法提取集合中的频繁项集作为特征,通过关联规则扩展特征,得到特征集合;
步骤4:根据特征集合,将句子表示成特征向量,将训练集的特征向量输入到朴素贝叶斯分类模型中训练,得到训练好的分类模型;
步骤5:利用训练好的分类模型对未标注的句子进行分类,提取出答案句,得到答案句集合;
步骤6:通过网络爬虫爬取部分领域实体;对答案句集合中的部分句子进行字标注,将字标注为BIO,建立命名实体识别的训练集;
步骤7:构建BiLstm+crf神经网络模型,使用训练集训练;将训练好的模型对答案句集合中未标注的句子进行序列标注,将标注转化为命名实体;结合网络爬虫爬取的部分领域实体和命名实体,得到实体集合;
步骤8:对答案句集合进行分词,词性标注,依存句法分析,分析句子中词之间以来关系,通过将句子中的实体以及依存于实体的词进行替换,得到答案句对应的问句,并输出问答对,完成问答对的提取。
所述的步骤3中对训练集使用Apriori算法提取集合中的频繁项集作为特征,通过关联规则扩展特征,得到特征集合的方法具体为:
句子集合S包含已提取的所有陈述句{s1,s2,…,sm},一共m条;通过使用分词工具对陈述句分词,得到词集合{x1,x2,…,xn};遍历所有陈述句,计算每个词的支持度,计算方法为:
其中num(x)为句子集合S中包含词x的句子数量,m为S中句子的总数;设定阈值K,将sup(x)大于K的词x放入到特征集合中;设定关联规则为(x,y),即词x为特征则y也为特征,初始设定所有的二元组为关联规则,计算关联规则的置信度:
其中sup(x∪y)为词x,y一起出现在句子中的概率;设定阈值K2,将置信度大于该阈值的关联规则作为特征扩充规则,即将词y放入到特征集合中。
所述的步骤5中利用训练好的分类模型对未标注的句子进行分类,提取出答案句,得到答案句集合的方法具体为:根据得到的特征结合,将训练集中的句子表示成特征向量,作为朴素贝叶斯分类模型的输入;特征向量是1×n维的,n表示n个特征;如果句子中包含该特征,则对应位置为1;如果句子中不包含,对应位为0;分类模型使用朴素贝叶斯分类模型,设x={a1,a2,…,an}为待分类项,类别集合为C={y1,y2},通过计算P(y1|x),p(y2|x)得到x各属于两个类别的概率,选取概率最大的类别作为x的所属类别p(yk|x)=max{p(y1|x),p(y2|x)};其中P(y1|x),p(y2|x)是根据贝叶斯定理求得的;通过计算出每个类别所对应的概率,从而找到最大概率的类,通过分类模型,对陈述句分类,找到陈述句中的答案句,最终得到答案句集合。
所述的步骤7中构建BiLstm+crf神经网络模型具体为:BiLstm+crf神经网络模型包含两个层BiLstm层和crf层;BiLstm层是双向LSTM神经网络,输入的是一句中的字向量,字向量使用的One-Hot编码,输出的是每个类别标签概率,一个句子最后以矩阵的形式给出P,Pij为第i个词标注为第j个标签的概率;Crf层是条件随机场,可以从输入序列中学习到标签的约束,从而在多类别实体的识别时更精确,其中有一个转移矩阵A,Aij表示第i个标签转移为第j个标签的概率;因此输入句子序列X,得到标签y,最后评分函数为:通过softmax函数,可得到概率函数在训练时,最大化似然概率p(y|X),即损失函数为-log(p(y|X))。
实施例1:
本发明是从半结构化的文档中提取问答对,具体流程示意图如图1所示。电子病历是医生用来记录病人病情的文档,包含诊断记录和一些检查报告,是半结构化的文档,本发明将以此为例子,介绍从半结构化的文档中提取问答对的具体实施方式。
一种基于机器学习的从半结构化文档中提取问答对的方法,具体步骤如下:
1)将pdf格式的半结构化文档转化为txt文档。
使用pdf解析工具,解析pdf文档,解码其中的二进制流,提取文本信息,将文档转化为txt文档。
2)从半结构化文档中提取陈述句,并对部分陈述句进行标注。
将txt文档中的文本内容通过正则表达式匹配提取出来,对文本进行断句。将得到的句子集合按照文档排序,在文档内部对句子随机排序,抽样出部分句子,对句子是否是答案句进行判断,标注答案句。
3)使用Apriori算法挖掘句子中的频繁项集,生成关联规则扩充特征。
以所有的词作为特征候选集,以所有的二元组作为关联规则,遍历句子集合,计算每个词的支持度,设定阈值,筛选出初始特征集,再次遍历句子集合,计算关联规则的置信度,设定阈值,保留有效特征集。通过关联规则,扩充初始特征集,得到特征集合。
4)使用朴素贝叶斯分类模型对陈述句分类,获取答案句。
用特征表示句子,将特征向量输入到朴素贝叶斯分类模型中训练,利用训练好的模型对未标注句子进行分类,得到答案句集合。
5)网络爬取部分领域实体,标注部分答案句。
通过网络爬虫爬取部分命名实体,对答案句中的部分句子进行字标注,将字标注为BIO,建立命名实体识别的训练集。
6)构建BiLstm+crf神经网络模型,使用训练集训练,提取实体。
构建BiLstm+crf神经网络模型,输入字向量,对句子进行序列标注。将训练好的模型对未标注的句子进行序列标注,最后将标注转化为命名实体,得到实体集合。
7)对答案句进行依存句法分析,使用实体集合,生成问句。
对答案句进行分词,词性标注,依存句法分析,分析句子中词之间以来关系,通过将句子中的实体以及依存于实体的词进行替换,得到答案句对应的问句。
在步骤1)中,所述的将pdf格式的半结构化文档转化为txt文档。电子病历一般是用pdf格式保存,方便医生的记录和打印。为了便于之后的处理,需要将其转化为txt格式的文档。pdf文档的解析过程包含如下部分:读取本地存储的pdf文件,解析文件的文件头、文件体、交叉引用表和文件尾,使用过滤器对二进制流进行解析,提取字符串,将其保存至txt文件中。常用的解析工具有pdfminer和pdfBOX等工具。
在步骤2)中,所述的从半结构化文档中提取陈述句,并对部分陈述句进行标注。以电子病历为例,即从“诊断依据”和“医患沟通记录”这两个部分提取陈述句。由于在电子病历中,该部分是由专业医生书写,因此往往包含了大量的医学领域知识。通过编写正则表达式,即首先根据“鉴别依据”作为开头,以“分析”作为结尾,提取出鉴别依据部分。然后在以序号“1.”、“2.”等作为分割符,分割出若干具有完整语义的陈述句组。由于该部分文本会出现跨页,因此需要对包含“**大学”、“姓名”和“医疗表格”的句子进行删除。对于医患沟通部分,需要以“沟通记录”作为文本起始部分,以“沟通结果”作为文本的结束部分,并以句号作为分隔符,划分陈述句。其中包含“入院后”和“初步诊断”的句子由于在逻辑上是具有因果关系的,因此需要合并成一句话。在得到了陈述句后,需要对部分陈述句打标签,从而构建训练集。训练集包含两个部分,能成为答案句的陈述句和不能成为答案句的陈述句。其中能成为答案句的陈述句标为1,不能成为答案句的陈述句标为0。抽取陈述句做训练集的规则是以每个文档为单位,每个文档随机抽取若干个陈述句。
在步骤3)中,所述的使用Apriori算法挖掘句子中的频繁项集,生成关联规则扩充特征。句子集合S包含已提取的所有陈述句{s1,s2,…,sm},一共m条。通过使用分词工具,例如结巴分词,对陈述句分词,得到词集合{x1,x2,…,xn}。遍历所有陈述句,计算每个词的支持度,计算方法为其中num(x)为句子集合S中包含词x的句子数量,m为S中句子的总数。设定阈值K,将sup(x)大于K的词x放入到特征集合中。设定关联规则为(x,y),即词x为特征则y也为特征,初始设定所有的二元组为关联规则,计算关联规则的置信度其中sup(x∪y)为词x,y一起出现在句子中的概率。设定阈值K2,将置信度大于该阈值的关联规则作为特征扩充规则,即将词y放入到特征集合中。
在步骤4)中,所述的使用朴素贝叶斯分类模型对陈述句分类,获取答案句。根据得到的特征结合,将训练集中的句子表示成特征向量,作为朴素贝叶斯分类模型的输入。特征向量是1×n维的,n表示n个特征。如果句子中包含该特征,则对应位置为1。如果句子中不包含,对应位为0。分类模型使用朴素贝叶斯分类模型,设x={a1,a2,…,an}为待分类项,类别集合为C={y1,y2}通过计算P(y1|x),p(y2|x)得到x各属于两个类别的概率,选取概率最大的类别作为x的所属类别p(yk|x)=max{p(y1|x),p(y2|x)}。其中P(y1|x),p(y2|x)是根据贝叶斯定理求得的。贝叶斯定理假设各个特征属性是相互独立的,故由于分母部分是常数项,这里只需将分子最大化,即而上式中的右边每一项,都可以通过统计得到,因此就可以计算出每个类别所对应的概率,从而找到最大概率的类。通过分类模型,对陈述句分类,找到陈述句中的答案句,最终得到答案句集合。
在步骤5)中,网络爬取部分领域实体,标注部分答案句。使用网络爬虫从医学相关网站上爬取疾病、药品和器官等命名实体,得到实体集。但是网络爬取的实体有时是不够的,因此需要对句子集合中的命名实体进行识别。通过对答案句进行标注,得到训练集。基于crf的命名实体识别是将命名实体识别过程看做是一个序列标注问题,对句子中的字标注为BIO,B表示实体的开头,I表示实体的内部,O表示不属于实体。对于疾病,药品和器官,可分别标记为DISB,MEDB,ORGB来表示对应实体的开头。这里从句子集合中抽取部分句子,对句子进行人工标注,得到命名实体识别的训练集。
在步骤6)中,所述的构建BiLstm+crf神经网络模型,使用训练集训练,提取实体。本发明构建BiLstm+crf神经网络模型来识别实体,该模型包含两个层BiLstm层和crf层。BiLstm层是双向LSTM神经网络,输入的是一句中的字向量,字向量使用的One-Hot编码,输出的是每个类别标签概率,一个句子最后以矩阵的形式给出P,Pij为第i个词标注为第j个标签的概率。Crf层是条件随机场,可以从输入序列中学习到标签的约束,从而在多类别实体的识别时更精确,其中有一个转移矩阵A,Aij表示第i个标签转移为第j个标签的概率。因此输入句子序列X,得到标签y,最后评分函数为通过softmax函数,可得到概率函数在训练时,最大化似然概率p(y|X),即损失函数为-log(p(y|X))。通过使用python编程,利用各种开源的机器学习平台,可以搭建BiLstm+crf神经网络模型,输入训练集训练。将训练好的模型处理剩余的未标注的句子,得到答案句集合中的命名实体。
在步骤7)中,所述的对答案句进行依存句法分析,使用实体集合,生成问句。答案句先进行分词,在词性标注,最后进行依存句法分析,这里得到的结果即每个词在句子中与其他词的关系,例如SBV表示主谓关系。这样,在得到句子的语法结构后,可以分析句子中领域实体的位置以及依存于领域实体的词的情况。目前可以使用开源的自然语言处理平台如ltp来对句子进行依存句法分析,一般采用的是生成式依存句法分析、判别式依存句法分析、确定性依存句法分析和基于序列标注的分层式句法分析方法。在得到了句子的句法分析表后,本发明通过遍历句法分析表,查找出现在领域实体集合中的词。找到句子里包含的领域实体后,使用疑问词将该疾病的实体进行替换和对依存与该实体的词进行删除,从而将答案句转化为事实型问句。
本发明的创新点在于:
1、提出了答案句提取方法。本发明应用机器学习的方法,从半结构化的文档中提取出答案句。通过pdf解析处理半结构化文档,提取出包含候选答案句文本。通过应用Apriori进行特征选择和朴素贝叶斯分类方法进行分类,得到半结构化文本中的答案句。
2、提出了问句的生成方法。本发明结合命名实体识别和依存句法分析理论,将答案句转为对应的问句。命名实体识别采用crf+BiLstm神经网络模型,识别答案句中的实体,补充到网络爬取的实体中。句法分析通过揭示句子中各个词之间的依存关系,从而在问句生成时替换依存于实体的词,得到合理的问句。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于机器学习的从半结构化文档中提取问答对的方法,其特征在于,包括以下步骤:
步骤1:输入待提取的半结构化文档集合,将pdf格式的半结构化文档转化为txt文档;
步骤2:使用正则表达式提取txt文本中陈述句,将得到的陈述句集合按照文档排序,在文档内部对陈述句随机排序;随机抽取各个文档中的部分句子,对句子是否是答案句进行判断,标注答案句,构造训练集;
步骤3:对训练集使用Apriori算法提取集合中的频繁项集作为特征,通过关联规则扩展特征,得到特征集合;
步骤4:根据特征集合,将句子表示成特征向量,将训练集的特征向量输入到朴素贝叶斯分类模型中训练,得到训练好的分类模型;
步骤5:利用训练好的分类模型对未标注的句子进行分类,提取出答案句,得到答案句集合;
步骤6:通过网络爬虫爬取部分领域实体;对答案句集合中的部分句子进行字标注,将字标注为BIO,建立命名实体识别的训练集;
步骤7:构建BiLstm+crf神经网络模型,使用训练集训练;将训练好的模型对答案句集合中未标注的句子进行序列标注,将标注转化为命名实体;结合网络爬虫爬取的部分领域实体和命名实体,得到实体集合;
所述BiLstm+crf神经网络模型包含两个层BiLstm层和crf层;BiLstm层是双向LSTM神经网络,输入的是一句中的字向量,字向量使用的One-Hot编码,输出的是每个类别标签概率,一个句子最后以矩阵的形式给出P,Pij为第i个词标注为第j个标签的概率;Crf层是条件随机场,用于从输入序列中学习到标签的约束,从而在多类别实体的识别时更精确,其中有一个转移矩阵A,Aij表示第i个标签转移为第j个标签的概率;因此输入句子序列X,得到标签y,最后评分函数为:通过softmax函数,得到概率函数在训练时,最大化似然概率p(y|X),即损失函数为-log(p(y|X));
步骤8:对答案句集合进行分词,词性标注,依存句法分析,分析句子中词之间以来关系,通过将句子中的实体以及依存于实体的词进行替换,得到答案句对应的问句,并输出问答对,完成问答对的提取。
2.根据权利要求1所述的一种基于机器学习的从半结构化文档中提取问答对的方法,其特征在于:所述的步骤3中对训练集使用Apriori算法提取集合中的频繁项集作为特征,通过关联规则扩展特征,得到特征集合的方法具体为:
句子集合S包含已提取的所有陈述句{s1,s2,…,sm},一共m条;通过使用分词工具对陈述句分词,得到词集合{x1,x2,…,xn};遍历所有陈述句,计算每个词的支持度,计算方法为:
其中num(x)为句子集合S中包含词x的句子数量,m为S中句子的总数;设定阈值K,将sup(x)大于K的词x放入到特征集合中;设定关联规则为(x,y),即词x为特征则y也为特征,初始设定所有的二元组为关联规则,计算关联规则的置信度:
其中sup(x∪y)为词x,y一起出现在句子中的概率;设定阈值K2,将置信度大于该阈值的关联规则作为特征扩充规则,即将词y放入到特征集合中。
3.根据权利要求1或2所述的一种基于机器学习的从半结构化文档中提取问答对的方法,其特征在于:所述的步骤5中利用训练好的分类模型对未标注的句子进行分类,提取出答案句,得到答案句集合的方法具体为:根据得到的特征结合,将训练集中的句子表示成特征向量,作为朴素贝叶斯分类模型的输入;特征向量是1×n维的,n表示n个特征;如果句子中包含该特征,则对应位置为1;如果句子中不包含,对应位为0;分类模型使用朴素贝叶斯分类模型,设x={a1,a2,…,an}为待分类项,类别集合为C={y1,y2},通过计算P(y1|x),p(y2|x)得到x各属于两个类别的概率,选取概率最大的类别作为x的所属类别p(yk|x)=max{p(y1|x),p(y2|x)};其中P(y1|x),p(y2|x)是根据贝叶斯定理求得的;通过计算出每个类别所对应的概率,从而找到最大概率的类,通过分类模型,对陈述句分类,找到陈述句中的答案句,最终得到答案句集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911222877.4A CN111078875B (zh) | 2019-12-03 | 2019-12-03 | 一种基于机器学习的从半结构化文档中提取问答对的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911222877.4A CN111078875B (zh) | 2019-12-03 | 2019-12-03 | 一种基于机器学习的从半结构化文档中提取问答对的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111078875A CN111078875A (zh) | 2020-04-28 |
CN111078875B true CN111078875B (zh) | 2022-12-13 |
Family
ID=70312829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911222877.4A Active CN111078875B (zh) | 2019-12-03 | 2019-12-03 | 一种基于机器学习的从半结构化文档中提取问答对的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111078875B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046179B (zh) * | 2019-12-03 | 2022-07-15 | 哈尔滨工程大学 | 一种面向特定领域开放网络问句的文本分类方法 |
TWI736250B (zh) * | 2020-05-06 | 2021-08-11 | 台達電子工業股份有限公司 | 資料標註系統及資料標註方法 |
CN111737969B (zh) * | 2020-07-27 | 2020-12-08 | 北森云计算有限公司 | 一种基于深度学习的简历解析方法和系统 |
CN112131404B (zh) * | 2020-09-19 | 2022-09-27 | 哈尔滨工程大学 | 一种四险一金领域知识图谱中实体对齐方法 |
CN112148862B (zh) * | 2020-10-15 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 一种问题意图识别方法、装置、存储介质及电子设备 |
CN112580343A (zh) * | 2020-11-03 | 2021-03-30 | 北京字节跳动网络技术有限公司 | 模型生成方法、问答质量判断方法、装置、设备及介质 |
CN112487761A (zh) * | 2020-11-26 | 2021-03-12 | 四川长虹电器股份有限公司 | 一种基于图表征融合的问句生成方法及装置 |
CN112651243B (zh) * | 2020-12-15 | 2023-11-03 | 中国科学院信息工程研究所 | 基于融入结构化实体信息的缩写项目名称识别方法及电子装置 |
CN113268566B (zh) * | 2021-05-28 | 2022-06-14 | 平安国际智慧城市科技股份有限公司 | 问答对的质量评价方法、装置、设备及存储介质 |
CN113468309B (zh) * | 2021-06-30 | 2023-12-22 | 竹间智能科技(上海)有限公司 | 文本中的答案抽取方法以及电子设备 |
CN113934818A (zh) * | 2021-10-13 | 2022-01-14 | 百融云创科技股份有限公司 | 一种基于语言模型的企业级问答更新方法及系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320374A (zh) * | 2008-07-10 | 2008-12-10 | 昆明理工大学 | 结合句法结构关系和领域特征的领域问题分类方法 |
CN104965992A (zh) * | 2015-07-13 | 2015-10-07 | 南开大学 | 一种基于在线医疗问答信息的文本挖掘方法 |
CN106354740A (zh) * | 2016-05-04 | 2017-01-25 | 上海秦镜网络科技有限公司 | 一种电子试卷的导入方法 |
CN108492887A (zh) * | 2018-04-13 | 2018-09-04 | 合肥工业大学 | 医疗知识图谱构建方法及装置 |
CN109918644A (zh) * | 2019-01-26 | 2019-06-21 | 华南理工大学 | 一种基于迁移学习的中医健康咨询文本命名实体识别方法 |
CN110019839A (zh) * | 2018-01-03 | 2019-07-16 | 中国科学院计算技术研究所 | 基于神经网络和远程监督的医学知识图谱构建方法和系统 |
CN110110054A (zh) * | 2019-03-22 | 2019-08-09 | 北京中科汇联科技股份有限公司 | 一种基于深度学习的从非结构化文本中获取问答对的方法 |
CN110287334A (zh) * | 2019-06-13 | 2019-09-27 | 淮阴工学院 | 一种基于实体识别和属性抽取模型的学校领域知识图谱构建方法 |
CN110297868A (zh) * | 2018-03-22 | 2019-10-01 | 奥多比公司 | 构建企业特定知识图 |
CN110444259A (zh) * | 2019-06-06 | 2019-11-12 | 昆明理工大学 | 基于实体关系标注策略的中医电子病历实体关系提取方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9002773B2 (en) * | 2010-09-24 | 2015-04-07 | International Business Machines Corporation | Decision-support application and system for problem solving using a question-answering system |
US9792549B2 (en) * | 2014-11-21 | 2017-10-17 | International Business Machines Corporation | Extraction of semantic relations using distributional relation detection |
CN108804654A (zh) * | 2018-06-07 | 2018-11-13 | 重庆邮电大学 | 一种基于智能问答的虚拟学习环境构建方法 |
CN109271506A (zh) * | 2018-11-29 | 2019-01-25 | 武汉大学 | 一种基于深度学习的电力通信领域知识图谱问答系统的构建方法 |
CN110162594B (zh) * | 2019-01-04 | 2022-12-27 | 腾讯科技(深圳)有限公司 | 文本数据的观点生成方法、装置及电子设备 |
CN110096580B (zh) * | 2019-04-24 | 2022-05-24 | 北京百度网讯科技有限公司 | 一种faq对话方法、装置及电子设备 |
-
2019
- 2019-12-03 CN CN201911222877.4A patent/CN111078875B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320374A (zh) * | 2008-07-10 | 2008-12-10 | 昆明理工大学 | 结合句法结构关系和领域特征的领域问题分类方法 |
CN104965992A (zh) * | 2015-07-13 | 2015-10-07 | 南开大学 | 一种基于在线医疗问答信息的文本挖掘方法 |
CN106354740A (zh) * | 2016-05-04 | 2017-01-25 | 上海秦镜网络科技有限公司 | 一种电子试卷的导入方法 |
CN110019839A (zh) * | 2018-01-03 | 2019-07-16 | 中国科学院计算技术研究所 | 基于神经网络和远程监督的医学知识图谱构建方法和系统 |
CN110297868A (zh) * | 2018-03-22 | 2019-10-01 | 奥多比公司 | 构建企业特定知识图 |
CN108492887A (zh) * | 2018-04-13 | 2018-09-04 | 合肥工业大学 | 医疗知识图谱构建方法及装置 |
CN109918644A (zh) * | 2019-01-26 | 2019-06-21 | 华南理工大学 | 一种基于迁移学习的中医健康咨询文本命名实体识别方法 |
CN110110054A (zh) * | 2019-03-22 | 2019-08-09 | 北京中科汇联科技股份有限公司 | 一种基于深度学习的从非结构化文本中获取问答对的方法 |
CN110444259A (zh) * | 2019-06-06 | 2019-11-12 | 昆明理工大学 | 基于实体关系标注策略的中医电子病历实体关系提取方法 |
CN110287334A (zh) * | 2019-06-13 | 2019-09-27 | 淮阴工学院 | 一种基于实体识别和属性抽取模型的学校领域知识图谱构建方法 |
Non-Patent Citations (2)
Title |
---|
Open Domain Question Answering with Character-level Deep Learning Models;Kai Lei等;《2017 10th International Symposium on Computational Intelligence and Design》;20180208;30-33 * |
基于注意力和字嵌入的中文医疗问答匹配方法;陈志豪等;《计算机应用》;20190610;1639-1645 * |
Also Published As
Publication number | Publication date |
---|---|
CN111078875A (zh) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111078875B (zh) | 一种基于机器学习的从半结构化文档中提取问答对的方法 | |
CN111708874B (zh) | 基于复杂意图智能识别的人机交互问答方法与系统 | |
CN112001177B (zh) | 融合深度学习与规则的电子病历命名实体识别方法及系统 | |
US11182562B2 (en) | Deep embedding for natural language content based on semantic dependencies | |
CN111540468B (zh) | 一种诊断原因可视化的icd自动编码方法与系统 | |
US9606990B2 (en) | Cognitive system with ingestion of natural language documents with embedded code | |
Rokach et al. | Negation recognition in medical narrative reports | |
Zubrinic et al. | The automatic creation of concept maps from documents written using morphologically rich languages | |
CN110825721A (zh) | 大数据环境下高血压知识库构建与系统集成方法 | |
CN110609983B (zh) | 一种政策文件结构化分解方法 | |
Tyagi et al. | Demystifying the role of natural language processing (NLP) in smart city applications: background, motivation, recent advances, and future research directions | |
CN113707307A (zh) | 病情分析方法、装置、电子设备及存储介质 | |
CN116719913A (zh) | 一种基于改进命名实体识别的医疗问答系统及其构建方法 | |
Galitsky | Transfer learning of syntactic structures for building taxonomies for search engines | |
Akdemir et al. | A review on deep learning applications with semantics | |
CN111274354B (zh) | 一种裁判文书结构化方法及装置 | |
Zhang | Exploration of Cross‐Modal Text Generation Methods in Smart Justice | |
Zubke et al. | Using openEHR archetypes for automated extraction of numerical information from clinical narratives | |
Amjadian | Representation Learning for Information Extraction | |
Lourentzou | Data quality in the deep learning era: Active semi-supervised learning and text normalization for natural language understanding | |
Kholghi | Active learning for concept extraction from clinical free text | |
CN116644719B (zh) | 一种用于临床证据文献元素编码方法及其在糖尿病视网膜病变中的应用 | |
Jarman | Combining Natural Language Processing and Statistical Text Mining: A Study of Specialized Versus Common Languages | |
Polpinij | Ontology-based knowledge discovery from unstructured and semi-structured text | |
Madrid García | Recognition of professions in medical documentation |
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 |