一种基于双向递归神经网络的信息提取方法

文档序号:10594058阅读:337来源:国知局
一种基于双向递归神经网络的信息提取方法
【专利摘要】本发明涉及自然语言处理领域,特别涉及一种基于双向递归神经网络的信息提取方法,本发明应用了双向递归神经网络的技术,通过对文本的基本元素,比如字、词、标点符号等进行特征的自动学习,然后通过递归神经网络(RNN)进行序列建模,克服了传统方式中需要手动设置特征的缺陷;不仅如此,本发明使用了双向传播的RNN,克服了单向递归神经网络预测过程中信息不对称的问题,使得待识别的自然语言序列的分类判断结果既依赖了前文信息又依赖了后文信息;使得信息提取和判断的准确率更高,本发明方法特别适用于大数据分析中实体名称提取,在大数据分析中具有重要的应用价值。
【专利说明】
-种基于双向递归神经网络的信息提取方法
技术领域
[0001] 本发明自然语言处理领域,特别设及一种基于双向递归神经网络的信息提取方 法。
【背景技术】
[0002] 随着随着互联网的快速发展,产生了大量的、公开的网页数据,也因此催发了各种 基于大数据技术的新兴产业,比如互联网医疗、互联网教育、企业或者个人征信等。运些互 联网产业的兴起与繁荣离不开大量的数据信息分析;但是直接从网页上获取到数据大部分 都是非结构化的,为了使用运些数据,数据清洗工作成了各大公司耗费时间精力最多的地 方。而数据清洗当中特定信息提取,特别是命名实体的提取又是经常发生的事情,比如做企 业征信,最常见的任务就是从大篇幅文本当中提取企业的名字。
[0003] 除了常见的按照"省市+关键字+行业+组织形式"的规则来命名之外,还存在大量 的例外,比如公司名没有使用省市作为开头,又或者在非正式文本里公司名可能W简写、缩 写的方式出现,运直接导致了使用传统的方式来进行的信息解析的召回率不高。传统的自 然语言处理方法使用条件随机场(CRF)对文本进行序列建模,进而进行文本分析识别和发 现公司名,使用条件随机场,首先需要根据待识别实体的特点来设计构建特征模板。特征模 板包括指定窗口大小上下文的一阶词或者多阶词组,词的前缀、后缀,词性标注等状态特 征;特征模板的构造非常耗时耗力,但识别结果对特征模板的依赖程度极大;而手动设置的 特征模板往往仅依据部分样本的特点,通用性差;而且通常只能用到局部的上下文信息,各 个特征模板的使用也是相互独立的,预测不能依赖更长的历史状态信息,也无法利用更长 未来的信息反馈来纠正可能的历史错误,预测过程复杂,预测结果难W实现全局最优。
[0004] 为了提升企业名提取的质量,研究一套基于自动化学习的方法来发现企业名称的 流程是很有价值的。

【发明内容】

[0005] 本发明的目的在于克服现有技术中所存在的上述不足,提供一种基于双向递归神 经网络的信息提取方法。利用双向递归神经网络来对文本中的企业主体名称进行预测,本 发明方法在预测企业主体名称时既依赖了前文信息又依赖了后文信息,预测的结果实现了 全局优化,识别的可靠性更高;不仅如此,通过双向递归神经网络的处理方式,无需手动设 置特征模板,节省人力且通用性更好,可W在各种类型的文本中发现并提取企业名称,识别 的召回率较传统基于规则的处理方法显著提高。
[0006] 为了实现上述发明目的,本发明提供了 W下技术方案:
[0007] -种基于双向递归神经网络的信息提取方法,使用双向递归神经网络来识别待分 析文本中的企业主体名称,包含W下实现步骤:
[000引(1)选取具有企业主体名称的文档进行人工标注,将其中的企业主体名称分段标 记为:开始部分、中间部分、结束部分,将企业主体名称W外的文字标记为无关部分;
[0009] (2)将经过人工标注的训练样本中的文字序列,先正向再反向输入所述双向递归 神经网络中来训练所述双向递归神经网络,所述双向递归神经网络采用W下向前算法公 式:
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016] I为向量化的字或者词的维度,H为隐含层的神经元个数,K是输出层神经元的个 数,其中J<为t时刻向量化的字或者词在第i维度的取值,为正向输入(文字序列从头至 尾正向输入所述神经网络)时t时刻所述双向递归神经网络的隐含层神经元的输入,4为反 n 向输入(文字序列从尾至头反向输入所述神经网络)时t时刻所述双向递归神经网络隐含层 神经元的输入,?为正向输入时t时刻隐含层神经元的输出,^为反向输入时t时刻隐含层 神经元的输出,0〇为隐含层神经元输入到输出的函数,4为(先正向再反向输入H时刻输 出层神经元的输入,为t时刻输出层神经元的输出,为一个概率值,表示第k个神经元 的输出值相对于K个神经元输出值总和的比值,取值最大的神经元对应的分类为t时刻 所述双向递归神经网络预测的对应字或词的最终分类。
[0017] 具体的,^和^^是各个维度值均为0的向量,T为输入序列的长度。
[0018] (3)将待分析文本中的文字序列输入到所述双向递归神经网络中,经过所述双向 递归神经网络对输入的文字序列进行分类,将分类结果中相邻的属于企业名称部分的序列 所对应的文字作为企业名称整体提取出来。
[0019] 具体的,本发明方法包含对待处理文本进行分词处理的步骤,所述待处理文本包 括标注文本(人工标注的文本)和待分析文本。将待处理文本适当分词之后形成对应的文字 序列,为后续处理提供便利。
[0020] 进一步的,所述步骤(1)根据分词处理的结果对需要标注的文本中的文字序列进 行标注,将其中的企业名称根据分词结果分段标注为:开始部分、中间部分和结束部分,将 其他的文字序列标注为无关部分。
[0021] 进一步的,本发明方法中通过构建词典映射表来实现待处理文本序列中字或者词 的向量化。
[0022] 进一步的,在标注文本中选取35%的样本作为开发样本,65%的样本为训练样本。 在所述双向递归神经网络训练过程中仅保留在开发集上识别准确率最高的模型。
[0023] 与现有技术相比,本发明的有益效果:本发明提供一种基于双向递归神经网络的 信息提取方法,利用双向递归神经网络来对文本中的企业主体名称进行预测,本发明方法 使用双向递归神经网络的方式在预测企业名称时,在一次向前算法中先将文本序列从头至 尾依次正向输入所述双向递归神经网络中,再从尾至头反向输入到所述递归神经网络中; 在正向和反向输入的过程中各时刻双向递归神经网络的输入信号还包括上一时刻递归神 经网络的输出信号。运样在预测企业主体名称时既依赖了前文信息又依赖了后文信息,预 测的结果实现了全局优化,识别的可靠性更高。而且通过双向递归神经网络的处理方式,无 需手动设置特征模板,节省人力且通用性更好,可W在各种类型的文本中发现并提取企业 名称,并可识别企业名称的简称、缩写,识别的召回率较传统基于规则的处理方法显著提 高,本发明方法可在海量的互联网数据文本中发现并提取企业主体名称,在数据分析领域 具有较高的应用价值。
【附图说明】:
[0024] 图1为本基于双向递归神经网络的信息提取方法的实现过程示意图。
[0025] 图2为本基于双向递归神经网络的信息提取方法的实现信号局部流程示意图。
[0026] 图3为本基于双向递归神经网络的信息提取方法的实现信号流程示意图。
[0027] 图4为本基于双向递归神经网络的信息提取方法实施例1的实现信号流程示意图。
【具体实施方式】
[0028] 下面结合试验例及【具体实施方式】对本发明作进一步的详细描述。但不应将此理解 为本发明上述主题的范围仅限于W下的实施例,凡基于本
【发明内容】
所实现的技术均属于本 发明的范围。
[0029] 本发明提供一种基于双向递归神经网络的信息提取方法,利用双向递归神经网络 来对待识别文本中的企业主体名称进行预测。为了实现上述发明目的,本发明提供W下技 术方案:
[0030] -种基于双向递归神经网络的信息提取方法,通过双向递归神经网络来识别待处 理文本中的企业主体名称,包含如图1所示的实现步骤:
[0031] (1)选取3000件具有企业主体名称的文本进行人工标注,将其中的企业主体名称 分段标记为:开始部分、中间部分和结束部分,将企业主体名称W外的文字标记为无关部 分。具体的,将文本中的企业或者组织名称的开始部分标注为B、中间部分标注为M、结束部 分标注为E,将其他不属于企业或者组织机构的文字标注为N,使用字母或者数字来标记文 字序列简单且易于处理,为后续相关序列的操作提供便利。
[0032] (2)将经过人工标记的训练样本中的文字序列依次正向和反向输入到所述双向递 归神经网络中,训练所述双向递归神经网络;(所述正向输入是指将序列中的字或者词按照 位置的前后顺序,依次输入对应时刻的递归神经网络中,所述反向输入是指将序列中的字 或者词倒序,依次输入对应时刻的递归神经网中)所述双向归神经网络每个当前时刻的输 入信号还包括上一时刻所述双向递归神经网络的输出信号,正向和反向信息输入都结束 后,停止递归。
[0033] (3)将待分析文档中的文字序列输入到所述双向递归神经网络中,经过所述双向 递归神经网络对输入的文字序列进行分类,分别识别出待提取文字序列的类型(N、B、M或者 E),将分类结果中两个相邻N之间的B M E序列对应的文字作为企业名称整体提取出来。
[0034] 进一步的,本发明方法包含对待处理文本(所述待处理文本包括标注文本和待分 析文本)进行分词处理的步骤。将待处理文本适当分词之后形成对应的文字序列,目前可用 的分词工具很多比如说:斯坦福分词器、ICTCLAS、盘古分词、盾下分词器……通过分词将较 长的文本内容分解成相对独立的字词单元,使待处理文本内容离散化、序列化,为递归神经 网络的应用提供基础。
[0035] 进一步的,所述步骤(1)根据分词处理的结果,对训练样本中的企业主体名称进行 相应的标注。
[0036] 进一步的,为了识别非正式文本中的企业简称、缩写,可W对应选取一些(标注样 本的1/3)包含企业简称、缩写的非正式文本来进行标注,比如说将"3月9日晚间,XXYY集团 公司发布公告称,拟W全资子公司香港XXYY股份有限公司为投资主体,出资300万美元与其 他方共同成立XX人工智能科技公司,总股本1亿股,香港XX占比15%。"经过分词处理为:"3 月/9日/晚间/,/XX/YY/集团公司/发布/公告/称/,/拟/W/全资/子公司/香港/XX/YY/股份 有限公司/为/投资/主体/,/出资/300/万美元/与/其他方/共同/成立/XX/人工智能/科技/ 公司/,/总/股本/1亿股/,/香港/XX/占比/15%/。"将其中的"XX/YY/集团公司"标注为 "MME",件"香港/XX/YY/股份有限公哥'标注为"BMME"将"XX/人工智能/科技/公哥'标注为 "BMME",将"香港Ar标注为:"BM",而将其他字或者词标注为N。运样本标注文本中即包括 企业全称也包括企业简称,标注1000件运样的样本,用来训练所述双向递归神经网络来训 练所述双向递归神经网络,当所述双向递归神经网络训练完毕之后可W识别出类似结构的 企业全称和简称。
[0037] 具体的,所述巧骤(2)中,所述双向递向神经网络采用W下向前算法公式:
[00;3 引
[0039]
[0040]
[0041]
[0042]
[0043]
[0044] I为文字序列中的字或者词向量化后的维度,H为隐含层的神经元个数,K是输出层 神经元的个数,其中X;为t时刻向量化的字或者词在第i维度的取值,为正向输入(文字 序列正向输入神经网络)时,t时刻所述双向递归神经网络的隐含层神经元的输入(本发明 方法中所述双向递归神经网络的时刻序号与输入文字序列的位置序号相对应,比如所述文 字序列中处于第3位置的字或者词,对应输入第3时刻的双向递归神经网络中为反向输 入(文字序列反向输入神经网络)时,t时刻所述双向递归神经网络的输出层神经元的输入, 为正向输入时t时刻隐含层神经元的输出,?为反向输入时t时刻隐含层神经元的输出,0 0为隐含层神经元输入到输出的函数,待^为*时刻输出层神经元的输入,可^看化£4结合了 t时刻正向输入时隐含层神经元的输出信号和反向输入时的隐含层神经元的输出信号),4 的计算结果一直向前传播直到所述双向递归神经网络输出该时刻的分类结果;运样在计算 当前时刻对应字或者词的分类结果时既结合了历史序列信息又结合了未来序列信息,依赖 了整个文本的上下文信息而非局部信息,从而使得预测结果达到了全局最优。><为*时刻 输出层神经元的输出,为一个概率值,表示第k个神经元的输出值相对于K个神经元输出 值总和的比值,通常取;最大的神经元对应的分类为该时刻所述双向递归神经网络预测 的最终分类。为正向输入时乂;的权重系数,W.;,为反向输入时义;;的权重系数,W方为 正向输入时的权重系数,W;-为反向输入时的权重系数,为^的权重系数, 为皆的权重系数。
[0045] 和是各个维度值均为0的向量,T为输入序列的长度。
[0046] 根据该向前算法公式,本发明方法的信号流向如图2、图3所示(其中vec-a、vec-b、 vec-c、vec-d、vec-e、vec-f、vec-g、vec-h、vec-i、vec-j、vec-k、vec-1、vec_m......vec-z等 代表词典映射表中二维矩阵的行向量)。
[0047] 从上述向前算法公式可W看出,本发明方法使用双向递归神经网络的方式在预测 企业名称时,在一次向前算法中先将文本序列从头至尾依次正向输入所述递归神经网络 中,再从尾至头反向输入到所述递归神经网络中;在正向和反向输入的过程中各时刻双向 递归神经网络的输入信号包括该时刻向量化的字或者词信号和上一时刻递归神经网络的 输出信号,仅在反向输入时所述双向递归神经网络才输出该时刻对应字或者词的分类结 果。运样在预测企业主体名称时既依赖了前文信息又依赖了后文信息,预测的结果为实现 了全局优化,识别的可靠性更高。而且通过双向递归神经网络的处理方式,无需手动设置特 征模板,节省人力且通用性更好,可W在各种类型的文本中发现并提取企业名称,识别的召 回率较传统基于规则的处理方法显著提高。
[004引进一步的,本发明采用上述向前算法在所述双向递归神经网络中来逐层传输运算 数据,在输出层获取到识别(预测)数据,当预测结果与训练样本的标注结果具有偏差时,通 过神经网络中经典的误差反向传播算法来调整神经网络中的各个权重,误差反向传播方法 将误差逐级反向传播分摊到各层的所有神经元,获得各层神经元的误差信号,进而修正各 神经元的权重。通过向前算法逐层传输运算数据,并通过向后算法来逐渐修改各神经元的 权重的过程就是神经网络的训练过程;重复上述过程,直到预测结果的正确率达到设定的 阔值,停止训练,此时可认为所述双向递归神经网络模型已经训练完成。
[0049] 进一步的,所述步骤(3)中,将所述双向递归神经网络分类结果中N B M…E N、N B M…N、N M…E N中B M…E、B M…、M-'E对应的文字作为企业名称整体提取出来,其中M…为 至少1个M组成的序列,运样就完成了企业名称的判断和提取。运样本发明方法不仅可W判 断出命名规则的企业名称:BM…E,也可W发现非正式文本中的企业简称:B M…、M…E,比如 说一家企业名称在正式文本为:"北京XXXX有限公司"而在非正式文本中则可能W "北京 XXXX"的形式出现,省略了常规企业名称提取中所依赖的关键后缀:"企业"、"公司"、"集团" 等,而通过本发明方法运样的简称或者缩写:B M…、M…E也可W被提取出来,极大的提高了 企业名称发现的召回率,改善了企业名称提取不全而出现的信息漏判问题。
[0050] 进一步的,本发明方法中通过词典映射表来实现待处理文本中字或者词的向量 化。所述词典映射表为一个二维矩阵,其中每一个行向量对应一个字或者词,而运种行向量 与字词的对应关系是在构建运个词典映射表时设置的。
[0051 ] 进一步的,在人工标注文本的样本中随机选取35 %的样本作为开发样本,65%的 样本为训练样本。在所述双向递归神经网络训练过程中仅保留在开发集上识别准确率最高 的模型,可W防止所述双向递归神经网络训练的过拟合,使训练结果朝着更加合理的方向 进行;且开发样本与训练样本采用统一标注标准,降低了无关复杂度,使开发集验证的结果 更加可靠,。
[0化2]实施例1
[005引比如在网络获取了如下的新闻文本:"成都AB控股集团股份有限公司之全资子公司 成都AB电子有限公司拟联合成都CDEF科技有限公司及2名自然人投资设立成都ABEF大数据金 服有限公司,为W银行为主的金融机构提供金融服务的商业大数据解决方案。"将运段文本使 用分词器进行分词的结果如下:"成都/A/B/控股/集团/股份/有限公司/之/全资/子公司/成 都/A/B/电子/有限公司/拟/联合/成都/C/D/E/F/科技/有限公司/及/2/名/自然人/投资/设 立/成都/A/B/E/F/大数据/金/服/有限公司/,/为/W/银行/为主/的/金融/机构/提供/金 融/服务/的/商业/大数据/解决方案/。"经过分词处理后形成了长度为55的文字序列,将上 述文字序列经过事先设置好的词典映射表后,形成了对应包含55个向量数据的序列,将上 述向量数据序列依次输入训练好的双向递归神经网络中,经过所述双向递归神经网络的预 测最终输出:BMMMMMENNNBMMMENNBMMMMMENNNNNNBMMMMMMMENNNNNNNNNNNNNN 順的序列(信号 流程女日图4戶Zf示,其中('vec_a''、('vec_b''、('vec_c''、('vec_d''、('vec_e''、('vec-f''、('vec-邑''、 "vec-h"、"vec-i"、"vec-j"、"vec-k"、"vec-l"、"vec-m"、"vec-n"......"vec-z" 为词典映身才 表中对应的行向量),分别将其中"BMMMMME"、"BMMM护、"BMMMMM护、"BMMMMMMM护所对应的 "成都AB控股集团股份"、"成都AB电子有限公司"、"成都CDEF科技有限公司"、"成都ABEF大 数据金服有限公司"提取出来,就完成了对该文本中企业名称的提取工作。
【主权项】
1. 一种基于双向递归神经网络的信息提取方法,其特征在于,使用双向递归神经网络 来识别待分析文本中的企业主体名称。2. 如权利要求1所述的方法,其特征在于,包含以下实现步骤: (1) 选取具有企业主体名称的文档作为训练样本,并进行人工标注,将其中的企业主体 名称分段标记为:开始部分、中间部分和结束部分,将企业主体名称以外的文字标记为无关 部分; (2) 将经过人工标记的训练样本中的文字序列,先正向再反向输入所述双向递归神经 网络中,训练所述双向递归神经网络; (3) 将待分析文本中的文字序列,先正向再反向输入训练好的所述双向递归神经网络 中,经过双向递归神经网络判断出文字序列中各个词或者字的类型,并将其中相邻的属于 企业名称的开始、中间和结束部分所对应的字词作为一个整体提取出来。3. 如权利要求2所述的方法,其特征在于,所述双向递归神经网络采用如下向前算法公 式:I为向量化的字或者词的维度,Η为隐含层的神经元个数,K是输出层神经元的个数,其 中·^为t时刻向量化的字或者词在第i维度的取值,< 为正向输入时t时刻所述双向递归神 经网络的隐含层神经元的输入,^为反向输入时t时刻所述双向递归神经网络的隐含层神 经元的输入,$为正向输入时t时刻隐含层神经元的输出,%为反向输入时t时刻隐含层神 经元的输出,θ〇为隐含层神经元输入到输出的函数,4为t时刻输出层神经元的输入,3^为 t时刻输出层神经元的输出,为一个概率值,表示第k个神经元的输出值相对于K个神经元 输出值总和的比值。4. 如权利要求3所述的方法,其特征在于,$和%+|是各个维度值均为0的向量,其中T为 输入文字序列的长度。5. 如权利要求1至4之一所述的方法,其特征在于,包含对待处理文本进行分词的过程, 所述待处理文本包括标注文本和待分析文本。6. 如权利要求5所述的方法,其特征在于,通过构建词典映射表来实现待处理文本序列 中字或者词的向量化,所述词典映射表为一个矩阵,其中的每个行向量对应一个字或者词, 而行向量与字或者词的对应关系在构建所述词典映射时设置的。7. 如权利要求6所述的方法,其特征在于,在进行数据标注时,将待标注文本中的企业 名称的开始部分标记为B、中间部分标记为M、结束部分标记为E,将企业主体名称以外的文 字的无关部分标记为N。8. 如权利要求7所述的方法,其特征在于,所述步骤(3)中,将所述双向递归神经网络分 类结果中Ν Β Μ…Ε Ν、Ν Β Μ…Ν、Ν Μ…E N中Β Μ…Ε、Β Μ…、Μ…E对应的文字作为企业名称 整体提取出来,其中Μ···为至少1个Μ组成的序列。9. 如权利要求8所述的方法,其特征在于,在标注文本中选取35%的样本作为开发样 本,65 %的样本为训练样本。10. 如权利要求9所述的方法,其特征在于,在所述双向递归神经网络训练过程中仅保 留在开发集上识别准确率最尚的t旲型。
【文档编号】G06F17/27GK105955952SQ201610284717
【公开日】2016年9月21日
【申请日】2016年5月3日
【发明人】刘世林, 何宏靖
【申请人】成都数联铭品科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1