File size: 1,853 Bytes
ea87231
 
 
 
 
 
de8b305
 
 
73af60a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
960b1b7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e8ebcc6
960b1b7
73af60a
 
 
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
---
license: apache-2.0
datasets:
- SetFit/amazon_reviews_multi_en
base_model:
- google-bert/bert-base-uncased
metrics:
- accuracy
pipeline_tag: text-classification

# Sentiment Classification with Fine-Tuned BERT on Amazon Reviews

This repository contains a fine-tuned BERT model for sentiment classification of Amazon product reviews The model classifies a given review into two classes: Positive and Negative

---

## **Model Overview**
- **Base Model**: [google-bert/bert-base-uncased](https://huggingface.co/google-bert/bert-base-uncased)
- **Dataset**: [SetFit/amazon_reviews_multi_en](https://huggingface.co/datasets/SetFit/amazon_reviews_multi_en),
- **Classes**: Binary classification (`Positive`, `Negative`)
- **Performance**:
  - **Test Accuracy**: 89%
  - **Validation Accuracy**: 89%

*Figure 1: Confusion matrix for test data*
![image/png](https://cdn-uploads.huggingface.co/production/uploads/6585ab80ef59559493941225/qBheOoyz8f_XD7BVFaRT9.png)

*Figure 2: Confusion matrix for validation data*
![image/png](https://cdn-uploads.huggingface.co/production/uploads/6585ab80ef59559493941225/Js_Bkuf9JDHuvZvgZJ61c.png)

### How to Use the Model

Below is an example of how to load and use the model for sentiment classification:

```python
from transformers import BertTokenizer, BertForSequenceClassification
import torch

# Load the tokenizer and model
tokenizer = BertTokenizer.from_pretrained(
    "ashish-001/Bert-Amazon-review-sentiment-classifier")
model = BertForSequenceClassification.from_pretrained(
    "ashish-001/Bert-Amazon-review-sentiment-classifier")

# Example usage
text = "This product is amazing!"
inputs = tokenizer(text, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
sentiment = torch.argmax(logits, dim=1).item()

print(f"Predicted sentiment: {'Positive' if sentiment else 'Negative'}")