Define labels and scope
Decide the entity types, tokenisation rules and whether nested or overlapping entities will be annotated.
Detect named entities. Assess token-level predictions.
Named entity recognition (NER) labels tokens in text with entity types such as PERSON, LOCATION and ORGANISATION. Typical errors include boundary mistakes, nested entities, domain-specific names and annotation inconsistencies; these affect downstream information extraction and search.
Learning concept · Not a validated service
Named entity recognition (NER) labels tokens in text with entity types such as PERSON, LOCATION and ORGANISATION. Typical errors include boundary mistakes, nested entities, domain-specific names and annotation inconsistencies; these affect downstream information extraction and search.
A proposed extension: extract people, organisations and locations from customer emails to route queries automatically. This extension requires sequence-labelled corpora and human review before deployment and is not provided by the starter code.
Decide the entity types, tokenisation rules and whether nested or overlapping entities will be annotated.
Collect or annotate sentence-level data with token-level BIO or IOB2 labels and split by document to avoid leakage.
Fit a sequence labelling model such as BiLSTM-CRF or a fine-tuned Transformer that predicts token labels and entity spans.
Report token-level F1 and span-level F1, and inspect boundary, class-confusion and unseen-entity errors.
The supplied starter creates a synthetic tabular classification dataset via sklearn.make_classification, trains a RandomForest pipeline with scaling, and prints a scikit-learn classification report on held-out numeric samples. It contains no tokenisation, sequence labels, or sequence model components for NER.
model = Pipeline(
steps=[
("scale", StandardScaler()),
("classifier", RandomForestClassifier(n_estimators=250, random_state=RANDOM_STATE)),
]
)
model.fit(X_train, y_train)
predictions = model.predict(X_test)The code uses synthetic numeric features from make_classification and trains a tabular RandomForest. It contains no text input, no token-level BIO/IOB labels, and no sequence labelling model (e.g. CRF, BiLSTM or Transformer) required for NER.
Proposed extension: fine-tune a Transformer on a small annotated email dataset to tag PERSON, ORG and LOC entities and route messages to the correct team; provide a human-review queue for low-confidence predictions.
This is a potential application pathway, not a delivered product. The supplied starter does not implement this service or validate it with real users.
Networkers Home runs this topic inside its AI Engineer Course, with placement support and hands-on labs.