--- library_name: span-marker tags: - span-marker - token-classification - ner - named-entity-recognition - generated_from_span_marker_trainer datasets: - conll2003 metrics: - precision - recall - f1 widget: - text: New Zealand Prime Minister Jim Bolger, emerging from coalition talks with the nationalist New Zealand First party on Friday afternoon, said National and NZ First would meet again on Sunday. - text: A police spokesman said two youths believed to be supporters of President Nelson Mandela's African National Congress (ANC) had been killed when unknown gunmen opened fire at the rural settlement of Izingolweni on KwaZulu-Natal province's south coast on Thursday night. - text: Japan's Economic Planning Agency has not changed its view that the economy is gradually recovering, despite relatively weak gross domestic product figures released on Tuesday, EPA Vice Minister Shimpei Nukaya told reporters on Friday. - text: Cuttitta, who trainer George Coste said was certain to play on Saturday week, was named in a 21-man squad lacking only two of the team beaten 54-21 by England at Twickenham last month. - text: Dong Jiong (China) beat Thomas Stuer-Lauridsen (Denmark) 15-10 15-6 pipeline_tag: token-classification model-index: - name: SpanMarker results: - task: type: token-classification name: Named Entity Recognition dataset: name: Unknown type: conll2003 split: test metrics: - type: f1 value: 0.9209646189051223 name: F1 - type: precision value: 0.9156457822891144 name: Precision - type: recall value: 0.9263456090651558 name: Recall --- # SpanMarker This is a [SpanMarker](https://github.com/tomaarsen/SpanMarkerNER) model trained on the [conll2003](https://huggingface.co/datasets/conll2003) dataset that can be used for Named Entity Recognition. ## Model Details ### Model Description - **Model Type:** SpanMarker - **Maximum Sequence Length:** 256 tokens - **Maximum Entity Length:** 8 words - **Training Dataset:** [conll2003](https://huggingface.co/datasets/conll2003) ### Model Sources - **Repository:** [SpanMarker on GitHub](https://github.com/tomaarsen/SpanMarkerNER) - **Thesis:** [SpanMarker For Named Entity Recognition](https://raw.githubusercontent.com/tomaarsen/SpanMarkerNER/main/thesis.pdf) ### Model Labels | Label | Examples | |:------|:--------------------------------------------------------------| | LOC | "BRUSSELS", "Britain", "Germany" | | MISC | "British", "EU-wide", "German" | | ORG | "European Union", "EU", "European Commission" | | PER | "Nikolaus van der Pas", "Peter Blackburn", "Werner Zwingmann" | ## Evaluation ### Metrics | Label | Precision | Recall | F1 | |:--------|:----------|:-------|:-------| | **all** | 0.9156 | 0.9263 | 0.9210 | | LOC | 0.9327 | 0.9394 | 0.9361 | | MISC | 0.7973 | 0.8462 | 0.8210 | | ORG | 0.8987 | 0.9133 | 0.9059 | | PER | 0.9706 | 0.9610 | 0.9658 | ## Uses ### Direct Use for Inference ```python from span_marker import SpanMarkerModel # Download from the 🤗 Hub model = SpanMarkerModel.from_pretrained("supreethrao/instructNER_conll03_xl") # Run inference entities = model.predict("Dong Jiong (China) beat Thomas Stuer-Lauridsen (Denmark) 15-10 15-6") ``` ### Downstream Use You can finetune this model on your own dataset.
Click to expand ```python from span_marker import SpanMarkerModel, Trainer # Download from the 🤗 Hub model = SpanMarkerModel.from_pretrained("supreethrao/instructNER_conll03_xl") # 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("supreethrao/instructNER_conll03_xl-finetuned") ```
## Training Details ### Training Set Metrics | Training set | Min | Median | Max | |:----------------------|:----|:--------|:----| | Sentence length | 1 | 14.5019 | 113 | | Entities per sentence | 0 | 1.6736 | 20 | ### Training Hyperparameters - learning_rate: 5e-05 - train_batch_size: 16 - eval_batch_size: 16 - seed: 42 - distributed_type: multi-GPU - num_devices: 2 - total_train_batch_size: 32 - total_eval_batch_size: 32 - 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 - mixed_precision_training: Native AMP ### Framework Versions - Python: 3.10.13 - SpanMarker: 1.5.0 - Transformers: 4.35.2 - PyTorch: 2.1.1 - Datasets: 2.15.0 - Tokenizers: 0.15.0 ## Citation ### BibTeX ``` @software{Aarsen_SpanMarker, author = {Aarsen, Tom}, license = {Apache-2.0}, title = {{SpanMarker for Named Entity Recognition}}, url = {https://github.com/tomaarsen/SpanMarkerNER} } ```