知识数据的抽取方法、系统、计算机设备和存储介质与流程

文档序号:16609037发布日期:2019-01-14 21:25阅读:181来源:国知局
知识数据的抽取方法、系统、计算机设备和存储介质与流程

本发明涉及金融信息处理技术领域,尤其涉及一种知识数据的抽取方法、系统、计算机设备和存储介质。



背景技术:

知识抽取是指将蕴含于信息源中的知识经过识别、理解、筛选、归纳等过程抽取出来,存储形成知识元库的过程。目前研究较多的是自然语言文本,已经出现了一些工具或系统,知识抽取已成为自然语言处理领域一个重要的研究分支。知识抽取的来源主要有结构化文本、半结构化文本、非结构化文本。所述结构化文本包括词典、主题词典、本体、全书等;所述半结构化文本主要是指标记文本,包括html标记文本和xmi;所述非结构化文本主要是指图书、论文等文献。

目前,基金知识抽取的难点在于对知识源中的数据进行处理,因为知识并不是以某种现成的形式存在于知识源中,只有对知识源中的数据经过分析、识别、理解、关联等一系列处理之后,才能发现其中有用的知识。

但是,在基金知识抽取的过程中存在着不能快速有效的从知识数据中抽取出需要的基金知识特征,并且没有一种具有普适性的抽取规则适用于不同的数据类型。



技术实现要素:

有鉴于此,有必要针对现有知识抽取过程中存在着的不能快速有效的从知识数据中抽取出需要的基金知识特征的问题,提供一种基金知识抽取方法、系统、计算机设备和存储介质。

一种知识数据的抽取方法,包括如下步骤:

获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中;

获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中;

根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取。

在其中一个实施例中,所述获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中,包括:

设定从所述基金数据库中获取所述基金数据的时间阈值;

当时间节点到达所述时间阈值时,对所述基金数据进行抽取;

将获得的所述基金数据进行汇总,并按照表名、表中的字段和表的记录进行划分,得到所述基金知识数据表。

在其中一个实施例中,所述获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中,包括:

从所述基金数据库中调取所述基金知识抽取方案,所述基金知识抽取方案包括句子和关系类型,任一所述关系类型均对应有一编码向量;

将所述基金知识抽取方案传送给所述深度学习模型,通过所述深度学习模型将所述基金知识抽取方案中的句子进行矩阵化表示;

获取所述基金知识抽取方案中的关系类型所对应的编码向量,通过双向长短时记忆网络模型,对所述编码向量进行语义编码,得到句子中的每一个词的语义向量,所述编码向量it=tanh(w1+wi+bi),式中tanh()为双曲正切函数,w1为第1个权重矩阵,wi为第i个权重矩阵,bi为偏置项取值范围为0.05~0.10;

通过单向长短时记忆网络模型对所述句子中的每一个词的语义向量进行序列标注,得到一个标签序列;

根据所述标签序列对所述基金知识抽取方案进行特征词修订,得到所述基金知识抽取规则。

统计每次采用所述抽取规则对所述网页信息进行抓取获得所述知识特征的正确率,建立由时间阈值、抽取规则和正确率构成的带有权重的误差函数;

将所述误差函数带入到所述深度学习模型中进行训练,对所述误差函数的权重进行修正。

在其中一个实施例中,所述根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取,包括:

从所述基金知识数据表中获取初始句群,所述初始句群包括一个或一个以上的句子;

为所述初始句群设置一个期望长度,根据所述初始句群的长度与期望长度的比较结果,设置所述初始句群的权重阈值,所述权重阈值=(k/f)/g,其中,比较结果f=期望长度/(初始句群长度+冗余值),g为阈值调整因子且g为大于1的数,k为属性权重密度;

将所述基金知识抽取规则的权重与所述权重阈值进行比较,根据比较结果对所述初始句群进行扩展,得到适合所述基金知识抽取规则的最终句群;

利用所述基金知识抽取规则从所述最终句群中抽取所述基金知识特征。

在其中一个实施例中,所述设定从所述基金数据库中获取所述基金数据的时间阈值,还包括时间阈值修订过程,具体包括:

获取每次根据所述时间阈值对所述基金数据进行抽取得到的各个所述基金数据表;

利用误差函数计算任意两个所述基金数据表中每项内容的相似度;

若任意两个所述基金数据表中每项内容进行相似度小于或等于误差阈值,则使用此时间阈值作为基金数据抽取的时间节点;

若任意两个所述基金数据表中每项内容进行相似度大于误差阈值,则使用误差修正模型对所述时间阈值进行修订使所述相似度小于所述误差阈值。

在其中一个实施例中,所述获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中,还包括确定所述基金数据在所述基金数据表中的位置,具体包括:

将所述基金数据放入到归一化正交矩阵中进行正交边际化处理,获得所述基金数据中不同属性的置信度;

对所述基金数据中不同属性的置信度进行聚类,获得每一类别的属性的子置信度;

对所述每一类别的属性的子置信度进行正态分布排列,根据正态分布排列的最大值对应的属性确定所述基金数据在所述基金数据表中的位置。

在其中一个实施例中,所述将所述基金知识抽取规则的权重与所述权重阈值进行比较,根据比较结果对所述初始句群进行扩展,得到适合所述基金知识抽取规则的最终句群,包括:

根据与所述初始句群相邻的左侧和/或右侧句子对应的权重vi进行比较,得到与所述初始句群相邻的左侧句子的权重wl和/或右侧句子的权重wr;

向左扩展和/或向右扩展所述初始句群,若与所述初始句群相邻的左侧句子的权重wl和/或右侧句子的权重wr大于权重阈值,则将该左侧和/或右侧句子扩展至所述初始句群后生成新句群,直到所述初始句群相邻的左侧句子的权重wl和/或右侧句子的权重wr大于权重阈值或等于权重阈值时停止扩展句群,得到适合所述抽取规则的最终句群。

一种知识数据的抽取系统,包括如下单元:

知识数据获取单元,设置为获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中;

抽取规则训练单元,设置为获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中;

基金知识抽取单元,设置为根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取。

一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述接知识数据的抽取方法的步骤。

一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述知识数据的抽取方法的步骤。

上述基金知识抽取方法、装置、计算机设备和存储介质,包括获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中;获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中;根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取。本技术方案针对现有知识抽取过程中存在着的不能快速有效的从知识数据中抽取出需要的基金知识特征的问题,通过深度学习模型对抽取规则进行优化使其能够从基金数据库中快速抽取数据。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。

图1为本发明一种知识数据的抽取方法的整体流程图;

图2为本发明中一种知识数据的抽取方法中的基金知识数据表生成过程示意图;

图3为本发明中一种知识数据的抽取方法中的基金知识抽取规则训练过程示意图;

图4为本发明一种知识数据的抽取系统的结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。

图1为本发明一个实施例中的知识数据的抽取方法的流程图,如图所示,一种知识数据的抽取方法,包括以下步骤:

s1、获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中;

具体的,基金数据表的获得主要是从三种基金数据中获得,其分别是结构化基金数据、半结构化基金数据和非结构化基金数据。

所谓结构化基金数据就是将基金数据以表格的形式进行展示,如表1所示,在表中将基金数据按照基金名称、基金经理、公司代码、基金形状和投资风格进行分类,

表1

而半结构化的基金数据一般是以网页的形式进行存储,主要是应用网络爬虫对其进行抓取,网络爬虫从一个或若干初始网页的url开始,获得初始网页上的url,在抓取网页的过程中,不断从当前页面上抽取新的url放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的url队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页url,并重复上述过程,直到达到系统的某一条件时停止。

对于非结构化的文本信息一般是对文本的内容进行词语解析,然后对所需的特征词进行抽取,以获得相应的信息。

s2、获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中;

具体的,在本实施例中主要是应用深度学习模型中的记忆神经网络模型和循环神经网络模型对基金知识抽取方案进行训练和修正,一般的基金知识抽取方案只能适用于单一的基金数据类型而缺乏普适性,而将抽取方案放入到记忆神经网络模型中使其能够对前一次抽取出的内容进行记忆,然后再应用循环神经网路模型对记忆的内容进行循环利用,并在利用的过程中对基金知识抽取方案进行完善,进而形成基金知识抽取规则。

s3、根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取。

具体的,例如对表1的基金数据进行抽取过程中,一般分为实体、关系和属性三个知识特征进行基金数据抽取,实例如下:

实体:xx资源(基金),崔xx(人员),80000xxx(公司);

关系:崔xx-[现管理]->xx资源,80000xxx-[管理]->xx资源;

属性:基金性质和投资风格。

然后从抓取的网页中,获取到如下信息:

实体:崔xx(人员)、xx银行指数(基金),等

关系:崔xx[曾管理]->xx银行指数,等

属性:实体崔xx的累计任职时间属性和现任基金资产规模属性等,曾管理关系的任职时间属性等。

而对于对非结构化文本,通常是文本文档进行知识特征抽取时,比如要崔xx的简历与从网页上获取的信息是否一致,则需要对文本文档中的信息同样按照实体、关系和属性三要素进行识别抽取,具体如下:

实体:崔xx(人员)、xx基金管理有限公司(公司)、xx民营etf基金(基金)等;

关系:崔xx-[任职于]->xx基金管理有限公司,崔xx-[曾管理]->鹏华深圳民营etf基金等;

属性:实体崔xx的国籍、学历等属性,任职关系的任职时间等属性。

本实施例中,通过引入深度学习模型对抽取规则进行训练使其适用于结构化基金数据、半结构化基金数据和非结构化基金数据三种不同的数据类型,增加基金抽取方法的普适性。

图2为本发明在一个实施例中基金知识数据表生成过程示意图,如图所示,包括:

s101、设定从所述基金数据库中获取所述基金数据的时间阈值;

具体的,时间阈值的设定是根据历史数据进行制定的,即截取距离现在最近一段的历史数据进行加权平均值计算,其中离现在越近的数据权重越大。

s102、当时间节点到达所述时间阈值时,对所述基金数据进行抽取;

具体的,在对基金数据进行抽取时,先将所述基金知识抽取规则带入到自动化脚本中,启动所述自动化脚本对所述基金数据表中的实体、关系和属性三个所述知识特征进行抽取。自动化脚本是python语言中常用的一种脚本程序,将抽取规则带入到自动化脚本中可以提升知识抽取的速度,其具有简洁紧凑、灵活方便、运算符丰富、数据类型丰富等特点。

s103、将获得的所述基金数据进行汇总,并按照表名、表中的字段和表的记录进行划分,得到所述基金知识数据表。

本实施例中,通过生成基金知识数据表可以使基金数据有序排列,从而在进行抽取时,更加快速有效的抽取出所需内容。

图3为本发明在一个实施例中的基金知识抽取规则训练过程示意图,如图所示,所述获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中,包括:

s201、从所述基金数据库中调取所述基金知识抽取方案,所述基金知识抽取方案包括句子和关系类型,任一所述关系类型均对应有一编码向量;

具体的,编码向量可以是词向量,所述词向量是为了让计算机能够处理的一种表示。因为目前的计算机只能处理数值,诸如英文,汉字等等它是理解不了的,最简单地让计算机处理自然语言的方式就是为每个词编号,每个编号就代表其对应的词,这就是one-hot编码(或称one-hot前身,因为one-hot一般以向量形式呈现,向量维度是词典的词数量,每个词的one-hot词向量只在编号位置取1,其余维度只取0)。但很明显,one-hot编码是不能表示词与词之间的(隐含)关系的。基于markov性质构建的n-gram模型,随着n的增大,词与词之间的关系的表达更清晰,但计算量却呈指数级增长。所以需要一种可以表示词与词之间内在联系的并且获得相对容易的词向量。

s202、将所述基金知识抽取方案传送给所述深度学习模型,通过所述深度学习模型将所述基金知识抽取方案中的句子进行矩阵化表示;

具体的,将基金抽取方案中的句子进行了词语拆分,将两个句子中具有的相同的词在矩阵中放置于同一位置,并且计数为“2”,如果在其它句子中仍然有相同的词则在矩阵中相同位置上进行数目的累加,即记数为“3”;然后统计矩阵中每个位置所对应的词,并统计出该位置所对应的数字,即可以得出每一个词出现的频率。

s203、获取所述基金知识抽取方案中的关系类型所对应的编码向量,通过双向长短时记忆网络模型,对所述编码向量进行语义编码,得到句子中的每一个词的语义向量,所述编码向量it=tanh(w1+wi+bi),式中tanh()为双曲正切函数,w1为第1个权重矩阵,wi为第i个权重矩阵,bi为偏置项取值范围为0.05~0.10;

具体的,由于标准的循环神经网络(rnn)在时序上处理序列,往往会忽略未来的上下文信息。一种很显而易见的解决办法是在输入和目标之间添加延迟,进而可以给网络一些时间来加入未来的上下文信息,也就是加入m时间帧的未来信息来一起预测输出。理论上,m可以非常大来捕获所有未来的可用信息,但事实上发现如果m过大,预测结果将会变差。这是因为网路把精力都集中记忆大量的输入信息,而导致将不同输入向量的预测知识联合的建模能力下降。因此,m的大小需要手动来调节。双向循环神经网络(brnn)的基本思想是提出每一个训练序列向前和向后分别是两个循环神经网络(rnn),而且这两个都连接着一个输出层。这个结构提供给输出层输入序列中每一个点的完整的过去和未来的上下文信息。下图展示的是一个沿着时间展开的双向循环神经网络。六个独特的权值在每一个时步被重复的利用,六个权值分别对应:输入到向前和向后隐含层(w1,w3),隐含层到隐含层自己(w2,w5),向前和向后隐含层到输出层(w4,w6)。值得注意的是:向前和向后隐含层之间没有信息流,这保证了展开图是非循环的。

s204、通过单向长短时记忆网络模型对所述句子中的每一个词的语义向量进行序列标注,得到一个标签序列;

具体的,标签序列包括:词的位置信息部分、词的关系角色部分;而词的位置信息部分,包括:词在实体的开头、词在实体的中间、词在实体的结束位置或词本身是一个完整的实体。

s205、根据所述标签序列对所述基金知识抽取方案进行特征词修订,得到所述基金知识抽取规则。

本实施例中,在使用长短时神经网络时,首先给定一个训练好的word2vec词向量集合w∈r|v|×d,其中d为词向量的维度,v为构建的词向量表,|v|表示词向量表的大小,则对于任意段落中长度为n的句子,可得到如公式所示的句子的矩阵化表示:

s=(w1;w2;...;wn),

然后采用给定一个一维卷积核wc1∈rl×d,则对这l个连续词特征卷积后的卷积特征为公式si=f(wc1*si+l+b),式中,si为第i个数据的卷积值,si+l为第i+l个数据的卷积值,f为激活函数,wc1为卷积核,b为修正因子其取值范围为0.05~0.15,进一步对整个句子进行卷积,得到一维的向量组:

h1={s1,s2,s3,…sn},

对一维向量组进行线性转换得到多维向量矩阵,并应用输出向量使用tanh函数激活函数计算各关系类型的概率值。

在一个实施例中,所述根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取,包括:

从所述基金知识数据表中获取初始句群,所述初始句群包括一个或一个以上的句子;

为所述初始句群设置一个期望长度,根据所述初始句群的长度与期望长度的比较结果,设置所述初始句群的权重阈值,所述权重阈值=(k/f)/g,其中,比较结果f=期望长度/(初始句群长度+冗余值),g为阈值调整因子且g为大于1的数,k为属性权重密度;

具体的,根据汉语习惯将期望长度通常设置为4~20个词之间,对应分号连接的特殊长句可以以分号作为句子划分符号对长句子进行分割数个短句,而对于定语较长的句子同样采取抽取主句和从句的方式来设定期望长度。

将所述基金知识抽取规则的权重与所述权重阈值进行比较,根据比较结果对所述初始句群进行扩展,得到适合所述基金知识抽取规则的最终句群;

利用所述基金知识抽取规则从所述最终句群中抽取所述基金知识特征。

在其中一个实施例中,所述设定从所述基金数据库中获取所述基金数据的时间阈值,还包括时间阈值修订过程,具体包括:

获取每次根据所述时间阈值对所述基金数据进行抽取得到的各个所述基金数据表;

利用误差函数计算任意两个所述基金数据表中每项内容的相似度;

其中,误差函数又称为高斯误差函数,高斯函数的形式为:

其中a、b与c为实数常数,且a>0;c^2=2的高斯函数是傅立叶变换的特征函数。这就意味着高斯函数的傅立叶变换不仅仅是另一个高斯函数,而且是进行傅立叶变换的函数的标量倍数。

若任意两个所述基金数据表中每项内容进行相似度小于或等于误差阈值,则使用此时间阈值作为基金数据抽取的时间节点;

若任意两个所述基金数据表中每项内容进行相似度大于误差阈值,则使用误差修正模型对所述时间阈值进行修订使所述相似度小于所述误差阈值。

本实施例中,利用误差函数对时间阈值进行修订,可以纠正因为历史数据失真导致的计算出的时间阈值出错,导致生成的基金知识数据表内容出错。

在一个实施例中,所述获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中,还包括确定所述基金数据在所述基金数据表中的位置,具体包括:

将所述基金数据放入到归一化正交矩阵中进行正交边际化处理,获得所述基金数据中不同属性的置信度;

具体的,在生成归一化正交矩阵时,可以采用如下步骤:

首先按行归一化:例如:矩阵a=[34;512],那么则归一化后得到的矩阵为[14/3;15/12];

再按列归一化得到最终矩阵为[11;15/16]。

对所述基金数据中不同属性的置信度进行聚类,获得每一类别的属性的子置信度;

对所述每一类别的属性的子置信度进行正态分布排列,根据正态分布排列的最大值对应的属性确定所述基金数据在所述基金数据表中的位置。

本实施例中,对每一个类别进行置信度的排列找出每一个信息与基金数据表中条目所对应的位置,可以有效防止在基金数据表的内容发生错误。

在一个实施例中,将所述基金知识抽取规则的权重与所述权重阈值进行比较,根据比较结果对所述初始句群进行扩展,得到适合所述基金知识抽取规则的最终句群,包括:

根据与所述初始句群相邻的左侧和/或右侧句子对应的权重vi进行比较,得到与所述初始句群相邻的左侧句子的权重wl和/或右侧句子的权重wr;

向左扩展和/或向右扩展所述初始句群,若与所述初始句群相邻的左侧句子的权重wl和/或右侧句子的权重wr大于权重阈值,则将该左侧和/或右侧句子扩展至所述初始句群后生成新句群,直到所述初始句群相邻的左侧句子的权重wl和/或右侧句子的权重wr大于权重阈值或等于权重阈值时停止扩展句群,得到适合所述抽取规则的最终句群。

本实施例中,通过控制句子的权重使初始句群的长度能够扩展成符合抽取规则的句群的长度,进而使抽取规则能够更好的适应非结构数据文本。

在一个实施例中,提供了一种知识数据的抽取系统,如图4所示,包括如下单元:

知识数据获取单元,设置为获取基金数据,生成基金知识数据表,所述基金数据存储于基金数据库中;

抽取规则训练单元,设置为获取基金知识抽取方案,应用深度学习模型对所述基金抽取方案进行训练得到基金知识抽取规则,所述基金知识抽取方案存储于所述基金数据库中;

基金知识抽取单元,设置为根据所述基金知识抽取规则对所述基金知识数据表进行基金知识特征的抽取。

在一个实施例中,提出了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行计算机可读指令时实现上述各实施例的知识数据的抽取方法的步骤。

在一个实施例中,提出了一种存储有计算机可读指令的存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例的知识数据的抽取方法的步骤。所述存储介质可以为非易失性存储介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁盘或光盘等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

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

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