File size: 3,188 Bytes
36dfc66 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
---
license: apache-2.0
base_model:
- microsoft/deberta-v3-large
library_name: transformers
tags:
- relation extraction
- nlp
model-index:
- name: iter-conll04-deberta-large
results:
- task:
type: relation-extraction
dataset:
name: conll04
type: conll04
metrics:
- name: F1
type: f1
value: 77.461
---
# ITER: Iterative Transformer-based Entity Recognition and Relation Extraction
This model checkpoint is part of the collection of models published alongside our paper ITER,
[accepted at EMNLP 2024](https://aclanthology.org/2024.findings-emnlp.655/).<br>
To ease reproducibility and enable open research, our source code has been published on [GitHub](https://github.com/fleonce/iter).
This model achieved an F1 score of `77.461` on dataset `conll04`
### Using ITER in your code
First, install ITER in your preferred environment:
```text
pip install git+https://github.com/fleonce/iter
```
To use our model, refer to the following code:
```python
from iter import ITERForRelationExtraction
model = ITERForRelationExtraction.from_pretrained("fleonce/iter-conll04-deberta-large")
tokenizer = model.tokenizer
encodings = tokenizer(
"An art exhibit at the Hakawati Theatre in Arab east Jerusalem was a series of portraits of Palestinians killed in the rebellion .",
return_tensors="pt"
)
generation_output = model.generate(
encodings["input_ids"],
attention_mask=encodings["attention_mask"],
)
# entities
print(generation_output.entities)
# relations between entities
print(generation_output.links)
```
### Checkpoints
We publish checkpoints for the models performing best on the following datasets:
- **ACE05**:
1. [fleonce/iter-ace05-deberta-large](https://huggingface.co/fleonce/iter-ace05-deberta-large)
- **CoNLL04**:
1. [fleonce/iter-conll04-deberta-large](https://huggingface.co/fleonce/iter-conll04-deberta-large)
- **ADE**:
1. [fleonce/iter-ade-deberta-large](https://huggingface.co/fleonce/iter-ade-deberta-large)
- **SciERC**:
1. [fleonce/iter-scierc-deberta-large](https://huggingface.co/fleonce/iter-scierc-deberta-large)
2. [fleonce/iter-scierc-scideberta-full](https://huggingface.co/fleonce/iter-scierc-scideberta-full)
- **CoNLL03**:
1. [fleonce/iter-conll03-deberta-large](https://huggingface.co/fleonce/iter-conll03-deberta-large)
- **GENIA**:
1. [fleonce/iter-genia-deberta-large](https://huggingface.co/fleonce/iter-genia-deberta-large)
### Reproducibility
For each dataset, we selected the best performing checkpoint out of the 5 training runs we performed during training.
This model was trained with the following hyperparameters:
- Seed: `1`
- Config: `conll04/small_lr`
- PyTorch `2.3.0` with CUDA `11.8` and precision `torch.bfloat16`
- GPU: `1 NVIDIA H100 SXM 80 GB GPU`
Varying GPU and CUDA version as well as training precision did result in slightly different end results in our tests
for reproducibility.
To train this model, refer to the following command:
```shell
python3 train.py --dataset conll04/small_lr --transformer microsoft/deberta-v3-large --use_bfloat16 --seed 1
```
```text
@inproceedings{citation}
```
|