YouTube video yorumlarını çekerek ML.NET ile sentiment (duygu) analizi yapan bir .NET uygulaması.
- ✅ YouTube Yorum Çekme: YouTube Data API v3 ile video yorumlarını çeker
- ✅ ML.NET Sentiment Analizi: Pozitif/negatif yorum sınıflandırması
- ✅ Akıllı Model Güncelleme: Her analiz sonrası model otomatik öğrenir
- ✅ Detaylı Rapor:
- Pozitif/negatif yorum sayıları ve yüzdeleri
- Ortalama beğeni sayısı
- Weighted memnuniyet skoru (beğeni ağırlıklı)
- ✅ Türkçe Destek: Türkçe yorumlar için optimize edilmiş model
- .NET 8.0 SDK
- YouTube Data API v3 anahtarı (Nasıl alınır?)
-
Projeyi klonlayın:
git clone <repo-url> cd YoutubeVideoSentiment
-
Paketleri yükleyin:
dotnet restore
-
API anahtarını yapılandırın:
appsettings.example.jsondosyasınıappsettings.jsonolarak kopyalayınYouTubeApiKeyalanına API anahtarınızı yazın- Veya
YOUTUBE_API_KEYenvironment variable'ını ayarlayın
-
Uygulamayı çalıştırın:
dotnet run
- Program çalıştığında YouTube video URL'sini girin
- Yorumlar otomatik olarak çekilir ve analiz edilir
- Detaylı rapor konsola yazdırılır
- Model otomatik olarak güncellenir (yeni yorumlarla öğrenir)
YoutubeVideoSentiment/
├── Models/ # Veri modelleri
├── Services/ # İş mantığı servisleri
│ ├── YouTubeCommentService.cs # Yorum çekme
│ ├── SentimentAnalysisService.cs # ML.NET analizi
│ └── SentimentReportService.cs # Rapor oluşturma
├── Program.cs # Ana uygulama
└── appsettings.json # Yapılandırma (gitignore'da)
- ML.NET: Binary classification ile sentiment analizi
- Incremental Learning: Her analiz sonrası model güncellenir
- Akıllı Etiketleme: Model tahmini + beğeni sayısı kombinasyonu
- CSV Kayıt: Eğitim verisi
training_data.csvdosyasına kaydedilir
- YouTube API bazı yorumları döndürmeyebilir (silinmiş, gizli, moderasyonda)
- İlk çalıştırmada model eğitilir, sonraki çalıştırmalarda kaydedilmiş model yüklenir
- Model zamanla daha doğru hale gelir (her video analizi ile öğrenir)
Bu proje eğitim amaçlıdır.