Logistic Regression
Lojistik regresyon, özelliklerin ağırlıklı toplamını sigmoid işleviyle sınıf olasılığına dönüştürür. Nasıl eğitildiğini, odds olarak nasıl yorumlandığını ve eşik değerlerini nasıl kullandığını öğren.
Lojistik regresyon, bir girdinin bir sınıfa ait olma olasılığını, özelliklerinin ağırlıklı toplamını lojistik veya sigmoid fonksiyonundan geçirerek tahmin eden, sınıflandırmaya yönelik bir denetimli öğrenme yöntemidir. Model sınıfın log-olasılık oranlarını özelliklere göre regresyonla modellediği için adında “regresyon” geçer, ancak sınıflandırma için kullanılır: istenmeyen posta filtresi, kredi modeli veya tarama testi, olasılığı bir eşik kullanarak evet-hayır kararına dönüştürür. Joseph Berkson, “logit” terimini ortaya attığı 1944'ten itibaren yöntemi genel bir istatistiksel model olarak geliştirdi; model saniyeler içinde eğitildiği, olasılık ürettiği ve ağırlıkları doğrudan olasılık oranları üzerindeki etkileri gösterdiği için tablo verilerini sınıflandırmada standart temel yöntem olmaya devam ediyor.
Lojistik Regresyon Nasıl Çalışır#
Model, tıpkı doğrusal regresyon gibi z = w·x + b puanını hesaplar, ardından bunu p = 1 / (1 + e⁻ᶻ) olasılığına dönüştürür. Sigmoid, her puanı 0 ile 1 aralığına sıkıştırır, z = 0 iken 0,5 döndürür ve z her iki yönde de büyüdükçe 1'e veya 0'a yaklaşır. Ters dönüşüm, puanın ne anlama geldiğini gösterir: z, log-olasılık oranına, log(p / (1 − p)), eşittir; dolayısıyla model, pozitif sınıfın log-olasılık oranlarının her özellikle doğrusal olarak değiştiğini varsayar ve karar sınırı bir doğru, düzlem veya hiper düzlemdir. Bir özelliğin bir birim artması, olasılık oranlarını o özelliğin w ağırlığı için eʷ ile çarpar; tıp ve kredi araştırmalarında lojistik regresyon sonuçlarının olasılık oranları olarak raporlanmasının nedeni budur.
Eğitim, ağırlıkları maksimum olabilirlik yöntemiyle belirler; bu, eğitim verileri üzerinde ortalaması alınan ve ikili çapraz entropi olarak da adlandırılan log kaybını en aza indirmekle aynıdır: −[y·log(p) + (1 − y)·log(1 − p)]. Kayıp fonksiyonu dışbükeydir; bu nedenle tek bir minimumu vardır, ancak kapalı biçimli bir çözümü yoktur; dolayısıyla L-BFGS, Newton yöntemi veya gradyan inişi gibi çözücüler bu minimuma yinelemeli olarak ulaşır. Ceza terimi olmadığında, bir hiper düzlemin kusursuz biçimde ayırdığı sınıflar için ağırlıklar sonsuza doğru büyür; bu nedenle kütüphaneler varsayılan olarak düzenlileştirme ekler: scikit-learn'deki LogisticRegression sınıfı C = 1.0 değeriyle L2 cezası uygular ve C'nin daha küçük değerleri daha güçlü düzenlileştirme sağlar. Log kaybı doğru olasılıkları ödüllendirdiğinden, doğru tanımlanmış ve uygun biçimde düzenlileştirilmiş bir lojistik regresyon modeli genellikle iyi kalibre edilmiş olasılıklar üretir; Brier skoru gibi ölçütlerin ölçtüğü özellik de budur.
Karar Eşikleri#
Eşik, her olasılığı bir sınıf etiketine dönüştürür; 0,5 yalnızca varsayılan değerdir. Eşiği değiştirmek kesinlik ile duyarlılık arasında ödünleşim yaratır: kanser tarama modeli daha az tümörü kaçırmak için eşiği düşürür, istenmeyen posta filtresi ise meşru e-postaları gizlememek için eşiği yükseltir. ROC eğrisi bu ödünleşimi her eşik boyunca gösterir; eğrinin altındaki alan, modelin pozitifleri negatiflerden daha iyi sıralayıp sıralamadığını ölçer. Bu örnek, scikit-learn ile birlikte gelen Wisconsin meme kanseri veri kümesi üzerinde lojistik regresyon eğitir ve iki eşiği karşılaştırır:
from sklearn.datasets import load_breast_cancer
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import precision_score, recall_score
from sklearn.model_selection import train_test_split
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
X, y = load_breast_cancer(return_X_y=True)
y = 1 - y # make malignant (originally 0) the positive class
X_train, X_test, y_train, y_test = train_test_split(X, y, stratify=y, random_state=0)
# Standardize the 30 features, then fit weights by minimizing log loss
model = make_pipeline(StandardScaler(), LogisticRegression())
model.fit(X_train, y_train)
# Predicted probability of malignancy, turned into labels at two thresholds
proba = model.predict_proba(X_test)[:, 1]
for threshold in (0.5, 0.1):
pred = (proba >= threshold).astype(int)
print(
f"Threshold {threshold}: precision {precision_score(y_test, pred):.3f}, recall {recall_score(y_test, pred):.3f}"
)Varsayılan 0,5 eşiğinde, modelin işaretlediği her tümör kötü huyludur (kesinlik 1.000) ve test kümesindeki 53 kötü huylu tümörün 2'sini kaçırır (duyarlılık 0.962). 0,1 eşiğinde 53 tümörün tümünü yakalar (duyarlılık 1.000) ve ayrıca 90 iyi huylu tümörün 11'ini işaretler (kesinlik 0.828).
Çok Sınıflı ve Sinir Ağı Sınıflandırıcıları#
Birbirini dışlayan ikiden fazla sınıf için multinomial lojistik regresyon, her sınıf için bir puan hesaplar ve puanları softmax fonksiyonuyla toplamı 1 olan olasılıklara dönüştürerek çapraz entropi kaybıyla eğitir; bire karşı geri kalan yaklaşımı ise her sınıf için ayrı bir ikili model eğitir. Tek bir girdinin aynı anda birden çok etiket taşıyabildiği çok etiketli problemler, her sınıf için bağımsız bir sigmoid kullanır.
Çoğu sınıflandırma sinir ağının çıkış katmanı, görüntü sınıflandırma ağlarında olduğu gibi, önceki katmanların öğrendiği özelliklere bu modellerden birini uygular ve doğrusal bir katmanla softmax ile biter. YOLO26 algılama başlığının her sınıflandırma dalı, her ızgara konumunda sınıf başına bir logit üreten 1×1 evrişimle biter; sigmoid her logiti ikili çapraz entropiyle eğitilen bağımsız bir sınıf puanına dönüştürür, bu nedenle her sınıf puanı o konumdaki özellikler üzerinde bir lojistik regresyondur. Tahmin modunun varsayılan değeri 0.25 olan conf argümanı, bu puanlara uygulanan karar eşiğidir.
Uygulamalar#
- Klinik risk puanları: Modeller yaş, kan basıncı ve laboratuvar değerlerinden hastalık, komplikasyon veya hastaneye yeniden yatış olasılığını tahmin eder; olasılık oranları, her bir faktörün riski ne kadar artırdığını klinisyenlere gösterir.
- Kredi puanlaması: Kredi kuruluşları, her özelliğin puana katkısı başvuru sahiplerine ve düzenleyici kurumlara açıklanabildiği için lojistik regresyon tabanlı kredi puan kartları oluşturur.
- Reklam tıklaması tahmini: Google'ın 2013 tarihli üretim ortamındaki tıklama oranı sistemi makalesinde, kullanıcının bir reklama tıklama olasılığını tahmin etmek için modeli seyrek tutan FTRL-Proximal algoritmasıyla çevrimiçi eğitilen lojistik regresyon anlatılmıştır.
- Müşteri kaybı tahmini: Abonelik işletmeleri, her müşterinin bir sonraki dönemde aboneliğini iptal etme olasılığını tahmin eder ve elde tutma tekliflerini en yüksek riskli hesaplara yöneltir.
Lojistik Regresyon ve İlişkili Yöntemler#
- 0/1 etiketleri üzerinde doğrusal regresyon: Sınıf etiketlerine kare hata uydurmak, 0'ın altında ve 1'in üzerinde tahminler üretir; sınırdan uzaktaki noktalar, doğru sınıflandırılanlar bile, uyumu etkiler. Sigmoid ve log kaybı bu sorunları önler.
- Destek vektör makineleri (SVM): Doğrusal SVM de bir hiper düzlem öğrenir, ancak marjı en üst düzeye çıkarmak için menteşe kaybını en aza indirir ve olasılık yerine sınırdan olan uzaklıkları verir.
- Naive Bayes: Özelliklerin her sınıfta nasıl ortaya çıktığını modelleyen üretici bir sınıflandırıcıdır ve ayırt edici muadili lojistik regresyonla klasik bir ikili oluşturur. Ng ve Jordan (2001), naive Bayes'in daha yüksek asimptotik hatasına daha az eğitim örneğiyle yaklaştığını; lojistik regresyonun ise veri bol olduğunda daha düşük hataya ulaştığını gösterdi.
- Perceptron: Aynı ağırlıklı toplama bir basamak fonksiyonu uygular, yalnızca 0 veya 1 çıktısı verir ve ağırlıklarını yalnızca bir eğitim örneğini yanlış sınıflandırdığında günceller.










