MichaelHuang commited on
Commit
8e22bcc
1 Parent(s): 3464d03

Create README.md

Browse files
Files changed (1) hide show
  1. README.md +55 -0
README.md ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - ur
4
+ tags:
5
+ - sentiment analysis
6
+ ---
7
+
8
+ # Sentiment Binary Classifier for Urdu
9
+ ## muril_base_cased_urdu_sentiment_2.0
10
+
11
+ Compared to muril_base_cased_urdu_sentiment, the base model went through an additional pre-training procedure of "masked LM" (MLM) on a dataset of over [1 Million Urdu news](https://data.mendeley.com/datasets/834vsxnb99/3).
12
+ Muril_base_cased_urdu_sentiment_2.0 outperformed muril_base_cased_urdu_sentiment by about 0.2 accuracy rate on news data.
13
+ Base model is [google/muril-base-cased](https://huggingface.co/google/muril-base-cased), a BERT model pre-trained on 17 Indian languages and their transliterated counterparts.
14
+ Urdu sentiment analysis dataset is from [mirfan899](https://github.com/mirfan899/Urdu/tree/master/sentiment).
15
+
16
+ ## Usage
17
+ ### example:
18
+ ```python
19
+ import torch
20
+ from transformers import AutoTokenizer, AutoModelForSequenceClassification
21
+
22
+ # Load the model and tokenizer
23
+ tokenizer = AutoTokenizer.from_pretrained("google/muril-base-cased")
24
+ model = AutoModelForSequenceClassification.from_pretrained("MichaelHuang/muril_base_cased_urdu_sentiment_2.0")
25
+
26
+
27
+ # Define the input text
28
+ text = '''
29
+ لیکن مسٹر پوتن نے یہ بھی کہا کہ یہ منصوبہ اسی وقت پیش کیا جا سکتا ہے جب لوگ 'مغرب اور کیئو میں' اس کے لیے تیار ہوں۔
30
+ روسی رہنما نے منگل کو ماسکو میں چینی صدر شی جن پنگ سے ملاقات کی جس میں روس یوکرین جنگ اور دونوں ممالک کے درمیان تعلقات پر تبادلہ خیال کیا گیا۔
31
+ گذشتہ ماہ شائع ہونے والے چین کے منصوبے میں واضح طور پر روس سے یوکرین چھوڑنے کا مطالبہ نہیں کیا گیا ہے۔
32
+ '''
33
+
34
+ # Tokenize the input text
35
+ inputs = tokenizer(text, return_tensors='pt')
36
+
37
+ # Make a prediction
38
+ outputs = model(**inputs)
39
+ predicted_class = torch.argmax(outputs.logits).item()
40
+
41
+ # Print the predicted class
42
+ if predicted_class == 1:
43
+ print('Positive')
44
+ else:
45
+ print('Negative')
46
+
47
+ ```
48
+
49
+ ### Training results
50
+
51
+ | eval_loss | epoch | step | eval_accuracy |
52
+ |:-------------:|:-----:|:----:|:--------:|
53
+ | 0.31 | 1.0 | 3000 | 0.89 |
54
+ | 0.28 | 2.0 | 6000 | 0.90 |
55
+ | 0.33 | 3.0 | 9000 | 0.91 |