Bu, büzülme ve değişken seçim yapan kement ve arkadaşlar için uygun bir sorun gibi görünüyor. İstatistiksel Öğrenmenin Unsurları regresyon için kement ve elastik ağ ve bu problemle daha alakalı olan lojistik regresyonu tarif eder.
Kitabın yazarları, Kement ve elastik ağın verimli bir şekilde uygulanmasını glmnet adı verilen bir R paketi olarak hazırladılar . Bu paketi daha önce yaklaşık 250.000 satırlık veri matrisleri ile ikili veri analizi için kullandım, ancak daha az sütun olsa da, aslında tüm sütunların diğer tüm sütunlara karşı regresyonlarını çalıştırıyorum. Veri matrisi de seyrek ise, uygulama da bundan yararlanabilir ve yöntemin aslında OP tam veri kümesi için çalışabileceğine inanıyorum. İşte kement hakkında bazı yorumlar:
- Kement, pürüzsüz olmayan bir ceza işlevi kullanarak değişken seçim yapar ( ℓ1-norm) parametresiyle sonuçlanır, bu da bazı parametrelerin tam olarak 0'a eşit olduğu parametre tahminleriyle sonuçlanır. Sıfır olmayan parametrelerin kaç tanesi ve sıfır olmayan parametrelerin ne kadar büzüştüğü bir ayar parametresi ile belirlenir. Glmnet'teki uygulamanın etkinliği, büyük bir ceza için sadece birkaç parametrenin 0'dan farklı olmasına bağlıdır.
- Ayar parametresinin seçimi genellikle çapraz-validasyon ile yapılır, ancak çapraz-validasyon adımı olmasa bile, yöntem ceza parametresi tarafından endekslenen seçili değişkenlerin iyi bir sekansını verebilir.
- Dezavantajı, değişken seçimi için, kementin değişkenlerin seçiminde kararsız olabilmesidir, özellikle de biraz korelasyonluysa. Daha genel elastik net ceza bu istikrarsızlığı iyileştirmek için icat edildi, ancak sorunu tamamen çözmüyor. Adaptif kement , kement için değişken seçimini iyileştirmek için başka bir fikirdir.
- Kararlılık Seçimi , Meinshausen ve Bühlmann tarafından seçilen değişkenlerin kement gibi yöntemlerle daha fazla kararlılığa ulaşması için önerilen genel bir yöntemdir. Veri kümesinin alt örneklerine bir dizi sığdırmayı gerektirir ve bu nedenle, çok daha fazla hesaplama gerektirir.
- Kementin makul bir şekilde düşünülmesi, ceza parametresi tarafından parametrelenen, tek değişkenli bir modelden daha karmaşık bir modele (mutlaka tüm değişkenleri içermeyen) kadar değişen tek boyutlu bir "iyi" model seti oluşturmak için bir yöntemdir. Aksine, tek değişkenli filtreler yalnızca iyi tek değişkenli modeller arasından seçim yapar veya sipariş verir.
Python için kement ve elastik ağ gibi yöntemlerin scikit-öğrenmesinde bir uygulama vardır .