Downloads · 30 days
11
2% of all-time downloads
ba2hann/bert_base_turkish_sentiment_analysis
bert_base_turkish_sentiment_analysis is a text classification model from ba2hann. Use it when you need a label for a piece of text. The card lists the license as mit.
Bu model, Türkçe metinler için duygu analizi yapmayı amaçlamaktadır. Model, dört farklı duygu kategorisini sınıflandırmak üzere eğitilmiştir:
Downloads · 30 days
11
2% of all-time downloads
All-time downloads
463
Public
Parameters
111M
443 MB on disk
Likes
2
Public
Click a slice to open those files.
.safetensors443 MB · 100%
From the Hugging Face model README
Bu model, Türkçe metinler için duygu analizi yapmayı amaçlamaktadır. Model, dört farklı duygu kategorisini sınıflandırmak üzere eğitilmiştir:
Bu model, bert-base-turkish-cased modeli temel alınarak özel bir veri seti üzerinde eğitilmiştir. Hedef, sosyal medyada ve diğer metin tabanlı platformlarda sıklıkla karşılaşılan olumsuz ve ayrımcı söylemleri tespit etmektir.
Modelin genel performansı aşağıdaki gibidir:
Kategori bazlı performans metrikleri ise şöyledir:
| Kategori | Precision | Recall | F1 Score |
|---|---|---|---|
| Irkçılık | 0.881 | 0.919 | 0.899 |
| Kızdırma | 0.944 | 0.912 | 0.927 |
| Nötr | 0.960 | 0.965 | 0.963 |
| Cinsiyetçilik | 0.857 | 0.904 | 0.880 |
Aşağıdaki Python kodu, transformers kütüphanesi ile bu modelin nasıl kullanılacağını göstermektedir:
import torch
from transformers import pipeline
model_name = "ba2hann/bert-base-turkish-sentiment-analize"
sentiment_pipeline = pipeline(
task="text-classification",
model=model_name,
tokenizer=model_name,
device=0 if torch.cuda.is_available() else -1 # GPU varsa kullan, yoksa CPU
)
category_map = {
0: "Irkçılık",
1: "Kızdırma",
2: "Nötr",
3: "Cinsiyetçilik"
}
def analyze_sentiment(text):
sonuc = sentiment_pipeline(text)[0]
label_index = int(sonuc['label'].split('_')[-1])
kategori = category_map.get(label_index, "Bilinmeyen")
return {
"text": text,
"category": kategori,
"score": sonuc['score']
}
if __name__ == "__main__":
ornek_cumleler = [
"Bu çok güzel bir gün.", #Nötr
"Sen ne kadar aptalsın!", #Kızdırma
"Bu ırkçı bir söylem.", #Irkçılık
"Kadınlar araba kullanamaz.", #Cinsiyetçilik
"Bu konu hakkında hiçbir fikrim yok." #Nötr
]
for ornek_cumle in ornek_cumleler:
sonuc = analyze_sentiment(ornek_cumle)
print("\nAnaliz Sonuçları:")
print(f"Analiz Edilen Cümle: {sonuc['text']}")
print(f"Tahmin: {sonuc['category']}")
print(f"Tahmin Güveni: {sonuc['score']:.2%}")