<p>Syntaxnet can be used to for named entity recognition, e.g.  see: <a href="https://stackoverflow.com/a/39833949/395857">Named Entity Recognition with Syntaxnet</a></p>

<p>word2vec alone isn't very effective for named entity recognition. I don't think seq2seq is commonly used either for that task.</p>

<p>As drpng mentions, you may want to look at <a href="https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/crf" rel="noreferrer">tensorflow/tree/master/tensorflow/contrib/crf</a>. Adding an LSTM before the CRF layer would help a bit, which gives <a href="https://arxiv.org/pdf/1606.03475.pdf" rel="noreferrer">something like</a>:</p>

<p><a href="https://i.stack.imgur.com/RIV1j.png" rel="noreferrer"><img src="https://i.stack.imgur.com/RIV1j.png" alt="enter image description here"></a></p>

<p>LSTM+CRF code in TensorFlow: <a href="https://github.com/Franck-Dernoncourt/NeuroNER" rel="noreferrer">https://github.com/Franck-Dernoncourt/NeuroNER</a></p>
TensorFlow RNNs for named entity recognition
<p>I'm trying to work out what's the best model to adapt for an open named entity recognition problem (biology/chemistry, so no dictionary of entities exists but they have to be identified by context).</p>

<p>Currently my best guess is to adapt Syntaxnet so that instead of tagging words as N, V, ADJ etc, it learns to tag as BEGINNING, INSIDE, OUT (IOB notation).</p>

<p>However I am not sure which of these approaches is the best?</p>

<ul>
<li>Syntaxnet</li>
<li>word2vec</li>
<li>seq2seq (I think this is not the right one as I need it to learn on two aligned sequences, whereas seq2seq is designed for sequences of differing lengths as in translation)</li>
</ul>

<p>Would be grateful for a pointer to the right method! thanks!</p>