Yarı rastgele arama

Bu birim yarı rastgele aramaya odaklanır.

Yarı rastgele aramayı neden kullanmalıyım?

Yarı rastgele arama (düşük tutarsızlık sıralarına göre), ince ayar problemiyle ("keşif aşaması" olarak adlandırdığımız şey) en üst düzeye çıkarma amacıyla yapılan yinelemeli ayarlama işleminin bir parçası olarak kullanıldığında, gösterişli kara kutu optimizasyon araçlarına kıyasla daha fazla tercih ederiz. Kötüye kullanma aşaması için Bayes optimizasyonu ve benzer araçlar daha uygundur. Rastgele yer alan düşük tutarsızlık sıralarına dayanan yarı rastgele arama, "titrek, karışık ızgara araması" olarak düşünülebilir. Çünkü bu yöntem, rastgele aramadan ziyade belirli bir arama alanını araştırır ve arama noktalarını rastgele yayar.

Yarı rastgele aramanın daha gelişmiş kara kutu optimizasyon araçlarına (ör. Bayes optimizasyonu, evrimsel algoritmalar) kıyasla avantajları şunlardır:

  • Arama alanının uyarlanabilir biçimde örneklendirilmesi, post-hoc analizde ayarlama hedefinin yeniden deneme çalıştırılmadan değiştirilmesini mümkün kılar. Örneğin, genellikle eğitimin herhangi bir noktasında elde edilen doğrulama hatası açısından en iyi denemeyi bulmak isteriz. Bununla birlikte, yarı rastgele aramanın uyarlanabilir olmayan yapısı, herhangi bir denemeyi yeniden çalıştırmadan nihai doğrulama hatasına, eğitim hatasına veya bazı alternatif değerlendirme metriklerine dayalı en iyi denemeyi bulmayı mümkün kılar.
  • Yarı rastgele arama tutarlı ve istatistiksel olarak tekrarlanabilir bir şekilde çalışır. Aynı bütünlük özelliklerini koruduğu sürece, arama algoritmasının uygulanması değişse bile altı ay öncesine ait bir çalışmanın yeniden oluşturulabilmesi gerekir. Gelişmiş Bayes optimizasyon yazılımı kullanılıyorsa, uygulama sürümler arasında önemli bir şekilde değişerek eski bir aramanın yeniden üretilmesini çok daha zor hale getirebilir. Her zaman eski uygulamaya geri dönmek mümkün değildir (ör. optimizasyon aracı hizmet olarak çalıştırılıyorsa).
  • Arama alanının tek tip keşfi, sonuçları ve arama alanı hakkında ne önerebilecekleri hakkında akıl yürütmeyi kolaylaştırır. Örneğin, yarı rastgele aramanın geçişindeki en iyi nokta arama alanının sınırındaysa bu, arama alanı sınırlarının değiştirilmesi gerektiğine dair iyi bir sinyaldir (ancak hatasız değildir). Bununla birlikte, uyarlanabilir kara kutu optimizasyon algoritması, eşit derecede iyi noktalar içerse bile ilk talihsiz denemeler nedeniyle arama alanının ortasını ihmal etmiş olabilir. Çünkü, iyi bir optimizasyon algoritmasının aramayı hızlandırmak için uygulaması gereken tek tip olmayan budur.
  • Paralel ve sıralı olarak farklı sayıda deneme çalıştırmak, uyarlanabilir algoritmalardan farklı olarak yarı rastgele arama (veya diğer uyarlanabilir olmayan arama algoritmaları) kullanılırken istatistiksel olarak farklı sonuçlar üretmez.
  • Daha karmaşık arama algoritmaları, özellikle de nöral ağ hiperparametre ayarı göz önünde bulundurularak tasarlanmadıysa uygun olmayan noktaları her zaman doğru şekilde işleyemeyebilir.
  • Yarı-rastgele arama basittir ve özellikle birçok ayarlama denemesi paralel olarak çalışırken iyi sonuç verir. Anekdot olarak1, uyarlanabilir bir algoritmanın bütçesinin 2 katına sahip yarı rastgele bir aramayı aşması, özellikle de birçok denemenin paralel olarak yürütülmesi gerektiğinde (ve bu nedenle yeni deneyler başlatırken önceki deneme sonuçlarından yararlanma şansı çok az olduğunda) çok zordur. Bayes optimizasyonu ve diğer gelişmiş kara kutu optimizasyon yöntemlerinde uzman olmadan, prensipte sağladıkları avantajları elde edemeyebilirsiniz. Gelişmiş kara kutu optimizasyon algoritmalarını gerçekçi derin öğrenme ayarlama koşullarında karşılaştırmak zordur. Bunlar güncel araştırmaların oldukça aktif bir alanıdır ve daha karmaşık olan algoritmaların tecrübesiz kullanıcılar açısından kendine özgü tehlikeleri vardır. Bu yöntemlerdeki uzmanlar iyi sonuçlar alabilirler, ancak paralelliklerin yüksek olduğu koşullarda arama alanı ve bütçe çok daha önemlidir.

Bununla birlikte, bilişim kaynaklarınız yalnızca az sayıda denemenin paralel olarak çalıştırılmasına izin veriyorsa ve birçok denemeyi sırayla çalıştırmayı karşılayabiliyorsanız, ayarlama sonuçlarınızın yorumlanmasını zorlaştırmasına rağmen Bayes optimizasyonu çok daha cazip hale gelir.

Açık Kaynak Vizier'da yarı rastgele arama uygulaması bulunur. Bu Vizier kullanım örneğinde algorithm="QUASI_RANDOM_SEARCH" değerini ayarlayın. Bu hiperparametre tarama örneğinde alternatif bir uygulama bulunmaktadır. Bu uygulamaların her ikisi de, belirli bir arama alanı için bir Halton dizisi oluşturur (Kritik Hiper Parametreler: Rastgele Yok, Ağlama Yok bölümünde önerildiği gibi kaydırılmış, karışık bir Halton dizisi uygulamak amacıyla tasarlanmıştır.

Düşük tutarsızlık sırasına dayalı yarı rastgele bir arama algoritması kullanılamıyorsa bunun yerine yapay rastgele tek tip arama kullanılabilir. Ancak bu yöntem büyük olasılıkla daha az etkili olabilir. 1-2 boyutlarda, daha yüksek boyutlarda olmasa da ızgara araması da kabul edilebilir. (Bkz. Bergstra & Bengio, 2012).

Yarı rastgele aramada iyi sonuçlar almak için kaç deneme gerekir?

Genel olarak yarı rastgele aramayla sonuç almak için kaç deneye ihtiyaç olduğunu belirlemenin bir yolu yoktur ancak belirli örneklere bakabilirsiniz. Şekil 3'te gösterildiği gibi, bir çalışmadaki deneme sayısının sonuçlar üzerinde önemli bir etkisi olabilir:

Doğrulama hatası oranı (y ekseni) ile ayarlama bütçesi (x ekseni) karşılaştırmasının kutu grafiği. Burada ayarlama bütçesi, deneme sayısıdır. Ayar bütçesi arttıkça ortalama doğrulama hata oranı genellikle düşmüştür.

Şekil 3: ResNet-50, ImageNet'i 100 denemeyle ayarlanmıştır. Önyüklemeleri kullanarak farklı ayarlama bütçesi miktarları simüle edildi. Her bir deneme bütçesi için en iyi performansların kutu grafikleri çizilir.

 

Şekil 3 ile ilgili olarak aşağıdakilere dikkat edin:

  • 6 denemenin örneklendiği çeyrek aralıkları, 20 denemenin örneklendiğindeki aralıktan çok daha büyük.
  • 20 denemede bile, özellikle şanslı ve uğursuz çalışmalar arasındaki fark muhtemelen bu modelin sabit hiperparametrelerle farklı rastgele tohumlar üzerinde yeniden eğitilmesi arasındaki tipik varyasyondan daha büyük olabilir.Bu iş yükü için bu iş yükü yaklaşık% 23 doğrulama hatası oranında yaklaşık +/- %0,1 olabilir.

  1. Ben Recht ve Kevin Jamieson, 2 kat bütçeli rastgele aramanın temel olarak ne kadar güçlü olduğuna dikkat çekmiştir (Hyperband makalesinde benzer argümanlar sunulmaktadır) ancak modern Bayes optimizasyon tekniklerinin bütçenin 2 katı olan rastgele aramaları ele aldığı arama alanlarını ve problemleri bulmak kesinlikle mümkündür. Ancak, Bayes optimizasyonu önceki denemelerin sonuçlarını gözlemleme fırsatı olmadığından, yüksek paralellik rejiminde 2 kat bütçeli rastgele aramayı aşma deneyimimiz çok daha zor hale geliyor.