stancedetection / README.md
andreacristiano's picture
Push model using huggingface_hub.
abaa094 verified
metadata
tags:
  - setfit
  - sentence-transformers
  - text-classification
  - generated_from_setfit_trainer
widget:
  - text: "The Work Foundation has published a report called “Manufacturing and the Knowledge Economyâ€\x9D."
  - text: >-
      It is difficult to accept the argument that the current trade arrangements
      will benefit ordinary people, when so many small exporters continue to
      face increased costs, heightened uncertainty, and reduced competitiveness
      on the international market.
  - text: >-
      Many sociologists these days consider the concept of life course, and my
      casework involves people right across the age range.
  - text: >-
      I do not believe the proposed pension reforms adequately protect workers,
      particularly those in physically demanding jobs, who may find themselves
      forced to work far beyond a reasonable age simply to maintain a basic
      standard of living.
  - text: Does my hon.
metrics:
  - accuracy
pipeline_tag: text-classification
library_name: setfit
inference: true
base_model: sentence-transformers/paraphrase-mpnet-base-v2
model-index:
  - name: SetFit with sentence-transformers/paraphrase-mpnet-base-v2
    results:
      - task:
          type: text-classification
          name: Text Classification
        dataset:
          name: Unknown
          type: unknown
          split: test
        metrics:
          - type: accuracy
            value: 0.9545454545454546
            name: Accuracy

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

This is a SetFit model that can be used for Text Classification. This SetFit model uses sentence-transformers/paraphrase-mpnet-base-v2 as the Sentence Transformer embedding model. A LogisticRegression 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

Model Labels

Label Examples
non_opinionated
  • 'We need to look at the capacity that we have across the system to do more.'
  • 'Does my hon.'
  • 'I can assure the hon.'
opinion
  • 'In my estimation, the Government’s ongoing insistence that economic growth alone will resolve deep-seated social inequalities fails to reckon with the stark reality that unregulated markets have repeatedly produced uneven development, insecure employment, and a widening gulf between those who benefit from prosperity and those who are left behind.'
  • 'It is my firm belief that unless this Government commits to a sustained and genuinely transformative programme of investment—one that reaches far beyond the narrow confines of short-term funding pots and actually tackles the structural inequalities baked into our economic geography—we will continue to condemn entire regions to stagnation, frustration, and the persistent feeling that Westminster has neither listened to them nor acted in their interest.'
  • 'I must stress that any attempt to modernise our transport network without a long-term funding settlement is doomed to fall victim to the same cycle of delays, cancellations, and half-delivered projects that have plagued infrastructure initiatives for decades, leaving communities disconnected and local economies at a perpetual disadvantage.'

Evaluation

Metrics

Label Accuracy
all 0.9545

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("setfit_model_id")
# Run inference
preds = model("Does my hon.")

Training Details

Training Set Metrics

Training set Min Median Max
Word count 3 34.3125 66
Label Training Sample Count
non_opinionated 8
opinion 8

Training Hyperparameters

  • batch_size: (16, 16)
  • num_epochs: (1, 1)
  • max_steps: -1
  • sampling_strategy: oversampling
  • num_iterations: 40
  • 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
  • l2_weight: 0.01
  • seed: 42
  • eval_max_steps: -1
  • load_best_model_at_end: False

Training Results

Epoch Step Training Loss Validation Loss
0.0125 1 0.2985 -
0.625 50 0.0417 -

Framework Versions

  • Python: 3.13.1
  • SetFit: 1.1.3
  • Sentence Transformers: 5.1.2
  • Transformers: 4.57.3
  • PyTorch: 2.9.1
  • Datasets: 4.4.1
  • Tokenizers: 0.22.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}
}