D. 知识抽取与知识挖掘
概述
- 知识抽取
- 子任务
- 命名实体识别
- 关系抽取
- 事件抽取
- 子任务
- 相关竞赛
- 消息理解会议(MUC)
- 背景:美国国防部高级研究计划局启动并资助目的是鼓励和开发更好的知识抽取方法
- 内容:组织者向参加者提供消息文本的样例和信息抽取任务的说明:参加者开发参赛系统并提交系统的输出结果。各个系统的结果与标准结果比对后得到最终的评测结果,参与者最后在会议上交流技术和感受
- 评测标准:召回率和精确率,以及F1值
- 自动内容抽取(ACE)
- 背景:美国国家标准技术研究所组织的评测会议
- 与MUC的区别:与MUC类似,但是ACE对MUC定义的任务进行了融合、分类和细化。
- 内容:ACE评测涉及英语、阿拉伯语和汉语三种语言:主要包括以下任务:
- 实体检测和跟踪:ACE最基础和核心的任务,该任务要求识别文本中的实体,实体类型包括人物、组织、设施、地缘政治实体和位置等
- 关系检测与表征:要求识别和表征实体间的关系,关系被分为五大类:角色关系、部分整体关系、位于关系、邻近关系、社会关系,每个大类关系又被进一步细分,总共有24种类型
- 事件检测与表征:该任务要求识别实体参与的五类事件,包括交互、移动、转移、创建和销毁事件。任务要求自动标注每个事件的文本提及或锚点,并按类型和子类型对其进行分类,最后,还需要根据类型特定的模板进一步确定事件参数和属性
- 知识库填充
- 背景:由文本分析会议主办,目标是开发和评估从非结构化文本中获取知识填充知识库的技术。
- 内容:覆盖了从知识库填充的独立子任务以及被称为“冷启动”的端到端知识库构建任务
- 实体发现与链接:主要任务是评估文档集合中提取特定个人、组织、设施、地缘政治实体和位置实体的名称和提及,并将每个提及链接到对应的KB节点
- 槽填充:搜索文档集合以填充特定实体的特定属性值
- 事件跟踪:事件跟踪旨在从非结构化文本中提取关于事件的信息,使其作为结构化知识库的输入。该任务具体包括事件块任务和事件参数任务。
- 信念和情感:信仰和情感跟踪检测实体对另外一个实体、关系或事件的信念和情绪。
- 语义评测
- 背景:由ACL-SIGLEX组织的国际权威的词义消歧评测,目标是增进人们对语义与多义现象的理解。
- 内容:早期评测比较关注语义消歧问题,后来出现了更多文本语义理解的任务,包括语义角色标注、情感分析、跨语言语义分析等
- 消息理解会议(MUC)
面向非结构化数据的知识抽取
- 实体抽取
- 基于规则的方法:专家编写规则
- 优点:在小数据集上可以达到很高的准确率和召回率
- 缺点:随着数据集的增大,规则集的构建周期变长,并且移植性较差
- 基于统计模型的方法:利用完全标注或部分标注的语料进行模型训练
- 算法:隐马尔科夫模型、条件马尔可夫模型、最大熵模型以及条件随机场模型
- 基于统计模型构建命名实体识别方法主要涉及训练语料标注、特征定义和模型训练三个方面:
- 训练语料标注:语料标注体系
- Inside-Outside-Beginning(IOB):每个词被标记为实体名称的起始词(B)、实体名称的后续词(I)或实体名称的外部词(O)
- Inside-Outside(IO):文本中的词被标记为实体名称内部词(I)或实体名称外部词(O)
- 特征定义:特征包括:单词级、词典特征和文档特征等
- 单词级:是否首字母大写、是否以句号结尾、是否包含数字、词性、词的n-gram等
- 词典特征:依赖外部词典定义,例如预定义的词表、地名列表等
- 分支主题:基于整个语料文档集计算,例如文档集中的词频、同现词等
- 模型训练:隐马尔科夫模型和条件随机场是两个常用于标注问题的统计学习模型,也被广泛应用于实体抽取的问题
- 训练语料标注:语料标注体系
- 基于深度学习的方法
- 特点:与传统统计模型相比,基于深度学习的方法直接以文本中词的向量为输入,通过神经网络实现端到端的命名实体识别,不再依赖人工定义的特征
- 算法:卷积神经网络、循环神经网络以及引入注意力机制的神经网络
- 步骤
- 不同的神经网络结构在命名实体识别过程中扮演编码器的角色,它们基于初始化输入以及词的上下文信息,得到每个词的新向量表示;
- 最后再通过CRF模型输出对每个词的标注结果;
- 算法
- LSTM-CRF模型
- LSTM-CNNs-CRF模型
- 基于注意力机制的神经网络模型
- 步骤
- 基于规则的方法:专家编写规则
- 关系抽取
- 基于模板的关系抽取方法
- 特点:基于语言学知识、结合语料的特点,由领域专家手工编写模板,从文本中匹配具有特定关系的实体
- 优点:在小规模、限定领域的实体关系抽取问题上,基于模板的方法能够取得较好的效果
- 群点:数据规模较大时,手工构建模板需要耗费领域专家大量的时间
- 基于监督学习的关系抽取方法
- 特点:将关系抽取转化为分类问题,在大量标注数据的基础上,训练有监督学习模型进行关系抽取
- 步骤:
- 预定义关系的类型;
- 人工标注数据;
- 设计关系识别所需的特征,一般根据实体所在句子的上下文计算获得;
- 选择分类模型,基于标注数据训练模型
- 对训练模型进行评估
- 传统的机器学习的方法
- 关系抽取特征
- 轻量级:主要是基于实体和词的特征,例如句子中实体前后的词、实体的类型以及实体之间的距离等
- 中量级:基于句子中语块序列的特征。
- 重量级:一般包括实体间的依存关系路径、实体间依存树结构的距离以及其他特定的结构信息
- 关系抽取特征
- 深度学习的方法
- 流水线关系抽取方法:将实体识别和关系抽取作为两个分离的过程进行处理,两者之间不会相互影响
- CR-CNN模型
- 第一步:将句子中的词映射到长度为d1的低纬向量,每个词的向量包含了词向量和位置向量两部分
- 第二步:模型对固定大小滑动窗口中的词的向量进行卷积操作,为每个窗口生成新的长度为d2的特征向量
- 第三步:对所有的窗口特征向量求最大值,模型最终得到整个句子的向量表示d3
- 第四步:在进行关系分类时,CR-CNN模型计算句子向量和每个关系类型向量的点积,得到实体具有每种预定义关系的分值
- Attention CNNs模型:多层注意力卷积神经网络,将注意力机制引入到神经网络中,对反应实体关系更重要的词语赋予更大的权重,借助改进后的目标函数提高关系提取的效果
- 输入层:模型引入了词与实体相关的注意力
- 池化层和混合层:引入了针对目标关系类别的注意力
- Attention BLSTM模型:
- 包含了两个LSTM网络,从正向和反向处理输入的句子,从而得到每个词考虑左边和右边序列背景的状态向量,词的两个状态向量通过元素级求和产生词的向量表示
- 在双向LSTM产生的词向量基础上,该模型通过注意力组层组合词的向量产生句子向量,进而基于句子向量将关系分类
- 注意力层首先计算每个状态向量的权重,然后计算所有状态向量的加权和得到句子的向量表示
- CR-CNN模型
- 联合关系抽取方法:将实体抽取和关系抽取相结合,在统一模型中共同优化
- 词嵌入层
- 基于单词序列的LSTM-RNN层
- 以及基于依赖子树的LSTM-RNN层
- 流水线关系抽取方法:将实体识别和关系抽取作为两个分离的过程进行处理,两者之间不会相互影响
- 基于弱监督学习的关系抽取方法
- 远程监督方法
- 步骤
- 第一步:从知识图谱中抽取存在目标关系的实体对
- 第二步:从非结构化文本中抽取含有实体对的句子作为训练样例
- 第三步:训练监督学习模型进行关系抽取
- 优点:利用丰富的知识图谱信息获取训练数据,有效地减少了人工标注的工作量
- 缺点:大量噪声会被引入到训练数据中,从而引发语义漂移的现象
- 优化方法:多示例学习、采用注意力机制的深度学习以及强化学习模型
- 步骤
- Bootstrapping方法
- 利用少量实例作为初始种子集合,然后在种子集合上学习获得关系抽取的模板,再利用模板抽取更过的实例,加入种子集合中
- 优点:关系抽取系统构建成本低,适合大规模的关系抽取任务,并且具备发现新关系的能力
- 缺点:包括对初始种子较为敏感、存在语义漂移问题、结果准确率低等
- 远程监督方法
- 基于模板的关系抽取方法
- 事件抽取:事件,通常具有时间、地点、参与者等属性
- 事件抽取任务包含的子任务有:
- 识别事件触发词及事件类型
- 抽取事件元素的同时判断其角色
- 抽出描述事件的词或句子
- 事件属性标注
- 事件共指消解
- 事件抽取的流水线方法
- 特点:每一个子任务由一个机器学习分类器负责实施
- 一个基本的事件抽取流水线需要的分类器包括
- 事件触发词分类器:判断词汇是否为事件触发词
- 元素分类器:判断词组是否为事件的元素
- 元素角色分类器:判断事件元素的角色类别
- 属性分类器:判断事件的属性
- 可报告性分类器:判断是否存在指的报告的事件实例
- 事件的联合抽取方法
- 步骤
- 第一步:建立事件抽取子任务的模型,然后将各个模型的目标函数进行组合,形成联合推断的目标函数
- 第二步:通过对联合目标函数进行优化,获得事件抽取各个子任务的结果
- 第三步:通过对联合目标函数进行优化,获得事件抽取各个子任务的结果
- 第四步:联合建模的方法在充分分析子任务间的关系后,基于概率图模型进行联合建模,获得事件抽取的总体结果
- 缺点:局部分类器不能够捕获两个事件之间的依赖关系
- 优化点:在局部分类器的基础之上,增加了若干全局特征
- 深度学习方法优势
- 减少了对外部工具的依赖,甚至不依赖外部工具,可以构建端到端的系统
- 使用词向量作为输入,词向量蕴涵了丰富的语义信息
- 神经网络具有自动提取句子特征的能力,避免了人工设计特征的烦琐工作
- 步骤
- 事件抽取任务包含的子任务有:
面向结构化数据的知识抽取
- 直接映射
- 直接映射的基本原则包括:
- 数据库中的表映射为RDF类
- 数据库中表的列映射为RDF属性
- 数据库表中每一行映射为一个资源或实体,创建IRI
- 数据库表中每个单元格的值映射为一个文字值;如果单元格的值对应一个外键,则将其替换为外键值指向的资源或实体的IRI
- 直接映射的基本原则包括:
- R2RML:R2RML映射语言是一种用于表示从关系数据库到RDF数据集的自定义映射的语言
- 特点:R2RML映射是通过逻辑表从数据库中检索数据的。
- 一个逻辑表可以是数据库中的一个表、视图或有效的SQL语句查询;
- 每个逻辑表通过 三元组映射 映射到RDF数据,而三元组映射是可以将逻辑表中每一行映射为若干RDF三元组的规则
- “逻辑表”突破了关系数据库表的物理结构的限制,为不改变数据库原有的结构而灵活地按需生产RDF数据奠定了基础
- 三元组映射 包含两部分:一个主语映射和多个谓语-宾语映射
- 特点:R2RML映射是通过逻辑表从数据库中检索数据的。
- 相关工具
- D2RQ
- Mastro
- Ultrawrap
- Morph-RDB
- Ontop
面向半结构化数据的知识抽取
- 定义:不符合关系数据库或其他形式的数据表形式结构,但又包含标签或其他标记来分离语义元素并保持记录和数据字段的层次结构
- 面向百科类数据的知识抽取
- 基于百科的知识图谱
- 基于维基百科的知识图谱:DBpedia、Yago等
- 基于中文百科站点的发展,如百度百科、互动百科:Zhishi.me、XLore、CN-DBpedia等
- 应用场景 — DBpedia(世界上最大的知识图谱),截至2019.02
- 概述:
- 30亿条RDF三元组,其中5.8亿条是从维基百科的引文版中提取的,24.6亿条是从其他语言版本中提取的
- 完整的数据集包含过3800万个来自125种不同语言的标签和摘要,2520万个图片链接和2980万个外部网页链接
- 大约5000万个RDF链接与其他链接数据集链接,使其成为LOD数据集的重要核心。
- 根据抽样评测,DBpedia中RDF三元组的正确率达88%
- 英文版:458万个实体,其中422万个实体被准确地分类,其中包括:144.5万个人物、73.5万个地点、41.1万件作品、24.1万个组织、25.1万个物种和6000种疾病
- 125种语言的本地化版本,共包含了3830万个事物。
- 概述:
- DBpedia使用了多种知识提取器从维基百科中获取结构化数据,具体包括:
- 标签:抽取维基百科词条的标题,并将其定义为实体的标签;
- 摘要:抽取维基百科词条页面的第一段文字,将其定义为实体的短摘要;抽取词条目录前最长500字的长摘要;
- 跨语言链接:抽取词条页面指向其他语言版本的跨语言链接
- 图片:提取指向图片的链接
- 重定向:抽取维基百科词条的重定向链接,建立其与同义词条的关联;
- 消歧:从维基百科消歧页面抽取有歧义的词条链接;
- 外部链接:抽取词条正文指向维基百科外部的链接
- 页面链接:抽取词条正文指向维基百科内部的链接
- 主页:抽取诸如公司、机构等实体的主页链接
- 分类:抽取词条所属的分类
- 地理坐标:抽取词条页面中存在的地理位置的经纬度坐标
- 信息框:从词条页面的信息框中抽取实体的结构化信息
- 一般抽取:将信息框中的信息转换为RDF三元组
- 基于映射的抽取:首先将信息框的模板、属性映射到人工定义的本体中的类型和属性;然后采用本体中的词汇描述抽取出的结构化信息,获得的三元组数据质量更高
- 基于百科的知识图谱
- 面向Web网页的知识抽取
- 从网页中获取结构化信息一般通过包装器实现
- 手工方法:手工编写出适合当前网站的抽取表达式
- 包装器归纳方法:基于有监督学习方法从已标注的训练样例集合中学习信息抽取的规则,然后对相同模板的其他网页进行数据抽取的方法典型的包装归纳流程包括以下步骤
- 网页清洗:纠正和清理网页不规范的HTML、XML标记,可采用TIDY类工具
- 网页标注:在网页上标注需要抽取的数据,标注过程一般是给网页中的某个位置打上特殊的标签,表明此处是需要抽取的数据
- 包装器空间生成:基于标注的数据生成XPath集合空间,对生成的集合进行归纳,从而形成若干个子集。归纳的目标是使子集中的XPath能够覆盖尽可能多的已标注数据项,使其具有一定的泛化能力
- 包装器评估:通过正确率和召回率进行评估
- 自动抽取方法
- 相似的网页首先被分成若干组
- 通过挖掘相似网页的重复模式,可以生成适用于该组网页的包装器
- 从网页中获取结构化信息一般通过包装器实现
知识挖掘
- 知识内容挖掘:实体链接将文本中的实体指称链向其在给定知识库中目标实体的过程。实体链接可以将文本数据转化为有实体标注的形式,建立文本与知识库的联系,可以为进一步文本分析和处理提供基础。
- 实体链接步骤
- 实体指称识别
- 通用命名实体识别技术
- 词典匹配技术:事先构建问题领域的实体,通过直接与文本的匹配识别指称
- 候选实体生成
- 生成实体指称的候选实体有以下三种方法
- 表层名字扩展:从实体提及出现的相关文档中识别其他可能的扩展变体。然后,可以利用这些扩展形式形成实体提及的候选实体集合。表层名字扩展可以采用启发式的模式匹配方法实现,也有一些方法通过有监督学习的技术从文本中抽取复杂的实体名称缩写
- 表层名字扩展:从实体提及出现的相关文档中识别其他可能的扩展变体。然后,可以利用这些基于搜索引擎的方法:将实体提及和上下文文字提交至搜索引擎,可以根据搜索引擎返回的检索结果生成候选实体。
- 构建查询实体引用表:很多实体链接系统都基于维基百科数据构建查询实体引用表,建立实体提及与候选实体的对应关系。
- 生成实体指称的候选实体有以下三种方法
- 候选实体消歧
- 基于图的方法:基于参照图协同实体链接方法
- 基于概率生成模型的方法:基于概率生成模型对实体提及和实体的联合概率进行建模,可以通过模型的推理求解实体消歧问题。
- 基于主题模型的方法:在同一个文本中出现的实体应该与文本表述的主题相关。
- 基于深度学习的方法:在候选实体消歧过程中,准确计算实体的相关度十分重要。
- 实体指称识别
- 实体链接步骤
- 知识结构挖掘:规则挖掘
- 归纳逻辑程序设计:以一节逻辑为表达语言的符号规则学习算法
- 路径排序算法:是一种将关系路径作为特征的知识图谱链接预测算法,因为其获取的关系路径实际上对应一种霍恩子句,PRA计算的路径特征可以转换为逻辑规则,便于人们发现和理解知识图谱中隐藏的知识。
- 具体工作流程
- 特征选择:基于随机游走计算该路径的准确度和覆盖度
- 特征计算:计算实体对应的特征的值
- 关系分类:使用有监督算法,为每个目标训练一个分类模型
- 具体工作流程
技术发展趋势
- 资源缺乏下的知识抽取
- 目前,大多数知识抽取的研究主要采用的是有监督的方法,需要大量 的标注训练集去训练模型参数,然而构建标注数据集的成本比较大,且在 更换语料类型后,算法的性能往往不尽如人意,即算法的性能严重依赖大 规模的训练数据。因此,如何构建资源缺乏下的知识抽取系统成为研究的热点。
- 面向开放域的知识抽取
- 具体包括:
- (1)数据规模 上的可扩展性,能够高效完成海量数据的抽取任务;
- (2)数据主题上的 鲁棒性,能够在面对不同主题的数据时具有鲁棒性。
- 具体包括:
- 跨语言的知识抽取
- (1)自然语言表达的多样性,不同的语种在表示方式上均具有多样性, 需要将实体关系知识映射到三元组上;
- (2)不同语种在知识表达方式上 的差异性,通过比较不同语种对同一知识的表述,可以达到删除或更新错 误知识的目的。
- 跨媒体的知识抽取
- (1)视觉实体和关系的抽取:相对于文本中的实体和关系相对确定 性,视觉实体和关系呈现出尺度、表型、空间关系等多样性,需要通过鲁 棒语义模型的构建实现视觉实体和关系的抽取,从而将视觉局部区域映射 到三元组上;
- (2)视觉事件的自然语言描述:针对图像/视频,基于人工 智能理论自动生成一段语法和逻辑合理的视觉内容自然语言描述,从而实 现语义丰富的视觉信息到抽象的语义事件描述的映射;
- (3)跨媒体信息 融合:跨媒体信息在知识载体上存在差异,通过多模态信息在相同粒度和 语义上的对齐,进一步实现特征和语义层面的融合,可以综合利用多模态 信息,来辅助后续知识表示、建模、计算等关键技术,并形成面向跨媒体 知识图谱构建的创新理论体系和关键技术。