tugrulkaya's picture
docs: overhaul README per profile audit (metadata, library_name, description, links)
d28ded3 verified
metadata
language: tr
license: apache-2.0
library_name: transformers
pipeline_tag: text-classification
tags:
  - sentiment-analysis
  - turkish
  - bert
  - text-classification
datasets:
  - turkish_product_reviews
metrics:
  - accuracy
  - f1
widget:
  - text: Bu ürün harika, çok beğendim!
  - text: Kalitesiz ve pahalı, hiç tavsiye etmem.
  - text: Kargosu hızlıydı ama ambalaj zarar görmüştü.
model-index:
  - name: bert-turkish-sentiment-analysis
    results:
      - task:
          type: text-classification
          name: Sentiment Analysis
        dataset:
          name: Turkish Product Reviews
          type: turkish_product_reviews
        metrics:
          - type: accuracy
            value: 1
            name: Accuracy
          - type: f1
            value: 1
            name: F1 Score

Turkish Sentiment Analysis — BERT

Türkçe ürün yorumları için fine-tune edilmiş, iki sınıflı (olumlu/olumsuz) BERT tabanlı duygu analiz modeli.

Model Özeti

Bu model, Türkçe e-ticaret ürün yorumlarında pozitif ve negatif duyguyu ayırt etmek için savasy/bert-base-turkish-sentiment-cased üzerine fine-tune edilmiştir. Yüksek skorlar eğitim/test splitinin dar olduğuna işaret edebilir — kendi verinizde mutlaka yeniden değerlendirin.

Etiketler

  • LABEL_1Olumlu (Positive)
  • LABEL_0Olumsuz (Negative)

Kullanım

from transformers import pipeline

classifier = pipeline(
    "sentiment-analysis",
    model="tugrulkaya/bert-turkish-sentiment-analysis",
)

print(classifier("Bu ürün harika, çok beğendim!"))
# [{'label': 'LABEL_1', 'score': 0.98...}]

Manuel Kullanım

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

tok = AutoTokenizer.from_pretrained("tugrulkaya/bert-turkish-sentiment-analysis")
mdl = AutoModelForSequenceClassification.from_pretrained("tugrulkaya/bert-turkish-sentiment-analysis")

def predict(text):
    inputs = tok(text, return_tensors="pt", truncation=True, max_length=128)
    with torch.no_grad():
        logits = mdl(**inputs).logits
    probs = torch.softmax(logits, dim=-1)[0]
    label = "OLUMLU" if probs.argmax().item() == 1 else "OLUMSUZ"
    return {"label": label, "confidence": probs.max().item()}

print(predict("Harika bir ürün!"))
print(predict("Berbat, tavsiye etmem."))

Eğitim Detayları

Parametre Değer
Base model savasy/bert-base-turkish-sentiment-cased
Dataset Turkish Product Reviews
Görev Binary text classification
Epoch 3
Batch size 16
Learning rate 2e-5
Max length 128

Sınırlamalar

  • Sadece Türkçe ürün yorumları için optimize edilmiştir — haber, resmi metin, argo içeren içeriklerde doğruluk düşebilir.
  • Nötr/ikircikli yorumlar için uygun değildir (yalnızca iki sınıf).
  • Test skorlarının %100'e yakın olması eğitim verisinin dar bir dağılımdan geldiğine işaret eder; gerçek dünya performansı daha düşük olabilir.

Lisans

Apache 2.0