# guillaumegenthial/sequence_tagging

Named Entity Recognition (LSTM + CRF) - Tensorflow

Repository: https://github.com/guillaumegenthial/sequence_tagging
Canonical: https://ross.abutalabs.com/products/sequence_tagging
Homepage: https://guillaumegenthial.github.io/sequence-tagging-with-tensorflow.html
Language: Python
License: Apache-2.0
License Family: permissive
Topics: named-entity-recognition, crf, tensorflow, bi-lstm, characters-embeddings, glove, ner, conditional-random-fields, state-of-art
Last push: 2020-10-16T09:18:22+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 3444, "days_push": 2147, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1952, forks 696 (observed 2026-08-28T04:05:58.352971+00:00)

## What it is
A TensorFlow implementation of a Bi-LSTM + CRF model with character embeddings for named entity recognition and sequence tagging. It trains on CoNLL-format data and achieves near state-of-the-art F1 scores (~90-91).

## Use cases
- train a named entity recognition model on CoNLL-2003 data
- tag each word in a sentence with entity labels like PER, LOC, ORG
- learn how to implement LSTM-CRF sequence tagging in TensorFlow
- use GloVe word vectors plus character embeddings for NER
- run a sequence labeling model on custom IOB-formatted datasets
- reproduce results from Lample et al. and Ma and Hovy NER papers

## When to choose
- you need a clear, educational reference implementation of Bi-LSTM + CRF NER in TensorFlow 1.x
- you want to train a sequence tagger on CoNLL-format data with pretrained GloVe embeddings
- you are studying classic deep learning approaches to NER before transformer-based models

## When to avoid
- you need a maintained, production-ready NER system - the repo points to a newer implementation (tf_ner) and sees little activity
- you want to use TensorFlow 2.x or modern tooling like tf.data and tf.estimator out of the box
- you need transformer-based NER with pretrained language models such as BERT

## Facets
- artifact type: library
- maturity: maintenance
- function: machine-learning, nlp
- domain: machine-learning, deep-learning
- platform: python
- tags: named-entity-recognition, ner, sequence-labeling, crf, bi-lstm, tensorflow, word-embeddings, glove, character-embeddings, natural-language-processing

## Member repositories
- guillaumegenthial/sequence_tagging (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:58.352971+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:06:35.643673+00:00, confidence not recorded.
  - readme: https://github.com/guillaumegenthial/sequence_tagging (fetched 2026-08-28T04:05:58.352971+00:00, sha a2ee8014b1fe)
  - homepage: https://guillaumegenthial.github.io/sequence-tagging-with-tensorflow.html (fetched 2026-08-29T10:46:29.653755+00:00, sha 561dc4d3c9f4)
- Data as of 2026-08-30T08:39:29.467469+00:00.
