
Bu proje, metinleri pozitif, negatif veya nötr olarak sınıflandırmayı amaçlayan gelişmiş bir makine öğrenmesi modeli geliştirir. BERT ve RoBERTa gibi son teknoloji transformer modellerinden yararlanılarak, metin verileri gelişmiş veri ön işleme ve duygu analizi teknikleri kullanılarak temizlenir ve düzenlenir.
Çok sınıflı duygu sınıflandırması (pozitif, negatif, nötr)
Çok dilli BERT ile birden fazla dil desteği
REST API aracılığıyla gerçek zamanlı duygu tahmini
Büyük ölçekli metin analizi için toplu işleme
Her tahmin için güven puanları
Detaylı içgörüler için alana dayalı duygu analizi
Transfer öğrenimi yoluyla özel alan adaptasyonu
Zaman içindeki duygu eğilimi analizi
Varlık düzeyinde duygu çıkarımı
Duygu dağılımı için görselleştirme panosu
Analiz sonuçları için dışa aktarma işlevi
Popüler veri kaynaklarıyla entegrasyon (Twitter, Reddit, incelemeler)
Bu Doğal Dil İşleme (NLP) projesi, klasik makine öğrenmesi yaklaşımlarını en yeni transformer mimarileriyle birleştiren modern duygu analizi tekniklerinin kapsamlı bir keşfini sunmaktadır. BERT (Bidirectional Encoder Representations from Transformers) ve RoBERTa (Robustly Optimized BERT Approach) gibi modellerden yararlanarak, sistem basit pozitif/negatif sınıflandırmasının ötesine geçen, metinsel duygunun incelikli bir anlayışını elde eder. Proje, sosyal medya takibi, müşteri geri bildirim analizi, ürün inceleme sınıflandırması ve marka itibarı yönetimi dahil olmak üzere çeşitli alanlarda otomatik duygu analizine yönelik artan ihtiyacı karşılamaktadır. Gelişmiş ön işleme hatları ve ileri model mimarileri aracılığıyla sistem, şaka, karma duygular ve alana özgü dil içeren karmaşık metinlerde bile duyguyu doğru bir şekilde tespit edebilir. Uçtan uca işlem hattı; veri toplama ve etiketleme, kapsamlı metin ön işleme, hem geleneksel NLP teknikleri hem de modern gömmeleri kullanarak özellik çıkarma, karşılaştırma için birden fazla mimariyle model eğitimi ve ölçeklenebilir bir REST API olarak dağıtımı kapsar. Nihai sistem, gerçek dünya iş problemlerini çözmede en son NLP araştırmalarının pratik uygulamasını göstermektedir.
BERT-base ve RoBERTa-large modellerini uygular; her ikisi de çok başlı öz-dikkat mekanizmalarına sahip 12 transformer katmanına sahiptir. BERT'in çift yönlü ön eğitimi, bağlamın derinlemesine anlaşılmasını sağlarken, RoBERTa'nın optimize edilmiş eğitim prosedürü sağlamlığı artırır. Optimum performans için alana özgü veriler üzerinde ince ayarlanmış, düzenleme için bırakma (dropout) ile sınıflandırma başlığı eklenmiştir.
Duyguyla ilgili noktalama işaretlerini korurken HTML etiketlerini, URL'leri ve özel karakterleri kaldırmayı içeren kapsamlı metin temizliği. 30.000 kelime dağarcığı boyutuna sahip WordPiece belirteci kullanarak belirteçleme. Küçük harfe çevirme, durdurma kelimesi kaldırma (olumsuzlamalar için istisnalar hariç) ve kök bulma uygulandı. Emojileri metinsel duygu tanımlayıcılarına dönüştürerek ele alındı. 512 belirteçte dikkat maskeleme ile maksimum dizi uzunluğu kesilmesi uygulandı.
Birden fazla alandan (ürün incelemeleri, sosyal medya, haberler) 100.000'den fazla etiketlenmiş örnekten oluşan veri kümesi. Dengeli sınıf dağılımını sağlamak için katmanlı eğitim/doğrulama/test bölümlemesi (70/15/15) uygulandı. Dengesiz verileri işlemek için sınıf ağırlıklandırması ile çapraz entropi kaybı kullanıldı. Öğrenme oranı ısınması ve doğrusal düşüş ile AdamW iyileştirici. Doğrulama F1-puanına dayalı erken durdurma ile 5 dönem boyunca eğitim. %89 doğruluk ve 0.87 F1-puanı elde edildi.
Öğretmen modelin performansının %97'sini korurken çıkarım süresini %60 azaltan daha küçük, daha hızlı bir öğrenci modeli (DistilBERT) oluşturmak için bilgi damıtma uygulandı. INT8 hassasiyetine niceleme, işlem verimini daha da artırır. Optimize edilmiş çalışma zamanı ile ONNX dışa aktarımı, verimli dağıtıma olanak tanır. Toplu işleme ve dinamik toplu işleme stratejileri GPU kullanımını en üst düzeye çıkarır.
FastAPI arka ucu, tahminler için yüksek performanslı REST uç noktaları sağlar. Redis önbellekleme katmanı, yinelenen çıkarımları azaltmak için en son tahminleri depolar. Celery görev kuyruğu, zaman uyumsuz toplu işlemeyi yönetir. PostgreSQL veritabanı, tahmin geçmişini ve analitikleri depolar. Yatay ölçeklendirme, yük dengeleyici ile birden fazla model sunucusuna trafiği dağıtır. Prometheus ve Grafana ile izleme, performans metriklerini takip eder.
Alana dayalı duygu analizi, metinde bahsedilen belirli varlıklara veya alanlara yönelik duyguyu tanımlar. Duygu tespiti, kutupluluğun ötesine geçerek belirli duyguları (neşe, öfke, üzüntü vb.) tanır. Şaka tespit modülü, yanlış sınıflandırmayı önlemek için potansiyel şakaları tanımlar. MBERT aracılığıyla çok dilli destek, çapraz dilli duygu analizine olanak tanır.
