SaveBertAndGpt commited on
Commit
c617ab3
1 Parent(s): f39e63b

Create README.md

Browse files
Files changed (1) hide show
  1. README.md +97 -0
README.md ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language: "en" # Example: en
3
+ license: "cc-by-4.0" # Example: apache-2.0 or any license from https://hf.co/docs/hub/repositories-licenses
4
+ library_name: "transformers" # Optional. Example: keras or any library from https://github.com/huggingface/hub-docs/blob/main/js/src/lib/interfaces/Libraries.ts
5
+ ---
6
+
7
+ # Model description
8
+
9
+ This is the T5-3B model for System 1 as described in our paper Just-DREAM-about-it: Figurative Language Understanding with DREAM-FLUTE, FigLang workshop @ EMNLP 2022 (Arxiv link: TBD)
10
+
11
+ System 1: Using original data
12
+
13
+ Given the <Premise, Hypothesis, Label, Explanation> in the original data, we first trained a sequence-to-sequence model for the figurative language NLI task
14
+ using the following input-output format:
15
+ ```
16
+ Input <Premise> <Hypothesis>
17
+ Output <Label> <Explanation>
18
+ ```
19
+
20
+ # How to use this model?
21
+ We provide a quick example of how you can try out System 1 in our paper with just a few lines of code:
22
+ ```
23
+ >>> from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
24
+ >>> model = AutoModelForSeq2SeqLM.from_pretrained("allenai/System1_FigLang2022")
25
+
26
+ >>> tokenizer = AutoTokenizer.from_pretrained("t5-3b")
27
+ >>> input_string = "Premise: My neighbor actually purchased a dream car of mine and I see it parked in his driveway everyday just taunting me. Hypothesis: My neighbor's new car is exactly my dream car, and I feel so happy every time I see it parked in his driveway. Is there a contradiction or entailment between the premise and hypothesis?"
28
+ >>> input_ids = tokenizer.encode(input_string, return_tensors="pt")
29
+ >>> output = model.generate(input_ids, max_length=200)
30
+ >>> tokenizer.batch_decode(output, skip_special_tokens=True)
31
+ ["Answer : Contradiction. Explanation : Most people would not be happy to see someone else's new car that they cannot afford because it is way out of their budget"]
32
+ ```
33
+
34
+ # More details about DREAM-FLUTE ...
35
+ For more details about DREAM-FLUTE, please refer to our:
36
+ * 📄Paper: (Arxiv link: TBD)
37
+ * 💻GitHub Repo: https://github.com/allenai/dream/
38
+
39
+ This model is part of our DREAM-series of works. This is a line of research where we make use of scene elaboration for building a "mental model" of situation given in text. Check out our GitHub Repo for more!
40
+
41
+ # More details about this model ...
42
+ ## Training and evaluation data
43
+
44
+ We use the FLUTE dataset for the FigLang2022SharedTask (https://huggingface.co/datasets/ColumbiaNLP/FLUTE) for training this model. ∼7500 samples are provided as the training set. We used a 80-20 split to create our own training (6027 samples) and validation (1507 samples) partitions on which we build our models. For details on how we make use of the training data provided in the FigLang2022 shared task, please refer to https://github.com/allenai/dream/blob/main/FigLang2022SharedTask/Process_Data_Train_Dev_split.ipynb.
45
+
46
+ ## Model details
47
+
48
+ This model is a fine-tuned version of [t5-3b](https://huggingface.co/t5-3b).
49
+
50
+ It achieves the following results on the evaluation set:
51
+ - Loss: 0.7602
52
+ - Rouge1: 58.1212
53
+ - Rouge2: 38.1109
54
+ - Rougel: 52.1198
55
+ - Rougelsum: 52.092
56
+ - Gen Len: 40.4851
57
+
58
+ ## Training procedure
59
+
60
+ ### Training hyperparameters
61
+
62
+ The following hyperparameters were used during training:
63
+ - learning_rate: 5e-05
64
+ - train_batch_size: 1
65
+ - eval_batch_size: 1
66
+ - seed: 42
67
+ - distributed_type: multi-GPU
68
+ - num_devices: 2
69
+ - total_train_batch_size: 2
70
+ - total_eval_batch_size: 2
71
+ - optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
72
+ - lr_scheduler_type: linear
73
+ - num_epochs: 3.0
74
+
75
+ ### Training results
76
+
77
+ | Training Loss | Epoch | Step | Validation Loss | Rouge1 | Rouge2 | Rougel | Rougelsum | Gen Len |
78
+ |:-------------:|:-----:|:----:|:---------------:|:-------:|:-------:|:-------:|:---------:|:-------:|
79
+ | 1.0017 | 0.33 | 1000 | 0.8958 | 40.072 | 27.6729 | 38.429 | 38.4023 | 19.0 |
80
+ | 0.9054 | 0.66 | 2000 | 0.8336 | 41.4505 | 29.2616 | 39.5164 | 39.4976 | 19.0 |
81
+ | 0.8777 | 1.0 | 3000 | 0.7863 | 41.4221 | 29.6675 | 39.6719 | 39.6627 | 19.0 |
82
+ | 0.5608 | 1.33 | 4000 | 0.8007 | 41.1495 | 29.9008 | 39.5706 | 39.5554 | 19.0 |
83
+ | 0.5594 | 1.66 | 5000 | 0.7785 | 41.3834 | 30.2818 | 39.8259 | 39.8324 | 19.0 |
84
+ | 0.5498 | 1.99 | 6000 | 0.7602 | 41.6364 | 30.6513 | 40.1522 | 40.1332 | 19.0 |
85
+ | 0.3398 | 2.32 | 7000 | 0.8580 | 41.4948 | 30.7467 | 40.0274 | 40.0116 | 18.9954 |
86
+ | 0.3518 | 2.65 | 8000 | 0.8430 | 41.7283 | 31.178 | 40.3487 | 40.3328 | 18.9861 |
87
+ | 0.3465 | 2.99 | 9000 | 0.8405 | 41.956 | 31.527 | 40.5671 | 40.5517 | 18.9907 |
88
+
89
+
90
+ ### Framework versions
91
+
92
+ - Transformers 4.22.0.dev0
93
+ - Pytorch 1.12.1+cu113
94
+ - Datasets 2.4.0
95
+ - Tokenizers 0.12.1
96
+
97
+