Basit Doğrusal Regresyon (Simple Linear Regression)

Basit Doğrusal Regresyon (Simple Linear Regression)

Bu yazıda Basit Doğrusal Regresyon konusunu ele alacağız. Bu bölümde ilk önce teorik sonra matematiksel sonra kodlar ile anlatacağız. Elimden geldiğince çok basit bi şekilde anlatacağım. O zaman başlayalım. Keyifli Okumalar...

 

Doğrusal Regresyon, iki kısma ayrılır. Tek değişkenli Doğrusal Regresyon ve Çok Değişkenli Doğrusal Regresyon. Diğer yazımda çok değişkenli Doğrusal Regreesyon konusunu anlatacam. Bu yazıda Basit Doğrusal Regresyon konusunu ele alacam...

 

Basit Doğrusal Regresyon : 

 

İki değişken ( bağımlı ve bağımsız değişkenler) arasındaki ilişkiyi tanımlamak için kullanılır. Sebep- sonuç gibi ilişki kurabiliriz.Bu ilişki doğrusal denklemler ile tanımlanır.Bağımsız Değişken ve Bağımlı Değişkeni sebep-sonuç gibi kafanızda canlandırın.Bizim işimiz sonuç ile yani bağımlı değişken ile bizler model üzerinde tahminler yapacağız. Bu sonuca göre bir hata oranı çıkacaktır.

 

Teorik kısmını anladığımıza göre daha iyi kavramak için matematiksel ifade edelim. Neticede istatiksel bir yöntem.

 

 

İlgili resim

y = ax+b denklemini ele alalım. İki değişken olacağı için bu denklemi kullanıyoruz.

x : Bağımsız Değişken
y : Bağımlı Değişken
a : Kat Sayı ( Eğim)
b : Sabit Sayı

y değeri x'e bağlı bir değişkendir.

 

Şimdi bizim elimizde 2 tane değişken olacaktır.  Noktalar ise bizim gerçek hayat verilerimizdir. 

 

basic lineer regresyon ile ilgili görsel sonucu

 

Biz öyle bir doğru çizmemiz lazım ki, nu doğru bu noktalara olan uzaklığı en yakın olsun.Python da kod yazarken makinadan bunu isteyeceğiz.Biraz daha iyi anlamak için aşağıdaki görseli yorumlayalim.

 

basic lineer regresyon ile ilgili görsel sonucu

 

Noktalar gerçek verilerimiz dedik, 1 tane doğru çizdik. Doğru ile nokta arasındaki mesafiyi ise kısa bir çizgi ile gösterdik. Bu çizgi bizim hata oranımızı belirleyen çizgidir. Bu çizgilerin arasındaki mesafeyi hesaplamak için aslında liseden beri bildiğiniz bir formulu kullanmaktayız. Elimizdebir doğru bir nokta var. İkisi arasındaki  uzaklığı bulmamız lazım. Kafanıza bir şeyler canlanımış olmalı...

 

 

(x2-x1)^2+(y2-y1)^2 ile ilgili görsel sonucu

 

Bu formulu tüm noktalar için deneyip, toplayacağız ve hata oranları bulayacağız. Hata oranı 0 değerini yaklaşıncaya kadar devam edecek. O zaman en ideal doğruyu bulmuş olacağız. Buraya kadar bilseniz şimdilik yeter.Daha sonra neler daha ayrıntılı ele alacağız. Özellikle matematik kısmı...

 

Şimdi python kodunda bunu deneyelim.

 

Not : Buradaki kodlar bazı kişilere ağır gelebilir. Ben bir yazılı eğitim seti yapmaya çalışıyorum. Daha iyi anlamak için önceki yazıları okumanızı tavsiye ederim. O kodların devamı şeklinde düşünebilirsiniz. Eğitim sırası için sizlere br link bırakıyorum. 

 

- Veri Ön İşleme ( Data Preprocessing )

 

 

from sklearn.linear_model import LinearRegression    # Lineer Regresyon Kütüphanesi
lr = LinearRegression()                                                 #  Modeli bir değişkene atadık. 
lr.fit(x_train,y_train)                                                       # fit komudunu, modele uygulaması için kullanıyoruz. Önceki derslerde anlattık. 

tahmin = lr.predict(x_test)                                             # x_test verilerine karşılık gelen değerleri tahmin edecek.

 

 

Not: Bazı kişiler biz sadace bu konuyu öğrenip gitmek istediği için, önceki ders de yazdığımız kodları ve veri kümelerini paylaşacağım.

 

Neler yaptığımızı anlatalim. Lineer Regresyon modelini kullanacağını python'a bildirdik. Sonra bir nesneye atadık. lr.fit() komudu ile uygulamasını söyledik. Modelimiz x_train ve y_train verilerinden öğrenecek. x_teset verilerine bakıp , y_test verilerini tahmin edecektir. Bizler y_test ile tahmin sonucunu karşılaştırıp hata oranına bakacağız. Hata oranının azaltmak için neler yapacağımızdan sonra bahsedecem. Şimdilik bu kadar yeterlidir.

 

Okuduğunuz için teşekkür ederim.