"Enter"a basıp içeriğe geçin

Veri yükleme ve test verisi ayrıştırma

Bir makine öğrenmesi modeli için öncelikle çözülmesi gereken bir probleme, probleme ait veriye, ve veriyi işleyebilir hale getirecek araçlara sahip olmamız gerekir.

Buna uygun olarak ilk uygulamamızı aşağıdaki veri setini pandas ile yükleyerek hızlı bir şekilde başlayalım. Şimdi bilgisayarınızda yeni bir klasör yaratın ve aşağıdaki veri setini içerisine indirin.

Şimdi jupyter notebook’u açarak dosyanın bulunduğu dizine gidin ve yeni bir jupyter notebook yaratın. Son olarak işletim sistemi terminalinize giderek aşağıdaki kütüphaneleri yükleyin. Elbette yetkili kullanıcı olduğunuzdan emin olun.

pip install pandas
pip install numpy
pip install sklearn

Artık kod yazmaya hazırsınız.

#veri yüklemek üzere  ihtiyacımız olan pandas kütüphanesini pd kısa adıyla kullanmak üzere yükle:
import pandas as pd
#çeşitli numerik uygulamalarda kullanmak üzere numpy kütüphanesini np kısa adı ile yükle:
import numpy as np

Kütüphanelerimizi yükledikten sonra bunları kullanmaya başlayabiliriz.

data = pd.read_table("load_data_and_split.txt", sep=",")
data

Yukarıdaki kodu da çalıştırdığımızda aşağıdaki gibi bir jupyter notebook görüntüsüne sahip olduk.

Buraya kadar yaptıklarımızla X1 ve X2 özelliklerine (Features) sahip ve Y etiketi (label) ile etiketlenmiş bir tabloyu görüntüledik. Pandas’ın read_table fonksiyonunda dosyamızda kolonlar virgül ile ayrıştırıldığı için sep parametresi ile bunu belirttik. Bu sayede kolon yapısı bozulmadan dosyamızı pandas dataframe‘i haline getirmiş olduk.

İleri yazılarda yapacağımız uygulamalarda göreceksiniz ki modelleri eğitirken özellik belirten kolonları ayrı etiket belirten kolonları ayrı ayrı modele sunuyoruz.

Bunu numpy kütüphanesi ile hızlıca yapabiliyoruz:

X = np.array(data[['X1', 'X2']])
y = np.array(data['Y'])

Bir çok uygulamada özellik isimlerini X, etiket isimlerini ise y olarak göreceksiniz. features ve labels gibi türevler de oldukça yaygın olarak kullanılıyor. Kendi isimlendirmelerinizi kullanmakta özgür olduğunuzu da hatırlatalım.

Yazının son adımı ise bundan sonra hayatınızın içinde olacak eğitim ve test verisinin ayrıştırılması. Bunu ise scikit-learn kütüphanesinin train_test_split() fonksiyonunu kullanarak yapacağız.

Makine Öğrenmesi için altın kural test için ayrılan veri setinin asla model eğitimi, model parametrelerine karar verilmesi gibi aşamalarda kullanılmamasıdır.

Bu altın kural sebebi ile işlemlere başlarken ilk adım bu ayrıştırmayı yapmaktır:

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, shuffle=True)

test_size parametresi veri setinizin ne kadarını test seti olarak ayrıştıracağınızı belirtir. shuffle parametresi ise veri setini karıştırarak mı yoksa karıştırmadan mı ayrıştırılacağına karar vermenizi sağlar. Eğer probleminize has bir durum yok ise True olarak kullanmak genellikle en sağlıklı yoldur.

Yaptığımız uygulamaları tamamı ile kendinizin yapmasını tavsiye ederim. Ancak ilgili jupyter dosyasına erişmek isterseniz tüm yazıların sonunda aksi belirtilmedikçe bulabilirsiniz.

İlgili uygulamayı buraya tıklayarak görüntüleyebilirsiniz.

Bir sonraki yazıda Keşifsel Veri Analizi’ne (Exploratory Data Analysis – EDA) kısa bir giriş yaparak veriyi tanımayı öğreneceğiz.

Keyifli Öğrenmeler 🙂

İlk Yorumu Siz Yapın

Bir Cevap Yazın

Translate »
%d blogcu bunu beğendi: