SetFit with sentence-transformers/all-mpnet-base-v2

This is a SetFit model that can be used for Text Classification. This SetFit model uses sentence-transformers/all-mpnet-base-v2 as the Sentence Transformer embedding model. A OneVsRestClassifier instance is used for classification.

The model has been trained using an efficient few-shot learning technique that involves:

  1. Fine-tuning a Sentence Transformer with contrastive learning.
  2. Training a classification head with features from the fine-tuned Sentence Transformer.

Model Details

Model Description

Model Sources

Evaluation

Metrics

Label Precision_Micro Precision_Weighted Precision_Samples Recall_Micro Recall_Weighted Recall_Samples F1-Score Accuracy
all 0.7762 0.7969 0.7762 0.7762 0.7762 0.7762 0.7762 0.7762

Uses

Direct Use for Inference

First install the SetFit library:

pip install setfit

Then you can load this model and run inference.

from setfit import SetFitModel

# Download from the 🤗 Hub
model = SetFitModel.from_pretrained("leavoigt/vulnerability_target")
# Run inference
preds = model("To support the traditional knowledge and adaptive capacity of indigenous peoples in the face of climate change, we aim to establish 50 community-based adaptation projects led by indigenous peoples by 2030, focusing on the sustainable management of natural resources and the preservation of cultural practices.")

Training Details

Training Set Metrics

Training set Min Median Max
Word count 15 70.8675 238

Training Hyperparameters

  • batch_size: (16, 16)
  • num_epochs: (1, 1)
  • max_steps: -1
  • sampling_strategy: oversampling
  • num_iterations: 20
  • body_learning_rate: (2e-05, 2e-05)
  • head_learning_rate: 2e-05
  • loss: CosineSimilarityLoss
  • distance_metric: cosine_distance
  • margin: 0.25
  • end_to_end: False
  • use_amp: False
  • warmup_proportion: 0.1
  • seed: 42
  • eval_max_steps: -1
  • load_best_model_at_end: False

Training Results

Epoch Step Training Loss Validation Loss
0.0012 1 0.3493 -
0.0602 50 0.2285 -
0.1205 100 0.1092 -
0.1807 150 0.1348 -
0.2410 200 0.0365 -
0.3012 250 0.0052 -
0.3614 300 0.0012 -
0.4217 350 0.0031 -
0.4819 400 0.0001 -
0.5422 450 0.0011 -
0.6024 500 0.0001 -
0.6627 550 0.0001 -
0.7229 600 0.0001 -
0.7831 650 0.0002 -
0.8434 700 0.0001 -
0.9036 750 0.0001 -
0.9639 800 0.0001 -

Framework Versions

  • Python: 3.10.12
  • SetFit: 1.0.1
  • Sentence Transformers: 2.2.2
  • Transformers: 4.25.1
  • PyTorch: 2.1.0+cu121
  • Datasets: 2.16.1
  • Tokenizers: 0.13.3

Citation

BibTeX

@article{https://doi.org/10.48550/arxiv.2209.11055,
    doi = {10.48550/ARXIV.2209.11055},
    url = {https://arxiv.org/abs/2209.11055},
    author = {Tunstall, Lewis and Reimers, Nils and Jo, Unso Eun Seo and Bates, Luke and Korat, Daniel and Wasserblat, Moshe and Pereg, Oren},
    keywords = {Computation and Language (cs.CL), FOS: Computer and information sciences, FOS: Computer and information sciences},
    title = {Efficient Few-Shot Learning Without Prompts},
    publisher = {arXiv},
    year = {2022},
    copyright = {Creative Commons Attribution 4.0 International}
}
Downloads last month
36
Inference Examples
Inference API (serverless) has been turned off for this model.

Model tree for GIZ/TARGET-VULNERABILITY-multiclass-mpnet

Finetuned
(183)
this model

Spaces using GIZ/TARGET-VULNERABILITY-multiclass-mpnet 6

Evaluation results