Skip to content

Prompt engineering and data augmentation with LLMs like OpenAI's GPT involve techniques to improve model performance.

Notifications You must be signed in to change notification settings

ercanasli/LLM_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

🤖 LLM Tabanlı Duygu Analizi: Fine-Tuning, Prompt Engineering ve Veri Artırımı

Bu projede, İngilizce müşteri yorumları üzerinden duygu analizi (sentiment analysis) gerçekleştirmek amacıyla üç farklı LLM yaklaşımı karşılaştırılmıştır:

  1. Fine-tuning: DistilBERT modeli özel veri seti ile sıfırdan eğitilmiştir.
  2. Prompt engineering: Google Gemini API ile zero-shot/few-shot senaryolarda modelden yanıt alınmıştır.
  3. Data augmentation: Veri dengesizliğini gidermek için T5 tabanlı paraphrasing modeli kullanılmış, ardından genişletilmiş veri setiyle yeniden fine-tuning yapılmıştır.

📁 Proje Dosyaları

1. LLM.ipynb – Fine-Tuning ile Model Eğitimi

  • Kullanılan model: distilbert-base-uncased
  • Kullanılan veri: restaurant_reviews.csv (pozitif, negatif, nötr yorumlar)
  • Model, DistilBertTokenizerFast ile tokenleştirilmiş verilerle eğitildi.
  • ReviewDataset sınıfı ile PyTorch veri kümesi oluşturuldu.
  • Eğitimden sonra doğruluk metriği ve çıktı örnekleri değerlendirildi.

2. LLM_PromptEngineering.ipynb – Gemini API ile Prompt Engineering

  • Kullanılan model: gemini-1.5-flash-001 (Google Generative AI)
  • Sıfır örnekli (zero-shot) ve birkaç örnekli (few-shot) sınıflandırmalar denendi.
  • JSON formatında review + pred_rating içeren veri Gemini modeline gönderildi.
  • Yanıtlar regex ve JSON işlemleri ile ayrıştırıldı ve sınıflandırmalar karşılaştırıldı.

3. LLM_augmentation.ipynb – Veri Artırımı ve Yeniden Fine-Tuning

  • Problem: Veri setinde negative ve neutral sınıflarının yetersiz olması
  • Kullanılan model: ramsrigouthamg/t5_paraphraser (Hugging Face T5)
  • FAISS değil; paraphrasing tabanlı augmentation yapılmıştır.
  • Her eksik sınıftan 1000+ örnek için 2’şer tane paraphrase üretildi.
  • Yeni cümleler orijinal etiketleriyle birleştirildi ve restaurant_reviews_augmented.csv oluşturuldu.
  • Bu genişletilmiş veri ile DistilBERT modeli yeniden eğitildi.
  • Augmentation öncesi ve sonrası doğruluk skorları karşılaştırıldı.

⚙️ Kullanılan Teknolojiler

  • Python (pandas, torch, matplotlib, scikit-learn)
  • Transformers (Hugging Face: DistilBERT, T5)
  • Google Generative AI (gemini-1.5-flash-001)
  • Jupyter Notebook
  • Colab GPU (CUDA destekli inference için)
  • Hugging Face datasets, tokenizers, AutoModelForSeq2SeqLM

📝 Kurulum Notu

Bu proje Google Colab ortamında çalıştırılmak üzere tasarlanmıştır. Kütüphaneler tipik olarak şunlardır:

pip install torch transformers pandas scikit-learn matplotlib google-generativeai

About

Prompt engineering and data augmentation with LLMs like OpenAI's GPT involve techniques to improve model performance.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published