tag VeriÖnİşleme
Data Preprocessing (Veri Ön İşleme)
Bu sayfada VeriÖnİşleme (Data Preprocessing (Veri Ön İşleme)) etiketi ile işaretlenmiş 3 yapay zeka kavramını bulabilirsiniz.
Veri Ön İşleme (Data Preprocessing), ham verinin makine öğrenmesi veya derin öğrenme modelleri tarafından işlenebilecek kalitede ve formatta hale getirilmesi için uygulanan dönüşüm süreçlerinin bütünüdür. Gerçek dünya verileri çoğunlukla eksik değerler, aykırı gözlemler, tutarsız formatlar ve gürültü içerir; veri ön işleme bu sorunları gidererek modelin sağlıklı kalıplar öğrenmesini sağlar. Temel adımlar şunlardır: Eksik değer yönetimi — boş hücreler ortalama, medyan veya KNN gibi yöntemlerle doldurulur ya da silinir. Aykırı değer tespiti ve giderimi — istatistiksel sınır dışına çıkan veri noktaları belirlenir, düzeltilir veya kaldırılır. Ölçeklendirme ve normalleştirme — farklı ölçeklerdeki sayısal değişkenler (örneğin yaş ile maaş) Min-Max normalleştirme veya Z-score standartlaştırma ile ortak bir aralığa çekilir; böylece mesafe tabanlı algoritmalar (KNN, SVM) ya da gradyan inişli modeller (sinir ağları) dengeli çalışır. Kategorik kodlama — metin tabanlı kategorik değişkenler One-Hot Encoding veya Label Encoding ile sayısal formata dönüştürülür. Boyut indirgeme — gereksiz veya birbiriyle yüksek korelasyonlu özellikler PCA gibi yöntemlerle elenerek model karmaşıklığı azaltılır. Veri ön işleme, makine öğrenmesi projesinin en fazla zaman harcanan aşamasıdır; veri bilimcilerin yaklaşık yüzde sekseni bu süreçte geçer. scikit-learn'ün Pipeline ve ColumnTransformer yapıları, bu adımları tutarlı ve tekrar kullanılabilir biçimde uygulamayı kolaylaştırır. Doğru veri ön işleme olmadan en güçlü algoritma bile güvenilir tahminler üretemez; bu nedenle model başarısının temeli veri kalitesidir.
Çapraz Doğrulama (Çapraz Doğrulama)
Çapraz doğrulama (cross-validation), makine öğrenimi modellerinin görülmemiş veriler üzerindeki gerçek performansını tarafsız biçimde tahmin etmek için kullanılan istatistiksel bir değerlendirme tekniğidir. Temel fikir, mevcut eğitim verisini birden fazla alt kümeye (fold) bölmek ve her birini dönüşümlü olarak test kümesi olarak kullanmaktır; böylece modelin tüm veri üzerindeki davranışı sistematik biçimde ölçülür. En Yaygın Yöntemler K-Katlamalı Çapraz Doğrulama (k-Fold Cross-Validation): Veri kümesi k eşit parçaya (fold) bölünür. Model, her iterasyonda k-1 parça üzerinde eğitilir ve kalan 1 parça üzerinde test edilir; bu döngü k kez tekrarlanır. Ortalama hata skoru, modelin genel performansının tarafsız tahmini olarak kabul edilir. Pratikte k=5 veya k=10 en sık tercih edilen değerlerdir; bu seçim önyargı-varyans dengesi açısından pratik optimum noktalardır. Biri Dışarıda Bırak (Leave-One-Out / LOO): k değeri veri kümesinin örnek sayısına eşitlenir; her seferinde yalnızca tek bir örnek test için ayrılır. Küçük veri setlerinde maksimum bilgiyi kullanmanın yolu olsa da büyük veri setlerinde hesaplama maliyeti aşırı artar. Tabakalı K-Katlamalı (Stratified k-Fold): Katlar oluşturulurken her kattaki sınıf oranı korunur. Dengesiz sınıf dağılımlarında (fraud detection, tıbbi teşhis gibi) standart k-fold gerçekçi olmayan sonuçlar üretebileceği için bu yöntem tercih edilir. Neden Gereklidir? Tek bir eğitim/test bölünmesi, bölünmenin rastlantısallığına bağlı olarak aşırı iyimser ya da kötümser sonuçlar üretebilir. Çapraz doğrulama bu varyansı azaltır ve modelin aşırı uyum (overfitting) yaşayıp yaşamadığını nesnel biçimde ortaya koyar. Özellikle küçük ve orta ölçekli veri kümelerinde güvenilir performans tahmini için vazgeçilmez bir araçtır. Hiperparametre Ayarı ile Kullanımı Çapraz doğrulama, hiperparametre optimizasyonunun standart parçasıdır. Grid Search veya Random Search algoritmalarıyla birleştirildiğinde her parametre kombinasyonu k kez değerlendirilir. Bu yaklaşım test verisinin dolaylı yollardan eğitime sızmasını (data leakage) önler ve seçilen modelin gerçek dünya performansını daha doğru yansıtır. Sınırlılıklar ve Özel Durumlar k arttıkça hesaplama süresi katlanarak büyür; büyük derin öğrenme modellerinde standart k-fold pratikte pahalı hale gelebilir. Zaman serisi gibi sıralı verilerde standart k-fold geçersizdir çünkü gelecekteki verilerle geçmişi eğitmek sızıntıya (data leakage) neden olur; bu senaryolarda Walk-Forward Validation veya TimeSeriesSplit yöntemleri kullanılır. Çapraz doğrulama, veri biliminin temel kalite güvencesi araçlarından biridir: hem model seçimini hem de genelleme gücünün tahminini istatistiksel olarak sağlam bir temele oturtur.
Data Preprocessing (Veri Ön İşleme)
Veri Ön İşleme (Data Preprocessing), ham verinin makine öğrenmesi veya derin öğrenme modelleri tarafından işlenebilecek kalitede ve formatta hale getirilmesi için uygulanan dönüşüm süreçlerinin bütünüdür. Gerçek dünya verileri çoğunlukla eksik değerler, aykırı gözlemler, tutarsız formatlar ve gürültü içerir; veri ön işleme bu sorunları gidererek modelin sağlıklı kalıplar öğrenmesini sağlar. Temel adımlar şunlardır: Eksik değer yönetimi — boş hücreler ortalama, medyan veya KNN gibi yöntemlerle doldurulur ya da silinir. Aykırı değer tespiti ve giderimi — istatistiksel sınır dışına çıkan veri noktaları belirlenir, düzeltilir veya kaldırılır. Ölçeklendirme ve normalleştirme — farklı ölçeklerdeki sayısal değişkenler (örneğin yaş ile maaş) Min-Max normalleştirme veya Z-score standartlaştırma ile ortak bir aralığa çekilir; böylece mesafe tabanlı algoritmalar (KNN, SVM) ya da gradyan inişli modeller (sinir ağları) dengeli çalışır. Kategorik kodlama — metin tabanlı kategorik değişkenler One-Hot Encoding veya Label Encoding ile sayısal formata dönüştürülür. Boyut indirgeme — gereksiz veya birbiriyle yüksek korelasyonlu özellikler PCA gibi yöntemlerle elenerek model karmaşıklığı azaltılır. Veri ön işleme, makine öğrenmesi projesinin en fazla zaman harcanan aşamasıdır; veri bilimcilerin yaklaşık yüzde sekseni bu süreçte geçer. scikit-learn'ün Pipeline ve ColumnTransformer yapıları, bu adımları tutarlı ve tekrar kullanılabilir biçimde uygulamayı kolaylaştırır. Doğru veri ön işleme olmadan en güçlü algoritma bile güvenilir tahminler üretemez; bu nedenle model başarısının temeli veri kalitesidir.
One-Hot Encoding (Tek-Sıcak Kodlama)
One-hot encoding (tek-sıcak kodlama), kategorik verileri makine öğrenmesi modellerinin işleyebileceği sayısal biçime çeviren temel bir veri ön işleme tekniğidir. Makine öğrenmesi algoritmaları matematiksel işlemler yaptığından, 'kırmızı', 'mavi' veya 'İstanbul' gibi metin tabanlı kategorik değerleri doğrudan kullanamaz. One-hot encoding bu sorunu çözmek için her kategoriye özgü bir ikili (binary) vektör oluşturur. Yöntemin çalışma mantığı şöyledir: N farklı kategoriden oluşan bir değişken için N boyutlu bir vektör uzayı tanımlanır. Her kategori, yalnızca kendi konumundaki bitin '1', diğer tüm bitlerin '0' olduğu benzersiz bir vektörle temsil edilir. Örneğin üç renkten oluşan bir 'renk' değişkeni için: kırmızı → [1, 0, 0], mavi → [0, 1, 0], yeşil → [0, 0, 1]. Bu kodlama biçimi, modelin kategoriler arasında yanlış bir sıralama veya büyüklük ilişkisi kurmasını engeller. Label encoding gibi alternatif yöntemler kategorilere 0, 1, 2... gibi tam sayılar atar; ancak bu yaklaşım modelin 'mavi > kırmızı' gibi anlamsız sıralama çıkarımları yapmasına yol açabilir. One-hot encoding, kategoriler arasında herhangi bir sıralama olmadığını garantiler; çünkü her vektör Öklid uzayında diğerlerine eşit uzaklıktadır. Temel dezavantajı, yüksek kardinaliteli (çok sayıda benzersiz değer içeren) değişkenlerde boyut patlamasına (curse of dimensionality / boyut laneti) yol açmasıdır. Binlerce şehir veya ürün kategorisi içeren bir değişken, binlerce yeni sütun oluşturur. Bu durum hem bellek tüketimini hem de eğitim süresini önemli ölçüde artırır. Bu tür senaryolarda hedef kodlama (target encoding), frekans kodlama veya öğrenilebilir gömme (embedding) katmanları daha uygun alternatifler sunar. One-hot encoding; lojistik regresyon, destek vektör makineleri ve yapay sinir ağları gibi modellerde kategorik özellikleri işlemek için yaygın biçimde kullanılır. scikit-learn'ün OneHotEncoder sınıfı ve pandas'ın get_dummies() fonksiyonu bu dönüşümü birkaç satır kodla gerçekleştirmeyi mümkün kılar. Düşük kardinaliteli, nominal (sırasız) kategorik değişkenlerde tercih edilen bu yöntem, veri ön işleme pipeline'larının vazgeçilmez bir parçasıdır.