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

This is a SetFit model that can be used for Aspect Based Sentiment Analysis (ABSA). This SetFit model uses sentence-transformers/all-mpnet-base-v2 as the Sentence Transformer embedding model. A LogisticRegression instance is used for classification. In particular, this model is in charge of classifying aspect polarities.

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.

This model was trained within the context of a larger system for ABSA, which looks like so:

  1. Use a spaCy model to select possible aspect span candidates.
  2. Use a SetFit model to filter these possible aspect span candidates.
  3. Use this SetFit model to classify the filtered aspect span candidates.

Model Details

Model Description

Model Sources

Model Labels

Label Examples
positive
  • 'Amazing sound quality with deep bass:Amazing sound quality with deep bass that really makes music come alive.'
  • 'quality with deep bass that really makes:Amazing sound quality with deep bass that really makes music come alive.'
  • 'The audio is crystal clear:The audio is crystal clear but they become uncomfortable after wearing for more than an hour.'
negative
  • 'but they become uncomfortable after wearing for:The audio is crystal clear but they become uncomfortable after wearing for more than an hour.'
  • 'feels a bit tight on larger heads:Excellent noise cancellation blocks out distractions, though the fit feels a bit tight on larger heads.'
  • ', but the audio quality is mediocre compared:The build feels sturdy and durable, but the audio quality is mediocre compared to the price point.'
negative
  • 'not worth the price value.:definitely not worth the price value.'

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 AbsaModel

# Download from the ๐Ÿค— Hub
model = AbsaModel.from_pretrained(
    "setfit-absa-aspect",
    "najwaa/absa-headphones-polarity-p2",
)
# Run inference
preds = model("The food was great, but the venue is just way too busy.")

Training Details

Training Set Metrics

Training set Min Median Max
Word count 6 21.3092 57
Label Training Sample Count
negative 69
negative 1
positive 82

Training Hyperparameters

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

Training Results

Epoch Step Training Loss Validation Loss
0.0027 1 0.2597 -
0.0275 10 - 0.2737
0.0549 20 - 0.2504
0.0824 30 - 0.2237
0.1099 40 - 0.1987
0.1374 50 0.2665 0.1561
0.1648 60 - 0.0780
0.1923 70 - 0.0272
0.2198 80 - 0.0142
0.2473 90 - 0.0055
0.2747 100 0.0748 0.0039
0.3022 110 - 0.0024
0.3297 120 - 0.0021
0.3571 130 - 0.0014
0.3846 140 - 0.0011
0.4121 150 0.0025 0.0009
0.4396 160 - 0.0007
0.4670 170 - 0.0007
0.4945 180 - 0.0009
0.5220 190 - 0.0010
0.5495 200 0.0009 0.0009
0.5769 210 - 0.0008

Framework Versions

  • Python: 3.11.12
  • SetFit: 1.1.2
  • Sentence Transformers: 4.1.0
  • spaCy: 3.7.5
  • Transformers: 4.51.3
  • PyTorch: 2.6.0+cu124
  • Datasets: 3.6.0
  • Tokenizers: 0.21.1

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
25
Safetensors
Model size
109M params
Tensor type
F32
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for najwaa/absa-headphones-polarity-p2

Finetuned
(284)
this model