Text Classification
Transformers
Safetensors
PEFT
English
sentiment-analysis
bert
lora
huggingface
low-resource
Eval Results (legacy)
Instructions to use Harsh-Gupta/Sentiment-Analysis-BERT-sst2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Harsh-Gupta/Sentiment-Analysis-BERT-sst2 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="Harsh-Gupta/Sentiment-Analysis-BERT-sst2")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Harsh-Gupta/Sentiment-Analysis-BERT-sst2", device_map="auto") - PEFT
How to use Harsh-Gupta/Sentiment-Analysis-BERT-sst2 with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
File size: 2,888 Bytes
6ed254a 22ba4bb 99dd967 22ba4bb 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 6ed254a 99dd967 b24cd9c | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | ---
library_name: transformers
license: mit
tags:
- sentiment-analysis
- bert
- lora
- peft
- huggingface
- transformers
- text-classification
- low-resource
model-index:
- name: LoRA-BERT for Sentiment Analysis (SST-2)
results:
- task:
type: text-classification
name: Sentiment Analysis
dataset:
type: glue
name: SST2
metrics:
- type: accuracy
value: 0.9117
name: Accuracy
datasets:
- stanfordnlp/sst2
language:
- en
metrics:
- accuracy
base_model:
- google-bert/bert-base-uncased
pipeline_tag: text-classification
---
# π€ LoRA-BERT for Sentiment Analysis (SST-2)
This is a lightweight, parameter-efficient BERT model fine-tuned with [LoRA (Low-Rank Adaptation)](https://arxiv.org/abs/2106.09685) for binary sentiment classification on the SST-2 dataset.
---
## π‘ Model Highlights
- β
Fine-tuned using **LoRA** (r=8, Ξ±=16) on top of `bert-base-uncased`
- β
Trained on [SST2](https://huggingface.co/datasets/stanfordnlp/sst2)
- β
Achieves ~91.17% validation accuracy
- β
Lightweight: only LoRA adapter weights are updated
---
## π Results
| Epoch | Training Loss | Validation Loss | Accuracy |
|-------|---------------|-----------------|----------|
| 1 | 0.3030 | 0.2467 | 89.91% |
| 2 | 0.1972 | 0.2424 | 90.94% |
| 3 | 0.2083 | 0.2395 | 91.17% |
| 4 | 0.1936 | 0.2464 | 90.94% |
| 5 | 0.1914 | 0.2491 | 90.83% |
Early stopping could be applied from Epoch 3 based on validation metrics.
---
## π οΈ Usage
```python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
from peft import PeftModel, PeftConfig
model_id = "Harsh-Gupta/bert-lora-sentiment"
# Load PEFT config + model
config = PeftConfig.from_pretrained(model_id)
base_model = AutoModelForSequenceClassification.from_pretrained(config.base_model_name_or_path)
model = PeftModel.from_pretrained(base_model, model_id)
# Tokenizer
tokenizer = AutoTokenizer.from_pretrained(config.base_model_name_or_path)
# Predict
text = "This movie was absolutely amazing!"
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True)
with torch.no_grad():
outputs = model(**inputs)
probs = outputs.logits.softmax(dim=-1)
pred = probs.argmax().item()
```
---
## LoRA Configuration
```python
LoraConfig(
r=32,
lora_alpha=4,
target_modules=["query", "value"],
lora_dropout=0.1,
bias="none",
task_type="SEQ_CLS"
)
```
---
## π Intended Use
- Sentiment classification for binary text (positive/negative)
- Can be adapted to other domains: movie reviews, product reviews, tweets
---
## π§ Author
- Harsh Gupta
- MCA, Jawaharlal Nehru University (JNU)
- GitHub: [2003Harsh](https://github.com/2003HARSH) |