span-marker token-classification ner named-entity-recognition generated_from_span_marker_trainer

SpanMarker with bert-base-uncased on SourceData

This is a SpanMarker model trained on the SourceData dataset that can be used for Named Entity Recognition. This SpanMarker model uses bert-base-uncased as the underlying encoder.

Model Details

Model Description

Model Sources

Model Labels

Label Examples
CELL_LINE "293T", "WM266.4 451Lu", "501mel"
CELL_TYPE "BMDMs", "protoplasts", "epithelial"
DISEASE "melanoma", "lung metastasis", "breast prostate cancer"
EXP_ASSAY "interactions", "Yeast two-hybrid", "BiFC"
GENEPROD "CPL1", "FREE1 CPL1", "FREE1"
ORGANISM "Arabidopsis", "yeast", "seedlings"
SMALL_MOLECULE "polyacrylamide", "CHX", "SDS polyacrylamide"
SUBCELLULAR "proteasome", "D-bodies", "plasma"
TISSUE "Colon", "roots", "serum"

Evaluation

Metrics

Label Precision Recall F1
all 0.8345 0.8328 0.8336
CELL_LINE 0.9060 0.8866 0.8962
CELL_TYPE 0.7365 0.7746 0.7551
DISEASE 0.6204 0.6531 0.6363
EXP_ASSAY 0.7224 0.7096 0.7160
GENEPROD 0.8944 0.8960 0.8952
ORGANISM 0.8752 0.8902 0.8826
SMALL_MOLECULE 0.8304 0.8223 0.8263
SUBCELLULAR 0.7859 0.7699 0.7778
TISSUE 0.8134 0.8056 0.8094

Uses

Direct Use for Inference

from span_marker import SpanMarkerModel

# Download from the 🤗 Hub
model = SpanMarkerModel.from_pretrained("tomaarsen/span-marker-bert-base-uncased-sourcedata")
# Run inference
entities = model.predict("Comparison of ENCC-derived neurospheres treated with intestinal extract from hypoganglionosis rats, hypoganglionosis treated with Fecal microbiota transplantation (FMT) sham rat. Comparison of neuronal markers. (J) Immunofluorescence stain number of PGP9.5+. Nuclei were stained blue with DAPI; Triangles indicate PGP9.5+.")

Downstream Use

You can finetune this model on your own dataset.

<details><summary>Click to expand</summary>

from span_marker import SpanMarkerModel, Trainer

# Download from the 🤗 Hub
model = SpanMarkerModel.from_pretrained("tomaarsen/span-marker-bert-base-uncased-sourcedata")

# Specify a Dataset with "tokens" and "ner_tag" columns
dataset = load_dataset("conll2003") # For example CoNLL2003

# Initialize a Trainer using the pretrained model & dataset
trainer = Trainer(
    model=model,
    train_dataset=dataset["train"],
    eval_dataset=dataset["validation"],
)
trainer.train()
trainer.save_model("tomaarsen/span-marker-bert-base-uncased-sourcedata-finetuned")

</details>

<!--

Out-of-Scope Use

List how the model may foreseeably be misused and address what users ought not to do with the model. -->

<!--

Bias, Risks and Limitations

What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model. -->

<!--

Recommendations

What are recommendations with respect to the foreseeable issues? For example, filtering explicit content. -->

Training Details

Training Set Metrics

Training set Min Median Max
Sentence length 4 71.0253 2609
Entities per sentence 0 8.3186 162

Training Hyperparameters

Training Results

Epoch Step Validation Loss Validation Precision Validation Recall Validation F1 Validation Accuracy
0.5237 3000 0.0162 0.7972 0.8162 0.8065 0.9520
1.0473 6000 0.0155 0.8188 0.8251 0.8219 0.9560
1.5710 9000 0.0155 0.8213 0.8324 0.8268 0.9563
2.0946 12000 0.0163 0.8315 0.8347 0.8331 0.9581
2.6183 15000 0.0167 0.8303 0.8378 0.8340 0.9582

Framework Versions

Citation

BibTeX

@software{Aarsen_SpanMarker,
    author = {Aarsen, Tom},
    license = {Apache-2.0},
    title = {{SpanMarker for Named Entity Recognition}},
    url = {https://github.com/tomaarsen/SpanMarkerNER}
}

<!--

Glossary

Clearly define terms in order to be accessible across audiences. -->

<!--

Model Card Authors

Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction. -->

<!--

Model Card Contact

Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors. -->