R'de Lojistik Regresyon: Denklem Türetme [Örnekle]

Yayınlanan: 2020-07-28

Bu makalede, makine öğrenimindeki en yaygın ancak zorlu kavramlardan biri olan lojistik regresyondan bahsedeceğiz. Bu ayrıntılı makalede lojistik regresyonun ne olduğunu ve lojistik regresyon denkleminin türetildiğini bulacaksınız.

Kavramı daha kolay anlamak için R'deki bir lojistik regresyon örneğini de paylaştık. Ancak, örnek üzerinde çalışmadan önce tüm fikirleri oldukça iyi bildiğinizden emin olun. Doğrusal regresyona aşina olmanız faydalı olacaktır çünkü bu kavramların her ikisi de birbiriyle bağlantılıdır.

İçindekiler

Lojistik Regresyon Nedir?

Lojistik regresyon, bir dizi bağımsız değişkene göre ikili bir sonucu tahmin eder. Bir logit fonksiyonu kullanarak ve ona uygun veriler kullanarak bir olayın meydana gelme olasılığını tahmin eden bir sınıflandırma algoritmasıdır. Lojistik regresyon, yalnızca iki değere sahip olabilecek bir sonucun olasılığını tahmin edebildiği için doğrusal regresyondan farklıdır. İkili değişkeniniz olduğunda doğrusal regresyon kullanmak uygun değildir, çünkü:

  • Doğrusal regresyon, gerekli aralığın dışındaki değerleri tahmin eder
  • Regresyon, iki faydayı tahmin edilen bir satırda dağıtmayabilir

Lojistik regresyon, lineer regresyonun yaptığı gibi bir çizgi üretmez. 0 ile 1'den büyük değerler arasında değişen bir lojistik eğri sağlar.

Dünyanın en iyi Üniversitelerinden veri bilimi çevrimiçi kurslarını öğrenin . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

Kontrol edin: R Proje Fikirleri

Lojistik Regresyon Denklemi Türetme

Lojistik regresyon denklemini lineer regresyon denkleminden türetebiliriz. Lojistik regresyon, glm algoritmaları (Genelleştirilmiş Doğrusal Model) sınıfına girer. Nelder ve Wedderburn bu modeli 1972'de daha önce çözemediği problemleri çözmek için doğrusal regresyon kullanma yöntemi olarak tanıttı. Ayrı modellerden oluşan bir sınıf önermişler ve özel bir model olarak lojistik regresyon eklemişlerdi.

Genelleştirilmiş bir doğrusal modelin denkleminin aşağıdaki gibi olduğunu biliyoruz:

g(e<y) = a + bx1

g() bağlantı işlevi anlamına gelir, E(y) hedef değişkenin beklentisi anlamına gelir ve RHS (sağ taraf) doğrusal tahmin edicidir. Bağlantı işlevi, y'nin beklentisini doğrusal öngörücü ile 'bağlar'.

100 müşteriye ait verimiz olduğunu ve bir müşterinin belirli bir ürünü satın alıp almayacağını tahmin etmemiz gerektiğini varsayalım. Kategorik bir sonuç değişkenimiz olduğu için lojistik regresyon kullanmalıyız.

Doğrusal bir regresyon denklemi ile başlayacağız:

g(y) = o+(gelir) — (1)

Burada, kolay anlaşılması için bağımsız değişkeni 'gelir' olarak tuttuk.

Odak noktamız, sonuçta ortaya çıkan bağımlı değişkenin olasılığı üzerindedir (müşteri satın alacak mı, almayacak mı?). Daha önce tartıştığımız gibi, g() bizim bağlantı fonksiyonumuzdur ve Başarı Olasılığı (p) ve Başarısızlık Olasılığı (1-p) üzerine kuruludur. p aşağıdaki niteliklere sahip olmalıdır:

  • p her zaman pozitif olmalıdır
  • p her zaman 1'den küçük veya ona eşit olmalıdır

Şimdi g()'i 'p' ile göstereceğiz ve lojistik regresyon denklemimizi türeteceğiz.

Olasılık her zaman pozitif olduğundan, lineer denklemi üstel biçiminde ele alacağız ve aşağıdaki sonucu alacağız:

p = exp(0+(gelir)) = e((0+(gelir)) — (2)

Olasılığı 1'den küçük yapmak için p'yi p'den büyük bir sayıya bölmemiz gerekecek:

p = exp(0+(gelir)) / (0+(gelir)) + 1 = e(0+(gelir)) / (0+(gelir)) + 1 — (3)

eq kullanarak (1), (2) ve (3), p'yi şu şekilde tanımlayabiliriz:

p = ey/1 + ey — (4)

Burada p başarı olasılığıdır, dolayısıyla 1-p başarısızlık olasılığı olmalıdır:

q = 1 – p = 1 -(ey /1 + ey) — (5)

Şimdi (4)'ü (5)'e bölelim:

p / 1 – p = ey

Her iki tarafta da log alırsak, aşağıdakileri elde ederiz:

log (p / 1 – p) = y

Bu bağlantı işlevidir. Daha önce belirlediğimiz y değerini yerine koyduğumuzda, şunu elde ederiz:

log(p / 1 – p) = o + (gelir)

Ve işte karşımızda, lojistik regresyon denklemi. Bir sonucun olasılığını sağladığı için değeri her zaman 0 ile 1 arasında kalır.

Hakkında Okuyun: Yeni Başlayanlar İçin 9 İlginç Doğrusal Regresyon Projesi Fikirleri ve Konuları

R'de Lojistik Regresyon Örneği

R'deki lojistik regresyon durumumuzda UCLA'dan (Kaliforniya Üniversitesi, Los Angeles) verileri kullanıyoruz. Burada elimizdeki verilere göre kabul edilme ihtimalini tahmin eden bir model oluşturmamız gerekiyor. GPA, GRE puanı, öğrencinin lisans kolejinin derecesi ve itiraf dahil olmak üzere dört değişkenimiz var.

df <- read.csv(“https://stats.idre.ucla.edu/stat/data/binary.csv”)

str(df)

## 'data.frame': 400 obs. 4 değişkenden:

## $ kabul et: int 0 1 1 1 0 1 1 0 1 0 …

## $ gre : int 380 660 800 640 520 760 560 400 540 700 …

## $ gpa : sayı 3,61 3,67 4 3,19 2,93 3 2,98 3,08 3,39 3,92 …

## $ rank : int 3 3 1 4 4 2 1 2 3 2 …

Değişkenler sayı veya tam sayıdır:

toplam(is.na(df))

## [1] 0

Ayrıca boş değer olmadığını ve değişken limitinin ortalaması 0,5'ten küçük olduğu için kabulden daha fazla reddetme olayı olduğunu bulduk.

Sistemin kabulleri her rütbe kategorisinde uygun şekilde dağıttığından emin olmalısınız. Bir sıralamanın yalnızca 5 reddedildiğini (veya bilgi kabul ettiğini) varsayalım, o zaman bu sıralamayı analizinizde kullanmak zorunda değilsiniz.

xtabs(~ kabul +rank ,veri=df)

## rütbe

## kabul et 1 2 3 4

## 0 28 97 93 55

## 1 33 54 28 12

Şimdi fonksiyonumuzu çalıştıralım:

df$rank <- as.factor(df$rank)

logit <- glm(kabul ~ gre+gpa+rank,data=df,family=”binom”)

özet(logit)

##

## Telefon etmek:

## glm(formül = kabul ~ gre + gpa + rütbe, aile = “iki terimli”,

## veri = df)

##

## Sapma Kalıntıları:

## Min 1Q Medyan 3Q Maks

## -1.6268 -0.8662 -0.6388 1.1490 2.0790

##

## Katsayılar:

## Tahmini Std. Hata z değeri Pr(>|z|)

## (Kesme) -3.989979 1.139951 -3.500 0.000465 ***

## gr 0.002264 0.001094 2.070 0.038465 *

## gpa 0.804038 0.331819 2.423 0.015388 *

## sıra2 -0.675443 0.316490 -2.134 0.032829 *

## rank3 -1.340204 0.345306 -3.881 0.000104 ***

## rank4 -1.551464 0.417832 -3.713 0.000205 ***

## —

## Anlamı. kodlar: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1' ' 1

##

## (Binom ailesi için dağılım parametresi 1 olarak alınır)

##

## Sıfır sapma: 399 serbestlik derecesinde 499,98

## Artık sapma: 394 serbestlik derecesinde 458.52

## AIC: 470,52

##

## Fisher Puanlama yinelemelerinin sayısı: 4

Fonksiyonu çalıştırmadan önce rank değişkenini tamsayıdan faktöre çevirdiğimizi fark etmiş olmalısınız. Aynısını yaptığınızdan emin olun.

Son sonuç:

Bir öğrencinin genel not ortalamasının 3.8, GRE puanının 790 olduğunu ve 1. derece bir kolejde okuduğunu varsayalım. Modelimizi kullanarak gelecekte kabul edilme şansını bulalım:

x <- data.frame(gre=790,gpa=3.8,rank=as.factor(1))

p<- tahmin(logit,x)

P

## 1

## 0.85426

Modelimiz, çocuğun gelecekte kabul edilme şansının %85 olduğunu tahmin ediyor.

Ayrıca Okuyun: Makine Öğrenimi Proje Fikirleri

Son düşünceler

Bu makale için bu kadar. Oldukça yararlı bulacağınızdan eminiz. Lojistik regresyon ve ilgili konular hakkında herhangi bir sorunuz veya düşünceniz varsa, lütfen bunları aşağıdaki yorum bölümünde paylaşın.

R hakkında bilgi edinmek, veri bilimi hakkında her şeyi merak ediyorsanız, çalışan profesyoneller için oluşturulan ve 10'dan fazla vaka çalışması ve proje, pratik uygulamalı atölyeler, mentorluk sunan IIIT-B & upGrad'ın Veri Biliminde Yönetici PG Programına göz atın. endüstri uzmanları, endüstri danışmanlarıyla bire bir, en iyi firmalarla 400+ saat öğrenim ve iş yardımı.

Lojistik regresyon ve lineer regresyon birbirinden nasıl farklıdır?

Doğrusal regresyonun amacı, en uygun doğruyu belirlemektir, ancak lojistik regresyon bir adım daha ileri gider ve çizgi değerlerini sigmoid eğrisine uydurur. Bu iki yöntem arasındaki temel fark, bağımlı değişken ikili olduğunda lojistik regresyon uygulanmasıdır. Bağımlı değişken sürekli ve regresyon doğrusu lineer olduğunda lineer regresyon kullanılır. Doğrusal regresyonu tahmin etmek için sıradan en küçük kareler tekniği kullanılırken, lojistik regresyonu tahmin etmek için maksimum olabilirlik tahmin yöntemi kullanılır. Doğrusal regresyonun çıktısı süreklidir, ancak lojistik regresyonun çıktısı yalnızca sınırlı sayıda ayrık potansiyel değere sahiptir.

Lojistik regresyon kullanımı ne zaman yararlıdır?

Kategorik bağımlı değişken, lojistik regresyon kullanılarak tahmin edilir. Elimizdeki veriler sonsuz bir ölçekte ölçülebildiğinde lojistik regresyon uygulayabiliriz. Bir meydana gelme olasılığını tahmin etmek için lojistik regresyon analizi faydalıdır. Herhangi iki sınıfın olasılığını belirlemeye yardımcı olur. Lojistik regresyon kullanılarak yalnızca sınıflandırma ve olasılık sonuçları tahmin edilebilir. İstenmeyen posta algılama, diyabet tahmini, kanser teşhisi vb. gibi çeşitli sınıflandırma sorunlarını çözmek için kullanılabilir.

Lojistik regresyonu kullanmanın sınırlamaları nelerdir?

1. Lojistik regresyon doğrusal bir karar yüzeyine sahip olduğundan, doğrusal olmayan sorunları ele alamaz.

2. Lojistik regresyon algoritması aykırı değerlere duyarlıdır.

3. Hem ölçeklendirme hem de normalleştirme Lojistik Regresyon'un temel kriterleri olduğundan, veri hazırlama zaman alıcı olabilir.

4. İki sınıfı tamamen ayıran bir özellik varsa, model artık eğitilemez. Buna 'tam ayrılma' denir.

5. Gözlem sayısı öznitelik sayısından az ise, fazla uydurmaya neden olabileceğinden lojistik regresyon uygulanmamalıdır.

6. Diğer bir dezavantaj, lojistik regresyondaki her veri noktasının diğer tüm veri noktalarından bağımsız olması gerektiğidir. Gözlemler bağlantılı olduğunda, model bu gözlemlerin alaka düzeyini olduğundan fazla tahmin etme eğilimindedir.