您好,欢迎来到飒榕旅游知识分享网。
搜索
您的当前位置:首页一种基于机器学习的论文碎片化信息抽取方法[发明专利]

一种基于机器学习的论文碎片化信息抽取方法[发明专利]

来源:飒榕旅游知识分享网
(19)中华人民共和国国家知识产权局

(12)发明专利申请

(10)申请公布号 CN 108536683 A(43)申请公布日 2018.09.14

(21)申请号 201810347430.9(22)申请日 2018.04.18

(71)申请人 同方知网数字出版技术股份有限公

地址 100084 北京市海淀区清华大学华业

大厦(72)发明人 段飞虎 吴盼盼 冯自强 张宏伟 (74)专利代理机构 北京天奇智新知识产权代理

有限公司 11340

代理人 陈新胜(51)Int.Cl.

G06F 17/27(2006.01)G06K 9/62(2006.01)G06N 99/00(2010.01)

权利要求书1页 说明书10页 附图6页

CN 108536683 A()发明名称

一种基于机器学习的论文碎片化信息抽取方法

(57)摘要

本发明公开了一种基于机器学习的论文碎片化信息抽取方法,所述方法包括采用XPDF提取PDF的文本内容、图片及表格,并保存为xml形式;对xml中的段落文本进行数据分析,计算并提取出每个段落块para的特征向量,将每个para的特征向量转换为机器学习模型的特征向量,并根据机器模型的选择和精确度进行分析以选择合理的特征向量,然后通过获取到的段落的特征向量训练支持向量机模型和随机森林模型;根据机器学习模型的特征向量预测目标PDF文章的标题和结构信息,并以xml格式存入数据库中。该方法充分利用了机器学习在信息分类时的优点,选取样本特征构建训练集,并选择RF(随机森林)模型,从而完成基于机器学习的信息抽取。

CN 108536683 A

权 利 要 求 书

1/1页

1.一种基于机器学习的论文碎片化信息抽取方法,其特征在于,所述方法包括以下步骤:

步骤A采用XPDF提取PDF的文本内容、图片及表格,并保存为xml形式;步骤B对xml中的段落文本进行数据分析,计算并提取出每个段落块para的特征向量,将每个para的特征向量转换为机器学习模型的特征向量,并根据机器模型的选择和精确度进行分析以选择合理的特征向量,然后通过获取到的段落的特征向量训练支持向量机模型和随机森林模型;

步骤C根据机器学习模型的特征向量预测目标PDF文章的标题和结构信息,并以xml格式存入数据库中。

2.如权利要求1所述的基于机器学习的论文碎片化信息抽取方法,其特征在于,所述xml由一个根节点book构成,该book节点下包含两个子节点,分别是catalogs子节点和parts子节点。

3.如权利要求1所述的基于机器学习的论文碎片化信息抽取方法,其特征在于,利用支持向量机模型和随机森林模型并根据PDF论文的每个区域所包含的位置特征和字体特征,将论文中的每一个段落进行分类。

4.如权利要求1所述的基于机器学习的论文碎片化信息抽取方法,其特征在于,所述步骤B中提取的每个段落块para的特征向量包括:段落字体粗细、字体大小比例、字体风格、段前断后间距、首行文本缩进、文本块左边界坐标比例、文本块上边界坐标比例、文本块宽度比例、文本块高度比例、文本字体颜色、文字个数、文字密度、首字母大写以及页码比例。

5.如权利要求1或4所述的基于机器学习的论文碎片化信息抽取方法,其特征在于,将提取的每个段落块para的特征向量中不是数字的特征向量通过标记编码器转换成数字,从而获得特征向量的数组,不同的特征向量使用不同的标记编码器。

6.如权利要求1所述的基于机器学习的论文碎片化信息抽取方法,其特征在于,所述每个段落块para的特征向量的计算采用随机森林算法,该算法采用sklearn库中的算法模板进行训练。

7.如权利要求1所述的基于机器学习的论文碎片化信息抽取方法,其特征在于,所述机器学习模型为加强学习算法适应性,采用Online Learning模型训练方法。

2

CN 108536683 A

说 明 书

一种基于机器学习的论文碎片化信息抽取方法

1/10页

技术领域

[0001]本发明涉及信息抽取技术领域,尤其涉及一种基于机器学习的论文碎片化信息抽取方法。

背景技术

[0002]现有随着互联网和信息技术的发展,大数据已经成为各个领域最热门的名词。面对海量的信息和数据资源,迅速获取其中潜在的、有用的知识是当今数据挖掘的重要方向。学术论文具有强烈的专业性和准确性,论文内的信息和数据在很多专业领域都能发挥极大的作用,能为许多应用技术提供底层的数据支持。因此抽取学术论文中的信息和数据是非常有意义的。

[0003]目前国内外的学术论文多以PDF格式进行存储,PDF文档内容抽取主要有两种方式,一种是通过分析PDF文档的格式,直接将其中内容抽取出来,进而获取有用的信息和数据,以下简称直接方法;另一种是将原PDF文档转换成其他文档格式,从而利用抽取中间文档内容的方法抽取PDF文档中的内容,再进一步获取有用的信息和数据,以下简称间接方法。直接方法主要分为基于规则和基于机器学习两大类,传统研究多是单独基于规则或机器学习进行PDF文档的抽取,以下简称单独方法。尽管在元数据分类抽取等方面取得了较大的成绩,但由于学术论文的格式过于复杂、繁多,上述单独方法在某些情况下的效果并不理想。并且传统研究大多只关注元数据的抽取,没有很好地给出论文的内容结构以及内容中的信息和数据。由前人的研究可以发现,单独方法在抽取元数据过程中时而效果特别突出,时而效果却很差。为此,提出了一种基于机器学习的间接提取方法。该方法充分发挥了充分发挥了机器学习算法的优点,具有较强的适应性,可以处理多种类型的文档,不需要专家提前制定规则,取得了比直接方法更优的抽取效果,且还获得了论文内容、结构等方面的信息数据。

发明内容

[0004]为解决上述技术问题,本发明的目的是提供一种基于机器学习的论文碎片化信息抽取方法。

[0005]本发明的目的通过以下的技术方案来实现:

[0006]一种基于机器学习的论文碎片化信息抽取方法,包括:[0007]步骤A采用XPDF提取PDF的文本内容、图片及表格,并保存为xml形式;[0008]步骤B对xml中的段落文本进行数据分析,计算并提取出每个段落块para的特征向量,将每个para的特征向量转换为机器学习模型的特征向量,并根据机器模型的选择和精确度进行分析以选择合理的特征向量,然后通过获取到的段落的特征向量训练支持向量机模型和随机森林模型;

[0009]步骤C根据机器学习模型的特征向量预测目标PDF文章的标题和结构信息,并以xml格式存入数据库中。

3

CN 108536683 A[0010]

说 明 书

2/10页

与现有技术相比,本发明的一个或多个实施例可以具有如下优点:

[0011]该方法充分利用了机器学习在信息分类时的优点,选取样本特征构建训练集,并选择RF(随机森林)模型,从而完成基于机器学习的信息抽取。以随机森林训练模型为主,通过特定分布情况的论文格式的样本制定不同格式的机器学习模型,对论文的标题进行提取,使得对论文章节标题的提取具有较好的效果。附图说明

[0012]图1是基于机器学习的论文碎片化信息抽取方法流程图;[0013]图2是数据库中文章记录图;

[0014]图3是数据库中文章pdf转换为无标签的xml内容;

[0015]图4是数据经过算法预测后带有行文结构和标题层次的xml内容;[0016]图5是特征向量的相对重要性分布图;

[0017]图6a和6b是根据实验样本测得的n_setimators和max_depth两个超参数的取值对模型分类器性能的影响曲线图;

[0018]图7是模型精确度与样本数量的关系图;[0019]图8是线上学习的流程图;

[0020]图9是模型预测的文字标题和行文结构的结果展示给用户的界面;[0021]图10是模板管理工具的管理模板界面。

具体实施方式

[0022]为使本发明的目的、技术方案和优点更加清楚,下面将结合实施例及附图对本发明作进一步详细的描述。[0023]如图1所示,是基于机器学习的论文碎片化信息抽取方法,包括如下步骤:[0024]步骤10采用XPDF提取PDF的文本内容、图片及表格,并保存为xml形式;[0025]将pdf文档统一入库。将word,ppt,pdf等格式的文件统一转化为pdf格式,让统一将数据库中的pdf统一转换为xml形式。图2为数据库的统一结构,其中属性唯一标识为每篇文章的唯一标识符,标题为每篇文章的标题名称,碎片化任务状态为标识该篇文章的状态。本算法主要是通过每篇文章的数字对象pdf文件从而生成有行文结构的xml文件,保存到数据库中的对应的文章记录下。如图3是将pdf转换为无标签的xml的内容。[0026]步骤20对xml中的段落文本进行数据分析,计算并提取出每个段落块para的特征向量,将每个para的特征向量转换为机器学习模型的特征向量,并根据机器模型的选择和精确度进行分析以选择合理的特征向量,然后通过获取到的段落的特征向量训练支持向量机模型和随机森林模型;

[0027]提取出每个段落块para的特征向量,输入到已经训练完成的模板中进行预测分类,然后通过各个para的类别重新生成包含段落结构信息,标题结构的xml文件保存到对应的数据库条目中。图4为将pdf经过算法转换为包含标题结构和段落信息的xml的内容。[0028]步骤30根据机器学习模型的特征向量预测目标PDF文章的标题和结构信息,并以xml格式存入数据库中。

[0029]上述xml由一个根节点book构成,book节点下包含两个子节点,分别是catalogs,

4

CN 108536683 A

说 明 书

3/10页

parts;catalog表示文章的标题树、parts表示文章的内容树;[0030]Xml的格式为:

[0031]

5

CN 108536683 A[0032]

说 明 书

4/10页

[0033][0034][0035][0036][0037][0038][0039][0040]

注释:

part表示整篇文档的内容;

type表示文档的文件格式为pdf;width表示文档页面的宽度;height表示文档页面的高度;maxpage表示文档的页数;title表示该段落为标题段落;

para表示每个段落的内容以及风格特征;

6

CN 108536683 A[0041]

说 明 书

5/10页

xml:id表示唯一标识GUID;

[0042]xml:pId表示父节点的唯一标识GUID;[0043]posId表示段落的顺序号码;[0044]style表示段落的一系列风格;[0045]font-weight表示字体风格,分别有bold,lighter,normal;[0046]font-size表示字体大小;

[0047]spacing-after代表段后间距;[0048]spacing-before代表段前间距;[0049]text-indent代表首行缩进距离;[0050]rect代表段落所在的矩形框x1,y1,x2,y2;[0051]font-color代表字体的颜色RGB;[0052]mediaobject表示图片对象;

[0053]imageobject表示图片或者表格,以图片的格式存储;[00]fileref表示存储的文件名称,文件名称以GUID命名,确保唯一;[0055]title表示图片或者表格的名称;

[0056]采用机器学习的方式抽取PDF论文本质上是将PDF论文的文本段落进行分类,这是一个多分类问题。大体上可以将PDF论文分为文章标题,作者信息,摘要,关键词,正文内容,各章节标题,参考文献以及页脚页眉等。针对上面这些信息和数据在PDF文档中的特性,合理的选取训练样本的特征。分析论文结构不难发现,区分上面分类的主要因素就是位置和字体,因此要在内容流中寻找与位置和字体相关的样本特征。[0057]利用机器学习的支持向量机和随机森林模型,将论文中的每一个段落进行分类。由于PDF论文的每个区域(块)包含了反应其位置和字体的特征,也可以更好的表现PDF论文的内容和结构,从而增强分类的准确性。[0058]训练机器学习模型,主要是把xml中的论文块para节点,转换成机器学习模型的特征向量。本算法中提取的17个特征向量为:[0059]段落字体粗细font-weight:段落字体的粗体时,很有可能是文章的章节标题,作者,文章标题等;

[0060]字体大小比例font-scale:font-scale=font-size/common-size;font-size表示段落字体的大小,common-size表示整篇文章中正文的字体大小,通过这样的计算消除文章与文章之前字体大小的整体偏差,并且font-scale带有文章的字体的相对大小的信息;[0061]字体风格font-style:段落文字的italic(斜体),oblique(倾斜),normal(正常)也是影响段落类别的潜在因素;

[0062]spacing-after,spacing-before:段前段后间距是文章段落是否为标题的重要影响因素。直观来说,当spacing-after和spacing-before的值都比较大时,则该文章段落很有可能是文章的章节标题;[0063]text-indent:首行文本缩进,一般认为首行文本缩进的值越大,则代表文本是标题的可能就越小;

[00]left-scale文本块左边界坐标比例:left-scale=left/width;left表示文本块左边界坐标,width表示pdf页面的宽度;

7

CN 108536683 A[0065]

说 明 书

6/10页

top-scale文本块上边界坐标比例:top-scale=top/height;top表示文本块上边

界坐标,height表示pdf页面的高度;[0066]width-scale文本块宽度比例:width-scale=(right-left)/width;right表示文本块右边界坐标;

[0067]height-scale文本块高度比例:height-scale=(bottom-top)/height;bottom表示文本块底边界坐标;[0068]color-r,color-g,color-b:文本字体的颜色;[0069]word-count文字个数:文本段落的字数;[0070]word-density文字密度:word-density=width/word-count;代表文字间距;[0071]upper-word首字母大写:英文为首字母大写的字符,例如The Big Word;[0072]page-scale页码比例:page-scale=page/maxpage;page表示当前页面的页码数,maxpage表示pdf总页数;直观来看,页码比例表示页码比较小的时候段落文本是文章元数据的可能性较大;

[0073]经过分析这17个特征向量对模型是都有贡献的,但是重要性是有大有小的,如图5所示为特征向量的相对重要性分布:

[0074]通过对上述获取的xml分析计算出每个段落块para的上述17个特征向量,将这17个特征向量中不是数字的特征向量用标记编码器将它们转换成数字,需要不同的属性使用不同的标记编码器,例如font-style属性可以取3个不同的值,需要建立一个懂得给这三个属性编码的标记编码器,从而得出特征向量的数组X;对不同的段落块作相应的标记作为机器学习的训练数据。本方法主要是获取文章的标题,相应的标记为“0”表示段落文本为正文,“1”代表段落文本为文章一级标题,“2”代表段落文本为二级标题,“3”代表段落文本为三级标题,以此类推,从而得出对应的标记Y。

[0075]随机森林算法是一种重要的基于Bagging的集成学习方法,可以用来做分类、回归等问题。

[0076]随机森林有许多优点:具有极高的准确率;随机性的引入,使得随机森林不容易过拟合;随机性的引入,使得随机森林有很好的抗噪声能力;能处理很高维度的数据,并且不用做特征选择;既能处理离散型数据,也能处理连续型数据,数据集无需规范化;训练速度快,可以得到变量重要性排序;容易实现并行化。本算法中随机森林采用sklearn库的中算法模板进行训练。

[0077]

[0078][0079][0080][0081]

classifier=RandomForestClassifier(**params)classifier.fit(x,y)参数的调整:

可以改变n_estimators和max_depth参数的值,提升分类器的准确性,这两个参数

8

CN 108536683 A

说 明 书

7/10页

被称为超参数(hyperparameters),分类器的性能是由它们决定的。验证曲线可以帮助我们调节超参数,基本上我们只对感兴趣的超参数进行调整,其他的参数可以保持不变。根据实验样本测得的n_setimators和max_depth两个超参数的取值对模型分类器性能的影响曲线图6a和6b所示。

[0082]根据曲线n_setimators取值180,max_depth取值23.能让分类器的性能达到理想的效果。

[0083]模型精确度的计算:

[0084]采用K折交叉验证的算法(K-fold Cross-validation),在给定的样本空间中,拿出大部分样本作为训练集训练模型,剩余的小部分样本使用刚建立的模型进行预测,并求这小部分样本的预测误差或预测精度,同时记录它们的加和平均值。这个过程迭代K次,即为K折交叉。

[0085]K-CV可以有效的避免过学习以及欠学习状态的发生,最后得到的结果比较具有说服性。

[0086]本算法中我们采用的是10折交叉验证,简要过程是将初始样本分割为10个子样本,一个单独的子样本被保留作为验证模型的数据,其他9个样本用来训练。这样的交叉验证重复10次,每个样本验证一次,平均10次的结果,最终得到一个单一估测。这个方法的优势在于,同时重复运用随机产生的子样本进行训练和验证,每次的结果验证一次,总共验证10次,取这10次精确度的平均值。[0087]伪代码如下:

[0088]

9

CN 108536683 A[00]

说 明 书

8/10页

模型精确度与样本数量的关系如图7所示。

[0091]虽然训练数据集的规模越小,仿佛训练准确性越高,但是它们很容易导致过度拟合。如果选择较大规模的训练数据集,就会消耗更多的资源。因此,训练数据集的规模选择也是一个需要结合计算能力和实际情况进行综合考虑的问题。

[0092]上述步骤30中训练的模型预测目标pdf文章的标题和结构信息,将目标pdf通过步骤10转化为xml形式,此时的xml是没有类别信息的,xml格式为::

[0093]

[0090]

10

CN 108536683 A

说 明 书

9/10页

[0094]

注释:

[0096]part表示整篇文档的内容;

[0097]type表示文档的文件格式为pdf;[0098]width表示文档页面的宽度;[0099]height表示文档页面的高度;[0100]maxpage表示文档的页数;

[0101]para表示每个段落的内容以及风格特征;[0102]xml:id表示唯一标识GUID;

[0103]xml:pId表示父节点的唯一标识GUID;[0104]posId表示段落的顺序号码;[0105]style表示段落的一系列风格;[0106]font-weight表示字体风格,分别有bold,lighter,normal;[0107]font-size表示字体大小;

[0108]spacing-after代表段后间距;[0109]spacing-before代表段前间距;[0110]text-indent代表首行缩进距离;[0111]rect代表段落所在的矩形框x1,y1,x2,y2;[0112]font-color代表字体的颜色RGB;[0113]mediaobject表示图片对象;

[0114]imageobject表示图片或者表格,以图片的格式存储;[0115]fileref表示存储的文件名称,文件名称以GUID命名,确保唯一;[0116]title表示图片或者表格的名称;

[0117]对获取的xml分析计算出每个段落块para的上述17个特征向量,将这17个特征向量中不是数字的特征向量用标记编码器将它们转换成数字从而得出特征向量的数组X;然后将得到的X输入到步骤B中得到的分类器模板,从而分别预测出目标文档段落文本的类别,从而得到文章的标题信息。根据得到的标题信息,将xml格式转换为带有行文结构的xml格式,存入数据库中以备后用。

[0118]为了加强机器学习算法的适应性,采用Online Learning的算法理论确保算法的精确度。Online Learning并不是一种模型,而是一种模型的训练方法,Online Learning能够根据线上反馈数据,实时快速地进行模型调整,使得模型及时反映线上的变化,提高线上预测的准确率。Online Learing的流程包括:将模型的预测结果展示给用户,然后收集用户

11

[0095]

CN 108536683 A

说 明 书

10/10页

的反馈数据,再来训练模型,形成闭环的系统。如图8所示为线上学习的流程图。[0119]图9是模型预测的文字标题和行文结构的结果展示给用户的界面;用户可以根据上述的工具对预测的结果进行人工校改,系统会自动收集用户的反馈数据,加入到训练集中,从而重新训练模型,使得模型能够线上自动调整[0120]传统的训练方法,模型上线后,更新的周期会比较长(一般是一天,效率高的时候为一小时),这种模型上线后,一般是静态的(一段时间内不会改变),不会与线上的状况有任何互动,假设预测错了,只能在下一次更新的时候完成更正。Online Learning训练方法不同,会根据线上预测的结果动态调整模型。如果模型预测错误,会及时做出修正。因此Online Learning能够更加及时地反映线上变化。[0121]为了提高模板的正确率,不同来源的文章可以设置不同的机器学习模板从而达到更高的精确度,采用模板管理工具,具有以下功能:[0122]提供制作机器学习训练集的方法,包括通过pdf文件制作机器学习模板和通过已经碎片化的xml文件制作机器学习模板。

[0123]提供根据现有数据库中的带有文章标题结构和章节结构的并且经过人工校正反馈后的xml数据进行模板训练。

[0124]提供管理当前机器学习算法预测采用哪一种模板模板进行标题预测操作。记录各个模板的训练集文件夹路径,生成的模板文件的路径,当前模板的正确率,模板生成的时间,模板的大小。

[0125]自动优化模板,线上学习功能。

[0126]图10是模板管理工具的管理模板界面。[0127]虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

12

CN 108536683 A

说 明 书 附 图

1/6页

图1

图2

13

CN 108536683 A

说 明 书 附 图

2/6页

图3

图4

14

CN 108536683 A

说 明 书 附 图

3/6页

图5

图6a

15

CN 108536683 A

说 明 书 附 图

4/6页

图6b

图7

16

CN 108536683 A

说 明 书 附 图

5/6页

图8

图9

17

CN 108536683 A

说 明 书 附 图

6/6页

图10

18

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务