Hiper parametre ayarı: Rastgele arama ve Bayes optimizasyonu


14

Bu nedenle, rastgele aramanın ızgara aramasından daha iyi çalıştığını biliyoruz, ancak daha yeni bir yaklaşım Bayes optimizasyonudur (gauss süreçlerini kullanarak). İkisi arasında bir karşılaştırma yaptım ve hiçbir şey bulamadım. Stanford'un cs231n'inde sadece rastgele aramadan bahsettiklerini biliyorum, ancak işleri basit tutmak istediler.

Sorum şu: hangi yaklaşım genellikle daha iyi ve eğer cevap "bazen rastgele arama, bazen Bayesci" ise bir yöntemi ne zaman diğerine tercih etmeliyim?


2
Google şu anda derin öğrenme bulut hizmetlerini satıyor ve hiperparametrelerinizi Bayes optimizasyonuyla otomatik olarak ayarlayan bir özelliği zorluyor ... elbette en iyisini yaptığını ve daha hızlı olduğunu iddia ediyor (hiper alanı daha verimli bir şekilde arama). Orada BO vs RS değerlendirmek de BO biraz daha iyi yapıyor gösteren çeşitli makaleler vardır. Gördüğüm kadarıyla IMO, fark, bir Kaggle yarışmasında gerçek hayattan daha fazla önem vereceğiniz bir şey.
JPJ

Yanıtlar:


9

Bu sorunun cevabının veri bilimindeki her yerle aynı olduğunu düşünüyorum: verilere bağlı :-)

Bir yöntemin bir diğerinden daha iyi performans göstermesi olabilir (burada https://arimo.com/data-science/2016/bayesian-optimization-hyperparameter-tuning/ insanlar Bayesian hiperparametre optimizasyonunu karşılaştırır ve San Francisco suç kaggle mücadelesinde daha iyi bir sonuç elde eder rastgele arama ile), ancak bunun için genel bir kural olduğundan şüpheliyim. İnsanların Bayes optimizasyonunun manzaraya götürdüğü 'yolu' gösterdiği burada güzel bir gif görebilirsiniz ( http://blog.revolutionanalytics.com/2016/06/bayesian-optimization-of-machine-learning-models.html ). Özellikle hiperparametrelerin, genel olarak rastgele aramadan daha iyi performans göstermesi gibi görünmüyor ...

İnsanların Bayesian hiperparametre optimizasyonunu kullanma eğiliminin nedeni, yeterince yüksek sayıda deneyle rastgele aramaya kıyasla karşılaştırılabilir bir sonuç elde etmek için daha az eğitim adımlarının atılmasıdır.

Bir cümleyle özetleme:

* Eğitim süresi kritik olduğunda, Bayesian hiperparametre optimizasyonunu kullanın ve zaman önemli değilse, ikisinden birini seçin ... *

Genellikle rasgele arama ile aynı sonucu elde edebilirsem Bayesli şeyleri Gaussian Processes ile uygulamak için çok tembelim ... Sadece Gradient Bossting topluluklarını 'az' veri üzerinde eğitiyorum, bu yüzden benim için zaman bir sorun değil ...


5

Bayes optimizasyonu daha iyidir, çünkü daha akıllı kararlar verir. Daha fazla bilgi için bu makaleyi kontrol edebilirsiniz: Sinir ağları için hiperparametre optimizasyonu . Bu makalede ayrıca her iki yöntem için artıları ve eksileri + ızgara arama ve Ağaç yapılı parzen tahmin edicileri gibi bazı ekstra teknikler hakkında bilgi vardır. Sinir ağları için farklı yöntemlerin artılarını ve eksilerini göstermek için yazılmış olsa da, ana bilgi diğer makine öğrenimi alanları için genelleştirilebilir


1
Az önce ilk cümlesinde, Bayes optimizasyonu neden daha iyi olduğunu asıl nedeni kararlar vardır yapılıyor o olmadığını işaret etmek istedik akıllı , bu kararların olma hakkındadır tüm yapılan .
Alexander Rossa

1

Dikkat çekici bir şekilde, Bayes hiperparametre optimizasyonu sıralı bir süreçtir, bu nedenle arama yapabilen veya paralel olarak gerçekleştirilebilen diğer bazı yaklaşımlardan daha uzun sürebilir.

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.