transformers pytorch roberta token-classification dataset:tner/bc5cdr model-index autotrain_compatible endpoints_compatible region:us
---
datasets:
- tner/bc5cdr
metrics:
- f1
- precision
- recall
pipeline_tag: token-classification
widget:
- text: Jacob Collier is a Grammy awarded artist from England.
  example_title: NER Example 1
model-index:
- name: tner/roberta-large-bc5cdr
  results:
  - task:
      type: token-classification
      name: Token Classification
    dataset:
      name: tner/bc5cdr
      type: tner/bc5cdr
      args: tner/bc5cdr
    metrics:
    - type: f1
      value: 0.8840696387239609
      name: F1
    - type: precision
      value: 0.8728266269249876
      name: Precision
    - type: recall
      value: 0.8956060760526048
      name: Recall
    - type: f1_macro
      value: 0.8797360472482783
      name: F1 (macro)
    - type: precision_macro
      value: 0.8684274142690976
      name: Precision (macro)
    - type: recall_macro
      value: 0.8913672531528037
      name: Recall (macro)
    - type: f1_entity_span
      value: 0.886283586595552
      name: F1 (entity span)
    - type: precision_entity_span
      value: 0.8750124192747144
      name: Precision (entity span)
    - type: recall_entity_span
      value: 0.8978489142624121
      name: Recall (entity span)
---
# tner/roberta-large-bc5cdr

This model is a fine-tuned version of [roberta-large](https://huggingface.co/roberta-large) on the 
[tner/bc5cdr](https://huggingface.co/datasets/tner/bc5cdr) dataset.
Model fine-tuning is done via [T-NER](https://github.com/asahi417/tner)'s hyper-parameter search (see the repository
for more detail). It achieves the following results on the test set:
- F1 (micro): 0.8840696387239609
- Precision (micro): 0.8728266269249876
- Recall (micro): 0.8956060760526048
- F1 (macro): 0.8797360472482783
- Precision (macro): 0.8684274142690976
- Recall (macro): 0.8913672531528037

The per-entity breakdown of the F1 score on the test set are below:
- chemical: 0.9256943167187788
- disease: 0.8337777777777777 

For F1 scores, the confidence interval is obtained by bootstrap as below:
- F1 (micro): 
    - 90%: [0.878869501707946, 0.8890795634554179]
    - 95%: [0.8776790106527211, 0.8897422640465147] 
- F1 (macro): 
    - 90%: [0.878869501707946, 0.8890795634554179]
    - 95%: [0.8776790106527211, 0.8897422640465147] 

Full evaluation can be found at [metric file of NER](https://huggingface.co/tner/roberta-large-bc5cdr/raw/main/eval/metric.json) 
and [metric file of entity span](https://huggingface.co/tner/roberta-large-bc5cdr/raw/main/eval/metric_span.json).

### Usage
This model can be used through the [tner library](https://github.com/asahi417/tner). Install the library via pip   
```shell
pip install tner
```
and activate model as below.
```python
from tner import TransformersNER
model = TransformersNER("tner/roberta-large-bc5cdr")
model.predict(["Jacob Collier is a Grammy awarded English artist from London"])
```
It can be used via transformers library but it is not recommended as CRF layer is not supported at the moment.

### Training hyperparameters

The following hyperparameters were used during training:
 - dataset: ['tner/bc5cdr']
 - dataset_split: train
 - dataset_name: None
 - local_dataset: None
 - model: roberta-large
 - crf: True
 - max_length: 128
 - epoch: 15
 - batch_size: 64
 - lr: 1e-05
 - random_seed: 42
 - gradient_accumulation_steps: 1
 - weight_decay: None
 - lr_warmup_step_ratio: 0.1
 - max_grad_norm: 10.0

The full configuration can be found at [fine-tuning parameter file](https://huggingface.co/tner/roberta-large-bc5cdr/raw/main/trainer_config.json).

### Reference
If you use any resource from T-NER, please consider to cite our [paper](https://aclanthology.org/2021.eacl-demos.7/).

```

@inproceedings{ushio-camacho-collados-2021-ner,
    title = "{T}-{NER}: An All-Round Python Library for Transformer-based Named Entity Recognition",
    author = "Ushio, Asahi  and
      Camacho-Collados, Jose",
    booktitle = "Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics: System Demonstrations",
    month = apr,
    year = "2021",
    address = "Online",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2021.eacl-demos.7",
    doi = "10.18653/v1/2021.eacl-demos.7",
    pages = "53--62",
    abstract = "Language model (LM) pretraining has led to consistent improvements in many NLP downstream tasks, including named entity recognition (NER). In this paper, we present T-NER (Transformer-based Named Entity Recognition), a Python library for NER LM finetuning. In addition to its practical utility, T-NER facilitates the study and investigation of the cross-domain and cross-lingual generalization ability of LMs finetuned on NER. Our library also provides a web app where users can get model predictions interactively for arbitrary text, which facilitates qualitative model evaluation for non-expert programmers. We show the potential of the library by compiling nine public NER datasets into a unified format and evaluating the cross-domain and cross- lingual performance across the datasets. The results from our initial experiments show that in-domain performance is generally competitive across datasets. However, cross-domain generalization is challenging even with a large pretrained LM, which has nevertheless capacity to learn domain-specific features if fine- tuned on a combined dataset. To facilitate future research, we also release all our LM checkpoints via the Hugging Face model hub.",
}

```
