- 问题:早前对NER的大多数研究都集中在一组预定义的NER类型上,比如人名、地名、组织名、日期等等,提供了一定数量的标记数据来训练模型。然而,不同的应用场景需要特定的实体类型,如电子商务领域的“Brand”和“Product”,金融行业的“Company”。考虑到人工标注的高成本,为每种新的NER类型标注大量数据是不可行的,但有时可以使用小规模数据。
- 方法:远程监控可以为新型NER自动生成大规模的标记数据,无需人工标注。
我们首先获得一个包含新型实体列表的字典,然后,我们假设句子中提到的每个实体都是字典中对应类型的正实例,从而自动生成大规模的标记数据。然而,这种自动生成的数据存在两个主要问题:
- Incomplete annotations
- noisy annotations
- Distantly Supervised NER Data:首先,我们有一个小的标注数据集H,一个大的无标注数据集U。我们收集命名实体来构造字典D,并使用D中的实体匹配U中句子的字符串。然后我们会获得一个句子集合,每个句子中至少包含一个匹配到的实体,记为A。最后可以利用H+A作为NER模型的训练数据。
- The Baseline LSTM-CRF
- The input layer: 使用预训练的Word2vec词向量
- The BiLSTM layer.
- The MLP layer.
4. The CRF layer
Incomplete annotations
将这些不能根据字典进行匹配字符视为非实体是不合适的。
我们为每一个远距离监督的句子表示一组标签序列z,其概率自然是z中每个可能的标签序列y的概率之和。将softmax应用于所有候选输出标签序列,从而计算出一个远程监督实例的概率如下:
- noisy annotations:
我们将初始的手工标记的数据集H和远程监督的数据集A合并到一个候选数据集C中。我们从C中收集一个随机大小的实例包为B。对于当前包中的每个远程监控实例,agent从集合{1.0}中执行一个action来决定是否选择该实例。当所有actions完成时,agent将收到reward。reward表示此包上的actions反馈,将用于更新agent。agent的目标是决定actions能够使报酬最大化。
2. State representation:
状态 st 表示当前实例及其标签序列。我们将状态表示为一个向量 st,它由以下信息组成:(1)当前实例的序列化向量表示,从baseline模型的BiLSTM层得到。(2)从共享编码器MLP层计算出标签得分。
3. Policy network.
agent决定一个action at ∈ {0,1} 表明是否会选择这个实例。
4.Reward
Reward用于评估当前的NE tagger预测每个字符标签的能力。当模型完成当前包中的所有选择时,将获得延迟的平均reward,在此之前,每个action的reward为 0。
和《Reinforcement learning for relation classification from noisy data》不同的是,我们的selector可以在这些先验知识的指导下进行训练,以确定哪些句子被正确标记。因此,reward将变得可靠和定向,并且它可以指导select以最大化训练数据集中所有实例的可能性。
Datasetes:
- EC: 在电子商务领域(EC),有五种类型的实体: Brand, Product, Model, Material, and Specification。该数据包含2400个标注的句子,使用1200个句子作为训练集,400个句子作为验证集,800个句子作为测试集。从训练数据中收集一个实体列表来构造字典。为了减少歧义的影响,我们删除了属于多个类型的实体,或者它是一个数字或单个字符。最后这个字典有927个实体。我们在原始数据集上执行远程监督最终获得2500个句子。
- NEWS: 对于新闻领域,我们使用来自MSRA的NER数据。只在PERSON这个类型下评测系统。我们随机选取了3000个句子作为训练数据集,3328个句子作为开发数据集,3186个句子作为测试数据集。其余的数据集用作原始数据,有36,602个句子。我们对原始数据进行远程监督,得到3722个句子。
Experimental:
我们从人工标注的数据H中随机抽取25%和50%的句子作为训练数据,并在此基础上分别构建新的实体字典。通过实验结果表明,使用较小的人工注释数据,我们提出的方法可以提供相对较大的改进。