TensorFlow RNN用于命名实体识别

时间:2017-02-18 18:19:31

标签: tensorflow word2vec named-entity-recognition syntaxnet

我正在尝试找出适合开放命名实体识别问题的最佳模型(生物学/化学,因此不存在实体字典,但必须通过上下文来识别)。

目前我最好的猜测是修改语法,以便不是将单词标记为N,V,ADJ等,而是学习标记为BEGINNING,INSIDE,OUT(IOB表示法)。

但是我不确定哪种方法最好?

  • Syntaxnet
  • word2vec
  • seq2seq(我认为这不是正确的,因为我需要它来学习两个对齐的序列,而seq2seq是为翻译时不同长度的序列而设计的)

非常感谢指向正确方法的指针!谢谢!

1 个答案:

答案 0 :(得分:8)

语法可用于命名实体识别,例如,见:Named Entity Recognition with Syntaxnet

word2vec对于命名实体识别并不是非常有效。我不认为seq2seq通常用于该任务。

正如drpng提到的,你可能想看看tensorflow/tree/master/tensorflow/contrib/crf。在CRF层之前添加LSTM会有所帮助,这会产生something like

enter image description here

TensorFlow中的LSTM + CRF代码:https://github.com/Franck-Dernoncourt/NeuroNER