Donanımlı bir model mutlaka işe yaramaz mı?


25

Bir modelin eğitim verilerinde% 100, ancak test verilerinde% 70 kesinliğe sahip olduğunu varsayalım. Aşağıdaki model bu model hakkında doğru mu?

Bunun çok şık bir model olduğu açıktır. Test doğruluğu, aşırı takmayı azaltarak arttırılabilir. Ancak, bu model test verileri için kabul edilebilir bir doğruluğa sahip olduğundan hala faydalı bir model olabilir.


17
Belirli uygulamalarda% 70 kabul edilebilirse, o zaman size katılıyorum.
Richard Hardy

6
@RichardHardy ile tamamen aynı fikirdeyim. Örneğin, rastgele bir orman alın: Çoğu zaman, yapım gereği, örnek performansı (çanta dışı performans değil)% 100'e yakındır, bu nedenle kaba bir şekilde uygundur. Ancak yine de, çanta dışında veya test / onaylama setlerinde değerlendirilen düşük performans faydalı bir model haline getirmek için yeterince yüksek olabilir.
Michael M,

1
@Metariat Neden olmasın? Eğitim aşamasında kullanılmayan test setinde elde edilen bu doğruluk.
Hossein

3
@Metariat, Böyle bir tartışma, örneğin EKK Normal doğrusal modelde tahmincisi istatistiksel pratiğin en aşağı alabilir farzedilen bir değere bir örnek ortalaması eşitliği için -test ve ne değildir. İlginç olan, argümanın eğitim örneğindeki modele bağlı olmadığıdır. İç çamaşır modelleri ve genel olarak herhangi bir model için de geçerlidir. Bu doğru değil mi? t
Richard Hardy

4
Ben bu modelin üzerine donuk demezdim. Test performansını test etmek için doğrulama performansını karşılaştıran çok sayıda model oluşturulmuştur. O zaman bile, yalnızca test performansı kabul edilebilir olandan oldukça düşükse, muhtemelen felaketle sonuçlandıysa. Eğitim performansı hiçbir şey ifade etmez.
Firebug

Yanıtlar:


32

Bence argüman doğru. Özel uygulamada% 70 kabul edilebilirse, model fazladan takılı olmasına rağmen yararlıdır (daha genel olarak, fazla takılıp takılmadığına bakılmaksızın ).

Yetersiz uyuma karşı fazla uyumu dengelemek optimizasyon ile ilgilidir (optimal bir çözüm aramak için), tatmin edici bir performansa sahip olmak yeterlilikle ilgilidir (bu model iş için yeterince iyi performans gösteriyor mu?). Bir model, optimal olmadan yeterince iyi olabilir.

Düzenleme: Firebug ve Matthew Drury'nin OP altındaki yorumlarından sonra, validasyon performansının sorunlu olabileceğini bilmeden modelin fazla takılıp takılmadığını değerlendirmek için ekleyeceğim. Firebug, fazla uydurma miktarını ölçmek için doğrulama ile test performansının karşılaştırılmasını önerir. Bununla birlikte, model test setinde% 100 doğruluk sağlamadan eğitim setinde% 100 doğruluk sağladığında, olası bir aşırı uyarmanın göstergesidir (özellikle regresyon durumunda ancak sınıflandırmada zorunlu değildir).


Bir örnek istediniz: iris veri setindeki bir sinir ağı kodunu istatistik.stackexchange.com/a/273930/2958 adresinden alın ve set.seed(100)burada ve set.seed(15)tam tersi için tarif edilen fenomen gibi bir örnek için deneyin . Belki de " muhtemel aşırı uyarmanın göstergesi "
Henry

Bir modelin hem trende hem de testte% 100 doğruluk elde etmesi hiç mümkün olmadı mı?
Rika

1
@Breeze, bunu ayrı bir konu üzerinde sorabileceğinizi düşünüyorum (ve gerekirse bağlam için bu linke bağlanabilirsiniz).
Richard Hardy

Sadece burada yaptım bağlantı
Rika

25

Kredi Kartı Sahtekarlığı tespiti ile ilgili eski projemde, sahtekarlık davalarını hatırlamak için kasıtlı olarak verilere / kodlanmış veriye uymak istiyoruz. (Not, bir sınıfa uydurma OP'nin bahsettiği genel aşırı uydurma problemi değildir.) Böyle bir sistem nispeten düşük yanlış pozitiflere sahiptir ve ihtiyaçlarımızı karşılar.

Bu yüzden, ben, çok giyimli modelin bazı durumlar için yararlı olabileceğini söyleyebilirim.


5
Bu cevap, bir kullanım durumu sunduğundan oldukça ilginçtir. Sanırım "hatırlaması zor kodlanmış" @ hxd1011, modelin rapor edilen sahtekarlık davalarının her birinin "sahtekarlık bayrağı" na yol açtığından ve takma bir fonksiyonla düzelttiğinden ya da araya sokulmadığından emin olduğu anlamına gelir. . Böyle bir şey değil mi?
IcannotFixBu

@IcannotFixBu evet. Aslında, yanlış pozitif kontrol etmek için başka birçok yol denedik. Ancak sahtekarlık davalarının üstesinden gelmeye çalışmak, çılgınca bir şekilde işe yaradı.
Haitao Du

3
Senin durumda, değerlendirme fonksiyonu TPR ağır basan ve FPR, mesela F_ underweighting edilir ile skor P >> 1. (Artık banka kartı şirketimin neden bu kadar sinir bozucu olduğunu biliyorum, benzin istasyonlarında hatalı küçük kart tarayıcıları bile olsa herhangi bir küçük şeyi işaret ediyorlar)ββ
smci

3
Bu can sıkıcı olabilir, ancak parasız bir şekilde kartınızın bilgisini alması nedeniyle finanse ettiğinizin mahvolmasından binlerce kat daha az can sıkıcıdır.
Matthew Drury

12

Belki: Dikkat et. % 70 doğruluğunun (ancak ölçtüğünüz) sizin için yeterince iyi olduğunu söylediğinizde, hataların rastgele veya eşit şekilde dağıldığını varsayıyormuş gibi hissediyorsunuz.

Ancak, aşırı donatmaya bakmanın yollarından biri, bir model tekniğinin, eğitim setindeki tuhaflıklara çok fazla dikkat etmesine izin verdiğinde (ve eğitim süreci teşvik ettiğinde) olmasıdır. Genel nüfusta bu tuhaflıkları paylaşan denekler dengesiz sonuçlara sahip olabilir.

Belki de tüm kırmızı köpeklerin kanser olduğunu söyleyen bir model ile bitirdiniz - antrenman verilerinizdeki tuhaflık nedeniyle. Veya 24 ila 26 yaş arasındaki evli kişilerin sahtekarlık sigorta taleplerinde bulunmalarının neredeyse garanti altına alınmıştır. % 70 doğruluğunuz, model cep telefonunuzun giyilmesi nedeniyle konu ceplerinin% 100 yanlış olması için çok fazla alan bırakıyor.

(Kıyafet giymemek, yanlış tahminlere sahip olmanızın bir garantisi değildir. Aslında, uygun olmayan bir modelde kötü tahminler söz konusu olmayacaktır, ancak fazladan bir bilgi vermek gerekirse, eğitim verilerinizdeki tuhaflıkların etkisini büyüteceğinizin farkındasınız. .)


Teşekkürler. Bu% 70 kesinliğin, test verilerinde de mevcut olan eğitim verilerindeki tuhaflıklar üzerinde elde edilebileceği anlamına mı geliyorsunuz? Test verilerinin doğruluğunu temel alarak yargılayamaz mıyız? Bence test verilerinde mevcut olan eğitim verilerindeki tuhaflıklar eğitim sırasında öğrenilmelidir.
Hossein

1
Seni anlarsam, bunun tam tersi olur: tuhaflıklara aşırı giyinmek sana eğitimdeki yüksek doğruluğunu verdi. Testlerde daha az doğruluk elde etmenin nedeni, bu tuhaflıkların genel veri kümeniz için geçerli olmadığıdır. Fakat elbette, eğitim ve test kümeleriniz - çapraz doğrulama yapsanız bile, ki bu yardımcı olur - popülasyonunuzla ilgili olarak ilginç olabilir. Bu durumda test / doğrulama sonuçlarınız gerçekte nasıl performans gösterdiğinizi iyi tahmin etmez.
Wayne,

Test setinin popülasyonla ilgili olarak ilginç olabileceği konusunda haklısın, ancak bu aşırı pişmiş modellere özgü değil. Tüm değerlendirmelerimiz bundan muzdariptir ve gerçek popülasyon için bir vekil olarak test setine güvenmekten başka seçeneğimiz yoktur.
Hossein

Doğru, çok giyimli modellere özgü değil, ancak bir kıyafet modelinde yükseltilmiş. Tanımı gereği modelin çok güzel olduğunu söylemek istiyorum çünkü açıkça tuhaflıkları vurgulamaktan çekiyor.
Wayne,

7

Hayır, faydalı olabilirler, ancak amacınıza bağlı. Akla ilk gelen şeyler:

  1. Fββ»1

  2. Böyle bir sınıflandırıcı, bir toplulukta gerçekten faydalı olabilir . Normal ağırlığa sahip bir sınıflayıcıya sahip olabiliriz, biri FHR'ye ağır basan bir TPR'ye ağır basıyor. O zaman bile basit üçlü oylama veya ortalama, tek bir en iyi sınıflandırıcıdan daha iyi AUC verecektir. Her model farklı hiperparametreler (veya alt örneklenmiş eğitim setleri veya model mimarileri) kullanıyorsa, bu topluluğa aşırı yüklenmeden bir miktar dokunulmazlık satın alır.

  3. Benzer şekilde, gerçek zamanlı spam karşıtı, sahteciliği önleyici veya kredi puanlaması için, bir sınıflandırma hiyerarşisi kullanmak iyidir ve istenir . Seviye-1 sınıflandırıcıları çok hızlı değerlendirmelidir (ms) ve yüksek bir FPR'ye sahip olmak sorun değil ; Yaptıkları hatalar daha doğru, tam özellikli, daha yavaş üst seviye sınıflandırıcılar veya en sonunda insan hakemleri tarafından yakalanacaktır. Açık bir örnek: Twitter hesabındaki sahte haber başlıklarının 2013 "Beyaz Saray bomba saldırısı" gibi üç kişiyi öldürmesinin önlenmesi, ilan yazarken milyarlarca dolarlık ticareti etkilemesini önler. Level-1 sınıflandırıcısının spam için pozitif olarak işaretlemesi tamam; sansasyonel fakat doğrulanmamış haber raporlarının gerçeğini / yanlışlığını (otomatik olarak) belirlemek biraz zaman alabilir.


2

Çok giyimli bir modelin hala faydalı olabileceğini inkar etmiyorum. Ancak bu% 70'in yanıltıcı bir bilgi olabileceğini unutmayın. Bir modelin yararlı olup olmadığını yargılamak için ihtiyacınız olan şey örnek dışı hatadır , test hatası değildir (örnek dışı hata bilinmemektedir, bu yüzden kör bir test seti kullanarak onu tahmin etmeliyiz. ) ve bu% 70 ancak iyi bir yaklaşımdır.

@RichardHardy'nin yorumundan sonra terminolojide aynı sayfada olduğumuzdan emin olmak için, test hatalarını kör test setine uygularken elde edilen hata olarak tanımlayalım. Ve örnek dışı hata, modeli tüm popülasyona uygularken yapılan hatadır.

Örnek dışı hatanın yaklaşımı iki şeye bağlıdır: modelin kendisi ve veriler.

  • Bir "optimal" model, verilere çok az bağlı olan (test) bir doğruluk verir, bu durumda, bu iyi bir yaklaşım olacaktır. Verilerin "ne olursa olsun", tahmin hatası kararlı olacaktır.

  • Ancak, çok genişletilmiş bir modelin doğruluğu verilere bağlıdır (eğitim setinde% 100, diğer sette% 70). Bu nedenle, başka bir veri kümesine uygulanırken doğruluğun% 70'den (veya daha yüksek) düşük bir yerde olabileceği ve kötü sürprizlerle karşılaşabileceğimiz olabilir. Başka bir deyişle, bu% 70 size ne düşündüğünüzü söylüyor, ama değil.


1
% 70 doğruluk elde eden kullanılmış test seti eğitim aşamasında görülmediğinden, örnek dışı hata için iyi bir tahmin değil mi? Eğitim hatası (% 100) ve test hatası (% 70) arasındaki farkın, örnek dışı hata ile test hatası arasındaki farkın iyi bir göstergesi olmadığını düşünüyorum. Aşırı donanımlı modelin gerçek dünyada% 70 oranında doğru performans göstermesi, eğitim verilerinde ise% 100 kesinlikte olması mümkündür. Eğitim verilerinin model üretmek için kullanıldığı için eğitim hatasının test hatasından düşük olmasını bekliyorum, ancak test verileri eğitim sırasında görülmüyor.
Hossein

5
Doğrulama setini ve test setini ve bunların hatalarını karıştırmış olabileceğinizi düşünüyorum . Test hatası olan dışı örnek hatası. Doğrulama hatası seçilen modelin iyimser bir ölçüsü olsa da , test hatası değildir. Test hata modeli aynı popülasyondan yeni bir örnek üzerinde nasıl performans tarafsız bir tahmindir. Test hatasının varyansını tahmin edebiliriz, bu nedenle test setinin çok küçük olmadığı sürece yalnızca test hatasını bilerek oldukça iyi durumdayız . @Hossein
Richard Hardy

3
Örnek dışı hata ile test hatası arasındaki farkı açıklayabilir misiniz? Anladığım kadarıyla, her ikisi de modeli eğitmek için kullanılmayan örneklere uygularken bulunan hatadır. Görebildiğim tek fark zaman serisi verilerini kullanırken örnek dışı verilerin daha sonraki zaman noktalarından olması gerektiği, ancak bu sorular bundan bahsetmiyor.
Nükleer Wang

1
Benim bakış açıma göre, test hatası modeli kör bir sete uygularken elde edilen hatadır, modelin tüm popülasyona uygulanması sırasında elde edilen hata olan örnek dışı hatanın bir tahminidir. Aynı değil, değerli bilgi örnek dışı hatadır. Ve model fazladan takıldığında test hatası sabit değildir ve diğer veri setlerinde kötü süprizler olabilir.
Metariat

4
@Metariat, test hatasının bir tahmin olduğu ve bir test setinden diğerine farklı olabileceği konusunda haklısın. Ancak, daha önce de belirttiğim gibi, test hatasının gerçek hatayı hafife almasını beklemenin bir nedeni yoktur (ortalama olarak değildir). Bu nedenle, yeterince büyük bir test örneği alarak, test hatasını istenen aralıkta istenen bir güven derecesiyle sınırlayabiliriz. Şimdi daha pratik olarak, belki de test hatasını örnek dışı hatayla karşılaştırırken ne demek istediğinizi yanlış anlamadığınızdan emin olmak için cevabınızı düzenleyerek test hatasını tanımlamanız gerekir.
Richard Hardy
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.