Doğrusal olmayan veriler için mümkün olduğunda Kernel Trick'i kullanmalı mıyım?


13

Kısa süre önce, bu boyutlardaki verileri doğrusallaştırmak amacıyla verileri daha yüksek boyutlu alanlara eşleyen Çekirdek numarasının kullanımını öğrendim. Bu tekniği kullanmaktan kaçınmam gereken durumlar var mı? Sadece doğru çekirdek fonksiyonunu bulmak meselesi mi?

Doğrusal veriler için bu elbette yardımcı değildir, ancak doğrusal olmayan veriler için bu her zaman yararlı görünmektedir. Doğrusal sınıflandırıcılar kullanmak, eğitim süresi ve ölçeklenebilirlik açısından doğrusal olmayanlardan çok daha kolaydır.

Yanıtlar:


8

Doğrusal veriler için bu elbette yardımcı değildir, ancak doğrusal olmayan veriler için bu her zaman yararlı görünmektedir. Doğrusal sınıflandırıcılar kullanmak, eğitim süresi ve ölçeklenebilirlik açısından doğrusal olmayanlardan çok daha kolaydır.

@BartoszKP, çekirdek hile neden yararlı olduğunu zaten açıkladı. Sorunuzu tam olarak ele almak için işaret etmek isterim ki, çekirdekleme doğrusal olmayan ayrılabilir verilerle başa çıkmak için tek seçenek değildir .

En az üç iyi, ortak alternatifi vardır delinearizasyondan modelinin:

  • Verilerinizi doğrusal olarak ayrılabilir duruma dönüştürebilen bir (veya daha fazla) işlem birimi katmanı eklediğiniz nötal ağ tabanlı yöntemler. En basit durumda, sürece lineer olmayanlık kazandıran sigmoid tabanlı bir katmandır. Rastgele başlatıldıktan sonra üst katmanın gradyan tabanlı optimizasyonu sırasında güncellemeler alıyorlar (bu aslında lineer problemi çözüyor).
  • Özellikle - derin öğrenme teknikleri burada daha fazla doğrusal sınıflandırma için veri hazırlamak için kullanılabilir. Bir öncekine çok benzer bir fikir, ancak burada önce bazı doğrusal modelin eğitimine dayalı olarak daha ince ayar için iyi bir başlangıç ​​noktası bulmak için işleme katmanlarınızı eğitiyorsunuz.
  • Rastgele projeksiyonlar - önceden tanımlanmış bazı uzaylardan projeksiyonları (doğrusal olmayan) örnekleyebilir ve bunların üzerine doğrusal sınıflandırıcıyı eğitebilirsiniz. Bu fikir ağır sözde yararlanılır aşırı makine öğrenimi çok verimli doğrusal çözücüler rastgele projeksiyonlar üzerinde basit bir sınıflandırıcı eğitmek ve sınıflandırma ve regresyon hem de doğrusal olmayan problemler üzerinde (çok iyi performans elde etmek için kullanılır, örneğin için check out aşırı öğrenme makineleri ).

Kernelization büyük delinearizasyon tekniktir ve - Özetle yapabilirsiniz appraoch "sonra eğer" sorunu doğrusal değilken, kullanmak, ancak bu kör olmamalı. Bu, soruna ve gereksinimlere bağlı olarak çeşitli sonuçlara yol açabilecek en az birkaç ilginç yöntemden sadece biridir. Özellikle, ELM, çekirdeklenmiş SVM tarafından verilen çözümlere çok benzer çözümler bulma eğilimindedir; aynı zamanda, aynı zamanda büyüklük sıraları daha hızlı eğitilebilir (böylece çekirdeklenmiş SVM'lerden çok daha iyi ölçeklenir).


10

Çekirdek Hile için genel olarak, doğrusal yöntemler için ödediğiniz fiyat, genelleştirme sınırlarının daha da kötüleşmesine neden oluyor. Doğrusal bir model için VC boyutu , boyut sayısı açısından da doğrusaldır (örneğin, bir Perceptron için VC boyutu d + 1).

Şimdi, yüksek boyutlu bir alana karmaşık olmayan doğrusal bir dönüşüm yapacaksanız, hipotez setinizin VC boyutu, şimdi yeni, yüksek boyutlu alandaki boyut sayısı açısından doğrusal olduğu için önemli ölçüde daha büyüktür. Ve bununla birlikte, genelleme sınırı artar.

Destek Vektör Makineleri , iki şeyi yaparak Çekirdek Hünerinden en verimli şekilde yararlanır:


1
"ağırlık sayısı açısından da doğrusaldır" ağırlık sayısı değil, boşluk boyutu açısından. İstediğiniz kadar ağırlıkla doğrusal sınıflandırıcı parametrelerine sahip olabilirsiniz, ancak VC boyutu hala d + 1'dir (burada d uzay boyutluluğudur). "SVM modelleri için VC boyutu Destek Vektörlerinin sayısıyla ilişkilidir" VC boyutu SV sayısına tam olarak nasıl yansır? Zor marj sınırının farkındayım ama yumuşak marj durumunda afaik böyle bir ilişki yok. Radamacher'in karmaşıklık sınırlarında bile SV sayısını bir değişken olarak bulamazsınız.
lejlot

Ayrıca "yani çekirdek hedef alanının ne kadar" büyük "alakasız olması, genelleme açısından hiçbir şeyi kaybetmemeniz" tamamen yanlış bildiğim kadarıyla. Yüksek boyutlu alanlar, SVM gibi güçlü bir şekilde düzenlenmiş modelde bile genelleme yeteneklerinin kaybedilmesine yol açacaktır.
lejlot

1
@lejlot Teşekkürler, ilk iki hata düzeltildi. Son iki
sözünüzü anlatmak

1
Şimdi neredeyse doğru, ama varsayımın nedeni, alakasız çekirdek boşluğunun büyüklüğü nedir? Herhangi bir veri kümesini alın, RBF çekirdeği ve C-> inf ile bir SVM çalıştırın ve kötü bir şekilde geçersiniz. O kadar basit değil. Özellik alanındaki boyutların sayısı önemlidir , ancak C ile kontrol edilebilir (lagrange çarpanlarının üst sınırı olarak). Özellikle - RBF'li SVM için VC boyutu sonsuzdur ve genelleme bağlı (Vapnik's) işe yaramaz (Radamacher işe yarayabilir, ancak bu tamamen farklı bir hikaye).
lejlot

1
@ lejlot Başka bir referans daha verdim - açıkça yumuşak kenar boşluğu durumu için bir sınır sağlarlar ve boyut sayısına bağlı değildir.
BartoszKP

6

Sorunuza teknik olmayan bir cevap vermeye çalışacağım.

Aslında, lineer tercih edilmeli ve bahsettiğiniz nedenler, eğitim süresi, ölçeklenebilirlik ve son modeli yorumlama kolaylığı, ilkel veya ikili çalışma seçimi, aşırı sığmaya daha fazla tolerans vb.İçin ilk tercih olmalıdır.

Doğrusal model tatmin edici bir performansla sonuçlanmazsa, doğrusal olmayan çözümleri deneyebilirsiniz. Dikkate alınması gereken bazı ödünleşmeler şunları içerir:

  • çekirdek seçimi. Bu belli değil, genellikle farklı seçenekleri test etmeniz gerekiyor
  • eğitim setine aşırı takılma tehlikesi vardır. Aslında isterseniz tersine çevirmek oldukça kolaydır. Aşırı sığmayı önlemek için daha güçlü bir değerlendirme çerçevesine (görünmeyen verilerdeki performansın varyansını / kararlılığını ölçmeniz gerekir) ve uygun model seçimini yapabilmek için yeterli veriye ihtiyacınız vardır.
  • dual üzerinde çalışıyorsunuz ve bu nedenle son modeli yorumlayamazsınız, yani X özelliğinin Y özelliğinden daha önemli olduğunu iddia edemezsiniz.
  • veri süresi ile eğitim süresi artar (ikili modda olduğundan özellik sayısıyla daha azdır)

Bu özellik, “ikili ile çalışma” ile ilgili özelliklerin iddia edilememesine yol açan içgörülü bir içgörüdür. Daha fazla açıklayan materyale referans verebilir misiniz?
javadba
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.