BrambleXu / knowledge-graph-learning

A curated list of awesome knowledge graph tutorials, projects and communities.
MIT License
735 stars 120 forks source link

EMNLP-2018-Learning Named Entity Tagger using Domain-Specific Dictionary #275

Open BrambleXu opened 4 years ago

BrambleXu commented 4 years ago

Summary:

使用DL based的NER需要有大量标注数据,但人工标注很贵,所以使用distant supervision,但是这种方法产生了很多noise。这个工作提出了两个模型,针对一个典型的sequence labeling 任务,提出了一个fuzzy CRF layer来hadle token with multiple possible labels。另外提出一个了Tie or Break标注框架的AutoNER模型。只是用字典即可使用。

Resource:

Paper information:

Notes:

NER下的子门类:distantly supervised NER models

针对 DS NER,都是一些heuristic matching rule的方法,比如POS tag-based RE,exact string matching。这些方法可能会导致false-negative label的产生。(recall会很小)。

Therefore, we propose to extract high-quality outof-dictionary phrases from the corpus, and mark them as potential entities with a special “unknown” type. Moreover, every entity span in a sentence can be tagged with multiple types, since two entities of different types may share the same surface name in the dictionary (1 如果在字典里没有找到,那么就提取出一些高质量的phrases然后标记为unknown。2 同一个entity可以别标记为多个entity type,因为不同的entity type可能含有同样的surface name)。(针对第2点,如果只是用于辨别公司名的话,感觉用不到。多个公司拥有一样的名字,这个倒是要用到entity link的技术)

针对1,现在的IOB标注方法无法做到同一个entity有多个type,所以提出了Fuzzy CRF layer,which allows each token to have multiple labels without sacrificing computing efficiency。

为了解决distant supervision的imperfect labels,提出了一个新的prediction model。不去预测each single token,而是去预测两个adjacent tokens are tied in the same entity mention or not( broken). 之所以这么做是因为,尽管entity mention的boundary被DS错误匹配了,但是inner ties是没有受影响的,因此更健壮。所以设计了Tie Or Break taggin scheme来更好的利用noisy distant supervision。即,设计一个神经网络结构AutoNER,首先根据ties找到所有可能的entity spans,然后对于每一个span,确定其entity type。实现结果显示AutoNER的效果比fuzzy CRF更好。

Model Graph:

Fuzzy-LSTM-CRF的部分不需要看了,主要是针对一个token可能属于多个entity的情况。

image

“Tie or Break” Tagging Scheme。这个所谓的tie or break其实就是把所有的entity type变成了三个标签,tie表示确信,unkown表示高质量的phrase,而brreak表示完全没有关系。这个和另一篇把NER变成positive和negive的论文的思想是一样的。就是简化整个标记的框架,不然如果使用IBO的话,需要预测的空间实在是太大了。比如只有2个label的时候,就需要2x4+1,{I, B, E, S}x2,再加一个O。

这篇文论是基于word level的,我们把这个tie or break扩展到char level。应用于中文或日语。

AutoNER

the entity span detection and entity type prediction into two steps(辨别span和预测type分成了两步)。

3.3 Remarks on “Unknown” Entities

在AutoNER里,因为“unknown” positions have undefined boundary and type losses, 所以 跳过了“unknown” positions。

4.1 Corpus-Aware Dictionary Tailoring

删除了corpus里没有出现过一次canonical name的内容。

4.2 Unknown-Typed High-Quality Phrases

使用同一个domain的数据效果更好。In practice, one can find more unlabeled texts from the same domain (e.g., PubMed papers and Amazon laptop reviews) and use the same domain-specific dictionary for the NER task.

使用了一个叫做AutoPhrase (Shang et al., 2018), with the corpus and dictionary in the given domain as input。

We treat out-of-dictionary phrases as potential entities with “unknown” type and incorporate them as new dictionary entries.

5.1 Experimental Settings

Pre-trained Word Embeddings. 根据不同的corpus,选择了不同的word embedding。

Result:

image

Dictionary Match的recall是最低的。

Thoughts:

Next Reading:

Unsupervised aspect term extraction with b-lstm & crf using automatically labelled datasets.: Distant-LSTM-CRF (Giannakopoulos et al., 2017) has been proposed for the distantly supervised aspect term extraction, which can be viewed as an entity recognition task of a single type for business reviews.

276 Automated phrase mining from massive text corpora: AutoPhrase has demonstrated powers in extracting high-quality phrases from domain-specific corpora like scientific papers and business reviews (Shang et al., 2018) but it cannot categorize phrases into typed entities in a context-aware manner. We incorporate high-quality phrases to enrich the domain-specific dictionary

failable commented 4 years ago

之所以这么做是因为,尽管entity mention的boundary被DS错误匹配了,但是inner ties是没有受影响的,因此更健壮。

这个可以举一个例子吗。。

另外,还说到unigram更可能是FP,而这种标注方法对这个问题更健壮,似乎我也需要一个例子。。😂

failable commented 4 years ago

还有一个疑问就是关于高质量phrases,它们是否能为需要识别的实体的类型?(虽然它们没有标签而被标为unknown)如果可以,那它们在AutoNER的第二步不是会被识别为Entity Type: None?这样对识别出该种实体没有影响吗?比如Figure 1里的例子应用AutoNER的话,prostaglandin synthesis这个实体能被AutoNER识别出类型吗?还是AutoNER本来就没有打算识别它。。(因为它是unknown,所以会被识别为Entity Type: None`)