Normalleştirme ve standartlaştırma

Tamamlandı

Özellik Ölçeklendirme , bir özelliğin sahip olduğu değer aralığını değiştiren bir tekniktir. Bunun yapılması modellerin daha hızlı ve daha güçlü öğrenmelerine yardımcı olur.

Normalleştirme ile standartlaştırma karşılaştırması

Normalleştirme , değerleri belirli bir aralıkta (genellikle 0-1) sığacak şekilde ölçeklendirmek anlamına gelir. Örneğin, kişilerin yaşlarının 0, 50 ve 100 yıllık bir listesi varsa, değerlerinizin 0, 0,5 ve 1 olması için yaşları 100'e bölerek normalleştirebilirsiniz.

Standartlaştırma benzerdir, ancak bunun yerine değerlerin ortalamasını (ortalama olarak da bilinir) çıkarır ve standart sapmaya böleriz. Standart sapma hakkında bilginiz yoksa, endişelenmeyin, bu, standartlaştırmadan sonra ortalama değerimizin sıfır olduğu ve değerlerin yaklaşık %95'inin -2 ile 2 arasında olduğu anlamına gelir.

Verileri ölçeklendirmenin başka yolları da vardır, ancak bunların nüansları şu anda bilmemiz gerekenlerin ötesindedir. Şimdi neden normalleştirme veya standartlaştırma uyguladığımızı inceleyelim.

Neden ölçeklendirmemiz gerekiyor?

Eğitimden önce verileri normalleştirmenin veya standartlaştırmanın birçok nedeni vardır. Bunları bir örnekle daha kolay anlayabilirsiniz. Bir köpeğin karda çalışma konusunda başarılı olup olmayacağını tahmin etmek için bir model eğitmek istediğimizi düşünelim. Verilerimiz aşağıdaki grafikte nokta olarak gösterilir ve bulmaya çalıştığımız eğilim çizgisi düz bir çizgi olarak gösterilir:

50'den başlayarak köpek boyu ve kurtarma grafiğinde ölçeklendirmeyi gösteren diyagram.

Ölçeklendirme, öğrenmeye daha iyi bir başlangıç noktası sağlar

Yukarıdaki grafikteki en uygun çizginin iki parametresi vardır: 50 olan kesme noktası, x=0'daki çizgi ve 0,01 olan eğim; Her 1000 milimetre kurtarmayı 10 artırır. Bu parametrelerin her ikisi için de ilk 0 tahminleriyle eğitime başladığımızı varsayalım.

Eğitim yinelemelerimiz parametreleri yineleme başına ortalama 0,01 civarında değiştiriyorsa, kesme noktası bulunmadan önce en az 5000 yineleme gerekir: 50 / 0,01 = 5000 yineleme. Standartlaştırma bu en uygun kesme noktasını sıfıra yaklaştırabilir, bu da onu çok daha hızlı bulabileceğimiz anlamına gelir. Örneğin, etiketimizden ortalamayı çıkarırsak (yıllık kurtarmalar ve özelliğimiz) yükseklik, kesme noktası -0,5'tir, 50 değil, yaklaşık 100 kat daha hızlı bulabiliriz.

0'dan başlayarak köpek boyu ve kurtarma grafiğinde ölçeklendirmeyi gösteren diyagram.

İlk tahmin işaretinden uzak olduğunda karmaşık modellerin eğitilmesinde çok yavaş olmasının başka nedenleri de vardır, ancak çözüm hala aynıdır: özellikleri ilk tahmine daha yakın bir değere kaydırma.

Standartlaştırma, parametrelerin aynı hızda eğitmelerine olanak tanır

Yeni uzaklık verilerimizde ideal -0,5 uzaklığımız ve ideal eğimimiz 0,01'dir. Sıfırlama, işlerin hızlanmasına yardımcı olsa da, uzaklığı eğitmek eğimi eğitmeye kıyasla çok daha yavaştır. Bu, işleri yavaşlatabilir ve eğitimi kararsız hale getirir.

Örneğin, uzaklık ve eğim için ilk tahminlerimiz her ikisi de sıfırdır. Parametrelerimizi her yinelemede yaklaşık 0,1 olarak değiştiriyorsak, uzaklığı hızlı bir şekilde buluruz, ancak doğru eğimi bulmak çok zor olacaktır çünkü eğimdeki artışlar çok büyük (0 + 0,1 > 0,01) olacaktır ve ideal değeri aşabilir. Ayarlamaları küçültebiliriz, ancak bu, kesme noktasını bulmanın ne kadar süreceğini yavaşlatır.

Yükseklik özelliğimizi ölçeklendirirsek ne olur?

Köpek yüksekliği ve kurtarma ölçeklendirilen bir grafikte standartlaştırmayı gösteren diyagram.

Çizginin eğimi şimdi 0,5'tir. X eksenine dikkat edin. En uygun -0,5 kesme noktası ve 0,5 eğimimiz aynı ölçektedir! Artık gradyan azalmanın parametreleri ne kadar hızlı güncelleştirdiğiyle ilgili mantıklı bir adım boyutu seçmek kolaydır.

Ölçeklendirme birden çok özelliğe yardımcı olur

Birden çok özellik üzerinde çalışırken, bunları farklı bir ölçekte bulundurmak, kesme noktası ve eğim örneklerinde gördüğümüze benzer şekilde, sığdırmada sorunlara neden olabilir. Örneğin, metrik ton cinsinden hem yüksekliği hem de ağırlığı kabul eden bir model eğitiyorsak, birçok model, yükseklik özelliklerine göre çok küçük olduğu için ağırlık özelliğinin önemini takdir etmek için zorlanır.

Her zaman ölçeklendirmem gerekiyor mu?

Her zaman ölçeklendirmemiz gerekmez. Düz çizgili önceki modeller de dahil olmak üzere bazı model türleri gradyan azalma gibi yinelemeli bir yordam olmadan uygun olabilir, bu nedenle özelliklerin yanlış boyutta olmasını sorun etmezler. Diğer modellerin iyi eğitilmesi için ölçeklendirme gerekir, ancak kitaplıkları genellikle özellik ölçeklendirmeyi otomatik olarak gerçekleştirir.

Genel olarak, normalleştirme veya standartlaştırmanın tek dezavantajı modellerimizi yorumlamayı zorlaştırabilmesi ve biraz daha fazla kod yazmamız gerekmesidir. Bu nedenle özellik ölçeklendirme, makine öğrenmesi modelleri oluşturmanın standart bir parçasıdır.