Forum

Bildirimler
Tümünü temizle

Makine Öğrenmesi Dersleri

Melih Demirtaş
(@melih007)
Üye Admin

Arkadaşlar Makine Öğrenmesi videoları çekmeye karar verdim ve r10 üzerinde detaylı açıklayıp github ve youtube ile destekleyip öğrenmek isteyenlere destek olacak içerikler çıkartmayı düşünüyorum Yeni eğitimler eklendikçe bu postu güncelleyeceğim.
Dersi Güncel Olarak Takip Edebileceğiniz Github Reposu :
https://github.com/TalhaSoftware/Mac...rningTutorials
Dersi Güncel Olarak Takip Edebileceğiniz Youtube Playlist :

1.Bölüm | Veri Ön İşlemeye Giriş
-Verinin Yüklenmesi buradan veriyi indirebilirsiniz.
-

Arkadaşlar Verinin okunması için öncelikle python içerisinden pandas kütüphanesini dahil ediyoruz eğer yoksa pip install pandas komutuyla indirebilirsinizi daha sonrasında dahil edebilirsiniz
dahil ettiğimiz verileri görmek için print komutuyla ekrana basabiliriz.
Örnek Kod :  https://gist.github.com/TalhaSoftwar...f890d11574e727
-

Veriye göz atalım ilk başta csv dosyası nedir onu söyleyelim csv dosyası comma separated value yani virgülle ayrılmış veri anlamına gelen dosya türümüzdür ve veri biliminde sıkça kullanılan dosya formatlarındandır verimizin özelliklerine bakacak olursak ;
Bağımsız Değişkenlerimiz
1.Transaction Date(İşlem Tarihi)
2.House Age(Ev yaşı)
3.Distance to Nearest MRT Station(En yakın Ulaşım Merkezine uzaklığı)
4.Number of convenience stores (Alışveriş yapılabilecek bakkal gibi yerlerin sayısı)
5.Konum
6.Konum
Bağımlı Değişken
Birim Başına düşen fiyat
-------------------------------------------
Bizim yapacağımıza gelirsek veriyi Üstte böldüğümüz gibi bölerek makine öğrenmesi modelimize uygulayacağız ve bağımsız değişkenler aracılığı ile Bağımsız değişkenimizi bulacağız.
-

Verileri neden böleceğimizi anlatmıştık ve verimizi anladık şimdi veriyi X ve Y olarak bölebiliriz, Geçen sefer veriyi okumuştuk o kod üzerinden devam edecek olursak bu sefer numpy kütüphanesini eklememiz gerekiyor sebebi ise verinin DataFrame formatında değilde Numpy Array formatında olmasını istediğimizden bunu istememizin sebebi ise makine öğrenmesi algoritmalarına numpy array implementasyonun uygun olması veriyi bölmek için iloc komutunu kullanıyoruz bu komut kendinden sonra gelen köşeli parantezleri parametre olarak alıyor [satır_baslangicsutun_ bitis] biz sutun bazlı işlem yapacağımızdan ilk kısmı boş bırakıp 2.kısım üzerinden işlem yapıyoruz kaynak koda buradan erişebilirsiniz.
-

Verileri Bağımlı ve Bağımsız değişkenler olarak ayırıp kodladık şimdi bu ayırdığımız verileri eğitim ve test kümesi olarak böleceğiz bunu yapmamızdaki amaç kullanacağımız makine öğrenmesi modelindeki doğruluğumuzu ölçmek ve aynı veriyle eğitim yapıp ezbere(overfitting) sebep olmayı önlemek kullanacağımız train_test_split fonksiyonu sklearn.model_selection'ın altında bulunuyor sklearn indirmek için pip install sklearn komutunu kullanabilirsiniz eğer yok ise şimdi fonksiyonun döndürdüğü parametrelere gelelim fonksiyonumuz bize x ve y için eğitim ve x_test ve y_test yani x ve y için deneme döndürüyor ve bunu bizim istediğimiz oranda yapıyor oranı test_size parametresi ile belirliyoruz biz %66 eğitim - %33 test belirledik random_state=0 vermemizin sebebi Python bu datayı her seferinde farklı yerlerinden böler. Eğer bir random_state değeri belirlersek her seferinde o değere göre böler. kaynak koda buradan erişebilirsiniz.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Makine Öğrenmesi Giriş

-

Linear Regresion temelde y = ax + b dir fakat biz makine öğrenmesi algoritması olarak onu kullanabilimemizin sebebi a ve b değerlerini güncelleyerek uygun doğru denklemini elde ederek modelimizi eğitiriz ve yeni verilerimizde ona göre tahmin yaparız fakat bizim yaptığımız tahmin işlemininde doğruluğunu ölçmemiz gerekir bunun için r2 score kullacanağız
-

R2 score dediğimiz değer tahmin değerlerinden gerçek değerlerin farklarının kareleri toplamının her gerçek değerin gerçek değerlerin ortalamasının karesinin toplamına bölümünün 1 den çıkartılmasıdır yani formul verecek olursak;
R2 = 1 - HKT(HATA KARELERİ TOPLAMI)/OFT(ORTALAMA FARKLAR TOPLAMI)
Daha sonrasın r2 değerimizi python da kodluyoruz.
Linear Regression Ve R2 score için Koda aşağıdan ulabilirsiniz.
kaynak kod :  https://github.com/TalhaSoftware/Mac...me/r2_score.py
-

Polynomial Regression temelde linear regressiondaki dereceyi değiştirmemizdir ax^2+b gibi fakat biz makine öğrenmesi algoritması olarak onu kullanmamızın sebebi linear olmayan modellerde çok daha performanslı çalışmasıdır burada , a,derece ve b değerlerini güncelleyerek uygun doğru denklemini elde ederek modelimizi eğitiriz ve yeni verilerimizde ona göre tahmin yaparız fakat bizim yaptığımız tahmin işlemininde doğruluğunu ölçmemiz gerekir bunun için yine r2 score kullacanağız fakat doğru skorlamak adına Kukla değişken tuzağına dikkat etmemiz gerekir, Bu tuzağa yakalanmamak adına da tek bir küme alacağız zıt korelasyonlu birden fazla küme değil.
https://github.com/TalhaSoftware/Mac...ster/README.md
Koda ve veri setine buradan ulaşabilirsiniz.

Alıntı
Konu başlatıcı Gönderildi : 20/05/2022 8:10 am
Paylaş: