Neden daha küçük ağırlıklar düzenli modellemede daha basit modellerle sonuçlanır?


27

Andrew Ng'nin Makine Öğrenimi kursunu bir yıl kadar önce tamamladım ve şimdi Lise Matematik araştırmamı Lojistik Regresyon çalışmalarına ve performansı optimize etmek için kullandığım tekniklere yazıyorum. Bu tekniklerden biri elbette düzenlileşmedir.

Düzenlemenin amacı, maliyet fonksiyonunu model basitliği hedefini içerecek şekilde genişleterek fazladan takmayı önlemektir. Bunu, bazı düzenlileştirme paramaterleriyle çarpılan her bir karenin ağırlık fonksiyonuna karıştırarak, maliyet fonksiyonuna ekleyerek ağırlık boyutunu cezalandırarak başarabiliriz .

Şimdi, Makine Öğrenmesi algoritması, eğitim setindeki doğruluğu korurken ağırlıkların boyutunu azaltmayı hedefleyecektir. Buradaki fikir, veriler üzerinde genelleştirilen ve daha az karmaşık olarak tüm stokastik gürültüye uymaya çalışmayan bir model üretebileceğimiz ortadaki bir noktaya ulaşacağımızdır.

Benim karışıklık neden biz cezalandırma boyutunu ağırlıkları? Neden daha büyük ağırlıklar daha karmaşık modeller oluşturur ve daha küçük ağırlıklar daha basit / pürüzsüz modeller yaratır? Andrew Ng, dersinde açıklamanın öğretilmesi zor bir ders olduğunu iddia ediyor, ama sanırım şimdi bu açıklamayı arıyorum.

Prof. Ng, yeni maliyet fonksiyonunun, özelliklerin ağırlıklarının (yani, x ^ 3 ve x ^ 4) sıfıra nasıl dönmesine neden olabileceğine ve böylece modelin derecesinin düşürülmesine bir örnek verdi. açıklama.

Sezgim, daha küçük olanların, daha küçük olanlara göre daha büyük özelliklere sahip olan özelliklerde “kabul edilebilir” olma eğiliminde olacağıdır (çünkü küçük ağırlıklara sahip olan özellikler, fonksiyonun temeli gibidir). Küçük ağırlıklar, yüksek dereceli özelliklere daha küçük "katkılar" anlamına gelir. Ancak bu sezgi çok somut değil.


2
Bu "Büyükannem bunu anlayabilsin" cevabını gerektiren bir soru gibi geliyor.
EngrStudent - Monica,

2
@EngrStudent Çünkü benim lise matematik öğretmenim ve lise matematik sınavlarımın okuması için Math IA'mda bunu sunmam gerekiyor.
MCKapur

Yanıtlar:


4

Eğer kullanmak düzenlenişi sadece ancak in örnek hata minimize değil OutOfSampleErrorInSampleError+ModelComplexityPenalty.

Daha kesin bir ifadeyle, hhipotezi içinH, ki buradaλbazı parametredir, genellikleλ(0,1),mveri kümenizdeki örnek sayısıdır veΩw,Ω= 'nin ağırlığına bağlı bir cezadır.wTw. Buartırılmış hataolarak bilinir. Şimdi, sadece ağırlıklar oldukça küçükse yukarıdaki fonksiyonu en aza indirebilirsiniz.Jaug(h(x),y,λ,Ω)=J(h(x),y)+λ2mΩhHλλ(0,1)mΩwΩ=wTw

İşte oyuncak bazı R kodu

w <- c(0.1,0.2,0.3)
out <- t(w) %*% w
print(out)

Bu yüzden, hipotezinin H uzayını cezalandırmak yerine, her hipotezi H ayrı ayrı cezalandırıyoruz . Bazen, h ağırlığının w ile h hipotezini kastediyoruz .Hhhw

Neden küçük ağırlıklar düşük model karmaşıklığı ile birlikte giderse, şu hipoteze bakalım: . Toplamda w 1 , , w 3 olmak üzere üç aktif ağırlık parametresi var . Şimdi w 3 ' ü çok çok küçük bir değere ayarlayalım , w 3 = 0 . Bu modelin karmaşıklığını azaltır: hh1(x)=x1×w1+x2×w2+x3×w3w1,,w3w3w3=0 . Üç aktif ağırlık parametresi yerine sadece iki tane kaldı.h1(x)=x1xw1+x2xw2


1
Açıkçası eğer bir ağırlık sıfıra düşerse o zaman modelin karmaşıklığı azalır, çünkü bir terimi ve dolayısıyla bir hesaplama işlemini kaldırabilirsiniz. Ancak bu, ağırlık değeri sıfıra yaklaştığında modelin karmaşıklığının neden azaldığını açıklamaya yardımcı olmaz . Kimse bunu formüllerle değil kelimelerle açıklayabilir mi?
greg7gkb

6

Ne hakkında konuştuğumu gerçekten bildiğimden emin değilim ama bir şans vereceğim. Fazla uydurmayı engelleyen küçük ağırlıklara sahip olmak o kadar da fazla değil (bence), daha fazla düzenlileşmenin model alanını daha da azalttığı gerçeğidir. Aslında, X değerlerinin L2 normunu eksi 10000000'lerin bir vektörünü alarak, istersen 10000000'i düzenleyebilirsin. Bu aynı zamanda aşırı uyumu da azaltacaktır (tabii ki bunu yapmanın ardında bir mantığa sahip olmalısınız (örneğin, Y değerleriniz X değerlerinizin toplamından 10000000 kat daha büyüktür, ancak hiç kimse bunu gerçekten değerlendirebileceğiniz için yapmaz).

Önyargı ve varyans, model karmaşıklığının bir işlevidir. Bu VC teorisi ile ilgilidir, o yüzden şuna bakın. Olası modellerin alanı ne kadar büyük olursa (yani, tüm parametrelerinizin temelde alabileceği değerler) modelin daha fazla giymesi olasılığı artar. Eğer modeliniz düz bir çizgiden, aşağı ve yukarı hareket edebilen bir sinüs dalgası gibi her yönde kıpırdatmaya kadar her şeyi yapabiliyorsa, verilerinizde rastgele bozulmaların toplanması ve modellenmesi daha olasıdır. Altta yatan sinyal ancak bu veri setinde şans eseri bir şansın sonucudur (bu yüzden daha fazla veri almak, fazladan giydirmeye yardım eder, ama giydirmemeyi sağlar).

Düzenleme yaptığınızda, temelde model alanını düşürürsünüz. Bu ille ki, daha yumuşak / düz işlevlerin daha yüksek yanlılığa ve daha az değişkenliğe sahip olduğu anlamına gelmez. Temelde hiçbir şey yapmayan, gerçekten küçük bir genlik salınımına sahip sınırlı bir sinüs dalgasıyla örtülmüş doğrusal bir model düşünün (temelde bulanık bir çizgi). Bu fonksiyon bir anlamda süper kıpırdaysa da yalnızca doğrusal bir regresyondan biraz daha fazla uyuyor. Düzgün / düz işlevlerin neden daha yüksek önyargı ve daha az farklılığa sahip olma eğiliminde olmasının nedeni, veri bilimcisi olarak, örneklem alanımızın azalması durumunda, ocam ustura ile daha düzgün ve daha basit olan modelleri koruyacağımızı ve modelleri attığımızı varsaymamızdır. Bu her yerde kıpır kıpır ve salınan. İlk önce kıpır kıpır modeller atmak mantıklı

Sırt regresyonu gibi düzenli olma, model alanını azaltır çünkü sıfırdan (ya da herhangi bir sayıdan) daha uzakta olmasını daha pahalı kılar. Bu nedenle, model verilerinizde küçük bir bozulmayı göz önünde bulundurma seçeneğiyle karşı karşıya kaldığında, bunun yanında büyük olasılıkla hata yapması olasıdır, çünkü bu (genellikle) parametre değerinizi artıracaktır. Bu sapma rastlantısal şanstan kaynaklanıyorsa (yani, x değişkenlerinizden biri y değişkenlerinizle hafif bir rastgele korelasyona sahipse), normalize olmayan regresyonun hiçbir maliyeti olmadığı için model, düzenli olmayan bir regresyona karşı dikkate almaz. artan beta boyutları. Bununla birlikte, bu bozulma gerçek sinyalden kaynaklanıyorsa, düzenli regresyonunuz daha yüksek bir önyargıya sahip olmasının (ve neden bir sapma önyargısının olması nedeniyle) daha fazla özleyecektir.


Düşünceli cevabınız için teşekkür ederiz! Öyleyse evet, dördüncü paragrafta "Demek ki, model verilerinizdeki küçük bir tedirginliği hesaba katan bir seçim ile karşı karşıya kaldığında, bu durum sizin tarafınızdan değil, çünkü bu genellikle (genellikle) parametrenizi artıracaktır. değer. ". Özel olarak sorduğum şey bu, neden böyle? Teşekkürler!
MCKapur

Bir ceza faktörü ekleyerek, modelin daha yüksek beta değerlerine sahip olma olasılığını azaltır, bu nedenle model alanınız daha küçüktür. Hatırlanması gereken bir diğer şey ise, eğer modeliniz tamamen gürültü ise, korelasyon olmadığı için sıfır eğime sahip olacaktır (bu, wiggly / flat argümanımı yaparken aklıma gelmeyen bir şeydi ama sanırım argümanın hala olduğunu düşünüyorum). Genel olarak doğru). Bu nedenle, eğer bir şiddet / ilişki varsa, beta seviyesini arttırması muhtemeldir. Böylelikle düzenlileşme bu gerçeği cezalandırır ve gerilemenin sinyal veya gürültü olması durumunda regresyona uymasını engeller.
www3

@ ww3 Anlıyorum. Peki neden daha büyük betalar daha yüksek bir model alanı oluşturur?
MCKapur

Buna artık ihtiyacın olup olmadığından emin değilim ama cevap vereceğimi düşündüm. Önemli olan büyük betalar değil. Örneğin, Y veya 1000 * Y ile bir regresyon gerçekleştirebilirsiniz, her biri aynı karmaşıklığa sahip olacaktır, ancak ikinci durumda betas 1000 daha yüksek olacaktır. Tipik düzenlileştirme, belirli beta kombinasyonlarının elde edilmesini zorlaştırır; örneğin, bir katsayı 1000 ve diğeri -1000 olmalıdır ve diğerleri, 0'ların tümü gibi daha düz / daha basit olan diğerleridir. Bu, modelinizde verilerden belirli gürültülü tuhaflıklar varsa, normalleştirilmiş modelin daha düşük bir olasılıkla toplanabileceği anlamına gelir.
www3

Devam etmek için, model tüm gürültülü tuhaflıkları görmezden gelmeyecek, yalnızca betaların mutlak değerlerini artıran tuhaflıkları görmezden gelecektir. Bu, beta değerlerini azaltan tuhaflıkların daha fazla vurgulanacağı anlamına geliyor. Bu sorun değil, çünkü düz çizgilere göre çizebileceğiniz çok daha düzgün çizgiler var (yani ikinci dereceden bir denklemi doğrusal veya sabit bir denklemle karşılaştırın). Dolayısıyla, verileri etkileyen gürültülü tuhaflıklar varsa, bir modeli daha düz / düz bir modelden daha dikkat çekici (ve dolayısıyla daha karmaşık bir model) uygun hale getirme olasılıkları çok daha yüksektir.
www3,

3

Hikaye:
Büyükannem yürür, ama tırmanmaz. Bazı büyükanneler yapar. Bir büyükanne Kilimanjaro'ya tırmandığı için ünlüydü .

Bu uyuyan yanardağ büyüktür. Tabanının 16.000 feet üstünde. (İmparatorluk birimlerimden nefret etme.) Bazen üstte buzullar da var.

Buzulun olmadığı bir yıla tırmanıp zirveye çıkarsanız, buzulun olduğu ile aynı mıdır? İrtifa farklı. Atmanız gereken yol farklı. Buzul kalınlığı arttıkça tepeye çıkarsanız ne olur? Bu onu daha çok başardı mı? Her yıl yaklaşık 35.000 kişi tırmanmaya çalışır, ancak yalnızca 16.000 kişi başarılı olur.

Uygulama:
Böylece, büyükanneme ağırlık kontrolünü (model karmaşıklığını en aza indirgeyerek) şöyle açıklayacağım:

Büyükanne, beynin bilsen de bilmesen harika bir düşünür. Size zirveye ulaştığını düşünen 16.000 kişiden kaçının bunu yaptığını sorarsam, “hepsini” diyeceksiniz.

Sensörleri 30.000 dağcının hepsinin ayakkabısına koyarsam ve deniz seviyesinden yüksekliği ölçersem, bu insanların bir kısmı diğerlerinden daha yükseğe çıkamaz ve kalifiye olmayabilir. Bunu yaptığımda sabit bir modele gidiyorum - Yüksekliğin ölçülen maksimum yüksekliklerin bir yüzdelik değerine eşit olup olmadığını söyleyeyim, o zaman üst değil. Bazı insanlar üste atlar. Bazı insanlar çizgiyi geçip oturur.

Sensöre enlem ve boylam ekleyebilirim ve bazı daha yüksek dereceden denklemleri takabilirim ve belki daha iyi bir form alabilir ve daha fazla insan olabilir, belki de deneyen toplam insanın% 45'ini bile alabilirim.

Diyelim ki gelecek yıl "büyük bir buzul" yılı ya da "buzulsuz" bir yıl, çünkü bazı volkanlar gerçekten dünyanın albümünü dönüştürüyor . Karmaşık ve titiz modelimi bu yıldan alıp gelecek yıl tırmanan insanlara uygularsam, modelin garip sonuçları olacak. Belki herkes "geçer", hatta geçemeyecek kadar yüksek olabilir. Belki hiç kimse geçemez ve hiç kimsenin tırmanışı tamamlayacağını düşünmez. Özellikle model karmaşık olduğunda, genelleme eğiliminde olmayacaktır. Bu yılki "eğitim" verilerine tam olarak uyabilir, ancak yeni veriler geldiğinde kötü davranır.

Tartışma:
Modelin karmaşıklığını sınırladığınızda, aşırı uydurma olmadan genellikle daha iyi genelleme yapabilirsiniz. Daha basit modelleri kullanmak, gerçek dünyadaki varyasyonu karşılamak için daha fazla üretilmiş olanları, her şey eşit olmak üzere daha iyi sonuçlar vermeye meyillidir.

Artık sabit bir ağ topolojisine sahipsiniz, bu nedenle “parametre sayım sabit” diyorsunuz - model karmaşıklığında değişiklik yapamıyorum. Saçmalık. Ağırlıklardaki entropiyi ölçün. Entropi daha yüksek olduğunda, bazı katsayıların diğerlerinden önemli ölçüde daha fazla “bilgilendirici” taşıdığı anlamına gelir. Eğer çok düşük bir entropiye sahipseniz, bu genel olarak katsayıların benzer "bilgilendirici" seviyelere sahip oldukları anlamına gelir. Bilgilendirme mutlaka iyi bir şey değil. Bir demokraside tüm insanların eşit olmasını istersiniz ve George Orwell gibi "diğerlerinden daha eşit" gibi şeyler sistemin başarısızlığının bir ölçüsüdür. Bunun için iyi bir nedeniniz yoksa, ağırlıkların birbirine çok benzemesini istersiniz.

Kişisel bir notta: Vudu ya da sezgisel tarama kullanmak yerine, "bilgi kriterleri" gibi şeyleri tercih ederim çünkü güvenilir ve tutarlı sonuçlar almamı sağlıyorlar. AIC , AICc ve BIC bazı yaygın ve kullanışlı başlangıç ​​noktalarıdır. Çözümün kararlılığını veya bilgi kriterleri sonuç aralığını belirlemek için analizin tekrarlanması ortak bir yaklaşımdır. Biri, ağırlıklardaki entropiye tavan koymak gibi görünebilir.


2
İlginç derecede farklı. Pedant'ın köşesi: "Orson Wells" yazdın. heceleme Welles'tir. Sanırım baştan beri George Orwell'i ( Hayvan Çiftliği ) kastettin .
Nick Cox

@NickCox - Çok hastaydım. Beynim istediğim kadar iyi çalışmıyor. Orwell öyleydi.
EngrStudent - Monica

Model karmaşıklığının neden belirli sayıda parametreye göre değişebildiğini anlamak istiyorum (ikinci-son paragrafınızın fikri) ve "parametre entropisi" veya "ols parametresi entropisi" ile ilgili hiçbir şansım yok. Entropi kavramını kullandınız mı, çünkü sadece çok iyi uyuyor ya da bu, model parametrelerinin bir özelliğinin gerçek, yaygın olarak bilinen adı mı? Şimdiden teşekkürler.
Alvaro Fuentes

1
@AlvaroFuentes - Entropi, bu anlamda Bilgi Teorisi'nden geliyor. İşte wikipedia makalesi. Ağırlıkları bir liste olarak düşünün ve olasılık yoğunluğunu yaklaşık olarak belirlemek için bir çekirdek yöntemi kullanarak tüm ağırlıkların entropisini hesaplayabilirsiniz. Nöronlarla daha yüksek ölçekte karşılaştırmak için nöron başına ortalama entropiye bakabilirsiniz.
EngrStudent - Monica,

0

Basit bir sezgi şudur. Düzenleme için, özelliklerin yaklaşık olarak olması için standart hale getirilmesi gerektiğini unutmayın. Aynı ölçek.

Diyelim ki simge durumuna küçültme işlevi sadece kare hataların toplamıdır:

SSE

SSESSE

Şimdi bu durumda LASSO düzenini düşünün. Minimize edilecek fonksiyonlar

SSE+λΣ|β|

Ekstra bir özellik eklemek artık ekstra bir cezaya yol açıyor: mutlak katsayıların toplamı büyüyor! SSE'deki düşüş, ilave cezadan ağır basmalıdır. Ekstra özellikler artık maliyet olmadan eklemek mümkün değildir.

Özellik standardizasyonu ve mutlak katsayıların toplamının cezalandırılması kombinasyonu, arama alanını kısıtlayarak daha az fazla sığdırmaya neden olur.

Şimdi LASSO:

SSE+λΣ|β|

sırt regresyonu yaparken katsayıları sıfıra koyma eğilimindedir:

SSE+λΣβ2

katsayıları orantılı olarak küçültme eğilimindedir. Bu, cezalandırma işlevinin türünün bir yan etkisi olarak görülebilir. Aşağıdaki resim bu konuda yardımcı olur:

görüntü tanımını buraya girin

Pratikte düzenleyici ceza işlevi, yukarıdaki camgöbeği alanı tarafından gösterildiği gibi parametreler için bir 'bütçe' vermektedir.

SSE

Resim alınan https://onlinecourses.science.psu.edu/stat857/node/158

Özetleme: Düzenleme, ekstra parametreler eklemeyi cezalandırır ve düzenleme türüne bağlı olarak tüm katsayıları (çıkıntı) daraltacaktır veya diğer katsayıları bütçenin izin verdiği ölçüde korurken (0) bir miktar katsayıları 0'a ayarlayacaktır.


1
Sadece kement ve sırt regresyonu arasındaki farkı açıklıyorsunuz, ancak soru, düzenlileşmenin neden daha düşük karmaşıklığa neden olduğunu soruyor.
Sobi,

Lütfen bu bölümü okuyunuz: "Artık ekstra bir özellik eklemek artık ekstra bir cezaya yol açıyor: mutlak katsayıların toplamı daha da artıyor! SSE'deki düşüş, ilave ekstra cezadan daha ağır basmalı. Ekstra özellikler eklemek artık mümkün değil."
spdrnl

L1λλL2

Temel nokta, parametre eklemek için verilen ceza türünün parametreleri farklı şekillerde etkileyeceğidir. Uygulamada, eğitim verilerine uygun parametrelere sahip bir model elde edersiniz, daha az kesin: bu bir tür amaçtı.
spdrnl

0

Girişe Guassian gürültüsü eklenerek, öğrenme modeli L2 penaltılı bir düzenleyici gibi davranacaktır.

Nedenini görmek için, özelliklere iID gürültüsünün eklendiği doğrusal bir regresyon düşünün. Zarar şimdi hataların + ağırlık normunun katkısının bir fonksiyonu olacaktır.

türetme: https://www.youtube.com/watch?v=qw4vtBYhLp0


0

Bir üniversite sınıfında öğretmenimin büyük parametrelerin cezalandırılmasının aşırı uydurmayı azaltabileceğini, çünkü modelin verilerdeki belirli özelliklere çok fazla ağırlık vermesini önlediğini, çünkü modelin verilerin yalnızca belirli özelliklerini hatırladığından ve bununla ilişkilendirildiğinden dolayı, aşırı uydurmaya neden olduğunu söyledi. Etiket, genel kuralları öğrenmeye çalışmak yerine.

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.