--- base_model: sentence-transformers/all-mpnet-base-v2 library_name: setfit metrics: - accuracy pipeline_tag: text-classification tags: - setfit - sentence-transformers - text-classification - generated_from_setfit_trainer widget: - text: X9.31 PRNG is seeded with urandom. - text: PRNG seed key Continually polled from various system resources to accrue entropy. - text: This DRNG uses an 8-byte Seed and an 16-byte Seed Key as inputs to the DRNG. The seed & seed-key values are generated by the hardware RNG and stored only in RAM. These values are zeroized when the module is reset in contact mode or when the module is deselected in contactless mode. - text: The seed key is typically stored in RAM in plaintext while in use, and is zeroized when the system is powered down, rebooted, or a new seed key is generated. - text: X9.31 PRNG seed keys Triple-DES (112 bit) Generated by gathering entropy RAM only inference: true --- # SetFit with sentence-transformers/all-mpnet-base-v2 This is a [SetFit](https://github.com/huggingface/setfit) model that can be used for Text Classification. This SetFit model uses [sentence-transformers/all-mpnet-base-v2](https://huggingface.co/sentence-transformers/all-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. The model has been trained using an efficient few-shot learning technique that involves: 1. Fine-tuning a [Sentence Transformer](https://www.sbert.net) with contrastive learning. 2. Training a classification head with features from the fine-tuned Sentence Transformer. ## Model Details ### Model Description - **Model Type:** SetFit - **Sentence Transformer body:** [sentence-transformers/all-mpnet-base-v2](https://huggingface.co/sentence-transformers/all-mpnet-base-v2) - **Classification head:** a [LogisticRegression](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html) instance - **Maximum Sequence Length:** 384 tokens - **Number of Classes:** 2 classes ### Model Sources - **Repository:** [SetFit on GitHub](https://github.com/huggingface/setfit) - **Paper:** [Efficient Few-Shot Learning Without Prompts](https://arxiv.org/abs/2209.11055) - **Blogpost:** [SetFit: Efficient Few-Shot Learning Without Prompts](https://huggingface.co/blog/setfit) ### Model Labels | Label | Examples | |:---------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | negative | | | positive | | ## Uses ### Direct Use for Inference First install the SetFit library: ```bash pip install setfit ``` Then you can load this model and run inference. ```python from setfit import SetFitModel # Download from the 🤗 Hub model = SetFitModel.from_pretrained("yasirdemircan/setfit_rng_v4") # Run inference preds = model("X9.31 PRNG is seeded with urandom.") ``` ## Training Details ### Training Set Metrics | Training set | Min | Median | Max | |:-------------|:----|:--------|:----| | Word count | 10 | 19.6667 | 59 | | Label | Training Sample Count | |:---------|:----------------------| | negative | 21 | | positive | 24 | ### Training Hyperparameters - batch_size: (16, 16) - num_epochs: (4, 4) - 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: False - 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.0149 | 1 | 0.2273 | - | | 0.7463 | 50 | 0.1704 | - | | 1.0 | 67 | - | 0.1468 | | 1.4925 | 100 | 0.002 | - | | 2.0 | 134 | - | 0.1621 | | 2.2388 | 150 | 0.0004 | - | | 2.9851 | 200 | 0.0003 | - | | 3.0 | 201 | - | 0.1657 | | 3.7313 | 250 | 0.0002 | - | | 4.0 | 268 | - | 0.1665 | ### Framework Versions - Python: 3.10.15 - SetFit: 1.2.0.dev0 - Sentence Transformers: 3.3.1 - Transformers: 4.45.2 - PyTorch: 2.5.1+cu124 - Datasets: 2.19.1 - Tokenizers: 0.20.1 ## Citation ### BibTeX ```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} } ```