# 5.1 Doğrusal Regresyon (Linear Regression)

Bir doğrusal regresyon modeli hedef değişkenini girdilerin ağırlıklı toplamı olarak tahmin eder. Öğrenilen ilişkinin doğrusallığı yorumlamayı kolaylaştırır. Doğrusal regresyon modelleri uzun süredir istatistikçiler, bilgisayar mühendisleri ve sayısal problemlerle uğraşan diğer araştırmacılar tarafından uzun süredir kullanılmaktadır.&#x20;

Doğrusal modeller, bir regresyon hedefi olan y’nin bazı özellikler x’e bağlılığını modellemek için kullanılabilir. Öğrenilen ilişkiler doğrusaldır ve tek bir örnek iii için aşağıdaki gibi yazılabilir;

$$
y = \beta\_0 + \beta\_1 x\_1 + \dots + \beta\_p x\_p + \epsilon
$$

Bir örneğin tahmini sonucu, özelliklerinin ppp sayısının ağırlıklı bir toplamıdır. Betalar (βj) öğrenilen özellik ağırlıklarını veya katsayılarını temsil eder. Toplamdaki ilk ağırlığa (β0​) "kesişim" denir ve bir özellik ile çarpılmaz. Epsilon (ϵ) ise tahminde yapılan hata olup, tahmin ile gerçek sonuç arasındaki farktır. Bu hataların pozitif ve negatif yönlerde gerçekleşen, çoğunlukla küçük ve nadiren büyük hataların yapıldığı bir Gauss dağılımına uyduğu varsayılır.

Optimal ağırlıkları tahmin etmek için çeşitli yöntemler kullanılabilir. Genellikle en küçük kareler yöntemi kullanılarak, gerçek sonuçlar ile tahmin edilen sonuçlar arasındaki kare farklarını en aza indiren ağırlıklar bulunur:

$$
\hat{\boldsymbol{\beta}}=\arg \min *{\beta\_0, \ldots, \beta\_p} \sum*{i=1}^n\left(y^{(i)}-\left(\beta\_0+\sum\_{j=1}^p \beta\_j x\_j^{(i)}\right)\right)^2
$$

Optimal ağırlıkların nasıl bulunduğunu ayrıntılı olarak tartışmayacağız; ancak ilginizi çekiyorsa, Friedman, Hastie ve Tibshirani'nin "The Elements of Statistical Learning" (2009) adlı kitabının 3.2. bölümünü veya doğrusal regresyon modelleri üzerine çevrimiçi kaynaklardan birini inceleyebilirsiniz.

Doğrusal regresyon modellerinin en büyük avantajı doğrusallıktır: Bu, tahmin prosedürünü basitleştirir ve en önemlisi, bu doğrusal denklemler modüler düzeyde (örneğin, ağırlıklar) anlaşılması kolay bir yoruma sahiptir. Bu, doğrusal modelin ve benzer modellerin tıp, sosyoloji, psikoloji gibi akademik alanlarda ve diğer birçok nicel araştırma alanında bu kadar yaygın kullanılmasının ana nedenlerinden biridir. Örneğin, tıp alanında, yalnızca bir hastanın klinik sonucunu tahmin etmek değil, aynı zamanda ilacın etkisini nicelendirmek ve bunu yaparken cinsiyet, yaş gibi diğer özellikleri de anlaşılır bir şekilde hesaba katmak önemlidir.

#### Tahmin Edilen Ağırlıkların Güven Aralıkları

Tahmin edilen ağırlıklar, güven aralıklarıyla birlikte gelir. Güven aralığı, belirli bir güvenle "gerçek" ağırlığı kapsayan bir tahmin aralığıdır. Örneğin, bir ağırlığın %95 güven aralığı 2 ise, bu aralık 1 ile 3 arasında olabilir. Bu aralığın yorumu şu şekildedir: Eğer tahmini yeni örnekleme verileriyle 100 kez tekrar edersek, doğrusal regresyon modelinin veri için doğru model olduğu varsayımı altında güven aralığı gerçek ağırlığı 100 durumdan 95’inde içerecektir.

Bir modelin "doğru" model olup olmadığı, verilerdeki ilişkilerin belirli varsayımları karşılayıp karşılamamasına bağlıdır. Bu varsayımlar şunlardır: doğrusallık, normallik, homoskedastiklik, bağımsızlık, sabit özellikler ve çoklu doğrusallığın olmaması.

#### Doğrusallık

Doğrusal regresyon modeli, tahmini bir özelliklerin doğrusal bir kombinasyonu olmaya zorlar, bu hem en büyük gücü hem de en büyük sınırlamasıdır. Doğrusallık, yorumlanabilir modeller oluşturmaya yol açar. Doğrusal etkiler kolayca nicelenebilir ve tanımlanabilir. Bu etkiler toplamsaldır; dolayısıyla etkileri birbirinden ayırmak kolaydır. Özellik etkileşimleri veya bir özellik ile hedef değer arasında doğrusal olmayan bir ilişki olduğundan şüpheleniyorsanız, etkileşim terimleri ekleyebilir veya regresyon splinelerini kullanabilirsiniz.

#### Normallik

Özellikler verildiğinde hedef sonucun normal dağılıma uyduğu varsayılır. Bu varsayım ihlal edilirse, özellik ağırlıklarının tahmin edilen güven aralıkları geçerli olmaz.

#### Homoskedastiklik (Sabit Varyans)

Hata terimlerinin varyansının tüm özellik uzayında sabit olduğu varsayılır. Örneğin, bir evin değerini metrekaresine göre tahmin etmek istiyorsanız, doğrusal bir model tahmin edilen yanıt etrafındaki hatanın evin büyüklüğünden bağımsız olarak aynı varyansa sahip olduğunu varsayar. Ancak, ev büyüdükçe fiyatının da artması ve fiyat dalgalanmalarına daha fazla yer olması nedeniyle hata terimleri etrafındaki varyansın daha büyük evlerde daha yüksek olması beklenebilir. Doğrusal regresyon modelinizdeki ortalama hata 50.000 Euro ise, homoskedastiklik varsayımı yaparak 50.000'lik ortalama hatanın hem 1 milyon Euro’luk evler hem de yalnızca 40.000 Euro’luk evler için geçerli olduğunu varsayarsınız. Bu mantıksız olur çünkü bu, negatif ev fiyatlarını öngörmeyi beklemeniz anlamına gelir.

#### Bağımsızlık

Her bir örneğin diğer herhangi bir örnekten bağımsız olduğu varsayılır. Örneğin, bir hastanın birden fazla kan testi gibi tekrarlanan ölçümler yaptığınızda veri noktaları bağımsız değildir. Bağımlı veriler için, karma etki modelleri veya GEEs gibi özel doğrusal regresyon modelleri kullanmanız gerekir. "Normal" doğrusal regresyon modelini kullanırsanız, modelden yanlış sonuçlar çıkarabilirsiniz.

#### Sabit Özellikler

Girdi özelliklerinin "sabit" olduğu varsayılır. Sabit, özelliklerin "verili sabitler" olarak kabul edilmesi ve istatistiksel değişkenler olarak ele alınmaması anlamına gelir. Bu, özelliklerin ölçüm hatalarından arınmış olduğu varsayımını getirir. Bu, oldukça gerçek dışı bir varsayımdır. Bu varsayım olmadan, özelliklerinizin ölçüm hatalarını hesaba katan çok karmaşık ölçüm hatası modelleri oluşturmanız gerekecektir ve genellikle bunu yapmak istemezsiniz.

#### Çoklu Doğrusallığın Olmaması

Ağırlık tahminlerini karmaşık hale getirdiği için güçlü bir şekilde ilişkili özellikler istemezsiniz. İki özellik güçlü bir şekilde ilişkili olduğunda, ağırlıkları tahmin etmek sorunlu hale gelir çünkü özellik etkileri toplamsaldır ve etkileri ilişkili özelliklerden hangisine atfetmeniz gerektiği belirsiz hale gelir.

***

**5.1.1 Yorumlama**\
Doğrusal regresyon modelindeki bir ağırlığın yorumu, karşılık gelen özelliğin türüne bağlıdır.

**Sayısal Özellik:** Sayısal özelliğin bir birim artırılması, tüm diğer özellikler sabit kalırken, tahmin edilen sonucu ağırlığı kadar değiştirir. Örneğin, sayısal bir özellik olarak bir evin büyüklüğünü ele alabiliriz.

**İkili Özellik:** Her örnek için iki olası değerden birini alan bir özelliktir. Örneğin, “Evin bahçesi var mı?” özelliği ikili bir özelliktir. Değerlerden biri referans kategorisi olarak kabul edilir (bazı programlama dillerinde “0” ile kodlanır), örneğin “Bahçe yok”. Özellik referans kategorisinden diğer kategoriye değiştirildiğinde tahmin edilen sonuç özellik ağırlığı kadar değişir.

**Birden Fazla Kategoriye Sahip Kategorik Özellik:** Sabit sayıda olası değere sahip bir özelliktir. Örneğin, "zemin tipi" özelliği için "halı", "laminat" ve "parke" kategorileri vardır. Birden çok kategoriyle başa çıkmak için kullanılan bir çözüm, her kategorinin kendi ikili sütununa sahip olduğu one-hot-encoding yöntemidir. L kategoriye sahip bir kategorik özellik için yalnızca L-1 sütuna ihtiyacınız vardır; çünkü L. sütun, fazladan bilgi taşıyacaktır (örneğin, bir örnek için sütunlar 1'den L-1'e kadar 0 değeri aldığında, bu örneğin kategorik özelliğinin L kategorisini aldığı bilinir). Her kategori için yorumlama, ikili özellikler için yapılan yorumlamayla aynıdır. R gibi bazı diller, kategorik özellikleri farklı şekillerde kodlamanıza olanak tanır ve bu bölümde daha sonra açıklanacaktır.

**Kesişim (Intercept)** ($$\beta\_0$$) :  Kesişim, "sabit özellik" için ağırlığı ifade eder ve bu sabit özellik tüm örnekler için her zaman 1'dir. Çoğu yazılım paketi, kesişimi tahmin edebilmek için bu “1” özelliğini otomatik olarak ekler. Yorumlanışı şu şekildedir: Tüm sayısal özelliklerin değeri sıfır olduğunda ve kategorik özellikler referans kategorilerdeyken, model tahmini kesişim ağırlığına eşittir. Kesişimin yorumu genellikle anlamlı değildir çünkü tüm özellik değerlerinin sıfır olduğu durumlar çoğu zaman mantıklı değildir. Kesişim yorumu, yalnızca özellikler standartlaştırıldığında (ortalama sıfır, standart sapma bir) anlamlı hale gelir. Bu durumda kesişim, tüm özelliklerin ortalama değerlerine sahip bir örnek için tahmin edilen sonucu yansıtır.

#### Doğrusal Regresyon Modelinde Özelliklerin Yorumu

Özelliklerin yorumlanması, aşağıdaki metin şablonları kullanılarak otomatikleştirilebilir.

**Sayısal Özelliklerin Yorumu**\
Bir sayısal özellik $$x\_k$$ bir birim artırıldığında, diğer tüm özellik değerleri sabit kaldığında,  $$y$$ tahmini  $$\beta\_k$$​ birim artar.

**Kategorik Özelliklerin Yorumu**\
Bir kategorik özellik $$x\_k$$ referans kategorisinden diğer kategoriye değiştirildiğinde, diğer tüm özellikler sabit kaldığında,  $$y$$ tahmini  $$\beta\_k$$​ kadar artar.

Doğrusal modelleri yorumlamak için önemli bir diğer ölçüm R-kare $$R^2$$ değeridir. R-kare, modelin hedef çıktının toplam varyansının ne kadarını açıkladığını belirtir. R-kare ne kadar yüksekse, model veriyi o kadar iyi açıklar. R-kareyi hesaplama formülü şu şekildedir:

$$
R^2=1-SSE/SST
$$

**HKT (Hata Kareler Toplamı) - SSE (Sum of Squared Errors)**: Hata terimlerinin karelerinin toplamıdır.

$$
SSE=\sum\_{i=1}^n(y^{(i)}-\hat{y}^{(i)})^2
$$

**TKK (Toplam Kareler Toplamı)-SST (Sum of Squared Totals)**: Verinin toplam varyansının kareleri toplamıdır.&#x20;

$$
SST=\sum\_{i=1}^n(y^{(i)}-\bar{y})^2
$$

**SSE (Hata Kareleri Toplamı)**, doğrusal model uygulandıktan sonra ne kadar varyansın kaldığını gösterir ve bu, tahmin edilen değerler ile gerçek hedef değerler arasındaki kare farkları ile ölçülür. **SST (Toplam Kareler Toplamı)** ise hedef çıktının toplam varyansını ifade eder. **R-kare (R-squared)**, doğrusal modelin bu varyansın ne kadarını açıklayabildiğini belirtir. R-kare, modelin veriyi hiç açıklamadığı durumlarda 0 ile verideki tüm varyansı açıkladığı durumlarda 1 arasında değişir. Ancak, matematiksel kuralları ihlal etmeden R-kare negatif bir değer de alabilir. Bu, **SSE**'nin **SST**'den büyük olduğu durumlarda ortaya çıkar; yani model, verideki trendi yakalayamaz ve hedefin ortalamasını tahmin olarak kullanmaktan daha kötü bir uyum sağlar.

Burada bir püf noktası var: R-kare, modeldeki özellik sayısı arttıkça artar; bu, özellikler hedef değer hakkında herhangi bir bilgi içermese bile geçerlidir. Bu nedenle, modelde kullanılan özellik sayısını hesaba katan **düzeltilmiş R-kare (adjusted R-squared)** kullanmak daha iyidir. Bunun hesaplama formülü şöyledir:

$$
\bar{R}^2=1-(1-R^2)\frac{n-1}{n-p-1}
$$

Burada, **p** özellik sayısını, **n** ise örnek sayısını temsil eder.

Düşük (düzeltilmiş) **R-kare** değerine sahip bir modeli yorumlamak anlamlı değildir, çünkü böyle bir model, temelde varyansın büyük bir kısmını açıklamaz. Bu durumda ağırlıkların herhangi bir yorumu da anlamlı olmayacaktır.

#### Özellik Önemini Belirleme

Doğrusal regresyon modelinde bir özelliğin önemi, **t-istatistiğinin** mutlak değeri ile ölçülebilir. **T-istatistiği**, tahmin edilen ağırlığın standart hatası ile ölçeklendirilmiş halidir:

$$
t\_{\hat{\beta}\_j}=\frac{\hat{\beta}\_j}{SE(\hat{\beta}\_j)}
$$

Bu formül bize şunu söyler: Bir özelliğin önemi, ağırlık arttıkça artar. Bu mantıklıdır çünkü tahmin edilen ağırlığın varyansı ne kadar büyükse (yani doğru değerden ne kadar emin olmadığımızı gösterir), o kadar az önemli hale gelir.

#### 5.1.2 Örnek

Bu örnekte, hava durumu ve takvim bilgilerine dayanarak belirli bir günde kiralanan bisiklet sayısını tahmin etmek için doğrusal regresyon modelini kullanıyoruz. Yorumlama için, tahmin edilen regresyon ağırlıklarını inceliyoruz. Özellikler, sayısal ve kategorik özelliklerden oluşmaktadır. Her bir özellik için, tablo tahmin edilen ağırlığı, tahminin standart hatasını (SE) ve **t-istatistiğinin** mutlak değerini (|t|) göstermektedir.

| <p><br></p>               | Katsayı | Standard Hata | \|t\| |
| ------------------------- | ------- | ------------- | ----- |
| (Intercept)               | 2399.4  | 238.3         | 10.1  |
| seasonSPRING              | 899.3   | 122.3         | 7.4   |
| seasonSUMMER              | 138.2   | 161.7         | 0.9   |
| seasonFALL                | 425.6   | 110.8         | 3.8   |
| holidayHOLIDAY            | -686.1  | 203.3         | 3.4   |
| workingdayWORKING DAY     | 124.9   | 73.3          | 1.7   |
| weathersitMISTY           | -379.4  | 87.6          | 4.3   |
| weathersitRAIN/SNOW/STORM | -1901.5 | 223.6         | 8.5   |
| temp                      | 110.7   | 7.0           | 15.7  |
| hum                       | -17.4   | 3.2           | 5.5   |
| windspeed                 | -42.5   | 6.9           | 6.2   |
| days\_since\_2011         | 4.9     | 0.2           | 28.5  |

**Sayısal bir özelliğin yorumu (sıcaklık):**\
Sıcaklığın 1 derece Celsius artması, diğer tüm özellikler sabit kaldığında, tahmin edilen bisiklet sayısını 110.7 birim artırır.

**Kategorik bir özelliğin yorumu (“weathersit”):**\
Yağmur, kar veya fırtına olduğunda tahmin edilen bisiklet sayısı, iyi hava durumuna kıyasla 1901.5 birim daha düşüktür. Diğer tüm özellikler sabit kaldığında, hava sisli olduğunda tahmin edilen bisiklet sayısı iyi havaya göre 379.4 birim daha azdır.

**Önemli Not:**\
Tüm yorumlar her zaman “diğer tüm özellikler sabit kaldığında” ifadesiyle birlikte gelmelidir. Bu, doğrusal regresyon modellerinin doğası gereğidir. Tahmin edilen hedef, ağırlıklı özelliklerin doğrusal bir kombinasyonudur. Tahmin edilen doğrusal denklem, özellik/hedef uzayında bir hiper düzlemdir (tek bir özellik durumunda basit bir çizgi). Ağırlıklar, hiper düzlemin her yöndeki eğimini (gradyan) belirler. **Olumlu tarafı**, toplamsallık, bireysel bir özelliğin etkisinin diğer tüm özelliklerden bağımsız olarak yorumlanmasını sağlar. Bu, denklemin içindeki tüm özellik etkilerinin (ağırlık çarpı özellik değeri) artı işareti ile birleştirilmesiyle mümkün olur. Ancak **olumsuz tarafı**, özelliklerin ortak dağılımını göz ardı eder. Bir özelliği artırmak, ancak diğerini değiştirmemek, gerçekçi olmayan veya en azından olası olmayan veri noktalarına yol açabilir. Örneğin, oda sayısını artırmak, evin boyutunu artırmadan gerçekçi olmayabilir.

***

#### 5.1.3 Görsel Yorumlama

Doğrusal regresyon modelini insanlar için kolay ve hızlı bir şekilde kavranabilir hale getiren çeşitli görselleştirme yöntemleri mevcuttur.

**5.1.3.1 Ağırlık Grafiği (Weight Plot)**

Ağırlık tablosundaki (ağırlık ve varyans tahminleri) bilgiler, bir ağırlık grafiğinde görselleştirilebilir. Aşağıdaki grafik, önceki doğrusal regresyon modelinden elde edilen sonuçları göstermektedir:

<figure><img src="https://2544487293-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFwj3Lgpiv5AroGHyRyJZ%2Fuploads%2FOLt93YWUJIrHW1IP2OGp%2Fimage.png?alt=media&#x26;token=f8181a77-912a-468c-aa57-93632f86822d" alt=""><figcaption><p><strong>FIGÜR 5.1</strong>: Ağırlıklar noktalar olarak gösterilmiş, %95 güven aralıkları ise çizgilerle belirtilmiştir.</p></figcaption></figure>

Ağırlık grafiği, yağmurlu/kar yağışlı/fırtınalı hava koşullarının tahmin edilen bisiklet sayısı üzerinde güçlü bir olumsuz etkiye sahip olduğunu göstermektedir. Çalışma günü özelliğinin ağırlığı sıfıra yakındır ve %95'lik güven aralığı sıfırı içerir; bu da etkinin istatistiksel olarak anlamlı olmadığını gösterir. Bazı güven aralıkları çok kısadır ve tahminler sıfıra yakındır; buna rağmen, bu özelliklerin etkileri istatistiksel olarak anlamlı bulunmuştur. Sıcaklık buna örnek bir özelliktir.

Ağırlık grafiğinin bir dezavantajı, özelliklerin farklı ölçeklerde ölçülmesidir. Örneğin, hava durumu için tahmin edilen ağırlık, iyi hava ile yağmurlu/kar yağışlı/fırtınalı hava arasındaki farkı yansıtırken, sıcaklık için yalnızca 1 derece Celsius artışını yansıtır. Doğrusal modeli oluşturmadan önce özellikleri (ortalama sıfır ve standart sapma bir olacak şekilde) ölçekleyerek tahmin edilen ağırlıkları daha karşılaştırılabilir hale getirebilirsiniz.

#### 5.1.3.2 Etki Grafiği (Effect Plot)

Doğrusal regresyon modelinin ağırlıkları, gerçek özellik değerleriyle çarpıldığında daha anlamlı bir şekilde analiz edilebilir. Ağırlıklar, özelliklerin ölçeğine bağlıdır ve örneğin, bir kişinin boyunu ölçen bir özellikte metre yerine santimetre kullanırsanız, ağırlık değişir; ancak verinizdeki gerçek etkiler değişmez.

Verinizdeki bir özelliğin dağılımını bilmek de önemlidir, çünkü varyans çok düşükse bu, neredeyse tüm örneklerin bu özelliğe benzer katkıda bulunduğu anlamına gelir. **Etki grafiği**, ağırlık ve özellik kombinasyonunun tahminlere ne kadar katkı sağladığını anlamanıza yardımcı olabilir. Öncelikle, her bir örnek için ağırlığın özellik değeriyle çarpımı olan etkileri hesaplayarak başlayın:

$$
\text{effect}*{j}^{(i)}=w*{j}x\_{j}^{(i)}
$$

Etkiler, **boxplot (kutu grafiği)** ile görselleştirilebilir. Bir boxplot içindeki kutu, verinin yarısı için (etki dağılımının %25 ila %75'lik çeyrek dilimleri) etki aralığını içerir. Kutunun içindeki dikey çizgi, **medyan** etkiyi gösterir; yani, örneklerin %50'sinin etkisi bu değerin altında, diğer %50'sinin ise üstündedir.

Grafikteki **noktalar** ise **aykırı değerleri** temsil eder. Aykırı değerler, üçüncü çeyrek dilimin (Q3) 1.5 \* IQR (çeyrekler arası aralık) üzerindeki veya birinci çeyrek dilimin (Q1) 1.5 \* IQR altındaki noktalar olarak tanımlanır.

Boxplot'ta iki **yatay çizgi (whiskers)** bulunur:

* Alt whisker, birinci çeyrek dilim altında aykırı olmayan noktaları,
* Üst whisker, üçüncü çeyrek dilim üzerinde aykırı olmayan noktaları bağlar.

Eğer aykırı değer yoksa, whisker'lar minimum ve maksimum değerlere kadar uzanır.

**Kategorik özellikler**, ağırlık grafiğinde her kategori için ayrı bir satırda gösterilirken, **boxplot** içinde tek bir grafikte özetlenebilir. Bu, kategorik özelliklerin etkilerinin bir arada kolayca karşılaştırılabilmesini sağlar.

<figure><img src="https://2544487293-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFwj3Lgpiv5AroGHyRyJZ%2Fuploads%2FeEDfNlITa2asmyGaavYc%2Fimage.png?alt=media&#x26;token=508c5ba4-7577-4fe1-b794-f31e2a484bfa" alt=""><figcaption><p>Figür 5.2 : <strong>Özellik etki grafiği</strong>, her bir özellik için verilerdeki etkilerin (özellik değeri × özellik ağırlığı) dağılımını gösterir.</p></figcaption></figure>

Kiralanan bisiklet sayısına en büyük katkıyı sağlayan özellikler, **sıcaklık** ve **gün sayısı** özellikleridir. Gün sayısı, zamanla bisiklet kiralama trendini yakalar. Sıcaklık, tahminlere ne kadar katkı sağladığı konusunda geniş bir aralığa sahiptir. **Gün trendi** özelliği, sıfırdan büyük pozitif katkılara kadar uzanır. Veri kümesindeki ilk gün (01.01.2011), çok küçük bir trend etkisine sahiptir ve bu özellik için tahmin edilen ağırlık pozitiftir (4.93). Bu, her geçen gün etkisinin arttığı ve veri kümesindeki son gün (31.12.2012) için en yüksek olduğu anlamına gelir.

Negatif ağırlığa sahip etkiler için, pozitif etkiye sahip örnekler, negatif özellik değerine sahip olanlardır. Örneğin, **rüzgar hızı** için yüksek negatif etkiye sahip günler, genellikle yüksek rüzgar hızına sahip günlerdir.

***

#### **5.1.4 Bireysel Tahminleri Açıklama**

Bir örnekteki her bir özellik tahmine ne kadar katkıda bulundu? Bu, o örnek için etkiler hesaplanarak yanıtlanabilir. Bireysel bir örneğe ait etkilerin yorumu, ancak her bir özellik için etki dağılımı ile karşılaştırıldığında anlamlı hale gelir.

Doğrusal modelin **bisiklet veri kümesindeki 6. örnek** için yaptığı tahmini açıklamak istiyoruz. Bu örnek, aşağıdaki özellik değerlerine sahiptir:

**TABLO 5.1: 6. Örneğin Özellik Değerleri**

| Özellik           | Değer       |
| ----------------- | ----------- |
| season            | WINTER      |
| yr                | 2011        |
| mnth              | JAN         |
| holiday           | NO HOLIDAY  |
| weekday           | THU         |
| workingday        | WORKING DAY |
| weathersit        | GOOD        |
| temp              | 1.604356    |
| hum               | 51.8261     |
| windspeed         | 6.000868    |
| cnt               | 1606        |
| days\_since\_2011 | 5           |

Bir örneğin özellik etkilerini elde etmek için, özellik değerlerini doğrusal regresyon modelinden gelen ilgili ağırlıklarla çarpmamız gerekir. Örneğin, "workingday" özelliği "WORKING DAY" değerine sahipse, etki 124.9 olacaktır. Sıcaklık 1.6 derece Celsius olduğunda, etki 177.6 olur. Bu bireysel etkileri, veri kümesindeki etkilerin dağılımını gösteren grafikte çarpılar olarak ekleyebiliriz. Bu, bireysel etkileri tüm veri setindeki etkilerle karşılaştırmamıza olanak tanır.

<figure><img src="https://2544487293-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFwj3Lgpiv5AroGHyRyJZ%2Fuploads%2FgJGdKWPVHlsI4ejXUoZ4%2Fimage.png?alt=media&#x26;token=fbef69b7-d50c-4534-ab9d-4fe8ede4684a" alt=""><figcaption><p>Figür 5.3: Bir örneğin etki grafiği, ilgili örneğin etkisinin dağılımını ve önemli noktalarını gösterir. </p></figcaption></figure>

Eğitim verilerindeki örnekler için tahminleri ortalama aldığımızda, **4504** bisiklet kiralaması gibi bir ortalama elde ederiz. Buna kıyasla, 6. örneğin tahmini oldukça düşüktür, çünkü yalnızca **1571** bisiklet kiralanacağı öngörülmüştür. **Etki grafiği**, bunun nedenini ortaya koyar. Boxplot'lar, veri kümesindeki tüm örnekler için etkilerin dağılımını gösterirken, çarpılar ise 6. örnek için etkileri gösterir. 6. örnekte **sıcaklık etkisi düşüktür** çünkü o gün sıcaklık **2 derece** olup, çoğu diğer güne kıyasla oldukça düşüktür (ve sıcaklık özelliğinin ağırlığının pozitif olduğunu hatırlayın). Ayrıca, **"days\_since\_2011"** trend özelliğinin etkisi de diğer örneklere kıyasla küçüktür, çünkü bu örnek **2011 yılının başlarından (5. gün)** gelmektedir ve trend özelliği için ağırlık pozitiftir. Bu nedenle, daha eski tarihler düşük trend etkisine sahiptir.

***

#### **5.1.5 Kategorik Özelliklerin Kodlanması**

Kategorik bir özelliği kodlamak için birkaç farklı yöntem vardır ve seçilen yöntem, ağırlıkların yorumlanmasını etkiler.

**Doğrusal regresyon modellerinde standart yöntem** **treatment kodlamasıdır**, ki çoğu durumda yeterlidir. Farklı kodlama yöntemleri kullanmak, kategorik özellik içeren tek bir sütundan farklı (tasarım) matrisler oluşturmaya dayanır. Bu bölüm, üç farklı kodlama yöntemini sunar, ancak daha birçok yöntem de bulunmaktadır.

Örnek olarak, **altı adet örneğe** ve üç kategorili bir kategorik özelliğe sahip bir veri kümesi ele alalım. İlk iki örnek, A kategorisini; üçüncü ve dördüncü örnek, B kategorisini; son iki örnek ise C kategorisini alır.

**Treatment Kodlaması**

Treatment kodlamasında, her kategori için ağırlık, ilgili kategori ile **referans kategori arasındaki tahmin farkını** temsil eder. Doğrusal modelin kesişimi (intercept), referans kategorinin ortalamasıdır (diğer tüm özellikler sabit olduğunda).

* **Tasarım matrisinin** ilk sütunu, her zaman 1 olan **kesişimi** temsil eder.
* İkinci sütun, örnek iii’nin **B kategorisinde** olup olmadığını belirtir.
* Üçüncü sütun, örnek iii’nin **C kategorisinde** olup olmadığını belirtir.

**A kategorisi için ayrı bir sütuna gerek yoktur**, çünkü bu durumda doğrusal denklem aşırı belirlenmiş olur ve ağırlıklar için tekil bir çözüm bulunamaz. Bunu bilmek yeterlidir: Bir örnek ne B ne de C kategorisindeyse, A kategorisindedir.

**Özellik Matrisi Örneği**

$$
\begin{pmatrix}1&0&0\1&0&0\1&1&0\1&1&0\1&0&1\1&0&1\\\end{pmatrix}
$$

**Etki (Effect) Kodlaması**:  Effect kodlamasında, her kategori için ağırlık, ilgili kategorinin **genel ortalamadan olan tahmin farkını** temsil eder (diğer tüm özelliklerin sıfır veya referans kategoride olduğu varsayılır).

* **İlk sütun**, **kesişimi (intercept)** tahmin etmek için kullanılır.
* Kesişimle ilişkili ağırlık $$\beta\_0$$  **genel ortalamayı** ifade eder.
* **İkinci sütundaki ağırlık** $$\beta\_1$$ **kategori B'nin genel ortalamadan farkını** belirtir.
* **B kategorisinin toplam etkisi** şu şekildedir:  $$\beta\_0 + \beta\_1$$

**C kategorisi** için yorumlama da benzerdir.

* **A referans kategorisi** için ise, $$-(\beta\_1 + \beta\_2)$$ genel ortalamadan farkı ve  $$\beta\_0 -(\beta\_1 + \beta\_2)$$ toplam etkiyi temsil eder.

**Özellik Matrisi Örneği:**

$$
\begin{pmatrix}1&-1&-1\1&-1&-1\1&1&0\1&1&0\1&0&1\1&0&1\\\end{pmatrix}
$$

**Kukla (Dummy) Kodlaması**

Bu kodlamada her kategoriye karşılık gelen $$\beta$$ ağırlığı, **her kategorinin tahmin edilen ortalama** $$y$$ **değerini** ifade eder (diğer tüm özellik değerleri sıfır veya referans kategori olduğunda). Burada dikkat edilmesi gereken nokta, **doğrusal denklemde tekil bir çözüm** elde edebilmek için kesişim $$\beta\_0$$  teriminin **çıkarılmış** olmasıdır. Bu kodlama yöntemiyle **multicollinearity (çoklu doğrusal ilişki)** sorununu önlemenin bir başka yolu, kategorilerden birini dışarıda bırakmaktır.

**Özellik Matrisi Örneği:**

$$
\begin{pmatrix}1&0&0\1&0&0\0&1&0\0&1&0\0&0&1\0&0&1\\\end{pmatrix}
$$

Kategorik değişkenlerin farklı kodlamaları hakkında daha fazla detay öğrenmek isterseniz, bu internet adresi ve blog postunu inceleyebilirsiniz.&#x20;

#### **5.1.6 Doğrusal Modeller İyi Açıklamalar Yaratır mı?**

İyi bir açıklamanın özelliklerine bakıldığında (İnsan-Dostu Açıklamalar bölümünde sunulan), **doğrusal modeller** en iyi açıklamaları oluşturmazlar. Bu modeller **karşılaştırmalı (contrastive)** açıklamalar sunarlar, ancak referans örneği, tüm sayısal özelliklerin sıfır olduğu ve kategorik özelliklerin referans kategorilerde olduğu bir veri noktasıdır. Bu, genellikle **yapay ve anlamsız** bir örnektir ve gerçekte verinizde bulunma olasılığı düşüktür.

Bir istisna vardır: Eğer **tüm sayısal özellikler ortalama merkezli** (özellikten ortalama çıkarılmış) ve tüm kategorik özellikler **effect kodlaması** kullanılarak kodlanmışsa, referans örnek, tüm özelliklerin ortalama değerleri aldığı bir veri noktası olur. Bu da aslında var olmayan bir veri noktası olabilir, ancak en azından daha **anlamlı veya olası** bir durum yaratır. Bu durumda, **ağırlıklar ile özellik değerlerinin çarpımı** (özellik etkileri), “ortalama-örnek” ile karşılaştırmalı olarak tahmin edilen sonuca olan katkıyı açıklar.

İyi bir açıklamanın bir diğer özelliği **seçicilik**tir. Bu, doğrusal modellerde daha az özellik kullanarak veya **seyrek doğrusal modeller** eğiterek elde edilebilir. Ancak, **varsayılan olarak doğrusal modeller seçici açıklamalar oluşturmaz**. Doğrusal modeller, doğru model ilişkisini temsil ettiği sürece **gerçekçi (truthful)** açıklamalar üretir. Ancak, veri setinde daha fazla **doğrusal olmayan ilişki ve etkileşim** varsa, doğrusal model o kadar doğru olmayacak ve açıklamalar da o kadar gerçekçi olmayacaktır. **Doğrusallık**, açıklamaları daha **genel ve basit** hale getirir. Bence, doğrusal modellerin ilişkileri açıklamak için bu kadar yaygın kullanılmasının ana nedeni budur.

***

#### **5.1.7 Seyrek Doğrusal Modeller (Sparse Linear Models)**

Seçtiğim doğrusal model örneklerinin hepsi oldukça **düzenli ve basit** görünüyor, değil mi? Ancak, gerçekte sadece birkaç özellik değil, **yüzlerce veya binlerce** özellik olabilir. Bu durumda doğrusal regresyon modellerinin **yorumlanabilirliği hızla azalır**. Hatta bazen örneklerden daha fazla özelliğiniz olabilir ve standart bir doğrusal model oluşturmak imkânsız hale gelir. Neyse ki, doğrusal modellere **seyreklik (sparsity = az sayıda özellik)** eklemenin yolları vardır.

***

**5.1.7.1 Lasso (Least Absolute Shrinkage and Selection Operator)**

**Lasso**, doğrusal regresyon modeline **seyreklik** kazandırmanın otomatik ve kullanışlı bir yoludur. **Lasso**, “en küçük mutlak küçültme ve seçim operatörü” anlamına gelir ve doğrusal regresyon modeline uygulandığında **özellik seçimi** ve **seçilen özellik ağırlıklarının düzenlenmesini** sağlar.

Ağırlıkların optimize ettiği **minimizasyon problemi** şu şekildedir:

$$
min\_{\boldsymbol{\beta}}\left(\frac{1}{n}\sum\_{i=1}^n(y^{(i)}-x\_i^T\boldsymbol{\beta})^2\right)
$$

Lasso bu optimizasyon problemine bir terim ekliyor,&#x20;

$$
min\_{\boldsymbol{\beta}}\left(\frac{1}{n}\sum\_{i=1}^n(y^{(i)}-x\_{i}^T\boldsymbol{\beta})^2+\lambda||\boldsymbol{\beta}||\_1\right)
$$

$$||\beta||\_1$$  terimi, **özellik vektörünün L1-normunu** ifade eder ve bu, **büyük ağırlıkları cezalandırır**. L1-normu kullanıldığından, ağırlıkların birçoğu **0 değerini alır** ve diğerleri **küçülür**. Düzenleme etkisinin gücünü kontrol eden $$\lambda$$  parametresi genellikle **çapraz doğrulama (cross-validation)** ile ayarlanır. Özellikle $$\lambda$$  değeri büyük olduğunda, **birçok ağırlık sıfır olur**. **Ağırlıklar**, ceza terimi$$\lambda$$  $$\lambda$$'ya bağlı bir fonksiyon olarak görselleştirilebilir. Aşağıdaki şekilde, her özellik ağırlığı bir **eğri** ile temsil edilmiştir.

Bu görselleştirme, ceza teriminin artmasıyla hangi özelliklerin sıfırlandığını ve hangilerinin hala katkıda bulunduğunu gösterir.

<figure><img src="https://2544487293-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFwj3Lgpiv5AroGHyRyJZ%2Fuploads%2FHFcUdyCxJXQlTwhdQpjV%2Fimage.png?alt=media&#x26;token=62c36d4a-ad70-40ac-ae2a-41fb1b49ccf1" alt=""><figcaption><p>Figür 5.4: Ağırlıklara uygulanan ceza (penalty) arttıkça, <strong>sıfır olmayan ağırlık tahmini alan özelliklerin sayısı azalır</strong>. Bu eğriler, <strong>düzenleme yolları (regularization paths)</strong> olarak adlandırılır. Grafiğin üzerinde gösterilen sayı, <strong>sıfır olmayan ağırlıkların sayısını</strong> belirtir.</p></figcaption></figure>

Hangi lambda değeri seçilmelidir? Eğer ceza terimini (penalization term) **bir ayar parametresi** olarak görüyorsanız, **çapraz doğrulama (cross-validation)** ile model hatasını en aza indiren **lambda** değerini bulabilirsiniz. Lambda ayrıca modelin **yorumlanabilirliğini kontrol eden bir parametre** olarak da düşünülebilir. Ceza arttıkça, modelde **daha az özellik** kalır (çünkü ağırlıkları sıfırlanır) ve model **daha kolay yorumlanabilir** hale gelir.

***

#### **Lasso Kullanım Örneği**

Bu örnekte, **Lasso** kullanarak **bisiklet kiralama** sayılarını tahmin edeceğiz. Modelde **kaç özellik** kullanmak istediğimizi önceden belirleyebiliriz. İlk olarak, **2 özellik** ile başlayalım:

| Özellik                   | Ağırlık |
| ------------------------- | ------- |
| seasonWINTER              | 0.00    |
| seasonSPRING              | 0.00    |
| seasonSUMMER              | 0.00    |
| seasonFALL                | 0.00    |
| holidayHOLIDAY            | 0.00    |
| workingdayWORKING DAY     | 0.00    |
| weathersitMISTY           | 0.00    |
| weathersitRAIN/SNOW/STORM | 0.00    |
| temp                      | 52.33   |
| hum                       | 0.00    |
| windspeed                 | 0.00    |
| days\_since\_2011         | 2.15    |

**Sonuç:**

* **Sıfır olmayan ağırlıklara** sahip **ilk iki özellik**: **sıcaklık ("temp")** ve **zaman trendi ("days\_since\_2011")**.

Bu, Lasso'nun **özellik seçimi** ve **düzenlemeyi** nasıl gerçekleştirdiğini gösterir. Yalnızca en önemli özelliklere ağırlık verir ve gereksiz olanları **sıfırlar**.

Şimdi, 5 öznitelik seçelim.&#x20;

| <p><br>Weight</p>         |         |
| ------------------------- | ------- |
| seasonWINTER              | -389.99 |
| seasonSPRING              | 0.00    |
| seasonSUMMER              | 0.00    |
| seasonFALL                | 0.00    |
| holidayHOLIDAY            | 0.00    |
| workingdayWORKING DAY     | 0.00    |
| weathersitMISTY           | 0.00    |
| weathersitRAIN/SNOW/STORM | -862.27 |
| temp                      | 85.58   |
| hum                       | -3.04   |
| windspeed                 | 0.00    |
| days\_since\_2011         | 3.82    |

Dikkat edin, **“temp”** ve **“days\_since\_2011”** için ağırlıklar, yalnızca iki özellikli modeldeki ağırlıklardan farklıdır. Bunun nedeni,   $$\lambda$$ değeri azaldıkça, zaten modelde olan özelliklerin daha az cezalandırılması ve dolayısıyla daha büyük **mutlak ağırlık** alabilmesidir. Lasso ağırlıklarının yorumu, doğrusal regresyon modelindeki ağırlıkların yorumuyla aynıdır. Ancak burada dikkat edilmesi gereken nokta, **özelliklerin standartlaştırılıp standartlaştırılmadığıdır**; çünkü bu, ağırlıkları etkiler. Bu örnekte, özellikler yazılım tarafından **standartlaştırılmış**, ancak ağırlıklar, **özelliklerin orijinal ölçeklerine uygun şekilde otomatik olarak geri dönüştürülmüştür**.

***

#### **Doğrusal Modellerde Seyreklik Sağlamak İçin Diğer Yöntemler**

Doğrusal modelde kullanılan **özellik sayısını azaltmak** için birçok farklı yöntem kullanılabilir:

**Ön İşleme Yöntemleri:**

1. **Manuel Özellik Seçimi**: Uzman bilgisi kullanarak bazı özellikleri seçebilir veya eleyebilirsiniz. Ancak bu yöntem **otomatikleştirilemez** ve veriyi iyi anlayan birine ihtiyaç duyarsınız.
2. **Tek Değişkenli Seçim (Univariate Selection)**: Örneğin, **korelasyon katsayısı** kullanılabilir. Yalnızca belirli bir korelasyon eşiğini aşan özellikler dikkate alınır. Ancak bu yöntem, **özellikleri bireysel olarak** ele alır. Bazı özellikler, diğer özellikler hesaba katılana kadar korelasyon göstermeyebilir. Bu nedenle, bazı önemli özellikler bu yöntemle gözden kaçabilir.

**Adım Adım (Step-wise) Yöntemler:**

1. **İleri Seçim (Forward Selection)**: Modeli tek bir özellikle başlatarak oluşturun. Bunu her özellik için tekrarlayın ve **en iyi performansı gösteren** modeli seçin (örneğin, en yüksek R-kare değeri). Daha sonra, kalan özellikler arasından en iyi performansı sağlayanı ekleyerek modeli genişletin. Bu işlemi, modeldeki maksimum özellik sayısı gibi belirli bir kriter karşılanana kadar devam ettirin.
2. **Geriye Doğru Seçim (Backward Selection)**: İleri seçim yöntemine benzer. Ancak burada, **özellik eklemek yerine** tüm özellikleri içeren modelle başlarsınız ve performansı en çok artıracak **özelliği çıkararak** modeli iyileştirirsiniz. Bu işlemi, belirli bir durma kriteri karşılanana kadar tekrarlayın.

**Lasso'yu tavsiye ediyorum**, çünkü **otomatikleştirilebilir**, tüm özellikleri **aynı anda** değerlendirir ve   $$\lambda$$ ile kontrol edilebilir. Ayrıca **lojistik regresyon modeli** ile **sınıflandırma** için de kullanılabilir.

***

#### **5.1.8 Avantajları**

1. **Tahminlerin ağırlıklı toplam olarak modellenmesi**, tahminlerin nasıl üretildiğini **şeffaf** hale getirir. Lasso ile, kullanılan özellik sayısının **küçük kalması** sağlanabilir.
2. **Doğrusal regresyon modelleri**, **tahmin modellemesi ve çıkarım** yapmak için yaygın olarak kullanılır ve birçok kişi tarafından kabul görmüştür. Eğitim materyalleri ve yazılım uygulamaları dahil olmak üzere, doğrusal regresyon modelleri hakkında **geniş bir deneyim** ve bilgi birikimi vardır. R, Python, Java, Julia, Scala, Javascript gibi birçok programlama dilinde doğrusal regresyon bulunabilir.
3. Matematiksel olarak, **ağırlıkları tahmin etmek basittir** ve **veriler model varsayımlarını karşıladığı sürece** optimal ağırlıkları bulma garantiniz vardır.
4. Ağırlıklarla birlikte **güven aralıkları**, testler ve sağlam bir **istatistiksel teori** elde edersiniz. Ayrıca doğrusal regresyon modelinin birçok **genişletmesi** vardır (GLM, GAM ve diğer modeller hakkında daha fazla bilgi için ilgili bölüme bakınız).

***

#### **5.1.9 Dezavantajları**

1. **Doğrusal regresyon modelleri**, yalnızca **doğrusal ilişkileri** temsil edebilir; yani, giriş özelliklerinin ağırlıklı bir toplamıdır. Her **doğrusallık dışı ilişki** veya **etkileşim**, model girdisi olarak **elle oluşturulmalı** ve açıkça verilmelidir.
2. Doğrusal modeller genellikle **tahmin performansı açısından zayıf** kalır, çünkü öğrenilebilecek ilişkiler sınırlıdır ve çoğu zaman karmaşık gerçekliği **aşırı basitleştirirler**.
3. Bir ağırlığın yorumu, **tüm diğer özelliklere bağlı olduğundan** sezgisel olmayabilir. Örneğin, **y** ile yüksek pozitif korelasyona sahip bir özellik ve başka bir özellik, doğrusal modelde negatif bir ağırlık alabilir. Bunun nedeni, diğer özellik hesaba katıldığında **yüksek boyutlu uzayda** negatif korelasyona sahip olmasıdır. Tamamen **korelasyonlu özellikler**, doğrusal denklem için **tek bir çözüm bulunmasını imkânsız hale** getirir.

   **Örnek:** Bir evin değerini tahmin eden bir modeliniz var ve özellikler arasında **oda sayısı** ile **evin büyüklüğü** bulunuyor. Evin büyüklüğü ile oda sayısı yüksek korelasyona sahiptir: Evin boyutu arttıkça oda sayısı da artar. Bu iki özelliği doğrusal modele dahil ederseniz, evin büyüklüğü daha iyi bir tahminci olabilir ve büyük bir pozitif ağırlık alabilir. Ancak oda sayısı, **aynı boyutta** bir evde oda sayısının artırılması değeri düşürebilir veya güçlü korelasyon olduğunda doğrusal denklem daha az kararlı hale gelebilir.

***

**Kaynak:**\
Friedman, Jerome, Trevor Hastie, and Robert Tibshirani. “The elements of statistical learning”. [hastie.su.domains/ElemStatLearn](https://hastie.su.domains/ElemStatLearn) (2009).
