Feature scaling nedir? Standardization ile normalization arasındaki fark nedir ve hangi modeller ölçeklendirme gerektirir?
Cevap
Feature scaling, farklı birimlerdeki özellikleri (örneğin yaş 0–100, gelir 0–1.000.000) karşılaştırılabilir aralıklara getirmektir.
| Yöntem | Formül | Ne zaman |
|---|---|---|
| Standardization (z-score) | (x - μ) / σ | Varsayılan tercih, lineer modeller, sinir ağları |
| Min-max normalization | (x - min) / (max - min) | Sabit aralık gerekirse (0–1), görüntü pikselleri |
| Robust scaling | (x - medyan) / IQR | Çok outlier varsa |
| Log dönüşümü | log(1 + x) | Sağa çarpık dağılımlar (gelir, sayımlar) |
Hangi modeller etkilenir?
- Gerektirir: Mesafe tabanlı modeller (k-NN, k-means, SVM), gradient descent ile eğitilen modeller (lineer/lojistik regresyon, sinir ağları), regularization kullanan modeller, PCA.
- Gerektirmez: Karar ağaçları, Random Forest, XGBoost/LightGBM. Ağaçlar eşik bazlı split yaptığı için monoton dönüşümlerden etkilenmez.
Kategorik özellikler
- Düşük kardinalite: one-hot encoding.
- Yüksek kardinalite (şehir, ürün ID): target encoding (CV içinde, leakage'a dikkat), hashing veya embedding.
- Sıralı kategoriler: ordinal encoding.
from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import StandardScaler, OneHotEncoder
pre = ColumnTransformer([
("num", StandardScaler(), ["age", "income"]),
("cat", OneHotEncoder(handle_unknown="ignore"), ["city"]),
])Kritik nokta: Scaler sadece train verisine fit edilir, validation/test/production'da aynı parametrelerle sadece transform yapılır.
İlgili Makine Öğrenmesi soruları
- Hiperparametre optimizasyonunu nasıl yaparsınız? Grid search, random search ve Bayesian optimization'ı karşılaştırın.
- PCA (Principal Component Analysis) nasıl çalışır? Ne zaman kullanılır, ne zaman kullanılmamalıdır?
- NumPy kullanarak k-means algoritmasını sıfırdan yazın. k değerini nasıl seçersiniz ve algoritmanın sınırlamaları nelerdir?
- XGBoost ve LightGBM klasik gradient boosting'den hangi açılardan farklıdır? En önemli hiperparametreleri nelerdir?
- Random Forest ile Gradient Boosting arasındaki fark nedir? Bagging ve boosting'i karşılaştırın.
- Lineer regresyon ile lojistik regresyon arasındaki fark nedir? Lojistik regresyonda neden MSE yerine log-loss kullanılır?
Bu konuda başka bir soru biliyor musun?
Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.