一种公告信息的抽取方法与流程

文档序号:17477034发布日期:2019-04-20 06:11阅读:252来源:国知局
一种公告信息的抽取方法与流程

本发明涉及文本处理技术领域,特别是涉及一种公告信息的抽取方法。



背景技术:

现代信息技术和存储技术的快速发展以及互联网的迅速蔓延,使得人们在日常生活会频繁接触到各种文本信息,文本信息已经成为互联网传输数据最多的部分,在大数据时代,人们缺少的并不是信息,而是从海量纷繁复杂的信息中获取有用的、人们所关注的信息,信息抽取的目的就是要在从海量的数据中准确、快速地抽取出人们感兴趣的事实信息,并将其结构化形式存储起来,以便以后的分析和处理,目前,在信息抽取的研究中,主要利用相关的机器学习方法来自动抽取文本中的某些客观信息,信息抽取主流的方法主要为无监督的方法和有监督的方法:无监督的方法是基于规则来进行信息抽取,这种方法训练是不需要训练数据的,但是基于规则的信息抽取随着要处理的数据越来越多,其性能无法保证,因为所依赖的规则无法适应待处理数据的未知变化,这时就需要对规则进行修改,但是随着数据的不断增长,这样的修改代价是很大的;而有监督的方法准确率是直接受训练数据的数量和质量的影响,数据量少和质量差的数据会使有监督的方法准确率降低很多,且目前大部分的信息抽取是针对网页、微博等方面的信息抽取,但对于公告的信息抽取方法很少。



技术实现要素:

为解决上述问题,本发明提供一种公告信息的抽取方法,其能够自动抽取出公告中的有效特征,并对特征进行组合,最终实现公告的有效信息抽取。

为解决上述目的,本发明采用的如下技术方案。

一种公告信息的抽取方法,包括:对爬取到的公告信息进行数据预处理:对公告信息进行格式转换、分段及去除不需要的文本信息后,得到所需的文本块,根据人工查阅得到的类别信息元词表对文本块进行标注,对每个文本块的内容进行分词,并将每个文本块内容训练获得词向量;

对数据预处理后的公告信息进行段落分类处理:构建训练分类模型,通过训练分类模型对多个文本块进行分类,并将每个文本块标注上类别标签;

信息抽取处理:对分类后的每个文本块进行分割,得到多个分割块;判断分割块之间的相关性,根据相关性组合分割块得到最终结果信息。

具体地,对公告信息进行格式转换、分段及去除不需要的文本信息后,得到所需的文本块的具体步骤包括:将原格式的公告信息转换成目标格式的公告信息,并对目标格式的公告信息进行分段,获得多个文本块;对多个文本块进行筛选,去除不需要的文本块后得到所需的文本块。

具体地,将原格式的公告信息转换成目标格式的公告信息的步骤具体包括:将原始的公告信息为pdf格式的公告信息转成html格式的公告信息;再将html格式的公告信息转成txt格式的公告信息。

具体地,构建训练分类模型的步骤具体包括:将经过数据预处理后的文本块分为训练集、测试集和多个验证集;利用卷积神经网络cnn对训练集中每个文本块的句子的所有词向量进行卷积操作,获得句子向量;将文本块中的所有句子向量作为双向长短时记忆网络blstm的输入,获得文本块向量;利用激活函数求得每个文本块所属每种类别信息元的概率,判断文本块的所属类别;通过训练集和多个验证集作为输入训练获得所需的分类器;将测试集作为分类器的输入,得到测试集中每个文本块所属每种类别信息元的概率,实现文本块的分类。

具体地,通过训练集和多个验证集作为输入获得所需的分类器的步骤具体包括:通过训练集训练获得第一分类器;将第一验证集作为第一分类器的输入,得到第一验证集中每个文本块所属每种类别信息元的概率并筛选出第一文本块集,对筛选出的第一文本块集进行标注,将标注后的第一文本块集和训练集重新进行训练得到第二分类器;再将第二验证集作为第二分类器的输入,得到第二验证集中每个文本块所属每种类别信息元的概率并筛选出第二文本块集,对筛选出的第二文本块集进行标注,将标注后的第一文本块集、第二文本块集和训练集重新进行训练得到第三分类器;持续训练,直至得到所需的分类器。

具体地,将测试集作为分类器的输入,得到测试集中每个文本块所属每种类别信息元的概率,实现文本块的分类的步骤具体包括:利用卷积神经网络cnn对测试集中每个文本块的所有词向量进行卷积操作,获得句子向量;将文本块中的所有句子向量作为双向长短时记忆网络blstm的输入,获得文本块向量;将文本块向量作为分类器的输入,得到每个文本块所属每种类别信息元的概率,实现文本块的分类。

具体地,对分类后的每个文本块进行分割,得到多个分割块的步骤具体包括:获得已分类文本块的句子向量;通过余弦相似度计算求出相邻两个句子之间的相关性;当相邻两个句子之间的相关性小于给定的第一阀值,则在该相邻两个句子之间分割,当相邻两个句子之间的相关性大于给定的第一阀值,则不分割;最后得到多个分割块。

具体地,判断分割块之间的相关性,根据相关性组合分割块得到最终结果信息的步骤包括:利用长短期记忆网络对多个分割块分别进行关键词提取;通过余弦相似度计算关键词与类别信息元词表的词的相关性;当相关性大于给定的第一阀值,则抽取该分割块;通过余弦相似度计算抽取出来的分割块之间的相关性,当某些分割块的相关性大于给定的第二阀值,则抽取其中的一个分割块,当某些分割块的相关性在给定的第二阀值和给定的第三阀值之间时,则进行组合;最后得到最终结果信息。

本发明的有益效果如下:

对爬取到的公告信息进行数据预处理:对公告信息进行格式转换、分段及去除不需要的文本信息后,得到所需的文本块,根据人工查阅得到的类别信息元词表对文本块进行标注,对每个文本块的内容进行分词,并将每个文本块内容训练获得词向量;对数据预处理后的进行段落分类处理:构建训练分类模型,通过训练分类模型对每个文本块实现分类;信息抽取处理:对分类后的每个文本块进行分割,得到多个分割块;判断分割块之间的相关性,根据相关性组合分割块得到最终结果信息;相对于现有无监督的方法,本发明可以使其抽取的性能越来越好,而相对于现有有监督的方法,本方案对数据的依赖比现有的方法低。

附图说明

图1为本发明的一个实施例的公告信息抽取方法的流程图;

图2为本发明的一个实施例的公告信息抽取方法中信息抽取处理关键步骤的流程图;

图3为本发明的一个实施例的公告信息抽取方法中训练分类模型关键步骤的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定申请。可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。

图1示出,本发明的公告信息的抽取方法,主要包括:对爬取到的公告信息进行数据预处理、对数据预处理后的进行段落分类处理和信息抽取处理,具体为:对爬取到的公告信息进行数据预处理:对公告信息进行格式转换、分段及去除不需要的文本信息后,得到所需的文本块,根据人工查阅得到的类别信息元词表对文本块进行标注,对每个文本块的内容进行分词,并将每个文本块内容训练获得词向量;对数据预处理后的进行段落分类处理:构建训练分类模型,通过训练分类模型对每个文本块实现分类;信息抽取处理:对分类后的每个文本块进行分割,得到多个分割块;判断分割块之间的相关性,根据相关性组合分割块得到最终结果信息;相对于现有无监督的方法,本发明可以使其抽取的性能越来越好,而相对于现有有监督的方法,本方案对数据的依赖比现有的方法低。

下面结合具体实例对本发明做进一步说明。

互联网网页中存在大量的已经发布的公告信息,通过网络爬虫获取到pdf格式的公告信息后,对爬取到的公告信息进行数据预处理的步骤具体如下:

s101,将所有pdf格式的公告信息转成html格式的公告信息;

s102,将所有html格式的公告信息去除html标签,并对公告信息进行分块,同时转成txt格式的公告信息,输出结果为txt_i=(txt_1,txt_2,...,txt_nt),txt_i表示第i个txt格式公告,nt表示公告的数量;

s103,将步骤s102中的公告信息txt_i=(txt_1,txt_2,...,txt_nt)进行分段,去除不需要的文本块后,保留所需的文本块,输出结果为t_i=(d_1,d_2,…,d_nd),nd为第i个公告中保留下的文本块的数量,t_i是去除一些不需要的文本块之后的公告。

s104,根据人工查阅得到的类别信息元词表对文本块进行标注,不同类别的信息cl_i=(cl_1,cl_2,...cl_nc),nc表示类别数量,对应类别的词表word_i=(word_1,word_2,...,word_nc),word_i为第i类别的词表,相应词表中的词word_i=(wd_1,wd_2,...,wd_nwd),nwd表示词表中词的数量,wd_i表示词表中第i个词,根据相应词表中的词word_i=(wd_1,wd_2,...,wd_nwd),使用brat工具对公告t_i=(t_1,t_2,...,t_nt)进行标注。标注的标准为:所标注的内容必须是词表中的词word_i=(wd_1,wd_2,...,wd_nwd),且判断上下文相关,如果相关,则需要标注,反之,不需要标注。使用brat工具进行标注会生成.ann文件,根据.ann文件中的标签位置,可反向找到该标签所属的文本块,每一个文本块的内容单独放到一个文件中,文件名可以格式“d_i_类别标签”命名。还可使用brat工具进行对文本块(d_1,d_2,...)标注出其关键词(k_1,k_2,...)。

s105,对每个文本块的内容进行分词,并将每个文本块内容训练获得词向量,使用jieba、snownlp工具对每一个文本块t_i=(d_1,d_2,...,d_nd)的内容进行分词,再使用glove工具将每个文本块内容训练成词向量,词向量的维度dw,其值根据工程经验取得,也可以是其它值。

对数据预处理后的公告信息进行段落分类处理主要目的是将每个文本块标注上一个或多个类别标签,而每个类别标签代表该文本段包含某一类信息元,使后续信息抽取处理能分别从各个文本块当中抽取出它所包含的一类或几类信息元,组成最终结果信息。

构建训练分类模型的目的是获得所需的分类器cj,可以是利用训练集和验证集中的文本块和卷积神经网络cnn以及双向长短记忆网络经过训练后得到的分类器cj,分类器cj可对文本块进行分类,参照图3,构建训练分类模型的过程具体如下:

s201,将经过数据预处理后的文本块t_i=(d_1,d_2,…,d_nd)分为分为训练集xd、验证集yd_i=(yd_1,yd_2,...,yd_ny)和测试集cd,ny表示验证集的数量,定义训练集xd=(t_1,t_2,...),t_i表示经过数据预处理之后的文本块,t_i=(d_1,d_2,...),d_j表示t_i中的文本块。d_i=(s_1,s_2,...,s_n),s_i=(w_1,w_2,...,w_m),d_i表示第i个文本块,s_i表示某文本块中第i个句子,i属于[0,n],w_i表示某一句中的第i个词向量,i属于[0,m],n表示该文本块中所含有句子的个数,m表示每一句中的词的个数,v(w_i)表示在句子中第i个词dw维的词向量,v(w_i:w_i+j)一串词向量[v(w_i),...,v(w_i+j)];

s202,利用卷积神经网络cnn对训练集中每个文本块的句子的所有词向量s_i=(w_1,w_2,...,w_m)进行卷积操作,获得句子向量v(s_i);具体为:用一个大小为h个词的窗口(w_i,...w_i+h)去抽取特征g_i∈rdw,h根据工程经验取得,随着窗口的滑动,最终得到一句话的一组特征表示,对于这一组特征(g_1,g_2,...),使用max-over-timepooling操作,得到唯一的一个特征g_max,用这个特征表示这个句子v(s_i);

s203,将一个文本块中的所有句子向量d_i=(v(s_1),v(s_2),...,v(s_n))作为双向长短时记忆网络blstm的输入,得到输出为h_i,对其得到的一组h_i求平均值,从而得到一个文本块的向量表示v(d_i),参照图3;

s204,利用激活函数求得每个文本块所属每种类别信息元的概率,判断文本块的所属类别并进行标注;

s205,通过对训练集xd进行训练,获得第一分类器c1;

s206,将第一验证集yd_1作为第一分类器c1的输入,得到第一验证集中每个文本块所属每种类别信息元的概率并筛选出第一文本块集,对筛选出的第一文本块集进行标注,将标注后的第一文本块集和训练集重新进行训练得到第二分类器;再将第二验证集作为第二分类器的输入,得到第二验证集中每个文本块所属每种类别信息元的概率并筛选出第二文本块集,对筛选出的第二文本块集进行标注,将标注后的第一文本块集、第二文本块集和训练集重新进行训练得到第三分类器;持续训练,直至得到所需的分类器;具体如下:将第一验证集yd_1作为第一分类器c1的输入,得到第一验证集yd_1中每个文本块属于每类信息元中的概率,筛选出在每类信息元中概率值在a+g之间的第一文本块集tb_1=(d_1,d_2,...),其中a等于1/nc,nc是信息元类别数量,根据工程经验取得,对于这些筛选出的第一文本块集tb_1=(d_1,d_2,...)进行标注,将标注后的第一文本块集tb_1和训练集xd重新进行训练的到新的第二分类器c2,再将第二验证集yd_2作为第二分类器c2的输入,得到第二验证集yd_2中每个文本块属于每类信息元中的概率,筛选出在每类信息元中概率值在之间的第二文本块集tb_2=(d_1,d_2,...),将文本块集tb_2进行标注,并将标注后的第二文本块集tb_2、第一文本块集tb_1和训练集xd重新进行训练得到新的第三分类器c3,一直持续下去,直到验证集yd_j没有或极少量的文本块的概率在之间,则停止训练,最终获得分类器cj。

获得所需分类器cj后,将测试集作为分类器的输入,得到测试集中每个文本块所属每种类别信息元的概率,实现文本块的分类,过程具体如下:

s211,对于测试集cd=(t_1,t_2,...),t_i表示经过数据预处理之后的文本块,t_i=(d_1,d_2,...),d_j表示t_i中的文本块。d_i=(s_1,s_2,...,s_n),s_i=(w_1,w_2,...,w_m),d_i表示第i个文本块,s_i表示某文本块中第i个句子,i属于[0,n],w_i表示某一句中的第i个词向量,i属于[0,m],n表示该文本块中所含有句子的个数,m表示每一句中的词的个数,v(w_i)表示在句子中第i个词dw维的词向量,v(w_i:w_i+j)一串词向量[v(w_i),...,v(w_i+j)];

s212,利用卷积神经网络cnn对训练集中每个文本块的句子的所有词向量s_i=(w_1,w_2,...,w_m)进行卷积操作,获得句子向量v(s_i);具体为:用一个大小为h个词的窗口(w_i,...w_i+h)去抽取特征g_i∈rdw,h根据工程经验取得,随着窗口的滑动,最终得到一句话的一组特征表示,对于这一组特征(g_1,g_2,...),使用max-over-timepooling操作,得到唯一的一个特征g_max,用这个特征表示这个句子v(s_i);

s213,将一个文本块中的所有句子向量d_i=(v(s_1),v(s_2),...,v(s_n))作为双向长短时记忆网络blstm的输入,得到输出为h_i,对其得到的一组h_i求平均值,从而得到一个文本块的向量表示v(d_i);

s214,将文本块向量v(d_i)作为分类器cj的输入,得到该文本块d_i属于每种类别信息元的概率并标注一个或多个类别标签,实现文本块的分类。

图2示出,本实施例中的信息抽取处理过程首先对测试集cd中已分类的文本块cl_i=(d_1,d_2,...,d_ncd)进行文本分割,得到分割块集d_i=(seg_1,seg_2,...,seg_ns),cl_i表示第i个类别中含有的文本块,seg_i表示文本块的分割后的第i个分割块,ncd表示一个类别中文本块的数量,ns表示一个文本块分割成ns段,再抽取分割后的每个分割块的关键词segk_i=(k_1,k_2,...,k_nk),nk表示分割块中取的关键词数量,k_i表示第i个关键词,根据关键词与词表中词的相关性,去判断抽取哪些分割块,对抽取出来的分割块求出它们之间的相关性,从而判断哪些分割块需要删除以及哪些分割块需要组合连接。对分类后的每个文本块进行分割,得到多个分割块的步骤具体具体如下:

s301,对于已经分类的文本块cl_i=(d_1,d_2,...,d_ncd),求出其句子d_i=(s_1,s_2,...,s_n)的向量表示,具体操作步骤为:s3011,对于每个文本块d_i=(s_1,s_2,...,s_n),s_i=(w_1,w_2,...,w_m),d_i第i个文本块,s_i表示某一个文本块中的第i个句子,w_i为某一个句子中的第i个单词,n表示文本块中句子数量,m表示句子中词数量,v(w_i)表示在句子中第i个词dw维的词向量,v(w_i:w_i+j)表示一串词向量[v(w_i),...,v(w_i+j)];利用cnn求出每个文本块d_i=(s_1,s_2,...,s_n)中每个句子的向量表示v(s_i)。

s302,通过余弦相似度计算求出相邻两个句子之间的相关性r(s_i,s_i+1)。

s303,根据句子之间的相关性r(s_i,s_i+1),对文本块d_i进行文本分割。如果相关性r(s_i,s_i+1)小于给定的第一阈值r,则在这两个句子s_i、s_i+1之间分割,如果相关性r(s_i,s_i+1)大于给定的第一阈值r,则不分割;最终得到多个分割块;第一阈值r是根据工程经验取得。

判断分割块之间的相关性,根据相关性组合分割块得到最终结果信息的步骤包括:s311,对文本块d_i进行分割之后,得到的分割块集d_i=(seg_1,seg_2,...,seg_ns),使用长短期记忆网络lstm对这些分割块集(seg_1,seg_2,...,seg_ns)分别进行关键词抽取segk_i=(k_1,k_2,...,k_nk);s312,对于分割后的每个文本块集d_i=(seg_1,seg_2,...,seg_ns),抽取出关键词集segk_i=(k_1,k_2,...,k_nk)之后,通过余弦相似度计算关键词集中的词segk_i=(k_1,k_2,...,k_nk)与词表中的词word_i=(wd_1,wd_2,...,wd_nwd)之间的相关性r(k_i,wd_i),如果相关性r(k_i,wd_i)大于第一阈值r,则抽取出这个分割后的分割块seg_i;s313,根据抽取出来的分割块,判断它们之间的相关性r(seg_i,seg_j),将相关性高的分割块组合在一起,对于一个公告中抽取出来的所有分割块(seg_1,seg_2,...),通过余弦相似度计算它们之间的相关性,如果某些分割块的相关性大于第二阈值ra的,则只保留其中一个,如果某些分割块相关性在第二阈值ra和第三阈值rb之间的,将它们组合在一起,最后得到最终结果信息。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1