Denetimli öğrenmede, neden ilişkilendirilmiş özelliklere sahip olmak kötü?


35

Bir yerlerde, fazla korelasyon gösteren özelliklere sahip olmamız durumunda, bu modeli daha da kötüleştirebileceğinden birini kaldırmak zorunda olduğumuzu okudum. İlişkili özelliklerin aynı bilgileri getirdikleri anlamına geldiği açıktır, bu nedenle bunlardan birini kaldırmak mantıklıdır. Fakat bunun neden modeli daha da kötüleştirdiğini anlayamıyorum.


3
Bu kural, bazı modellerde ve analizlerde diğerlerinden daha güçlü şekilde uygulanır. “Bir yerlerde okudum” a bir bağlam ekleyebilme ihtimaliniz var - örneğin belirli bir modelin eğitimi ile ilgili miydi?
Neil Slater

3
İlişkili özellikler mutlaka bir modeli kötüleştirmez. İlişkili özellikleri kaldırmak, özellikler hakkında anlam çıkarmaya yardımcı olur.
Hobbes

Yanıtlar:


31

Genel olarak ilişkili olan özellikler modelleri geliştirmez (her ne kadar değişkenlerin sayısı ve korelasyonun derecesi gibi problemin özelliklerine bağlı olsa da), ancak belirli modelleri farklı şekillerde ve değişken kapsamlarda etkiler:

  1. Lineer model (örneğin, lineer regresyon veya lojistik regresyon) için, Çoklu bağlantı sağlayabilir vahşice değişen ve muhtemelen sayısal kararsız çözümler .

  2. Rastgele ormanlar, farklı özellikler arasındaki etkileşimleri tespit etmede iyi olabilir, ancak yüksek oranda ilişkili özellikler bu etkileşimleri maskeleyebilir.

Daha genel olarak, bu Occam'ın ustura özel bir durum olarak görülebilir . Daha basit bir model tercih edilir ve bir anlamda daha az özellik içeren bir model daha basittir. Minimum açıklama uzunluğu kavramı, bunu daha kesin hale getirir.


4
Sayısal kararlılık bir yana, OLS modeli tarafından verilen öngörü, çoklu doğrusallıktan etkilenmemelidir, çünkü yordayıcı değişkenlerinin genel etkisi, çoklu doğrusallık nedeniyle zarar görmez. Çoklu doğrusallık mevcut olduğunda güvenilir olmayan bireysel tahmin değişkenlerinin etkisinin yorumlanmasıdır.
Akavall

11

(Denetimli öğrenme hakkında konuştuğunuzu varsayalım)

İlişkili özellikler modelinizi her zaman kötüleştirmeyecek, ancak her zaman geliştirmeyeceklerdir.

İlişkili özellikleri kaldırmanızın üç ana nedeni vardır:

  • Öğrenme algoritmasını daha hızlı yapın

Boyutluluk laneti nedeniyle, daha az özellik genellikle hız bakımından yüksek gelişme anlamına gelir.

Hız sorun değilse, belki de hemen bu özellikleri kaldırmayın (bir sonraki noktaya bakın)

  • Zararlı önyargıları azalt

Anahtar kelime zararlı. Eğer özelliklerin korelasyonundaysanız, ancak bunlar hedefle de ilişkilendirilmişse, onları korumak istersiniz. Temelde aynı olan iki ipucunuz varsa, ancak iyi ipuçları almak için özellikleri ipucu olarak görüntüleyebilirsiniz, ancak bunlar iyi ipucudur, bunları saklamak akıllıca olabilir.

Naive Bayes gibi bazı algoritmalar aslında "pozitif" ilişkili özelliklerden doğrudan yararlanıyor. Ve rastgele orman gibi diğerleri dolaylı olarak onlardan yararlanabilir.

A, B ve C olmak üzere 3 özelliğe sahip olduğunu düşünün. A ve B, hedef ve birbiriyle oldukça ilişkilidir ve C hiç değildir. 3 özellikten birini seçerseniz, "iyi" bir özellik elde etmek için 2/3 şansınız olur, oysa ki örneğin B'yi kaldırırsanız, bu şans 1 / 2'ye düşer.

Elbette, korelasyon gösteren özellikler her şeyden önce süper bilgilendirici değilse, algoritma çok fazla acı çekmeyebilir.

Öyleyse hikayenin ahlaki, bu özellikleri kaldırmak hız nedeniyle gerekli olabilir, ancak algoritma işleminizi daha da kötüleştirebileceğinizi unutmayın. Ayrıca, karar ağaçları gibi bazı algoritmalar, içine gömülü özellik seçimine sahiptir.

Bununla başa çıkmanın iyi bir yolu, özellik seçimi için bir sarmalayıcı yöntemi kullanmaktır. Gereksiz özellikleri yalnızca performansa doğrudan katkıda bulunmazlarsa kaldıracaktır. Naif koylarda olduğu gibi faydalı olursa, saklanırlar. (Sarıcı yöntemlerinin pahalı olduğunu ve fazla takılmaya yol açabileceğini unutmayın)

  • Modelinizin yorumlanabilirliği

Modelinizin yorumlanabilir olması gerekiyorsa, daha basit hale getirmek için zorlanabilir. Occam'ın usturasını da hatırladığınızdan emin olun. Modeliniz daha az özellikle "o kadar" kötü değilse, o zaman muhtemelen daha az özellik kullanmalısınız.


2

Bazen ilişkilendirilen özellikler - ve bunu sağlayan bilgilerin kopyalanması - bir tahmin sistemine zarar vermez. Her biri bir sıra örnek ve bir sütun örnek olarak değerlendiren bir karar ağacı topluluğu düşünün. İki sütun birbiriyle yüksek oranda ilişkiliyse, belirli bir ağacın sütun örneğinde bunlardan birinin seçilmemesi ve o ağacın kalan sütuna bağlı olma olasılığı vardır. İlişkili özellikler, fazla tahmin edici kaliteden vazgeçmeden fazla uydurmayı (sütun örneklemesi yoluyla) azaltabileceğiniz anlamına gelir.


2

Karar verebilmek için gerekli asgari değişkenlere karar verilmelidir. Bu, yukarıda bahsedildiği gibi, Occam'ın tıraş makinesinin yukarıdaki minimum açıklama uzunluğuyla resmileştirilmesidir. Bunu sevdim.

Bu olayı, bir HDDT gibi bir şeyde , mevcut verilere dayanarak sahte bir karar vermeyen en etkili ağaç anlamına gelme eğilimine sokacağım ve birbirleriyle ilişkili olduklarını anlamadan birden fazla veri noktasında verilmiş olan tüm karar örneklerinden kaçınarak, .


İlgili datascience.stackexchange.com/users/38887/valentin-calomme yorumunu: "Korele özellikler her zaman modelinizi kötüleşme olmayacağı, ama her zaman ya onu geliştirmek olmayacak." Değişkenler arasında yüksek korelasyona sahip olmanın modelinizi daha kötü hale getirmediğini görmüyorum veya düşünemiyorum. En azından bu anlamda, seçim: Daha az ilişkili özelliklere sahip bir ağ kurmayı tercih ederim. Bunun dışında herhangi bir şey işlevsel ve kanıtlanabilir bir şekilde daha kötü. Bunun doğru olmadığı durumlar var mı?
tjborromeo

1

Veriyi veritabanlarında saklama perspektifinde, ilişkili özelliklerin saklanması, bir şekilde, depolama kaybına neden olabilecek gereksiz bilgilerin depolanmasına benzer ve ayrıca, tupl'leri güncelledikten ya da düzenledikten sonra tutarsız verilere neden olabilir.

Biz modele çok ilişkili özellikler ilave ettiğimizde modeli gereksiz özellikler dikkate sebep olabilir ve yüksek boyutluluk sorununun laneti olabilir , bu inşa modeli kötüleşen nedeni sanırım.

Makine öğrenmesi bağlamında, genellikle PCAgirdi kalıplarının boyutunu azaltmak için kullanıyoruz . Bu yaklaşım, ilişkili özellikleri bir şekilde (kullanarak SVD) kaldırmayı düşünür ve denetimsiz bir yaklaşımdır. Bu, aşağıdaki amaçlara ulaşmak için yapılır:

Her ne kadar bu doğru görünmese de, fazla abartıdan kaçınmak için ilişkili özellikleri kaldırmayı kullanan insanlar gördüm ama bunun iyi bir uygulama olduğunu sanmıyorum. Daha fazla bilgi için burada görmenizi şiddetle tavsiye ederim .

Diğer bir sebep ise, derin öğrenme modellerinde, örneğin MLPsilişkili özellikler eklerseniz, modele daha fazla hesaplama ve parametre ekleyen gereksiz bilgiler eklemenizdir.


0

Bu sorunun cevabı büyük ölçüde modelin amacına bağlı. Çıkarımda, yüksek oranda ilişkili özellikler iyi bilinen bir sorundur. Örneğin, birbiriyle ve y ile yüksek oranda ilişkili iki özellik, çıkarım modelinde potansiyel olarak önemli bir açıklayıcı sinyali eksik olarak ortaya çıkmış olabilir. Bu nedenle, çıkarımda genellikle inceltilmeleri önerilir.

Denetimli öğrenmeniz öngörü için ise, cevap - geleneksel bilgeliğe karşı - genellikle zıttır. Yüksek derecede ilişkili özellikleri kaldırmanın tek nedeni depolama ve hız endişeleridir. Bunun dışında, özelliklerle ilgili önemli olan, tahminlere katkıda bulunup bulunmadıkları ve veri kalitesinin yeterli olup olmadığıdır.

Gürültü ağırlıklı özellikler, y ile ilişkilendirilen özelliklerden ziyade, diğer özelliklerle daha az korelasyon gösterme eğiliminde olacaktır. Bu nedenle, yukarıdaki örnekte Valentin tarafından belirtildiği gibi, ikincisini incelemek, eski olanın oranını artıracaktır.

Özellikle, rastgele ormanlar ve KNN gibi yöntemler tüm özellikleri eşit olarak ele alır, böylece ilişkili özellikleri incelemek sinyal-gürültü oranlarını doğrudan azaltır.

Tek ağaçlar, "saf" kement veya sinir ağları gibi özellikleri otomatik olarak seçme yöntemleri daha az etkilenebilir. Ancak o zaman bile, daha uzun hesaplama süreleri dışında, karışımda ilişkili özellikleri tutmaktan ziyade öngörüde kaybedecek bir şey yoktur.

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.