PardisSzah's picture
Update README.md
408f2f3 verified
---
language: fa
license: mit
pipeline_tag: text-classification
---
# SentenceFormalityClassifier
This model is fine-tuned to classify text based on formality. It has been fine-tuned on [Mohavere Dataset] (Takalli vahideh, Kalantari, Fateme, Shamsfard, Mehrnoush, Developing an Informal-Formal Persian Corpus, 2022.) using the pretrained model [persian-t5-formality-transfer](https://huggingface.co/HooshvareLab/bert-base-parsbert-uncased).
## Evaluation Metrics
**INFORMAL**:
Precision: 0.99
Recall: 0.99
F1-Score: 0.99
**FORMAL**:
Precision: 0.99
Recall: 1.0
F1-Score: 0.99
**Accuracy**: 0.99
**Macro Avg**:
Precision: 0.99
Recall: 0.99
F1-Score: 0.99
**Weighted Avg**:
Precision: 0.99
Recall: 0.99
F1-Score: 0.99
## Usage
```python
from transformers import AutoModelForSequenceClassification, AutoTokenizer
import torch
labels = ["INFORMAL", "FORMAL"]
model = AutoModelForSequenceClassification.from_pretrained('parsi-ai-nlpclass/sentence_formality_classifier')
tokenizer = AutoTokenizer.from_pretrained('parsi-ai-nlpclass/sentence_formality_classifier')
def test_model(text):
inputs = tokenizer(text, return_tensors='pt')
outputs = model(**inputs)
predicted_label = labels[int(torch.argmax(outputs.logits))]
return predicted_label
# Test the model
text1 = "من فقط می‌خواستم بگویم که چقدر قدردان هستم."
print("Original:", text1)
print("Predicted Label:", test_model(text1))
# output: FORMAL
text2 = "آرزویش است او را یک رستوران ببرم."
print("\nOriginal:", text2)
print("Predicted Label:", test_model(text2))
# output: FORMAL
text3 = "گل منو اذیت نکنید"
print("\nOriginal:", text2)
print("Predicted Label:", test_model(text3))
# output: INFORMAL
text4 = "من این دوربین رو خالم برام کادو خرید"
print("\nOriginal:", text2)
print("Predicted Label:", test_model(text3))
# output: INFORMAL
```