ebrukilic's picture
Update README.md
21fc49d verified
|
raw
history blame
4.27 kB
metadata
license: mit
language:
  - tr
metrics:
  - accuracy
  - f1
base_model:
  - yeniguno/absa-turkish-bert-dbmdz
pipeline_tag: text-classification
library_name: transformers
tags:
  - absa
  - nlp
  - sentiment
  - turkish

Model Description

Bu model, Türkçe metinler üzerinde Sentiment Analysis (Duygu Analizi) yapmak için Türkçe dilindeki giyim ürünlerine ait metinlerden oluşturulan veri kümesi kullanılarak fine-tune edilmiş bir ABSA (Aspect-Based Sentiment Analysis) modelidir. Model, yeniguno/absa-turkish-bert-dbmdz temel modelinden türetilmiştir ve Türkçe dilindeki metinlerde olumlu, olumsuz veya nötr duygu kategorilerine ait etiketleri tahmin edebilmektedir.

  • Developed by: [ebru kılıç , rumeysa nur yasav]
  • Model type: [Fine-Tuned ABSA Model]
  • License: [MIT]
  • Finetuned from model [optional]: [yeniguno/absa-turkish-bert-dbmdz]

Direct Use

Bu model, doğrudan metin verisini alıp duygu etiketlerini tahmin etmek için kullanılabilir. Modelin çıktı olarak "olumlu", "olumsuz" veya "nötr" etiketlerinden birini döndürmesi beklenir.

Downstream Use

Bu model, duygu analizi yaparak müşteri yorumlarını analiz etmek veya sosyal medya üzerindeki duygusal eğilimleri izlemek gibi downstream uygulamalarda kullanılabilir.

Out-of-Scope Use

Model, sadece duygu analizi için eğitilmiştir. Karmaşık doğal dil işleme (NLP) görevleri, makale yazımı veya özetleme gibi işlemler için uygun değildir.

Bias, Risks, and Limitations

Bu modelin eğitildiği veri seti, belirli bir kullanıcı grubunun yorumlarından oluşmaktadır. Bu nedenle, modelin diğer kategorilere ait metinler üzerindeki duygu analizinde sınırlı bir performans gösterebilir. Ayrıca, modelin etiketleri yalnızca belirli (olumlu, olumsuz, nötr) duygu kategorilerine odaklanmaktadır ve daha karmaşık duygu durumlarını ayırt etmekte zorlanabilir.

How to Get Started with the Model

Modeli, transformers kütüphanesini kullanarak yükleyebilir ve metinlerdeki duygu analizini gerçekleştirebilirsiniz.

from transformers import AutoModelForSequenceClassification, AutoTokenizer
import torch

# modelin ve tokenizerın yüklenmesi
model_name = "ebrukilic/ara-proje-bert"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)

# cuda
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)
model.eval()
# test etmek için örnek
text = "Ürün çok güzel ama kolları kısa ve çok dar"
aspect = "Beden"

inputs = tokenizer(aspect, text, truncation=True, padding='max_length', max_length=128, return_tensors="pt").to(device)

# model ile tahmin yapılması:
with torch.no_grad():
    outputs = model(**inputs)

logits = outputs.logits
predicted_class_id = torch.argmax(logits, dim=-1).item()

# Tahmin edilen etiketin açıklaması
id_to_label = {0: "negatif", 1: "nötr", 2: "pozitif"}
predicted_label = id_to_label[predicted_class_id]
print(f"Tahmin edilen etiket: {predicted_label}")

Training Details

Eğitim Verisi

ebrukilic/ytu-ara-proje-absa

Model, Türkçe metinlerdeki kullanıcı yorumları ve ilgili "aspect"ler (özellikler) kullanılarak eğitildi. Etiketler, 3 sınıflı duygu (polarite) kategorisinde negatif, nötr ve pozitif olarak tanımlanmıştır. Veri kümesi 5045 örnekten oluşmaktadır.

Veri seti:

  • Normalized Yorum: Yorum metni
  • Aspects: Kullanıcı yorumu ile ilişkilendirilen konu veya özellik
  • Polarity: Yorumun duygusal polaritesi (negatif, nötr, pozitif)

Metrics

Modelin performansını değerlendirmek için doğruluk (accuracy) ve F1 skoru gibi yaygın metrikler kullanılmıştır. Aşağıda modelin test verisi üzerinde elde edilen değerlendirme sonuçları yer almaktadır:

Doğruluk (Accuracy): 70.72% F1 Skoru (Macro Average): 68.54%

Model, farklı sınıflara (pozitif, nötr, negatif) eşit ağırlık vererek (macro-average) değerlendirilmiştir. Bu metrikler, modelin sınıflandırma görevindeki genel başarısını yansıtmaktadır.