Lojistik Regresyon Modelini Artırmak


11

Adaboost, birçok zayıf öğreniciyi güçlü bir form oluşturmak için birleştiren bir topluluk yöntemidir. Ben okudum adaboost tüm örnekleri zayıf öğreniciler olarak karar kütükleri / ağaçları kullanın. Adaboost'ta farklı zayıf öğrencileri kullanabilir miyim? Örneğin, bir lojistik regresyon modelini artırmak için adaboost (genellikle artırma) nasıl uygulanır?

Sınıflandırma ağaçlarının ve lojistik regresyonun temel farklarından biri, önceki sınıfların (-1,1) çıktıları, lojistik regresyon ise probları çıkarmasıdır. Bir fikir, bir dizi özellikten en iyi X özelliğini seçmek ve probları sınıflara dönüştürmek için bir eşik (0.5?) Almak ve daha sonra bir sonraki özelliği bulmak için ağırlıklı bir lojistik regresyon kullanmaktır.

Ancak, farklı zayıf öğrencileri olasılıkları çıkaran karar kütüklerinden farklı olarak artırmak için genel bir algoritma olduğunu hayal ediyorum. Logitboost'un sorumun cevabı olduğuna inandım ama "Katkı Lojistik Lojistik Regresyon" makalesini okumaya çalıştım ve ortada sıkışıp kaldım.

Yanıtlar:


7

Öngörücülerin işleyişini (temel öğrenenler, örneğin kütükler aracılığıyla) ve artırımdaki kayıp işlevinin işlenmesini karıştırmayın. AdaBoost, yanlış sınıflandırma hatasını en aza indirgemek için temel öğrencilerin kombinasyonlarını bulmak olarak düşünülse de, belirttiğiniz "Ek Lojistik Lojistik Regresyon" makalesi, üstel bir kayıp fonksiyonunu en aza indirgemek için de formüle edilebileceğini gösterir. Bu içgörü, gradyan artırma yoluyla farklılaştırılabilir kayıp fonksiyonlarını en aza indiren geniş bir makine öğrenimi problemleri sınıfına destek yaklaşımını açtı . Her bir basamağa uyan artıklar , kayıp fonksiyonunun gradyanından hesaplanan yalancı kalıntılardır . Tahminler ikili kütükler olarak modellenmiş olsa bile, modelin çıktısının ikili bir seçim olması gerekmez.

Başka bir cevap belirttiği gibi, doğrusal temel öğrenenler destek için işe yaramayabilir, ancak doğrusal temel öğrenenlere standart ya da lojistik anlamda "güçlendirilmiş regresyon" için gerek yoktur. Kararlı olarak doğrusal olmayan kütükler, uygun kayıp fonksiyonlarını en aza indirmek için yavaş tabanlı öğreniciler olarak birleştirilebilir. Tahmincilerin katsayılarında doğrusal olan standart bir regresyon modelinden çok uzak olmasına rağmen hala "güçlendirilmiş regresyon" olarak adlandırılmaktadır. Kayıp fonksiyonu, doğrusal modeller ve yordayıcılar olarak kütükleri veya ağaçları olan "güçlendirilmiş regresyon" modelleri için işlevsel olarak aynı olabilir. ISLR'ın 8. Bölümü bunu oldukça açık bir şekilde ortaya koymaktadır.

Dolayısıyla, artan regresyona eşdeğer bir lojistik regresyon istiyorsanız, temel öğrencilerden ziyade kayıp fonksiyonuna odaklanın. Alıntı yaptığınız makaledeki LogitBoost yaklaşımı budur: Adaboost'ta örtülü olan üstel kayıptan ziyade bir günlük kaybını en aza indirin. Wikipedia AdaBoost sayfasında bu fark açıklanmaktadır.

Bu sitedeki birçok katılımcı, log-odds / olasılık tabanlı bir tahminin katı bir evet / hayır sınıflandırma tahminine çok tercih edildiğini, çünkü daha önce yanlış pozitif ve yanlış negatif tahminlerin ekstra maliyetleri arasında farklı dengelemelere izin verdiğini iddia edecektir. . Gibi Alakalı sorunun cevabı gösterir, AdaBoost türetilen kuvvetli sınıflandırıcı tahmin olasılıkları elde etmek mümkündür, ancak LogitBoost iyi daha iyi performans verebilir.

Sınıflandırma için gradyan artırma uygulamaları, temel olasılıklar hakkında bilgi sağlayabilir. Örneğin, gradyan yükseltme ile ilgili bu sayfa, sklearnkodun lojistik regresyon için sapma kaybı ile AdaBoost için üstel kayıp arasında nasıl bir seçim yapılmasına izin verdiğini ve gradyanla güçlendirilmiş modelden olasılıkları tahmin etmek için doküman işlevlerini gösterir.


Cevabınız için çok teşekkür ederim. Lojistik regresyonun işlevselliğini elde etmek için doğru olanı anlayabiliyorsam, tek yapmam gereken, lojistik kayıp fonksiyonu ve zayıf öğrenenler sınıflandırma ağaçları ile gradyan artırma algoritmasını kullanmak mı? Ancak sınıflandırma ağaçları {-1,1} çıktı verirken, olasılıkları çıkaran lojistik regresyon. Ayrıca sınıflandırma ağaçları lojistik kayıp yerine gini endeksini en aza indirmeye çalışır. Burada temel bir şeyi özlüyorum. Lojistik kaybı nereye konmalı? Probları modelden nasıl çıktılar?
gnikol

Y'nin sürekli olduğu kavramını anlıyorum, çünkü regresyon ağaçları doğrusal regresyon ile aynı kayıp fonksiyonu olan mse'yi en aza indirir. Bu yüzden art arda kalanlara bir regresyon ağacı sığdırıyorum. Ancak sınıflandırma bağlamında, sınıflandırma ağaçları gini indeksini veya benzer bir şeyi en aza indirir. Bu, lojistik regresyon veya lojistik regresyonun kayıp fonksiyonu ile nasıl bağlantılıdır?
gnikol

@gnikol Cevabımı hem size hem de diğer okuyuculara daha açık hale getireceğini umduğum şekilde gözden geçirdim. Gradyan takviyesine uyan kalıntılar, kayıp fonksiyonunun gradyanından hesaplanan yalancı kalıntılardır; Kayıp fonksiyonunun seçimi AdaBoost'u LogitBoost'tan ayıran şeydir. Her durumda güçlü öğreniciden olasılıklar elde edilebilir; Son paragraftaki bir uygulama örneğine bağlantı verdim.
EdM

5

Aslında burada regresyon davasında çok benzer bir sorumuz var. @Matthew Drury'den çok iyi bir yanıt aldık

Doğrusal Regresyon için Gradyan Arttırma - neden çalışmıyor?

Doğrusal model (lojistik regresyon gibi) artırmak için iyi değildir. Bunun nedeni, iki doğrusal modeli bir araya getirirseniz sonuç başka bir doğrusal modeldir. Öte yandan, iki karar kütüğü veya ağaç eklenmesi, daha karmaşık ve ilginç bir modele sahip olacaktır (artık bir ağaç değil.)

Ayrıntılar bu yayında bulunabilir. Bu linkte iki doğrusal model eklemenin neden ilginç olmadığını öğrendim. Ve yinelemeyle artırmanın karar güdük yinelemesi üzerindeki etkisini gösteriyorum.

Doğrusal temel öğrenen, güçlendirmede nasıl çalışır? Ve xgboost kütüphanesinde nasıl çalışır?

Karar ağacı / kütüğü, lojistik regresyona benzer bir "doğrusal model" değildir.

Ayrıntılar için bu gönderiye bakınız

Karar kütüğü doğrusal bir model midir?

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.