Karar ağaçları ve Yapay Sinir Ağları


20

Bankalar vb. kart numarası, kart sahibinin adı, miktarı, ülke vb.

Bu sorun için hangi yapının en iyi olduğuna karar vermekte sorun yaşıyorum. Karar ağaçları konusunda biraz deneyimim var ama şu anda sinir ağının bu tür bir sorun için daha iyi olup olmayacağını sorgulamaya başladım. Ayrıca başka bir yöntem en iyisi olursa lütfen beni aydınlatmaktan çekinmeyin.

Her yapının artıları ve eksileri nelerdir ve bu yapı için hangi yapı en iyisi olur?

Ayrıca bu konuda emin değilim ama bence karar ağaçlarının sinir ağları üzerinde yürütme hızı açısından büyük bir avantajı var. Bu önemlidir, çünkü hız da bu projede önemli bir faktördür.

Yanıtlar:


24

Bu ikisi arasında birçok fark vardır, ancak pratikte dikkate alınması gereken üç ana şey vardır: hız, yorumlanabilirlik ve doğruluk.

Karar ağaçları

  • Eğitildikten sonra daha hızlı olmalıdır (her iki algoritma da tam algoritmaya ve verilerin miktarına / boyutuna bağlı olarak yavaşça çalışabilir). Bunun nedeni, bir karar ağacının doğal olarak yararlı bulamadığı giriş özelliklerini "atması "dır, oysa bir sinir ağı, ön işleme adımı olarak bazı özellik seçimi yapmadığınız sürece hepsini kullanacaktır.
  • Modelin ne yaptığını anlamak önemliyse, ağaçlar çok yorumlanabilir.
  • Sadece verinin eksen-paralel bölmeleri olan model modeller, durum böyle olmayabilir.
  • Aşırı oturmayı önlemek için muhtemelen ağacı budamak istediğinizden emin olmak istersiniz .

Sinir Ağları

  • Daha yavaş (hem eğitim hem de sınıflandırma için) ve daha az yorumlanabilir.
  • Verileriniz bir akışa ulaşırsa, stokastik degrade iniş ile artımlı güncellemeler yapabilirsiniz (doğası gereği toplu öğrenme algoritmaları kullanan karar ağaçlarının aksine).
  • Daha fazla keyfi veri (doğrusal olmayan etkileşimler vb.) Modelleyebilir ve bu nedenle yeterli eğitim verisi olması koşuluyla daha doğru olabilir. Ancak aşırı uyuma da eğilimli olabilir.

Hangisinin daha iyi olduğunu ve çalışma sürelerini kıyaslamak için her ikisini de uygulamayı deneyip verileriniz üzerinde bazı denemeler yapmayı deneyebilirsiniz. Veya, her iki yöntemi de test etmek için verilerinizin temsili bir örneğiyle aydınlatılan Weka GUI gibi bir şey kullanabilirsiniz .

Karar ağaçlarıyla "torbalama" veya "artırma" algoritmalarının kullanılması, bir miktar basitliği ve hızı korurken doğruluğu artırabilir. Fakat kısacası, hız ve yorumlanabilirlik gerçekten önemliyse, ağaçlar muhtemelen nereden başlayacaktır. Aksi takdirde, duruma bağlıdır ve yapmanız gereken bazı ampirik keşifler olacaktır.


Bu konuda biraz bilginiz var gibi görünüyor, bayes ağları veya bu soruna yardımcı olabilecek diğer makine öğrenme yöntemleri ile ilgili herhangi bir deneyiminiz var mı?
Topo

1
Tam Bayes ağları, çoğunlukla naif Bayes ve konu modelleri ile pek fazla uğraşmadım. Sahtekarlık tespit problemleri üzerinde hiç çalışmadım, ama naif Bayes veya lojistik regresyon burada da makul yaklaşımlar olabilir.
burr
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.