Uzun yağ verileri ile sınıflandırma


15

Dizüstü bilgisayarımda yüz binlerce veri noktası ve yaklaşık on bin özellik ile doğrusal bir sınıflandırıcı eğitmem gerekiyor. Seçeneklerim neler? Bu tür bir problem için son teknoloji nedir?

Stokastik degrade iniş umut verici bir yön gibi görünüyor ve benim düşüncem bu son teknoloji:

"Pegasos: SVM için Primal Tahmini alt GrAdient SOlver" Shai Shalev-Shwartz, Yoram Şarkıcı, Nathan Srebro, Andrew Cotter. "Matematiksel Programlama, Seri B, 127 (1): 3-30, yıl: 2007."

Bu mutabakat mı? Başka bir yöne mi bakmalıyım?


1
bazı boyut küçültme yöntemleri kullanmayı düşündünüz mü? bin özellik boyut azaltma çağrısı bkz: en.wikipedia.org/wiki/Dimension_reduction
Dov

Bu soru araştırma çabasıyla geliştirilebilir. Aklınızda herhangi bir teknik var mı?
Tamzin Blake

@Thom Blake: Soruyu düşüncelerimle biraz düzenledim.
carlosdc

Veriler hakkında daha fazla bilgi sahibi olmadan, herhangi bir cevap bilgilendirilmeyecektir. Seyrek mi? sürekli? ayrık? gereksiz özellikler / nesneler? kaç ders? Örneğin, seyrek verilerdeki PCA bazen zararlı olabilir.
cyborg

2
tall = kaç puan? yağ = birçok özellik? bu standart terminoloji bir yerde, refs bir yerde kullanılan mı?

Yanıtlar:


6

Çevrimiçi Öğrenme yöntemlerine bakmanız gerektiğini düşünüyorum . perseptron ve çekirdek algılayıcı kodu ve iş son derece iyi de pratikte son derece kolaydır ve diğer çevrimiçi yöntemlerin bir bütün ana vardır. Herhangi bir çevrimiçi öğrenme yönteminin bir yığın öğrenme algoritmasına dönüştürülebileceğini unutmayın, bu durumda stokastik gradyan iniş yöntemlerine çok benzemektedirler.

Matlab kullanıyorsanız , bir dizi çevrimiçi öğrenme algoritması içeren Francesco Orabona tarafından DOGMA adlı gerçekten güzel bir araç kutusu vardır ve bunu kullanarak birkaç farklı yöntemi değerlendirebilirsiniz. Bunu bazı araştırmalarımda kullandım ve çok yararlı buldum (hatırladığım kadarıyla verileri [özellikler x örnekler] olarak beklediğini unutmayın, bu yüzden onu aktarmanız gerekebilir).

2ϵ2


7

İlk olarak, doğrusal sınıflandırıcının en iyi seçim olduğunu nasıl bildiğinizi sormak isterim? Sezgisel olarak böyle geniş bir alan için (R ^ 10000), diğer bazı doğrusal olmayan sınıflandırıcıların daha iyi bir seçim olması mümkündür.

Birkaç farklı sınıflandırıcı denemenizi ve tahmin hatalarını gözlemlemenizi öneririm (birkaç düzenli sınıflandırma modeli deneyeceğim).

Belleğiniz biterse, PCA kullanarak boyutu azaltın


2
Teşekkürler. Sorunun ölçeğini nasıl ele alacağımı daha çok düşünüyordum. Doğrusal yaparak başlamak istedim, çünkü daha basit. Bence çekirdek tabanlı bir yöntem öneriyorsunuz. Sadece 750000 veri noktasına sahipsem çekirdek matrisinin 540 GB boyutunda olacağını belirtmeme izin verin. Bu yüzden cevap olamaz: LIBSVM / SVMLight / etc'ye takın, iyi bir C ve gama alın ve ne elde ettiğinizi görün.
carlosdc

2
(-1) cevap a) kısmen çok genel, herhangi bir sınıflandırma sorusuna uygulanabilir b) PCA'nın neden önerildiği açıklanmamıştır (diğer boyut küçültme tekniğine göre).
steffen


1

Jb'nin önerdiği gibi, bir "Boyut Azaltma" yöntemi kullanmak daha iyi olduğunu düşünüyorum. İlke Bileşen Analizi (PCA) popüler bir seçimdir. Ayrıca denetimsiz özellik öğrenme tekniklerini de deneyebilirsiniz. Denetimsiz özellik öğrenme hakkında daha fazla bilgi için http://ufldl.stanford.edu/wiki/index.php/UFLDL_Tutorial adresinde bulunabilir.


1
PCA not PAC;) ( 15 karakter )
nöron
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.