span-marker pytorch tensorboard safetensors token-classification ner named-entity-recognition en dataset:ncbi_disease license:apache-2.0 model-index region:us
---
datasets:
- ncbi_disease
language:
- en
library_name: span-marker
license: apache-2.0
metrics:
- f1
- recall
- precision
pipeline_tag: token-classification
tags:
- span-marker
- token-classification
- ner
- named-entity-recognition
widget:
- text: X-Linked adrenoleukodystrophy (ALD) is a genetic disease associated with demyelination
    of the central nervous system, adrenal insufficiency, and accumulation of very
    long chain fatty acids in tissue and body fluids.
  example_title: Example 1
- text: Canavan disease is inherited as an autosomal recessive trait that is caused
    by the deficiency of aspartoacylase (ASPA).
  example_title: Example 2
- text: However, both models lack other frequent DM symptoms including the fibre-type
    dependent atrophy, myotonia, cataract and male-infertility.
  example_title: Example 3
model-index:
- name: SpanMarker w. bert-base-cased on NCBI Disease by Tom Aarsen
  results:
  - task:
      type: token-classification
      name: Named Entity Recognition
    dataset:
      name: NCBI Disease
      type: ncbi_disease
      split: test
      revision: acd0e6451198d5b615c12356ab6a05fff4610920
    metrics:
    - type: f1
      value: 0.8813
      name: F1
    - type: precision
      value: 0.8661
      name: Precision
    - type: recall
      value: 0.8971
      name: Recall
---

# SpanMarker for Disease Named Entity Recognition

This is a [SpanMarker](https://github.com/tomaarsen/SpanMarkerNER) model trained on the [ncbi_disease](https://huggingface.co/datasets/ncbi_disease) dataset. In particular, this SpanMarker model uses [bert-base-cased](https://huggingface.co/bert-base-cased) as the underlying encoder. See [train.py](train.py) for the training script.

## Metrics

This model achieves the following results on the testing set:
- Overall Precision: 0.8661
- Overall Recall: 0.8971
- Overall F1: 0.8813
- Overall Accuracy: 0.9837

## Labels

| **Label** | **Examples** |
|-----------|--------------|
| DISEASE   | "ataxia-telangiectasia", "T-cell leukaemia", "C5D", "neutrophilic leukocytosis", "pyogenic infection" | 

## Usage

To use this model for inference, first install the `span_marker` library:

```bash
pip install span_marker
```

You can then run inference with this model like so:

```python
from span_marker import SpanMarkerModel

# Download from the 🤗 Hub
model = SpanMarkerModel.from_pretrained("tomaarsen/span-marker-bert-base-ncbi-disease")
# Run inference
entities = model.predict("Canavan disease is inherited as an autosomal recessive trait that is caused by the deficiency of aspartoacylase (ASPA).")
```

See the [SpanMarker](https://github.com/tomaarsen/SpanMarkerNER) repository for documentation and additional information on this library.

## Training procedure

### Training hyperparameters

The following hyperparameters were used during training:
- learning_rate: 5e-05
- train_batch_size: 32
- eval_batch_size: 32
- seed: 42
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: linear
- lr_scheduler_warmup_ratio: 0.1
- num_epochs: 3

### Training results

| Training Loss | Epoch | Step | Validation Loss | Overall Precision | Overall Recall | Overall F1 | Overall Accuracy |
|:-------------:|:-----:|:----:|:---------------:|:-----------------:|:--------------:|:----------:|:----------------:|
| 0.0038        | 1.41  | 300  | 0.0059          | 0.8141            | 0.8579         | 0.8354     | 0.9818           |
| 0.0018        | 2.82  | 600  | 0.0054          | 0.8315            | 0.8720         | 0.8513     | 0.9840           |


### Framework versions

- SpanMarker 1.2.4
- Transformers 4.31.0
- Pytorch 1.13.1+cu117
- Datasets 2.14.3
- Tokenizers 0.13.2
