Linear Regression, en basit supervised learning algoritmalarından biridir. Tahmin etmeye çalıştığımız Y değişkeni ile tahminleyici değişkenlerimiz X1,X2,…,Xn arasında doğrusal bir ilişki olduğunu var sayar. Ancak bir önceki yazıda da belirttiğimiz üzere gerçek regresyon fonksiyonu azaltılamaz hatalar yüzünden hiçbir zaman doğrusal bir metotla tam olarak modellenemez. Aşağıdaki grafikte mavi çizgi linear regression metodu sonucunda tahminlediğimiz fonksiyonu gösteriyor. Kırmızı eğri ise gerçek fonksiyonu gösteriyor. Biz X ve Y değişkeni arasında doğrusal bir ilişki olduğunu var sayarken gerçekte X ve Y arasında düzgün doğrusal bir ilişki olmadığını görüyoruz. Ancak yine de doğrusal bir metotla gerçek fonksiyona oldukça yaklaşabiliyoruz.
Bu metot aşırı derecede basitmiş gibi gözükse de hem kavramsal olarak hem de pratiklik açısından son derece yararlı bir metottur.
Aşağıdaki görsele bakıp biraz düşünelim ve şu soruları yanıtlamaya çalışalım:
Reklam bütçesiyle satışlar arasında bir ilişki var mı?
Reklam bütçesiyle satışlar arasındaki ilişki ne kadar güçlü?
Hangi medya satışlara katkıda bulunuyor?
Gelecek satışları ne kadar net ve doğru tahminleyebiliyoruz?
Aradaki ilişki doğrusal mı?
Reklam mecraları arasında bir sinerji var mı?
Basit Doğrusal Regresyon (Simple Linear Regression)
Şöyle bir modelimiz olduğunu var sayalım:
Burada olduğu gibi bir cevap değişkenini (Y) tek bir tahminleyici değişken ile (X) hesaplamaya çalıştığımız modeller basit doğrusal regresyon olarak adlandırılır. Cevap değişkenini birden fazla tahminleyici değişken kullanarak tahminlemeye çalıştığımız doğrusal regresyona ise çoklu doğrusal regresyon (multiple linear regression) denir. Bunu bir sonraki yazıda inceleyeceğiz. Bu yazıdaki ana konumuz basit doğrusal fonksiyon. Bu formülde ve bilinmeyen sabitlerdir ve sırasıyla intercept ve slope‘u temsil ediyor. Aynı zamanda bunlar regresyon katsayıları/parametreleri (regression coefficients/parameters) olarak da adlandırılır. ise hata terimini temsil ediyor. Normalde ve ‘i bilmeyiz. Linear regression metodunu kullanarak bunları tahminlemeye çalışırız. Diyelim ki metodu uyguladık ve gerçek katsayılar için tahminimiz olan ve ‘i hesapladık. O zaman satışları şu şekilde tahminleyebiliriz:
Burada , X=x iken gerçek Y değeri için tahminimizi gösteriyor. Üzerinde şapka olan miktarlar bizim tahminimizi temsil ediyor.
Peki bu katsayıları nasıl hesaplayacağız?
Diyelim ki Y’nin i.ci x değeri için tahmini değeri olsun. O zaman i.ci artığı (residual) göstersin.
O zaman residual sum of squares (RSS)‘i şu şekilde tanımlarız:
veya e terimlerini açacak olursak:
Least squares yaklaşımı RSS‘i minimize edecek ve katsayılarını seçer. RSS denkleminin sırasıyla ve için ayrı ayrı kısmi türevlerini (partial derivative) alıp sıfıra eşitlersek RSS‘i minizime eden değerlerin şunlar olduğunu görürüz:
Burada ve ; yani sırasıyla y ve x nin ortalama değerlerini temsil ediyor.
Aşağıdaki grafik least squares uydurması(fitting) ile satışların TV reklam bütçesi üzerinden regresyonunu gösteriyor. Kırmızı noktalar gerçek satışları gösterirken mavi çizgi tahminimiz olan satışları gösteriyor. Herhangi bir nokta için gerçek değer olan kırmızı nokta ile tahminimiz olan mavi çizgi arasındaki dik uzaklık(gri çizgiler) ‘yi veriyor. Dolayısıyla bu dik uzaklıkların karelerinin toplamını minimize etmek hatayı minimize etmek anlamına geliyor.
Hesaplanan Katsayıların Netliğini ve Kesinliğini Belirleme
Bir tahminleyicinin (estimator) standart hatası (standard error or SE), farklı örneklemeler (sampling) için o tahminleyicinin ne kadar değişiklik göstereceğini söyler.
Bunu anlamak için Merkezi Limit Teoremi (Central Limit Theorem)‘i bilmemiz gerekir. Bu teorem der ki, bir değişkenin dağılımı normal bir dağılım sergilemese bile bu değişkenden elde edilecek örneklemlerin ortalamalarının (veya oranlarının) dağılımları normal dağılıma yaklaşır. Bu şu anlama geliyor:
Bir veri setinden yeteri kadar veri içeren, çok sayıda örneklem (sample) oluşturuyoruz. İlgili değişkenin her bir örneklemdeki ortalamasını buluyoruz. Bu ortalamalar ilgili değişkenin gerçek dağılımından bağımsız olarak her zaman normal bir dağılım (normal distribution) sergiler. Daha sonra bu bulduğumuz ortalamaların ortalamasını alıyoruz. Ortalamalar normal dağıldığından bu bulduğumuz ortalama veri setinin bilmediğimiz gerçek ortalamasına çok yakın olması yani az miktarda sapması beklenir.
Bu sapmanın ne kadar olacağını hesaplamak için standart hata (standard error) formülünü kullanırız:
SE bize, hesapladığımız ortalama değerin gerçek değerden ne derece sapacağını söyler. Yukarıdaki formülden de görebileceğimiz üzere n arttıkça SE düşecektir. Yani ne kadar çok örneklem üretirsek SE düşer, sapma azalır, dolayısıyla tahminimiz gerçek değere daha çok yaklaşır.
Bu mantığı hesapladığımız regresyon katsayılarına uygulayacak olursak katsayılarımızın SE’lerinin şu şekilde olduğunu görürüz:
Burada yani hatanın varyansını gösteriyor. Bu standart hatalar güven aralıklarını (confidence intervals) hesaplamak için kullanılabilir. En yaygın kullanılan güven aralığı %95’tir. %95 güven aralığını şu şekilde hesaplıyoruz:
Peki bu ne demek oluyor? Aynı popülasyondan farklı veri setleri (yani örneklemleri) alıp her bir veri seti için regresyon katsayısını ve standart hatasını hesapladığımızda, yukarıdaki formülle her bir veri seti için elde ettiğimiz güven aralıklarının %95’i gerçek katsayısını içerir. Burada tek bir güven aralığının %95 olasılıkla gerçek katsayıyı içerdiği kanısına varmaktır en sık yapılan hatalardan biridir. Güven aralığı veri setiyle değil örnekleme(sampling) ile ilgili bir hesaplamadır. Örneğin elimizdeki Satışlar ve TV Reklam bütçeleri verisinden yeteri kadar büyüklükte 100 örneklem ürettiğimizi varsayalım ve diyelim ki bu örneklemlerin her biri için ‘in güven aralığını hesapladık. %95 güven aralığı demek oluyor ki bu 100 güven aralığından 95’i gerçek katsayısını içeriyor. Dolayısıyla gerçek katsayıyı içermeyen bir güven aralığı oluşturma ihtimalimiz %5.
Hipotez Testi (Hypothesis Testing)
Standart hata aynı zamanda katsayıların hipotez testinde de kullanılabilir. En yaygın hipotez testi null hipotez testidir:
H0: X ve Y değişeki arasında bir ilişki yoktur. (null hypothesis)
HA: X ve Y değişkeni arasında bir ilişki vardır.(alternative hypothesis)
Bunu matematiksel olarak şöyle ifade edebiliriz:
H0 : β1 = 0
vs
HA : β1 <> 0,
Böyle ifade ediyoruz çünkü eğer = 0 ise model Y = + ‘ye indirgenir ve bu da X ile Y arasında ilişki olmadığı anlamına gelir.
Null hipotezi test etmek için bir t-statistic hesaplarız:
Bu t-statistic null hipotezin doğru olduğu varsayılarak hesaplanır. Yani X ve Y değişkeni arasında bir ilişki olmadığını, diğer bir deyişle ‘in 0 olduğunu varsayıyoruz. Bu varsayımlar altında katsayısının 0’dan ne kadar saptığını hesaplıyoruz. Bu hesaplama n-2 serbestlik dereceli(degree of freedom) t-dağılımına (t-distribution) sahiptir. Herhangi bir istatistiksel yazılımı kullanarak hesapladığımız t değerine eşit veya bundan büyük bir değer elde etme olasılığının kaç olduğunu bulabiliriz. Bu olasılığı p-value olarak adlandırırız. p-value t-statistic üzerinden hesaplandığı için t-statistic için varsayımlarımızın hepsi p-value için de geçerli. Yani bu iki değer null hipotezin doğru olduğu varsayılarak hesaplanır.
Yukarıdaki tabloda TV’yi kullanarak Satışları tahmin etmeye çalıştığımızda linear regression‘ın ürettiği sonuçları görüyoruz. Coefficient kolonuna baktığımızda regresyonun TV’ye 0.0475 katsayısını( ) atadığını görüyoruz. TV’nin SE‘si de 0.0027 olarak hesaplanmış. Bu değerin küçük olması gerçek katsayında sapmanın az olduğu anlamına gelir. t-statistic değeri ise coefficient’ın SE’ye bölünmesiyle elde edilir. Bu durumda TV için t-statistic 0.0475/0.0027 = 17.67 olarak hesaplanır. Bu da p-value değerinin çok düşük olduğunu söylüyor. Yani bu t-statistic değerini gözlemlemek o kadar düşük bir olasılığa sahip ki böyle bir değer elde ettiğimizde TV ve Satışlar arasında bir ilişki olmadığı hipotezini (null) TV ve Satışlar arasında bir ilişki olduğu hipotezininin (alternatif) lehine olacak şekilde reddederiz. Hipotez testindeki amacımız null hipotezi reddetmeye çalışmaktır. Elimizdeki veriler eşliğinde null hipotezi ya reddedemeyiz ya da reddederiz. Veriler null hipotezi reddetmemizi söylemiyorsa alternatif hipotezimizin bir önemi kalmaz; anca null hipotezi reddebiliyorsak alternatif hipotezimizin geçerli olduğunu varsayarız. Yani bir hipotezi ya reddedebiliriz ya da reddedemeyiz; hipotezi kabul etmek diye bir şey yoktur.
Modelin Genel Netliğini ve Kesinliğini Belirleme
Null hipotezi alternatif hipotezin lehine reddettiğimizde, modelimizin elimizdeki veriye ne kadar uyduğunu(fit) ölçümlememiz gerekir.
Aşağıdaki tabloda TV reklam bütçesini kullanarak Satışları hesaplmaya çalışan linear regression fonksiyonunun ürettiği bazı değerleri görüyoruz.
Şimdi bunları teker teker açıklayalım.
Residual Standard Error (RSE)
Her gözlem için bir hata terimi her zaman mevcuttur. Bu hataların varlığından dolayı, X ve Y arasındaki gerçek regresyon fonksiyonunu bilsek bile X’i kullarak Y’yi mükemmel bir şekilde tahminleyemeyiz. RSE hataların standard sapmasının bir hesaplamasıdır. Yani cevap değişkeninin gerçek regresyon fonksiyonundan ortalama olarak ne kadar sapacağını söyler. RSE aşağıdaki formülle hesaplanır:
Formülde RSS’in olduğunu hatırlayalım.
Yukarıdaki tabloda RSE değerinin 3.26 olduğunu görüyoruz. Bu demek oluyor ki her pazardaki gerçek satış adetleri gerçek regresyon fonksiyonundan yaklaşık olarak 3,260 adet sapıyor. Diğer bir deyişte, ürettiğimiz model doğru olsa ve ve gerçek katsayıları bilinse bile TV reklamları üzerinden hesaplanan satış adetlerinde ortalama olarak 3,260 adet sapma olacaktır. Sapma miktarının kabul edilebilir olup olmadığı elimizdeki probleme göre değişiklik gösterebilir.
RSE modelin veriye uyum eksikliğinin (lack of fit) bir ölçümüdür aslında. Bu değer ne kadar küçükse model veriye o kadar iyi uyum sağlamıştır, ya da bu değer ne kadar büyükse model veriye o kadar az uyum sağlamıştır.
R-squared Statistic
RSE modelimizin veriye mutlak olarak uyum eksikliğinin bir ölçümüdür. Fakat RSE değeri Y’nin birim değerinde ölçüldüğünden iyi bir RSE değerinin ne olduğunu her zaman net değildir. R-squared statistic uyum için alternatif bir ölçümdür. Her zaman bir oranı(proporsiyonu) temsil eder. Bu proporsiyon X kullanılarak Y’de açıklanabilen varyansın proporsiyonudur ve Y’nin biriminden bağımsız olarak her zaman 0 ile 1 arasında bir değer alır.
R-squared‘i hesaplamak için şu formülü kullanırız:
Burada TSS (total sum of squares) formülüyle hesaplanır. Buradaki bütün y değerlerinin ortalamasıdır. Bu hesaplama bize şunu veriyor: eğer regresyon metoduyla y’yi tahminlemeye çalışmasayıp her bir değer için tahmini değer olarak ortalama değeri verseydik hatalarımızın karelerinin toplamı bu olacaktı.
RSS ise regresyon metoduyla hesapladığımız Y değişkenlerinin gerçek değerlerden farkının karelerinin toplamıydı.
TSS ile RSS arasındaki fark ne kadar büyükse regresyondan o kadar fayda sağlarız. RSS hiçbir zaman TSS’ten büyük olamaz. Bu durumda RSS‘in TSS‘den mümkün olduğunca küçük olması gerekir. Yani regresyon sonucu elde ettiğimiz hataların karelerinin toplamının daha düşük olması gerekir. Bu durumda r-square 1’e ne kadar yakınsa regresyon o kadar iyi sonuç vermiştir. Basit doğrusal regresyonda R-square X ve Y değişkenleri arasındaki korelasyona (correlation) eşittir. Ancak sonraki yazılarda ele alacağımız çoklu doğrusal regresyon (multiple linear regression) durumunda R-square’in çok daha dikkatli yorumlanması ve buna bağlı olarak bazı düzeltmelerin yapılması gerektiğini göreceğiz. Bu durumda model uyumunu ölçümlerken tek başına R-square’e bakmak yerine başka göstergelere de bakmamız gerektiğini göreceğiz.
Yukarıdaki tabloda bu örnek için R-square değerinin 0.612 olduğunu görüyoruz. Bu da demek oluyor ki satış değerindeki değişikliğin üçte ikisini TV değişkenini kullanarak açıklayabiliyoruz. Ancak R-squared 1’e yakın olmadığından tek başına TV değişkeninin satışlardaki değişikliği iyi derecede açıklayabildiğini söyleyemeyiz.
Kaynaklar:
An Introduction to Statistical Learning with Applications in R,Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani