bhaskars113 commited on
Commit
65bad88
1 Parent(s): c20e5e0

Add SetFit model

Browse files
1_Pooling/config.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "word_embedding_dimension": 768,
3
+ "pooling_mode_cls_token": false,
4
+ "pooling_mode_mean_tokens": true,
5
+ "pooling_mode_max_tokens": false,
6
+ "pooling_mode_mean_sqrt_len_tokens": false
7
+ }
README.md ADDED
@@ -0,0 +1,193 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ library_name: setfit
3
+ tags:
4
+ - setfit
5
+ - sentence-transformers
6
+ - text-classification
7
+ - generated_from_setfit_trainer
8
+ metrics:
9
+ - accuracy
10
+ widget:
11
+ - text: As someone on the line between Millenial and GenZ, yeah. Bars are expensive
12
+ and loud, and ubers home are expensive. It's a lot more reasonable to pool a bit
13
+ of money, throw some food on a grill, and buy our own booze. We don't have the
14
+ disposable income to hang out at bars regularly.
15
+ - text: When we switch main focus from college football to college basketball, I can
16
+ report back on Collier. But I'll be interested to see what the guys who really
17
+ crunch tape on draft prospects say as these seasons progress. I know theres more
18
+ than a few here in the sub. A huge 3 with skills would be fun to stack next to
19
+ Wemby though.
20
+ - text: The gen Z kids I see are more risk averse in general, because exposure to
21
+ a lifetime on the internet has taught them that one mistake can ruin their lives.
22
+ It always blows my mind when boomers and Xers like me wonder why kids have such
23
+ high anxiety these days. It’s because they are regularly exposed to the judgement
24
+ and horrors of the world around them. We were raised in a protective bubble mentally,
25
+ in comparison
26
+ - text: Well I guess I would expect this from a beer garden but I totally agree, those
27
+ vibes don’t belong at Coachella
28
+ - text: Can Earned the Brewery Pioneer (Level 6) badge! Earned the I Believe in IPA!
29
+ (Level 5) badge!
30
+ pipeline_tag: text-classification
31
+ inference: true
32
+ base_model: sentence-transformers/paraphrase-mpnet-base-v2
33
+ ---
34
+
35
+ # SetFit with sentence-transformers/paraphrase-mpnet-base-v2
36
+
37
+ This is a [SetFit](https://github.com/huggingface/setfit) model that can be used for Text Classification. This SetFit model uses [sentence-transformers/paraphrase-mpnet-base-v2](https://huggingface.co/sentence-transformers/paraphrase-mpnet-base-v2) as the Sentence Transformer embedding model. A [LogisticRegression](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html) instance is used for classification.
38
+
39
+ The model has been trained using an efficient few-shot learning technique that involves:
40
+
41
+ 1. Fine-tuning a [Sentence Transformer](https://www.sbert.net) with contrastive learning.
42
+ 2. Training a classification head with features from the fine-tuned Sentence Transformer.
43
+
44
+ ## Model Details
45
+
46
+ ### Model Description
47
+ - **Model Type:** SetFit
48
+ - **Sentence Transformer body:** [sentence-transformers/paraphrase-mpnet-base-v2](https://huggingface.co/sentence-transformers/paraphrase-mpnet-base-v2)
49
+ - **Classification head:** a [LogisticRegression](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html) instance
50
+ - **Maximum Sequence Length:** 512 tokens
51
+ - **Number of Classes:** 3 classes
52
+ <!-- - **Training Dataset:** [Unknown](https://huggingface.co/datasets/unknown) -->
53
+ <!-- - **Language:** Unknown -->
54
+ <!-- - **License:** Unknown -->
55
+
56
+ ### Model Sources
57
+
58
+ - **Repository:** [SetFit on GitHub](https://github.com/huggingface/setfit)
59
+ - **Paper:** [Efficient Few-Shot Learning Without Prompts](https://arxiv.org/abs/2209.11055)
60
+ - **Blogpost:** [SetFit: Efficient Few-Shot Learning Without Prompts](https://huggingface.co/blog/setfit)
61
+
62
+ ### Model Labels
63
+ | Label | Examples |
64
+ |:------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
65
+ | 1 | <ul><li>'I don’t drink much but I like wine tasting. We usually buy local wine to take to dinners and such as we rarely drink wine. (NGL, I am a beer drinker so I’m probably just pleb.)'</li><li>'Never do the bottom right 2 again, give you major banker/tech bro adult frat boy vibes. I can see you chugging a beer and talking about bitcoin with those looks. Upper left makes you look younger and great.'</li><li>'NGL I like pepsi much more than coke. I dunno why.'</li></ul> |
66
+ | 2 | <ul><li>'?? angolbryggeri - Hazy Crazy\n\n✴️ IPA\n\n?? Sweden ????\n\n??Abv 6.5%\n\n⭐️ 3.60 / 5.0 ~ avg 3.67\n\n?? systembolaget\n\n#beer #bier #birra #öl #cerveza #øl #craftbeer #ipa #dipa #tipa #sour #gose #berlinerweisse #paleale #pilsner #lager #stout #beeroftheday #beerphotografy #hantverksöl #untappd #beergeek #beerlover #ilovebeer #cheers #beerstagram #instabeer #beerporn #ängöl #sweden'</li><li>"I'm a feast kind of guy Bring out the roast pig and Flagons of ale"</li><li>'“Just grab me a beer” legend'</li></ul> |
67
+ | 0 | <ul><li>"My boys (Aged 20 and 26) have moved out so I can't say what they do in their own homes but when they lived with us they were supper straight laced and had no desire to explore Alcohol or Drugs. They were into Gaming or Sports not Partying. Weed is Legal here and as far as I know they are not into that either. They definitely don't smoke, maybe they do Gummies but that would be about it."</li><li>"Like you said cost is a big one. Plus I just wonder if younger generations might not be into it as much. I can't remember the beer company, but one is talking about making a non alcoholic drink, since the younger generation aren't drinking beer as much. "</li><li>'She just graduated and I know they drink occasionally, but it’s all Mike’s Lemonade and White Claw city. Very tame stuff. Her friend group also experimented with that fake pot stuff, I forget the name. I told her I wasn’t okay with that and I’d buy her actual pot (rec is legal in my state) if she was determined to try it, but they apparently all lost interest.'</li></ul> |
68
+
69
+ ## Uses
70
+
71
+ ### Direct Use for Inference
72
+
73
+ First install the SetFit library:
74
+
75
+ ```bash
76
+ pip install setfit
77
+ ```
78
+
79
+ Then you can load this model and run inference.
80
+
81
+ ```python
82
+ from setfit import SetFitModel
83
+
84
+ # Download from the 🤗 Hub
85
+ model = SetFitModel.from_pretrained("bhaskars113/guinness-segments-model")
86
+ # Run inference
87
+ preds = model("Can Earned the Brewery Pioneer (Level 6) badge! Earned the I Believe in IPA! (Level 5) badge!")
88
+ ```
89
+
90
+ <!--
91
+ ### Downstream Use
92
+
93
+ *List how someone could finetune this model on their own dataset.*
94
+ -->
95
+
96
+ <!--
97
+ ### Out-of-Scope Use
98
+
99
+ *List how the model may foreseeably be misused and address what users ought not to do with the model.*
100
+ -->
101
+
102
+ <!--
103
+ ## Bias, Risks and Limitations
104
+
105
+ *What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.*
106
+ -->
107
+
108
+ <!--
109
+ ### Recommendations
110
+
111
+ *What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.*
112
+ -->
113
+
114
+ ## Training Details
115
+
116
+ ### Training Set Metrics
117
+ | Training set | Min | Median | Max |
118
+ |:-------------|:----|:--------|:----|
119
+ | Word count | 6 | 45.7143 | 135 |
120
+
121
+ | Label | Training Sample Count |
122
+ |:------|:----------------------|
123
+ | 0 | 14 |
124
+ | 1 | 14 |
125
+ | 2 | 14 |
126
+
127
+ ### Training Hyperparameters
128
+ - batch_size: (16, 16)
129
+ - num_epochs: (1, 1)
130
+ - max_steps: -1
131
+ - sampling_strategy: oversampling
132
+ - num_iterations: 20
133
+ - body_learning_rate: (2e-05, 2e-05)
134
+ - head_learning_rate: 2e-05
135
+ - loss: CosineSimilarityLoss
136
+ - distance_metric: cosine_distance
137
+ - margin: 0.25
138
+ - end_to_end: False
139
+ - use_amp: False
140
+ - warmup_proportion: 0.1
141
+ - seed: 42
142
+ - eval_max_steps: -1
143
+ - load_best_model_at_end: False
144
+
145
+ ### Training Results
146
+ | Epoch | Step | Training Loss | Validation Loss |
147
+ |:------:|:----:|:-------------:|:---------------:|
148
+ | 0.0095 | 1 | 0.2908 | - |
149
+ | 0.4762 | 50 | 0.0394 | - |
150
+ | 0.9524 | 100 | 0.0021 | - |
151
+
152
+ ### Framework Versions
153
+ - Python: 3.10.12
154
+ - SetFit: 1.0.1
155
+ - Sentence Transformers: 2.2.2
156
+ - Transformers: 4.35.2
157
+ - PyTorch: 2.1.0+cu121
158
+ - Datasets: 2.16.1
159
+ - Tokenizers: 0.15.0
160
+
161
+ ## Citation
162
+
163
+ ### BibTeX
164
+ ```bibtex
165
+ @article{https://doi.org/10.48550/arxiv.2209.11055,
166
+ doi = {10.48550/ARXIV.2209.11055},
167
+ url = {https://arxiv.org/abs/2209.11055},
168
+ author = {Tunstall, Lewis and Reimers, Nils and Jo, Unso Eun Seo and Bates, Luke and Korat, Daniel and Wasserblat, Moshe and Pereg, Oren},
169
+ keywords = {Computation and Language (cs.CL), FOS: Computer and information sciences, FOS: Computer and information sciences},
170
+ title = {Efficient Few-Shot Learning Without Prompts},
171
+ publisher = {arXiv},
172
+ year = {2022},
173
+ copyright = {Creative Commons Attribution 4.0 International}
174
+ }
175
+ ```
176
+
177
+ <!--
178
+ ## Glossary
179
+
180
+ *Clearly define terms in order to be accessible across audiences.*
181
+ -->
182
+
183
+ <!--
184
+ ## Model Card Authors
185
+
186
+ *Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.*
187
+ -->
188
+
189
+ <!--
190
+ ## Model Card Contact
191
+
192
+ *Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.*
193
+ -->
config.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "/root/.cache/torch/sentence_transformers/sentence-transformers_paraphrase-mpnet-base-v2/",
3
+ "architectures": [
4
+ "MPNetModel"
5
+ ],
6
+ "attention_probs_dropout_prob": 0.1,
7
+ "bos_token_id": 0,
8
+ "eos_token_id": 2,
9
+ "hidden_act": "gelu",
10
+ "hidden_dropout_prob": 0.1,
11
+ "hidden_size": 768,
12
+ "initializer_range": 0.02,
13
+ "intermediate_size": 3072,
14
+ "layer_norm_eps": 1e-05,
15
+ "max_position_embeddings": 514,
16
+ "model_type": "mpnet",
17
+ "num_attention_heads": 12,
18
+ "num_hidden_layers": 12,
19
+ "pad_token_id": 1,
20
+ "relative_attention_num_buckets": 32,
21
+ "torch_dtype": "float32",
22
+ "transformers_version": "4.35.2",
23
+ "vocab_size": 30527
24
+ }
config_sentence_transformers.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "__version__": {
3
+ "sentence_transformers": "2.0.0",
4
+ "transformers": "4.7.0",
5
+ "pytorch": "1.9.0+cu102"
6
+ }
7
+ }
config_setfit.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "normalize_embeddings": false,
3
+ "labels": null
4
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a8219d6a29b913abeda6a1f0d8b0d41d039899f1f421f0d20cd6cbaeb6a73932
3
+ size 437967672
model_head.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:baf46a91214df48383c1826c7324f026fa3928dd6348bf606b19062e8bc57227
3
+ size 19311
modules.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "idx": 0,
4
+ "name": "0",
5
+ "path": "",
6
+ "type": "sentence_transformers.models.Transformer"
7
+ },
8
+ {
9
+ "idx": 1,
10
+ "name": "1",
11
+ "path": "1_Pooling",
12
+ "type": "sentence_transformers.models.Pooling"
13
+ }
14
+ ]
sentence_bert_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "max_seq_length": 512,
3
+ "do_lower_case": false
4
+ }
special_tokens_map.json ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": {
3
+ "content": "<s>",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "cls_token": {
10
+ "content": "<s>",
11
+ "lstrip": false,
12
+ "normalized": true,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "eos_token": {
17
+ "content": "</s>",
18
+ "lstrip": false,
19
+ "normalized": false,
20
+ "rstrip": false,
21
+ "single_word": false
22
+ },
23
+ "mask_token": {
24
+ "content": "<mask>",
25
+ "lstrip": true,
26
+ "normalized": false,
27
+ "rstrip": false,
28
+ "single_word": false
29
+ },
30
+ "pad_token": {
31
+ "content": "<pad>",
32
+ "lstrip": false,
33
+ "normalized": false,
34
+ "rstrip": false,
35
+ "single_word": false
36
+ },
37
+ "sep_token": {
38
+ "content": "</s>",
39
+ "lstrip": false,
40
+ "normalized": true,
41
+ "rstrip": false,
42
+ "single_word": false
43
+ },
44
+ "unk_token": {
45
+ "content": "[UNK]",
46
+ "lstrip": false,
47
+ "normalized": false,
48
+ "rstrip": false,
49
+ "single_word": false
50
+ }
51
+ }
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "added_tokens_decoder": {
3
+ "0": {
4
+ "content": "<s>",
5
+ "lstrip": false,
6
+ "normalized": false,
7
+ "rstrip": false,
8
+ "single_word": false,
9
+ "special": true
10
+ },
11
+ "1": {
12
+ "content": "<pad>",
13
+ "lstrip": false,
14
+ "normalized": false,
15
+ "rstrip": false,
16
+ "single_word": false,
17
+ "special": true
18
+ },
19
+ "2": {
20
+ "content": "</s>",
21
+ "lstrip": false,
22
+ "normalized": false,
23
+ "rstrip": false,
24
+ "single_word": false,
25
+ "special": true
26
+ },
27
+ "104": {
28
+ "content": "[UNK]",
29
+ "lstrip": false,
30
+ "normalized": false,
31
+ "rstrip": false,
32
+ "single_word": false,
33
+ "special": true
34
+ },
35
+ "30526": {
36
+ "content": "<mask>",
37
+ "lstrip": true,
38
+ "normalized": false,
39
+ "rstrip": false,
40
+ "single_word": false,
41
+ "special": true
42
+ }
43
+ },
44
+ "bos_token": "<s>",
45
+ "clean_up_tokenization_spaces": true,
46
+ "cls_token": "<s>",
47
+ "do_basic_tokenize": true,
48
+ "do_lower_case": true,
49
+ "eos_token": "</s>",
50
+ "mask_token": "<mask>",
51
+ "model_max_length": 512,
52
+ "never_split": null,
53
+ "pad_token": "<pad>",
54
+ "sep_token": "</s>",
55
+ "strip_accents": null,
56
+ "tokenize_chinese_chars": true,
57
+ "tokenizer_class": "MPNetTokenizer",
58
+ "unk_token": "[UNK]"
59
+ }
vocab.txt ADDED
The diff for this file is too large to render. See raw diff