Çapraz doğrulamanın veri gözetlemesinden farkı nedir?


13

"İstatistiksel Öğrenime Giriş" i yeni bitirdim . Çeşitli makine öğrenme teknikleri için en iyi ayarlama parametrelerini bulmak için çapraz doğrulamanın kullanılmasının veri gözetlemesinden farklı olup olmadığını merak ettim.

Ayar parametresinin hangi değerinin test setinde en iyi tahmin sonucuyla sonuçlandığını tekrar tekrar kontrol ediyoruz. Ulaştığımız ayar parametresi, bu özel test setini tesadüfen uyuyorsa ve gelecekteki bazı test setlerinde iyi performans göstermezse ne olur?

Lütfen acemi makine öğrenimi anlayışımı özür dilerim ve eğitim almaya hevesliyim.

EDIT: "veri gözetleme" tanımı hakkında @AdamO cevap bakınız. Sorumdaki terimi çok yanlış kullandım.


Bunu bulduğum için çok mutluyum ... yarın bir şeyler yayınlayan bazı araştırmacılarla bir TC'ye sahip olmak .... ne yazık ki bu sorundan muzdarip. Harika bir soru!
pallevillesen

Yanıtlar:


12

Çeşitli makine öğrenme teknikleri için en iyi ayarlama parametrelerini bulmak için çapraz doğrulamanın kullanılmasının veri gözetlemesinden farklı olup olmadığını merak ettim.

Endişeniz doğru nokta ve bu konuda çok fazla literatür var, ör.

Sorun, çapraz doğrulama ile hiperparametre ayarının veriye dayalı bir optimizasyon işlemi olması ve yine de veri setine uyma eğilimi göstermesidir (yeniden ikame hatasıyla ayar yapmaktan daha az, ancak yine de). Ayarlama çapraz doğrulama sonuçlarını "bağımsız" performans ölçüsü olarak kullanmaya çalışmak, turtayı (= ayarlama) yemek ve tutmak (= son model performansını ölçmek) gibidir.

Bu, hiperparametre ayarı için çapraz doğrulamayı kullanmamanız gerektiği anlamına gelmez. Bu sadece bir amaç için kullanabileceğiniz anlamına gelir. Doğrulama amacıyla model performansını optimize edin veya ölçün.

Çözüm, ayarlanan hiperparametrelerle elde edilen modelin kalitesini ölçmek için bağımsız bir doğrulama yapmanız gerektiğidir. Buna iç içe veya çift doğrulama denir. Burada bu konularda bir dizi soru ve cevap bulacaksınız

Kavramsal olarak, eğitimin sadece "olağan" model parametrelerine değil, aynı zamanda hiperparametrelere de uyması (otomatik ayar) için her türlü süslü adımları içerdiğini söylemek isterim. Dolayısıyla, λ'nın veri odaklı optimizasyonu açıkça model eğitiminin bir parçasıdır.

Genel bir kural olarak, model eğitiminin, yeni durumlar için tahminler üretebilen kullanıma hazır bir nihai kara kutu işlevine sahip olmadan önce yapılması gereken her şey olduğunu da söyleyebilirsiniz.


PS: Test ve validasyon terminolojisini çok kafa karıştırıcı buluyorum çünkü benim alanımda "validasyon" son modelin amaca uygun olduğunu kanıtlamak anlamına geliyor ve bu nedenle validasyon yerine diğer insanların test dediği şey bu. İç test seti "ayar test seti" ve dış "son doğrulama test seti" ya da benzerini çağırmayı tercih ederim.


Güncelleme:

Modelim (bu durumda ayarlama parametrem) dış doğrulamada başarısız olursa, o zaman ne yapmalıyım?

Tipik olarak, bu sadece olan bir şey değildir: böyle bir başarısızlığa neden olabilecek tipik durumlar vardır. Ve farkında olduğum tüm bu durumlar aşırı uyuyor. Düzenlemenin gerekli sayıda eğitim vakasını azaltmaya yardımcı olmasına rağmen, veriye dayalı optimizasyonun büyük miktarda veriye ihtiyacı olduğunu bilmeniz gerekir.

Önerilerim:

  • Tipik olarak, zaten kaba beklentilere sahip olmalısınız (örneğin, hangi performansın elde edilebilir olması gerektiği, hangi performansı kuşkuyla iyi görüneceğini düşünmelisiniz). Veya hangi performansı elde etmeniz gerektiğini ve temel bir performansı belirtin. Bundan ve mevcut eğitim vakalarının sayısından ( karar verdiğiniz bölünme şeması için), iç (ayar) testleri için beklenen belirsizliği hesaplayın. Bu belirsizlik anlamlı karşılaştırmalar elde edemeyeceğinizi gösteriyorsa, veri odaklı optimizasyon yapmayın.

  • Otomatik ayar prosedürü tarafından bulunan seçilen λ ve optimal λ ile elde edilen tahminlerin ne kadar kararlı olduğunu kontrol etmelisiniz . Λ, verilerinizin farklı bölümlerine göre makul düzeyde kararlı değilse, optimizasyon çalışmadı.

  • Verilere dayalı optimizasyonu yapamayacağınızı veya sonuçta işe yaramadığını fark ederseniz, uzman bilginizle λ'yı seçebilirsiniz, örneğin benzer verilerle deneyimden. Veya optimizasyonun başarısız olduğunu öğrenirseniz, daha güçlü bir düzenlemeye ihtiyacınız olacaktır: başarısızlığa yol açan aşırı uyum çok karmaşık modellere doğru çalışır.


1
Katılıyorum, terminoloji tren / test / validasyon çok sezgisel değil
M. Berk

3

Çapraz doğrulama, genellikle bir tahmin modeliyle somut olarak ilişkili olan belirli bir bulgunun geçerliliğini değerlendirmek için kullanılır. Bu tür bulgular küme analizleri, sınıflandırma veya tahmin modellerinden elde edilen sonuçları içerebilir. Her durumda, analizin doğası, "sağlıklı kontrollere karşı meme kanseri biyopsilerinden hangi mRNA ekspresyonunun hangi frekanslarından kaynaklandığı?" Çapraz doğrulama, belirli bir amaca hizmet eden önceden belirlenmiş bir tahmin modelinin geçerliliğini değerlendirmenin çok güçlü bir yoludur. Tekrarlı model uydurma içeren katlı çapraz validasyonun karışıklığınızın kaynağı olabileceğinden şüpheleniyorum .k

"Optimal" ayar parametresini tanımlamak için CV kullanıldığında, cezalandırılmış olabilirlik yöntemlerinde gerektiği gibi, genellikle sürecin karşılanması için önceden belirlenmiş bir kriter vardır. Bu minimum MSE veya maksimum AUC veya minimal BIC olabilir. Kiraz size sonra sonuçları verir bir seçin , o zaman veri tarama daha kötü bir şey yaptım, sanırım. Dolayısıyla, bir mikrodizi örneği kullanarak, hangi proteinlerin kontrollere karşı kanser vakalarında daha fazla ifade edildiğiyle ilgileniyorsanız, lambda'nın en iyi BIC'yi vermesi için bir GLM LASSO'yu önceden belirtebilirsiniz ve son modelde seçilen işaretleyiciler aday proteinler olarak seçilir daha fazla araştırma. Bu özellik seçimine bir örnektir.λλλ

"Veri gözetleme" veya "diyebileceğim gibi" Keşifsel veri analizi "önceden belirlenmiş bir soru ile ilgilenmez. Bir takım olası, makul derecede ilginç sonuçlar numaralandırır ve bunları bireysel olarak değerlendirirsiniz. İstediğiniz sayıda keşif analizi yapabilirsiniz ve genellikle birden fazla test konusunda endişelenmezsiniz. Her bir keşif analizini çapraz doğrulamayı kullanarak ayrı ayrı değerlendirebilirsiniz, ancak 1'den fazla keşif analiziniz olduğunda doğal olarak çoklu testi hesaba katmaz. Bu ortamdaki hipotezler oldukça geniş ve geniş olabilir, "hangi faktörler prostat kanseri ile ilişkilidir?" (kahveden içme, vazektomi kullanımı vb. bir kohortta ölçüldü). Önemli sonuçlar "hipotez üreten" olarak görülür ve doğrulayıcı kanıt sağlamaz.

Dolayısıyla her iki yaklaşım da doğada bir şekilde "yinelemeli" olsa da, tamamen bağımsız prosedürlerdir. -katlı çapraz validasyon, "modüler" hipotezin bir parçası olan belirli bir dizi bulgunun belirsizliğini ve geçerliliğini değerlendirmek için bir araçtır. Veri tarama, veri gözetleme veya keşifsel veri analizi, kapsamlı ve büyük bir veri kümesi tarafından ele alınan büyük olasılıkla ilginç sorulara dayanan hipotezler üretmeyi amaçlamaktadır.k


"Veri gözetleme" ile ilgili açıklama için teşekkürler - Sanırım sorumu yanlış kullandım. Hala net olmayan bir şey, " özellik seçimi için cherry-pick için k-fold CV kullanmanın " İYİ veya KÖTÜ uygulama örneği olup olmadığıdır. Bence bu kötü tekrar çalışmayabilir. Ancak öte yandan, sorudaki kitabın öğrettiği de budur. λλλ
Heisenberg

1
@Anh: λ'nın çapraz doğrulama ile ayarlanması kendi başına kötü değildir. Ancak bunu yaparak λ'nın ayarlanması için bu çapraz doğrulamayı "kullandınız" ve λ ayarlama işlemi de dahil olmak üzere modellemeden bağımsız başka bir doğrulamaya ihtiyacınız vardır. Bu dış doğrulamanın yapılmaması KÖTÜdür. Bu belirli λ "tekrar" çalışmazsa (örneğin verilerin başka bir bölümünde), optimizasyonunuz çalışmadı. Bu durumda, genellikle dış doğrulama sonuçları ile ayarlama sırasında gözlemlenen "en iyi" performans arasında büyük bir fark görürsünüz.
Sb ile mutsuz cbeleites

@cbeleites Peki benim modelim (yani bu durumda ayar parametrem) dış doğrulamayı geçemezse, ne yapmalıyım? Geri dönüp başka bir ayar parametresi bulamıyorum, çünkü aslında bu, dış doğrulamayı ayar testi setine dönüştürüyor olacaktı. Peki ne yapmalı?
Heisenberg

@Anh çok şey bilimsel sorunun doğasına bağlı. Protein bağlanma örneğine geri dönersek, vaka örneklerindeki benzersiz bir protein kümesinin çok nadir görülen nükleotit frekanslarına sahip olduğunu gözlemleyebilir ve böylece son bir modelde az sayıda olası özellikle ilgilenebilirsiniz. Bu nedenle , olasılığı büyük ölçüde cezalandırmak için seçer veya onu ayarlarsınız, böylece modeldeki en iyi 3 veya 4 özelliği tanımlarsınız. (devam)λ
AdamO

@ anh Daha sonra ilk 3 özellik için seçilen lambda'nın geçerliliğini değerlendirmek için , kaç özelliğin seçildiğini değerlendirmek için katlama doğrulaması kullanırsınız (özellik sayısı hiçbiri 20'den farklıysa, özgüllük kanıtı düşükse eğitim modelindeki 3 özellik için). Gerçek ayarlama parametresi, muhtemelen bir olasılık gibi, verilere özgü bir anlama sahiptir. Bunu asla rapor etmem, ancak değiştirmenin bir sonucu olarak sonuçların hassasiyetine odaklanırım. kλk
AdamO

1

Aslında, CV sırasında, bir test setinden farklı olan bir doğrulama setinde en iyi parametreleri bulmaya çalışırsınız . Tüm verilerinizi üç gruba böldünüz: eğitim seti, doğrulama seti ve test seti. Çapraz doğrulamayı düzgün bir şekilde yaptığınızda, test sonuna asla sonuna kadar bakmazsınız, bu yüzden hiç gözetleme olmaz. Test setinde çapraz doğrulamanın yapılması ciddi (ancak sık) bir metodolojik hatadır.


Doğrulama seti ve test seti farklıysa, o zaman bana mantıklı geliyor. Ancak, okuduğum kitapta (Hastie ve diğerleri tarafından daha az değil), tutma testi kullanmanın pahalı olduğunu iddia ediyorlar (eğitmek için çok fazla veri kullanmıyoruz), bu yüzden k-kat çapraz doğrulamayı öneriyorlar, ayrı bir test seti olduğunu düşünmüyorum.
Heisenberg

1
@Anh: her iki bölünme yalnızca bir küçük veri kümesini ayırmak yerine yeniden örnekleme (örn. Tekrarlanan çapraz doğrulama) ile yapılabilir.
Sb ile mutsuz cbeleites

@Anh: K kat çapraz doğrulamada, orijinal eğitim setinin k katını daha küçük bir eğitim setine ve bir doğrulama setine böldünüz. Orijinal test seti dahil değildir ve sadece sonunda kullanılır.
Jerorx

0

Örneğin, Kement örneğiyle "İstatistiksel Öğrenmeye Giriş" in 225. sayfasına bakarsanız, bunların aslında iç içe çapraz doğrulama yaptığını görürsünüz. Yani model seçimi, paket tarafından tren test çiftlerine bölünen cv.glmnetbir trainsette yapılır cv.glmnet. Model validasyonu validasyon (" test") setinde yapılır, bu yüzden bağımsız validasyondur.

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.