一文入门自然语言处理之属性抽取
概述
属性抽取是构建知识图谱的重要一环,其目的是从非结构化文本中抽取出实体的属性以及属性值。目前,属性抽取的应用非常广泛,既可以面向各垂直领域,如电商领域、影视领域、医疗领域等,通过抽取领域内相关实体的属性及属性值,来补全或构建领域知识图谱;也可以将抽取出的属性值作为关键字,辅助搜索任务。
1 属性抽取任务
属性抽取任务的定义是给定一个实体以及该实体的描述文本,从文本中抽取出与该实体相关的属性及其属性值。该任务的难点在于如何进行大规模属性抽取以及从非结构化文本中发现新的属性及属性值。
由于该领域暂时没有公开的权威数据集,且人工标注数据耗时耗力,研究人员通常采用远程监督的方式标注数据,即利用三元组词典标注出文本中的属性及属性值,将标注文本用于模型训练。远程监督标注的优点是成本低、速度快,缺点是容易漏标、错标数据引入噪声。
下面的例子展示了属性抽取任务所需的数据文件格式,以及远程监督得到的标注数据样例。
例:
数据准备:实体、描述文本、三元组词典
实体:卫衣
描述文本:休闲黑色卫衣真好看
三元组词典:
<卫衣,风格,休闲>,<卫衣,风格,复古>
<卫衣,颜色,黑色>,<卫衣,材质,针织>
…
基于三元组的远程监督标注结果:
属性抽取的主要流程如下:
- 给定实体的描述文本以及实体的三元组词典
- 基于三元组词典对描述文本进行远程监督标注,标注方式分为BIO/BMES/BIOES三种
- 使用标注数据训练神经网路模型
- 利用训练好的模型从文本中抽取相关的实体的属性及其属性值
2 相关方法
2.1 基于规则的方法
基于规则的方法主要以词表匹配为主。当属性值词表覆盖度较高时,可以基于词表匹配的方式从文本中抽取属性值。词表匹配能快速抽取文本中实体的属性及属性值,但是词表的构建与扩充依赖专家知识,构建高质量词表耗时耗力,且只能抽取出词表内包含的属性值,无法从文本中发现新属性值。
2.2 基于深度学习的方法
属性抽取可以被抽象为序列标注问题,因此可以使用命名实体识别的相关模型,如Bi-LSTM-softmax、Bi-LSTM-CRF、BERT-CRF等。近年来,问答相关的模型也被应用于该领域,如基于片段式抽取的机器阅读理解模型。
基于问答模型的输入端是问答对的形式<qeuery,content>。query是属性类型的相关解释性信息,也可以是同义词、近义词或属性类型本身,content是带标注的描述文本。在编码时,既可以共享一个编码器,亦可分开独立编码,该方式能帮助模型更好的区分、抽取不同类型的属性值。
3 属性抽取VS命名实体识别
对比 | 属性抽取 | 命名实体识别 |
---|---|---|
标注方式 | 远程监督/人工标注 | 远程监督/人工标注 |
标注词表 | 三元组词表<实体,属性,属性值> | 人物词表、机构词表 … |
抽取目标 | 描述文本中某一类/一个实体属性及属性值 | 文本中的实体及实体类型 |
主流模型 | 序列标注、QA相关模型 | 序列标注、QA相关模型 |
是否与三元组相关 | 是 | 否 |
- 点赞
- 收藏
- 关注作者
评论(0)