Her Şeyiyle Lineer Regresyon (Makine Öğrenmesi Serisi-1)

Mehmet Fatih AKCA
Deep Learning Türkiye
5 min readAug 16, 2020

Öncelikle merhaba. Makine öğrenmesi, yapay zeka gibi konularla ilgilenmeye başladığınızda ilk adım olarak Lineer Regresyon gösterilir. Çünkü diğer algoritmalara göre anlaşılması ve mantığını kavramak daha kolaydır. Kolay olmasına rağmen halen bir çok noktada Lineer Regresyon veya türevleri kullanılarak oldukça büyük işler yürütülüyor. Bu yüzden bu metodu öğrenmek oldukça önemlidir. Bu yazımda, elimden geldiğince kolay ve anlaşılır bir şekilde Lineer Regresyonu sizlere aktarmaya çalışacağım.

Nedir bu Lineer Regresyon?

İki veya daha fazla değişken arasındaki ilişkinin bir doğru ile gösterilmesine Lineer Regresyon denir. Ortaya çıkışı 1800'lerin başına dayanır. Peki bu ne demek?

Tabloda açıkça elma eksenindeki bir elmanın fiyat eksenindeki 2 ₺’ye karşılık geldiği görülüyor. Bu da demek oluyor ki bir elmanın fiyatı 2 ₺. 2 elma 4 ₺, 3 elma 6 ₺, 4 elma ise 8 ₺. Tabi ki 0 elma da 0 ₺.

Gerçek hayata daha yakın bir örneğe bakmak gerekirse ev fiyatları ile metrekare ilişkisine göz atalım.

Burada da 50 metrekare bir evin fiyatının 50.000 ₺, 100 metrekare bir evin fiyatının 100.000 ₺, 150 metrekare bir evin fiyatının 150.000 ₺ ve 200 metrekare bir evin fiyatının 200.000 ₺ olduğunu okuyabiliyoruz. Tabi ki incelediğimiz verilerin dağılımı genelde bu kadar düzenli olmuyor.

Bu tablodan değer okumamız daha zor. Ama Lineer Regresyon bize yardımcı oluyor ve bir doğru çiziyor.

Çizilen doğru sayesinde her şey çok daha rahat görülebilmektedir. Yanındaki yazılanlara gelecek olursak; y doğrunun formülü, R² ise bağımsız (metrekare) değişkenin bağımlı (fiyat) değişkenini açıklayabilme skorudur. Yani metrekare değişkeni, fiyat üzerindeki değişimi %94 oranında açıklayabiliyor. Doğrunun denklemini daha rahat anlaşılması için formülü ayrıca anlatacağım.

Ŷ, bu formül üzerinden bizim tahmin etmeye çalıştığımız y değeri. Ŷ değeri ile gerçek y değeri arasındaki fark ne kadar az ise tahminimiz o kadar gerçeğe yakındır(spoiler).

b, çizdiğimiz doğrunun eğimidir. Basitçe, y eksenindeki değişim / x eksenindeki değişim olarak düşünebilirsiniz. Negatif yönlü bir korelasyon varsa eğim negatif olur ve doğru aşağı doğru iner.

r korelasyon katsayısı, sy y’nin standart sapması, sx x’in standart sapmasıdır.

α, x değeri sıfır iken y’nin aldığı değerdir, yani x sıfırken y eksenini kestiği noktadır.

Her şey tamam. Artık doğru çizebiliriz.

Bir dakika! Niye sarı doğrulardan biri değilde siyah doğru çıktı. Bunun nedeni, çizilen doğrunun, kırmızı noktalara ne kadar yakın olursa o kadar iyi tahmin etmesinden kaynaklanıyor. Yani doğrumuz kırmızı noktalardan ne kadar uzaklaşırsa yaptığımız tahminlerde gerçek değerlerden o kadar uzaklaşıyor. Bu yüzden olabildiğince yakın olmasını istiyoruz. Aradaki farkı hesaplamak için birkaç farklı formül var ama genelde Ortalama Hatalar Karesi (Mean Squared Error) kullanılıyor. Formülü de şu şekilde:

Peki Ortalama Hatalar Karesini kullandık ama optimum doğru denklemine erişebilmek için sürekli eğimi ve y-kesişim noktasını değiştirip tekrar tekrar mı hesaplayacağız? Hayır tabi ki! Bunun için iki metod var:

1-) Gradient Descent (Gradyan Azalma):

Formül korkutucu gözüküyor olabilir. Aslında gayet kolay bir mantığı var. Rastgele değişkenlerle başla α(learning rate) oranında diğer taraflara ilerle, eğer hata değeri azalıyorsa adımlarını ufalta ufalta devam et. Durdurmak için başlangıçta devam edeceği adım sayısı verilir veya adımdaki değişikliğin 10^–3'in altına inmesi beklenir. Bir çok algoritmanın optimize edilmesi için kullanılabilir.

Gradient Descent hakkında daha detaylı bilgi edinmek için: https://medium.com/deep-learning-turkiye/gradient-descent-nedir-3ec6afcb9900

2-)Normal Equation:

Bu yöntem sadece Lineer Regresyonda uygulanabilir. Sütun sayısı az olduğunda Gradient Descent’e göre daha hızlı sonuç verir. Bu yöntemdense Gradient Descent daha yaygındır. Formülü şu şekilde:

Normal Equation hakkında daha detaylı bilgi edinmek için: https://towardsdatascience.com/performing-linear-regression-using-the-normal-equation-6372ed3c57

--

--

Mehmet Fatih AKCA
Deep Learning Türkiye

Sakarya Üniversitesi Yönetim Bilişim Sistemleri 4.sınıf öğrencisiyim. Makine Öğrenmesi, Veri Madenciliği, Veri Analizi ve Görüntü İşleme www.mfakca.com