鲍玉来 耿雪来 飞龙
关键词:卷积神经网络;关系抽取;旅游信息;词向量
随着“互联网+旅游业”的不断发展演进,旅游信息的传播方式生发生了很大变化,涌现出大量的关于旅游网站和手机应用程序,随之产生了大量的、冗余的旅游信息资源,“信息过载”问题也随之产生。知识图谱(Knowledge Graph)的提出主要被用来优化和完善当前的搜索引擎。知识图谱能够更好地查询较为繁杂的相关信息,分析查询语义.来理解用户的查询需求.从而改进搜索质量。在构建知识图谱、知识库过程中,语义抽取和处理是必要的前提.语义抽取的质量决定着知识图谱的构建质量。语义抽取包括实体、关系和属性等知识要素抽取。其中,关系抽取是语义抽取研究中的重要内容,是构建知识图谱的重要步骤,实体关系抽取的准确率将极大影响所构建的知识图谱的质量,因此研究关系抽取问题对构建知识图谱有着积极意义。
1研究现状
在早期的关系抽取中,人们主要是利用人工构造语义规则和模板的方法来判断实体之间的关系后来.人工预定义的语法与规则被实体间的关系模型取代,如面向开放域的信息抽取框架;马尔可夫逻辑网的抽取、本体推理的抽取方法_。上述传统的关系抽取模型需要人工进行特征设计,其性能取决于人工特征设计的质量。近年来,深度神经网络技术被越来越多地应用到关系抽取任务中.其中卷积神经网络因其优秀的特征提取能力在实体关系抽取任务中表现出优异性能。万静等提出的基于循环卷积神经网络和注意力机制的关系抽取模型,该模型包括双向GRU的向量表示、PC.NN的特征学习和注意力权重学习.通过在NewYork Times数据集上的实验表明,基于神经网络的关系抽取方法可以避免一些NLP工具的错误,更加准确地学习到句子的语义信息_。张晓斌等应用卷积神经网络结合双向长短期记忆网络的实体关系抽取模型,在SemEval-2010 Task 8数据集上取得了不错的效果。在面向中文专业领域的关系抽取目前研究并不多见。杜嘉等面向煤矿领域知识图谱构建,应用循环神经网路进行了煤矿专业领域本文文本的关系抽取研究,实验结果表明词向量可以更好地表现出文本数据中词汇间的内在联系。本文面向中文旅游领域信息资源,探索采用词向量的方式表示文本数据.继而通过卷积神经网络获取特征并进行分类的关系抽取方法。
2卷积神经网络关系抽取模型
2.1卷积神经网络
卷积神经网络是深度学习中经常使用的网络模型,其在计算机视觉、自然语言处理等领域有重要应用。CNN网络的结构模型主要有5部分组成,分别是:输入层、卷积层、池化层、全连接层以及输出层,如图1所示。首先将原始数据通过输入层载入模型,其次通过卷积层进行卷积运算.通过卷积层后可以得到特征图。池化层对输出参数进行优化,得到对应的特征映射图。紧接着再利用下一层卷积层对这些映射图进行卷积操作得到特征图,再对特征对进行池化操作,得到新的特征映射图;通过降采样,将其送人全连接层。依次逐层训练这样的训练过程就可以得到原始数据的特征向量。将这些特征向量通过全连接层进入分类器进行最后的分类结果输出。
2.2Word2Vec
Word2vec是一个处理文本的双层神经网络。它的输入是一个文本语料库,它的输出是该语料库中单词的特征向量。Word2vec首先根据训练文本数据构建词汇表,然后學习单词的矢量表示。生成的单词矢量文件可以用作许多自然语言处理和机器学习应用程序中的特征。虽然Word2vec不是深度神经网络.但其将文本转换为深度学习可以理解的数字形式。Word2vec创建的向量是单词特征的分布式数字表示,诸如单个单词的上下文特征。因此,Word2vec通过CBOW和Skip-Gram两种方式,可以根据上下文对单词的含义进行高度准确地发现。CBOW模型的训练输入是某一个特征词的上下文相关的词对应的词向量,而输出就是这特定的一个词的词向量。Skip-Gram模型与CBOW相反,即输入是特定的一个词的词向量,而输出是特定词对应的上下文词向量。这些猜测可以用来建立一个单词与其他单词的关联,或者按主题进行文档聚类。由于本文所使用的语料规模不是特别大,所以选择Skip-gram模型进行词向量的转化。
Skip-gram模型有3层结构,分别是输入层、投影层和输出层。所有词的词向量都存在于隐藏层的参数矩阵之中。模型的输入是目标词,输出是目标词的上下文。例如:当设置窗口为2的时候,对于输入的词W,其输出的是W的2个上下文词汇模型图如图2所示。
2.3模型设计
使用卷积神经网络自动提取和学习句子特征,其中在窗口处理的部分.使用了词特征和位置特征作为基础特征并把它们进行线性组合。为了下一步的卷积运算,我们将这些线性特征转化成对应的特征向量。卷积运算完成后,再通过非线性的转化的方式得到句子层级的特征。神经网络结构如图3所示。
为了更好地表达特征,我们以词嵌入作为基础特征。而对词性特征进行选择时,也关注了实体词本身以及其前后两个词的词性,据此可以充分表达出词性特征。在词汇特征这部分主要考虑4个部分:实体1;实体2;实体1前后两个词的词性;实体2前后两个词的词性。通过Word2Vec获取词特征(WF),但仅靠WF是得不到完整特征信息的,加入位置特征(PF),来指定句子中的输入标记对应的目标名词。
位置特征是将每个词分别与两个实体之间的相对距离进行组合。例如,如图5所示,前面句子中的“是”到实体“哈素海”和“32平方公里”的相对距离分别是3和-1。
这里,把相对距离转换成一个随机初始化的维度向量d,然后求得相对距离的向量d和d,其
尽管词向量具有强烈的特征表达能力,其利用窗口中得到的上下文特征向量来推理出句子中对应的上下文特征信息,但是它有一定的局限性,即只能在句子中每个词的周围产生的是局部特征信息。CNN网络可以融合这些特征,因此,本文采用线性变换来处理窗口,具体方式如式(1)所示:
利卷积层处理特征信息的过程,是将选中的词向量利用卷积矩阵转换为对应的上下文特征的向量的过程,式(2),卷积层对窗口中的每一个词组进行处理之后,输出的是每个词对应的上下文特征向量,而且其对应的仅仅是局部特征。
3.2人工标注
在关系抽取的过程中,本文共定义位置、星级、适宜季节、修建时间、展览、库存容量、面积、代表项目、海拔、长度、深度以及其他12个属性关系。人工标注训练级格式采用SemEval 2010
3实验设计
3.1数据预处理
在百度、携程、去哪儿等一些网站上通过爬虫获取基础语料集,共爬取1500多篇有关旅游领域(内蒙古境内)的非结构化文本,首先进行数据清洗,去除标点符号;然后利用汉语分词工具进行分词,停用词典、自定义词典。首先进行分词处理,以空格隔开,使文本转换成指定的格式,如图6所示。
3.3词向量
使用Gensim实现Word2Vec Skip-gram模型,在本实验中,词向量的维度大小定为200维;滑动
3.4CNN
应用Python深度学习工具包Keras实现卷积神经网络,其基本参数为,隐藏层设置为2个,而且它们的节点个数分别是100和200,还将卷积窗口大小设置为3。标注1000篇作为训练样本,500篇作为的测试样本,训练样本中有句子4682个,关系属性15976个,测试样本中关系属性共有7861个。
4实验结果
实验抽取到7558个,其中正确的属性关系有5974个。在关系抽取是同样使用这3个评估标准,只是计算公式有所变化.公式如下:
在实验中,选取了词汇级、句子级、词汇+句子级3种不同的特征进行试验,其中词汇特征和句子特征结合作为分类特征的试验结果最好,如表1、图8所示。
本文探索了应用卷积神经网络和词向量模型进行旅游信息实体关系抽取方法.该方法通过Word2Vee来学习词语的上下文信息.使用卷积神经网络获取更多的特征信息并进行分类。实验证明了本文方法能有效地在非结构化的旅游信息文本中实现关系抽取。