Özellik Mühendisliği Nedir?
Özellik mühendisliği, ham veriden makine öğrenimi modellerinin daha iyi öğrenebileceği anlamlı özellikler oluşturma sürecidir. Bu süreç, veri biliminin en önemli ve yaratıcı aşamalarından biridir.
İyi tasarlanmış özellikler, modelin performansını önemli ölçüde artırabilir, eğitim süresini kısaltabilir ve daha yorumlanabilir sonuçlar elde edilmesini sağlayabilir. Özellik mühendisliği, veri anlayışı ve alan bilgisi gerektirir.
Özellik mühendisliği süreci, veri temizleme, özellik çıkarma, özellik dönüştürme, özellik seçimi ve özellik oluşturma adımlarını içerir. Bu adımlar, ham veriyi makine öğrenimi modellerinin daha etkili kullanabileceği bir forma dönüştürür.
Özellik Mühendisliği Adımları
-
Veri Temizleme
Eksik değerleri doldurma, aykırı değerleri işleme
-
Özellik Çıkarma
Ham veriden anlamlı özellikleri çıkarma
-
Özellik Dönüştürme
Özellikleri normalize etme, ölçeklendirme
-
Özellik Seçimi
En önemli özellikleri belirleme
-
Özellik Oluşturma
Mevcut özelliklerden yeni özellikler türetme
Veri Temizleme ve Ön İşleme
Eksik Değer İşleme
Eksik değerler, veri setlerinde sıkça karşılaşılan bir sorundur. Bu değerlerin uygun şekilde işlenmesi, model performansı için kritik öneme sahiptir.
Eksik Değer İşleme Yöntemleri:
- Silme: Eksik değer içeren satırları veya sütunları silme
- Ortalama/Medyan/Mod ile Doldurma: Eksik değerleri istatistiksel ölçülerle doldurma
- İleri Doldurma/Geri Doldurma: Zaman serilerinde önceki veya sonraki değerlerle doldurma
- Tahmin ile Doldurma: Regresyon veya KNN gibi yöntemlerle eksik değerleri tahmin etme
- Özel Değer Atama: Eksik değerlere özel bir değer atama (örn. -999, "Bilinmiyor")
Aykırı Değer İşleme
Aykırı değerler, veri dağılımından önemli ölçüde sapan değerlerdir. Bu değerler, modelin performansını olumsuz etkileyebilir.
Aykırı Değer Tespit ve İşleme Yöntemleri:
- Z-Skoru: Ortalamadan standart sapma cinsinden uzaklık
- IQR (Çeyrekler Arası Aralık): Q1-1.5*IQR ve Q3+1.5*IQR dışındaki değerler
- DBSCAN: Yoğunluk tabanlı kümeleme ile aykırı değer tespiti
- İzolasyon Ormanı: Rastgele bölme ile aykırı değer tespiti
- Aykırı Değer İşleme: Silme, kırpma (capping), dönüştürme veya özel değer atama
Özellik Dönüştürme Teknikleri
Ölçeklendirme ve Normalizasyon
Farklı ölçeklerdeki özellikleri standart bir aralığa getirmek, birçok makine öğrenimi algoritması için önemlidir.
Yaygın Yöntemler:
- Min-Max Ölçeklendirme: Değerleri [0,1] aralığına getirme
- Standart Ölçeklendirme (Z-score): Ortalama=0, standart sapma=1 olacak şekilde dönüştürme
- Robust Ölçeklendirme: Medyan ve IQR kullanarak ölçeklendirme
- Logaritmik Dönüşüm: Çarpık dağılımları normalleştirme
- Kare Kök Dönüşümü: Pozitif çarpık dağılımları normalleştirme
Kategorik Veri Dönüşümü
Kategorik verileri sayısal forma dönüştürmek, makine öğrenimi algoritmaları için gereklidir.
Yaygın Yöntemler:
- One-Hot Encoding: Her kategori için yeni bir ikili sütun oluşturma
- Label Encoding: Kategorileri sayısal değerlere dönüştürme
- Target Encoding: Kategorileri hedef değişkenin ortalamasıyla değiştirme
- Binary Encoding: Kategorileri ikili kodlara dönüştürme
- Embedding: Derin öğrenme için kategorik değerleri gömme vektörlerine dönüştürme
Boyut İndirgeme
Yüksek boyutlu veriyi daha düşük boyutlu bir uzaya dönüştürerek, hesaplama verimliliğini artırma ve gürültüyü azaltma.
Yaygın Yöntemler:
- Temel Bileşen Analizi (PCA): Doğrusal boyut indirgeme
- t-SNE: Yüksek boyutlu veriyi görselleştirme için boyut indirgeme
- UMAP: t-SNE'ye alternatif, daha hızlı bir yöntem
- LDA (Linear Discriminant Analysis): Sınıf ayrımını maksimize eden boyut indirgeme
- Otokodlayıcılar: Sinir ağları kullanarak boyut indirgeme
Özellik Seçimi ve Oluşturma
Özellik Seçimi
Özellik seçimi, en önemli özellikleri belirleyerek model karmaşıklığını azaltır, aşırı öğrenmeyi önler ve yorumlanabilirliği artırır.
Özellik Seçimi Yöntemleri:
- Filtre Yöntemleri:
- Korelasyon analizi
- Chi-kare testi
- ANOVA F-değeri
- Bilgi kazancı (Information Gain)
- Sarmalayıcı Yöntemler (Wrapper):
- Recursive Feature Elimination (RFE)
- Forward Selection
- Backward Elimination
- Gömülü Yöntemler (Embedded):
- Lasso Regresyon (L1 regularization)
- Random Forest özellik önemi
- Gradient Boosting özellik önemi
Özellik Oluşturma
Özellik oluşturma, mevcut özelliklerden yeni özellikler türeterek modelin öğrenme kapasitesini artırır.
Özellik Oluşturma Teknikleri:
- Matematiksel Dönüşümler:
- Toplama, çıkarma, çarpma, bölme
- Polinomiyal özellikler
- Logaritmik, üstel, trigonometrik dönüşümler
- Zaman Serisi Özellikleri:
- Hareketli ortalama, standart sapma
- Lag özellikleri
- Tarih/saat bileşenleri (yıl, ay, gün, saat)
- Mevsimsellik göstergeleri
- Metin Özellikleri:
- Kelime sayısı, karakter sayısı
- TF-IDF (Terim Frekansı-Ters Doküman Frekansı)
- N-gram özellikleri
- Metin gömme vektörleri (Word2Vec, BERT)