Öneri Sistemleri
Tavsiye motorları interneti şekillendiren tek mühendislik disiplinidir: Netflix izlemelerinin %80'i, YouTube tüketiminin %70'i, Amazon'un %35'i öneri sistemlerinden gelir. Bu disiplinin doğuşunu, milyar dolarlık etkisini ve neden tam şimdi öğrenilmesi gerektiğini görüyoruz.
İçindekiler
Modül 0: Kurs Çerçevesi ve Atölye Kurulumu
- 1
Öneri Sistemleri Neden Bu Kadar Önemli? Bir Disiplinin Doğuşu, Bugünü ve Yarını
Tavsiye motorları interneti şekillendiren tek mühendislik disiplinidir: Netflix izlemelerinin %80'i, YouTube tüketiminin %70'i, Amazon'un %35'i öneri sistemlerinden gelir. Bu disiplinin doğuşunu, milyar dolarlık etkisini ve neden tam şimdi öğrenilmesi gerektiğini görüyoruz.
- 2
Recommender Engineer Kimdir? Yetkinlik Atlası ve Junior → Staff Kariyer Haritası
Recommender Engineer = Data Engineer + ML Engineer + ML Researcher + Backend Engineer'ın belirli bir kesişimi. 8 yetkinlik kategorisinde tam atlas, junior → senior → staff yolculuğu, görüşmelerde sorulan tipik sorular ve T-şeklinde uzmanlık stratejisi.
- 3
Kurs Felsefesi: Matematik → Manuel Kod → Kütüphane → Benchmark → Üretim
Bu kurs neden klasik 'Coursera tarzından' farklı? Her konuyu 5 aşamada işliyoruz: (1) Kağıt-kalem matematik, (2) Saf NumPy ile sıfırdan, (3) Kütüphane ile üretim-tarzı, (4) Aynı dataset üzerinde benchmark, (5) 'production gotcha' notu. Bu sıra neden 3x daha derin bir öğrenme verir?
- 4
Atölye Kurulumu: Python 3.12, uv, PyTorch, FAISS, Polars ve Jupyter Lab
Recommender systems çalışmak için modern bir Python ortamını sıfırdan kuruyoruz: uv (Rust-based, conda'dan 80x hızlı), Python 3.12, PyTorch 2.5+, FAISS CPU+GPU, Polars, implicit, lightfm, surprise, Jupyter Lab. Mac, Windows (WSL2), Linux ve Google Colab seçenekleri.
- 5
Veri Setlerimiz ve Etik Sözleşme: MovieLens'ten H&M'e Sahaya İniş
Kurs boyunca kullanacağımız 8 datasetin tam profili: MovieLens (3 boyut), Amazon Reviews (2023), RetailRocket, H&M Fashion, MIND News, Spotify MPD, Last.fm, Yelp. Her birinin lisansı, boyutu, indirme adımı, neye uygun olduğu ve etik sözleşme.
Modül 1: Öneri Sistemleri Manzarası ve Problem Formülasyonu
- 1
Tavsiye Motorları Nerede Çalışır? Netflix, YouTube, Spotify, Amazon, TikTok, Trendyol Mimari Turu
6 büyük şirketin yayınlanmış mühendislik blog'larına dayalı somut mimari turu: Netflix retrieval-ranking pipeline'ı, YouTube'un 2 aşamalı modeli, Spotify Discover Weekly'nin BaRT mimarisi, Amazon item-CF mirası, TikTok Monolith, Trendyol kişiselleştirme.
- 2
Problem Tipolojisi: Rating Prediction vs. Ranking vs. Top-N Retrieval vs. Sequential
Bir recommender problem 4 farklı şekilde formüle edilebilir — ve doğru formülasyonu seçmek çoğu zaman doğru algoritmayı seçmekten önemlidir. Her birinin matematiksel tanımı, ne zaman seçilir, hangi metrikle ölçülür ve hangi gerçek senaryolar yaşar.
- 3
Explicit ve Implicit Feedback: 1-5 Yıldızdan Tıklama-Skip Davranışına Eksiksiz Rehber
Recommender'da kullanılan iki temel veri türü: explicit (kullanıcı bilerek verdiği yıldız/like) vs implicit (click, dwell time, completion, skip). Farkları, loss fonksiyonu etkisi, bias kaynakları, hibrit kullanımı ve gerçek e-ticaret etiketleme stratejileri.
- 4
Cold-Start Probleminin Üç Yüzü: User, Item, System — ve Pratik Çözümler
Recommender sistemlerin en sinir bozucu problemi: hakkında veri olmayan kullanıcı/item'a nasıl öneri yaparsın? User cold-start, item cold-start ve system cold-start için pratik strateji haritası — Netflix'in 5-film ekranından TikTok'un viral-loop'una.
Modül 2: Veri, Etiket ve Etik
- 1
MovieLens'i Sıfırdan Tanıyalım: Schema, EDA ve Polars ile Verimli Yükleme
MovieLens-100K, 1M ve 25M'in dosya yapısı, satır-satır schema, Polars ile lazy/streaming load (Pandas'tan 10-30x hızlı), sparse matrix'e çevirme, ilk EDA grafikleri ve veri kalite kontrolleri.
- 2
Implicit Feedback'i Etikete Çevirmek: Click, Dwell ve Multi-Signal Aggregation
Bir e-ticaret site log'unun ham hali → modelin eğitilebileceği etiket veri seti. Hu/Koren confidence weighting'in matematiği ve NumPy implementasyonu, multi-signal weighted aggregation, session reconstruction, label leakage'ı önleme.
- 3
Bias Galaksisi: Position, Presentation, Popularity ve IPS Düzeltmesi
Recommender sistemlerinin 5 önemli bias'ı (position, presentation, popularity, exposure, selection), her birinin matematiksel tanımı, log data'da gözlemleme yolları, ve Inverse Propensity Scoring (IPS) düzeltmesinin türetimi + NumPy implementasyonu.
- 4
GDPR, KVKK ve Unutulma Hakkı: Recommender'da Hukuk Uyumu
Bir recommender sistemi data subject rights (erişim, silme, taşıma) ile nasıl uyum sağlar? AB AI Act 2024-2026 takvimi, KVKK'nın 2025 güncellemesi, ML modelinden user data'sı çıkarma teknikleri (machine unlearning), audit log gereksinimleri.
Modül 3: Evaluation Protokolleri
- 1
Doğruluk Metrikleri: RMSE, MAE, Precision@K, Recall@K, MAP, MRR, NDCG, HR@K — Tam Matematik + NumPy
8 ana doğruluk metriğinin tam matematiksel tanımı, sıfırdan NumPy implementasyonu, MovieLens üzerinde karşılaştırmalı çalıştırma, ve hangi durumda hangi metriği seçmen gerektiği — recommender mühendisinin metric cheat sheet'i.
- 2
Beyond-Accuracy: Coverage, Diversity (ILS), Novelty, Serendipity ve Popularity Bias Ölçümü
NDCG'si yüksek ama kullanıcı sıkılan recommender'ın sebebi: tek metrik 'doğruluk' ile ölçüldü. Coverage, intra-list similarity (ILS), novelty, serendipity ve gini coefficient ile sistemin tüm yüzlerini ölç.
- 3
Veri Bölme Stratejileri: Random, Time, User, Leave-One-Out — Pratik Trade-Off
MovieLens'i nasıl bölersen NDCG'nin değişir — 0.15 veya 0.25. Bu derste 5 ana split stratejisi, her birinin ne zaman doğru, ne zaman 'leakage' verdiği ve production realism açısından karşılaştırması.
- 4
Online Evaluation: A/B Test, Interleaving, CUPED ve İstatistiksel Güç
Offline NDCG +%2 artırdın — production'a deploy etmeden önce A/B test ile gerçekten kullanıcının davranışını değiştiriyor mu doğrula. A/B test sample size matematiği, interleaving (10x daha verimli), CUPED varyans azaltma ve switchback testing.
- 5
Offline-Online Boşluğu: Dacrema Krizi ve Doğru Protokol Seçimi
2019'da Dacrema, Cremonesi, Jannach paper'ı recommender literatürünü silkeledi: 'Neural recommender'lar gerçekten iyi mi? Çoğunu klasik k-NN bile geçiyor.' Bu derste reproducibility krizi, offline-online korelasyon problemi ve nasıl doğru protokol seçileceği.
Modül 4: Content-Based Filtering
- 1
Content-Based Filtering Felsefesi: 'Ne İzledi' Yerine 'Neye Benziyor'
Collaborative filtering 'benzer kullanıcılar' arar, content-based 'benzer item'lar' arar. Bu felsefi fark teknik kararları belirler — cold-start avantajı, filter bubble dezavantajı, hybrid stratejileri. Konsept + matematik + endüstri pozisyonlama.
- 2
Item Profilleme: TF-IDF, BM25, n-gram ve Kategorik Feature Encoding — Matematik + NumPy
Content-based recommender'ın temeli: item'ı sayısal vektöre çevirme. TF-IDF formülü tam türetim + sıfırdan NumPy implementasyon, BM25'in TF-IDF'ten farkı, n-gram ile film başlığı işleme, kategorik encoding (one-hot, target encoding, frequency encoding).
- 3
Sıfırdan NumPy ile Content-Based Recommender: MovieLens-100K Üzerinde 150 Satır
Bu modülün omurga dersi: MovieLens-100K'da gerçek bir content-based recommender kuruyoruz — sadece NumPy ile, 150 satır kod, end-to-end. Item profilleme, user profile vektörü, cosine scoring, top-N öneri, evaluation. Sonra sklearn ile karşılaştırma ve baseline tablomuza ilk satır.
- 4
Production Notları: Feature Drift, Multi-Modal Content, ve Türkçe NLP'nin Zorlukları
Modül 4'ün kapanışı: content-based recommender'ı 6 ay production'da tuttuğunda karşılaşacağın gerçek problemler. Feature distribution drift, multi-modal embedding (image+text+audio) ile cold-start gücü, CLIP/SBERT modern yaklaşımlar, Türkçe NLP özelinde stemming + BERTurk.
Modül 5: Memory-Based Collaborative Filtering (k-NN)
- 1
k-NN Collaborative Filtering: User-User vs Item-Item — Hangisi Ne Zaman?
Recommender disiplininin doğum makalesi GroupLens 1994. 30 yıl sonra hala her recommender sistemin temel baseline'ı. Bu derste user-user CF ve item-item CF'in felsefi farkları, her birinin matematiksel formülasyonu, hangi senaryoda hangisinin kazandığı.
- 2
Similarity Metrikleri: Pearson, Cosine, Adjusted Cosine, Jaccard — Tam Matematik + NumPy
Tüm CF algoritmalarının temeli: 4 ana similarity metric. Pearson correlation (rating bias düzeltmesi), cosine similarity (vektör yön), adjusted cosine (user bias düzeltmesi), Jaccard (binary implicit). Tam matematiksel türetim + sıfırdan NumPy + MovieLens karşılaştırması.
- 3
Sıfırdan NumPy ile Item-Item k-NN: MovieLens-1M Üzerinde Production-Grade
Modül 5'in omurga dersi: MovieLens-1M üzerinde sıfırdan production-grade item-item k-NN. Adjusted cosine + shrinkage, sparse matrix optimizasyonları, offline batch precomputation pattern, top-K neighbor caching, benchmark tablomuza ikinci satır.
- 4
Scalability Tavanları: 100M Rating Üstünde Optimizasyon Stratejileri
MovieLens-1M çok küçük — gerçek dünyada 100M+ rating, 10M+ item'la çalışırsın. Bu derste: offline batch precomputation pattern, LSH (Locality-Sensitive Hashing), MinHash ile approximate Jaccard, MapReduce/Spark ile distributed computation, Redis-tabanlı serving.