Rasgele ormanlarla (veya başka bir sınıflandırıcıyla) katmanlı sınıflandırma


12

Yani, yaklaşık 60 x 1000 matrisim var. 1000 özellikli 60 nesne olarak bakıyorum; 60 nesne 3 sınıfa ayrılır (a, b, c). Her sınıfta 20 nesne ve gerçek sınıflandırmayı biliyoruz. Bu 60 eğitim örneği seti üzerinde denetimli öğrenme yapmak istiyorum ve hem sınıflandırıcı doğruluğu (ve ilgili metrikler) hem de 1000 özellikte özellik seçimi ile ilgileniyorum.

İlk olarak, isimlendirmem nasıl?

Şimdi asıl soru:

Belirtildiği gibi rasgele ormanlar veya başka sınıflandırıcılar atabilirim. Ama bir incelik var - gerçekten sadece c sınıfı a ve b sınıflarından ayırmayı önemsiyorum. Sınıf a ve b'yi havuzlayabilirim, ancak tüm c olmayan nesnelerin muhtemelen iki farklı küme oluşturduğu a priori bilgisini kullanmanın iyi bir yolu var mı? Benimkine benzer veriler üzerinde etkili olduğu gösterildiğinden rastgele ormanlar veya bunların bir varyantını kullanmayı tercih ederim. Ancak başka yaklaşımları denemeye ikna edilebilirim.


İsimlendirmenizle ilgili herhangi bir sorun görmüyorum. Bu sahip olduğunuz 60 nesne mi? Ardından, bir sınıflandırma doğruluğunu hesaplamak için veri kümenizi tren, test (ve ayrıca doğrulama) kümelerine bölmeniz gerekir. Bunu yapmanın çeşitli yolları vardır, ancak katlama çapraz doğrulaması en yaygın olanıdır. k
emrea

1
Evet, sadece bu 60. Ama rastgele ormanlar için, her karar ağacı örneklerin bir alt kümesiyle oluşturulur, böylece mevcut 60 örneğin her birini yalnızca orman içindeki ağaçlara uygulayarak tahmini genelleme hatası alabilirsiniz. inşaat sırasında bu örneği görmüyorum. ( stat.berkeley.edu/~breiman/RandomForests/cc_home.htm#ooberr ) Yani burada tipik bir çapraz doğrulama gerekli olmayabilir.
user116293

burada fazla takmak konusunda çok endişelenmelisin. 60 nesneli 1000 değişkeniniz var, eğer etraftaki diğer qay olsaydı kendimi çok daha iyi hissederdim ve hala söyleyebilirim, aşırı takma konusunda endişelenmelisiniz. Analizi yapmadan önce değişken sayısını azaltmanın mantıklı veya anlamsal bir yolu var mı?
Jank

Yanıtlar:


8

Tüm c olmayan nesnelerin muhtemelen iki ayrı küme oluşturduğu a priori bilgisini kullanmanın iyi bir yolu var mı?

Ağaç tabanlı bir yöntem kullanıyorsanız, bu sınıflandırıcılar özellik alanını bölümlediğinden, her sınıftaki örneklerin oranına baktığında önemli olduğunu düşünmüyorum. Yani önemli olan her bir terminal düğümünde c sınıfının göreli oluşudur.

Bununla birlikte, normaller, LDA, vb. Gibi bir şey kullanıyorsanız, o zaman iki kümeyi birleştirmek kötü bir fikir olacaktır (a ve b sınıflarının benzersiz kümeler oluşturduğu varsayılarak). Burada a, b ve c ile eşleşen özellik alanını doğru bir şekilde tanımlamak için sınıf yapısını korumanız gerekir. Bu modeller, her sınıf için özelliklerin farklı bir Normal dağılıma sahip olduğunu varsayar. A ve b'yi birleştirirseniz, tek bir Normal dağılımı karışıma sığdırmaya zorlayacaksınız.

Özetle, ağaçlar için çok önemli değil:

I. Üç sınıflandırıcı (1. a vs b, 2. a vs c ve 3. b vs c) oluşturun, sonra oylamaya dayalı bir yöntemle tahmin edin.

II. A ve b sınıflarını birleştirerek iki sınıflı bir sorun oluşturun.

III. Üç sınıfın tümünü tahmin edin ve ardından tahmini iki sınıf değerine eşleyin (örneğin f (c) = c, f (a) = değil c, f (b) = değil c).

Ancak, her sınıfa dağıtım uydurma bir yöntem kullanıyorsanız, II kaçının. ve I. veya III. problemin için daha iyi çalışıyor


III kulağa hoş geliyor - ancak sınıflandırıcı bir örneğin .33 a, .33 b ve .34 c olduğunu söylüyorsa, muhtemelen a ve b için olasılıkları toplamalı ve böylece 'değil' seçeneğini seçmeliyim.
user116293

1
(I) için, bölünmüş oylama için iyi bir prosedür nedir (1: a, 2: c, 3: b), ya da gerçekten önemli olmayacak kadar nadir?
user116293

III için. önerdiğiniz doğru. I. sınıf verilerde, geçişli mülkün ihlal edilmesi gerekeceğinden, oyları bölmek için (her biri için 1) herhangi bir önlem olduğunu düşünmüyorum. Ancak 4+ sınıf için üstte bağlantınız olabilir, bu durumda kazanç / kayıp yerine sayısal bir miktar kullanabilirsiniz; yani toplam ağırlıklar maksimum ağırlık sınıfını alır.
muratoa
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.