Veriyi kullanırken temel amacımız makinenin veri setleri üzerinden bir şeyler öğrenmesi, bizim de gerçekleştirilen bu öğrenimin ne kadar başarılı olduğunu ölçebilmemizdir. Bu işlemi yapabilmemiz için pek çok çeşitli yöntem mevcut. Ben kendi çalışmalarımda literatürde Percentage Split ismiyle geçen yapıyı kullandım ve her veri setimi test veri grubu ve eğitim veri grubu olacak şekilde ikiye ayırdım. Veri setimizi ikiye ayırırken hangi oranlarla eğitim ve test olarak kullanacağımız bize ve yapacağımız çalışmadaki plana kalmıştır ancak gördüğüm ve öğrendiğim kadarıyla genel kullanımda bu oran Test için 1/3 Eğitim için 2/3 olacak şekilde belirlenmektedir.
Bir veri seti içerisinde farklı veri gruplarının istatistiksel değerleri, standart sapmaları vs. bazı özellikleri birbirinden farklılık gösterebilmektedir. Örneğin bir grup insanın boy verileri ve kilo verilerini veya yaş verilerini aynı dünyada değerlendirirsek hata yapmış oluruz. Çünkü bu üç veri grubunun değerleri arasında büyük farklılıklar bulunabilir ve bu durum veri gruplarının işleme etkilerinde olumsuzluklara sebep olabilir. Dolayısıyla bu durum veri biliminde bir problem oluşturmaktadır. Bu problemi çözebilmek için bu ayrı dünyadaki verileri alıp ortak bir dünyada birleşecek hale getirmemiz gerekir. Yani kısaca verileri ortak bir değer aralığında ölçeklendirebilmemiz gerekmektedir. Bunun için veri biliminde iki klasik yöntem bulunmaktadır. Bunlardan biri Standartlaştırma diğeri ise Normalleştirmedir.
Standartlaştırma yönteminde veri grubu içindeki bütün değerlerin orta değerini 0′ a çekeriz ve bu oranda ortalama üstü değerleri (+), ortalama altı değerleri (-) değerler alacak şekilde belirleriz. Normalleştirmede ise veri setimiz içerisindeki bütün değerleri 0–1 arasına yerleştiririz. Normalleştirme yöntemi ekstrem değerler üzerinde yapılan işlemlerde daha fazla sorun çıkartırken yakın verilerde daha kullanışlıdır.
Standartlaştırma işlemi için önce işlemi gerçekleştireceğimiz bütün veri değerlerinin ortalamasını ve standart sapmasını bulmamız gerekmektedir. Normalleştirme işlemi içinse işlemi gerçekleştireceğimiz veri değerlerinden minimum ve maksimum sayı değerlerini bilmemiz yeterlidir.
Bu iki işlemin formül olarak gösterimi aşağıdaki gibidir.
Şimdi bahsettiğim bu iki yöntem için excel üzerinde örnek göstererek olayı daha anlaşılır hale getirmeye çalışacağım.
Şekildeki excel tablosunda bir grup insanın ülkesi, boyu, kilosu, yaşı, cinsiyeti gibi bilgiler mevcuttur. Bu veri grupları içerisinden boy ve kilo verilerini hesap yapacağımız bir sistemde kullandığımızı düşünelim. Görüldüğü gibi hesap yapacağımız sistemde boy değeri kilo değerine oranla daha büyük etkiye sahip olacaktır. Ölçeklendirme işlemi sayesinde boy ve kilo verilerinin yapacağımız hesaplama işlemine eşit derecede etki etmesini sağlayabiliriz. Örnekteki boy ve kilo verileri üzerinde hem standartlaştırma hem de normalleştirme yöntemleri kullanılarak bu iki veri grubunu ortak bir dünyanın unsuru haline getirebilmemiz mümkündür. Şekildeki excel tablosu için Standartlaştırma ve Normalleştirme işlemlerini yaparken tabi ki tek tek tüm değerleri kendimizin el ile hesaplaması gerekmiyor. Bu iş için excel üzerinde komutlar kullandım ve excel seçtiğim tüm satır ve sütun değerleri için gerekli işlemleri gerçekleştirdi.
Örneğimdeki boy değerlerinin Standartlaştırılmış ve Normalleştirilmiş değerleri için kullandığım excel komutları aşağıdaki gibidir.
-minimum değer Formülü: =min(B2:B21)
-maksimum değer Formülü: =mak(B2:B21)
-Ortalama değer Formülü: =ortalama(B2:B21)
-Standart Sapma Formülü: =stdsapma(B2:B21)
-B2 değeri için Standartlaştırma Formülü: =(B$2-B$25)/B26
-B2 değeri için Normalleştirme Formülü: =(B2-B$23)/(B$24-B$23)
Excel de kullanılan “$” sembolü hücre sabitlemesi için kullanılmaktadır. Kolon aşağı doğru sürüklendikçe bütün boy değerleri için sırasıyla aynı işlemler gerçekleştirilir ve ilgili sonuçlar bulunur. Bu sayede aynı formülü tekrar tekrar yazmamıza da gerek kalmaz.
Bu şekilde gerek duyduğumuz durumlarda ölçeklendirme işlemlerini kolayca gerçekleştirebiliriz. Tabi ki bu değerleri kodlama ortamında da elde etmemiz mümkündür.
Devam eden yazılarımda Python ile veri setlerini nasıl kullanabiliriz, veri setleri kullanılarak makineye nasıl tahminler yaptırabiliriz, hangi yöntemler mevcuttur ve bu yöntemleri nerelerde nasıl kullanabiliriz konuları üzerinde duracağım. Bir sonraki yazımı okumanız dileğiyle, sağlıklı ve mutlu günler dilerim.