Stokastik bilgisayar modellerinin optimizasyonu


11

Bu benim için zor bir konudur çünkü bir aramada optimizasyon ve stokastik kelimelere sahip olmak neredeyse otomatik olarak stokastik optimizasyon aramalarını varsayılan hale getirir. Ama gerçekten bilmek istediğim, bilgisayar modeli çıktısı stokastik, yani deterministik olmadığında bilgisayar modellerinin optimizasyonu için hangi yöntemler var?

Örneğin, bilgisayar modelinin çıktısını temsil eden bazı bilinmeyen işlevinin bulunduğu bir bilgisayar modelini göz önünde bulundurursanız , aşağıdaki gibi problemleri çözmek için birçok istatistiksel yöntem vardır.f(x)

minf(x)xX

zaman f(x) deterministik. Fakat f(x) stokastik olduğunda ne olur ? Soruna bir çözüm var mı, yoksa en iyi ihtimalle sadece çözebiliriz

minE[f(x)]xX

burada E() olağan beklenti operatörüdür.


1
Bu çok ilginç bir soru. optimizasyonu gerçekten mümkün olacak tek şeydir. Bu soru ile ilgili istatistiksel bir uygulama, tam olasılık fonksiyonunun sadece üstünde MCMC hatası ile gözlemlenebildiği MCEM algoritmasıdır. Benzer şekilde, MCMC parçacık filtresi algoritmaları da aynı soruna sahiptir. Her iki literatürü de, buna cevap vermek için en son teknoloji yöntemlerinin ne olduğunu bilmeye yetecek kadar okumadım. E[f(x)]
Cliff AB

2
Hedefinize bağlıdır. olası birçok seçenekten yalnızca biridir. Bazı uygulamalarda, yalnızca "ortalama olarak iyi" bir çözüm değil, "güvenilir" bir çözüm bulmak isteyebilirsiniz. Bu senaryoda, wrt'yi dağılımının bir miktarına göre optimize edersiniz . Bayes optimizasyonu maliyetli (ve bazen gürültülü) fonksiyon değerlendirmeleriyle ilgilenir. Örneğin bu soruyu kontrol edin . E[f(x)]f(x)
lacerbi

1
@lacerbi bu örneklerden herhangi biri gürültülü mü? Bence sadece deterministikler.
RustyStatistician

@RustyStatistician: haklısın, çoğu örnek deterministiktir veya genel olarak Bayes optimizasyonu hakkında konuşur. "Gürültülü" bölüme daha fazla odaklanmış referanslar için aşağıya bakın.
lacerbi

Seçilmiş girişleri için kendiniz çalıştırabilmeniz için bilgisayar programına erişiyor musunuz ? Daha sonra deneylerin tasarım yöntemleri kullanıma hazır hale gelir! Bu siteyi araştır. x
kjetil b halvorsen

Yanıtlar:


10

( Yorumumu doğru cevaba genişletiyorum. )

Bahsettiğim gibi, bu sizin hedefinize bağlıdır.

Beklenen değer , optimizasyon hedefi için olası birçok seçenekten yalnızca biridir. Örneğin, öğesinin normal olarak dağıtıldığı varsayılarak şunları yapabilirsiniz:E[f(x)]f(x)

xopt=argminx{E[f(x)]+κVar[f(x)]}
için risk duyarlılığını manipüle eden bazı . Eğer Bir Aradığınız sağlam iyi ve zorlaştırır, büyük pozitif dalgalanmalar olması muhtemeldir çözümü. Bunun tersine, bir negatif , büyük negatif dalgalanmalar arayan "iyimser" bir optimizasyondan yana olacaktır (negatif, en aza indirdiğimiz için iyidir). Kappa'yı normal dağılımın miktarlarına göre seçebilirsiniz (aşağıdaki referans 2'ye bakın).κRκ>0κκ

Genel olarak, Bayes optimizasyonu (Gauss süreçleri ve kriging ile ilgili BO ), maliyetli ve bazen gürültülü fonksiyon değerlendirmeleri ile ilgilenir; her ne kadar literatürün odak noktası eski kısımda olsa da. Bu soruda Bayesian optimizasyonu için yorumları bulabilirsiniz .

Birçok kişi gürültülü fonksiyonlara BO uyguladı. Konuya bir introdution olarak, David Ginsbourger Küresel Optimizasyon için Gauss Süreçleri Çalıştayı'nda (Beklenen İyileşme Üzerine Varyasyonlar) başlıklı güzel bir konuşma yaptı (Sheffield, 17 Eylül 2015). Konuşmasını burada bulabilirsiniz ve tüm görüşmeler bu sayfada mevcuttur (Ayrıca diğer tüm görüşmeleri BO'ya mükemmel bir genel giriş olarak tavsiye ederim.)

Referans olarak Ginsbourger ve meslektaşları, Gramacy ve meslektaşları tarafından yapılan çalışmalarla başlayacağım:

  1. Picheny, V. ve Ginsbourger, D., 2014. "Gürültülü kriging tabanlı optimizasyon yöntemleri: DiceOptim paketi içinde birleşik bir uygulama". Hesaplamalı İstatistik ve Veri Analizi , 71, s.1035-1053. ( bağlantı )

  2. Picheny, V., Ginsbourger, D., Richet, Y. ve Caplin, G., 2013. "Ayarlanabilir hassasiyetle gürültülü bilgisayar deneylerinin kantil tabanlı optimizasyonu". Technometrics , 55 (1), s. 2-13. ( bağlantı )

  3. Gramacy, RB ve Lee, HK, 2012. "Bayesian treed Gauss süreç modelleri bilgisayar modelleme uygulaması ile". Amerikan İstatistik Derneği Dergisi . ( bağlantı )

  4. Gramacy, RB ve Apley, DW, 2015. "Büyük bilgisayar deneyleri için yerel Gauss işlemi yaklaşımı". Hesaplamalı ve Grafik İstatistik Dergisi , 24 (2), s.561-578. ( bağlantı )

Hem Ginsburger hem de Gramacy, sırasıyla DiceOptim ve tgp olmak üzere BO yöntemlerini uygulayan R paketlerine sahiptir .


1
Cevabınızda nerede, yoksa ? kκ
RustyStatistician

1
* Kullanmadığım ama eğlenceli isim bölümünde kazandığım bir algoritma daha SNOBFIT . (* Yazar olduğunu ancak optimizasyon toplumda kayda değer ve yazılım üzerinde OK yaptığı deterministik kriter öneri değildir bu yüzden, sadece serin adına göre!)
GeoMatt22

4

Mevcut cevaplar stokastik bir optimizasyon hedefinin doğru (matematiksel) tanımına odaklanıyor - Biraz daha uygulamalı bir bakış açısı sağlamak istiyorum.

Bu sorun, örneğin gayri resmi veya sentetik olasılıklar gibi stokastik modeller takılırken sıklıkla görülür. Referans (1), stokastik bir model ile veri arasındaki mesafeyi tanımlamak için kullanılabilecek seçeneklerin bir listesini sağlar.

Hedefinizi bu şekilde tanımladıktan sonra, geriye kalan sorun, gürültülü bir hedefin ortalamasının optimumunu bulmaktır. Gidilecek iki yol vardır, a) optimizasyon ve b) MCMC örneklemesi. Özellikle optimizasyon hakkında soruyordunuz, ancak MCMC'leri getirmek istiyorum, çünkü genellikle bu görev için daha iyi davranıyorlar.

a) Optimizasyona devam ederseniz, takılmadığınızdan ve optimize edicinin stokastik bir hedefle başa çıkabildiğinden emin olmanız gerekir. Matteo Fasiolo'nun doktora tezindeki 4. Bölüm bazı ipuçları veriyor, bkz. (2).

b) (1) 'de belirttiğimiz gibi, MCMC'ler genellikle stokastik bir hedefe karşı daha sağlamdır - gürültünün dağılımı ile ilgili ılımlı koşullar altında, MCMC gürültüyü ortalar ve örneklenen hedef gürültülü olmayanlardan ayırt edilemez gürültülü hedefin ortalaması olan hedef. Ancak, MCMC'ler de özellikle iyi bir değerlendirme ile karşılaştıklarında takılabilirler. Şimdi YAPMAMANIZ gereken şu "açık" fikri almaktır: sadece her MCMC yinelemesinde hem mevcut hem de önerilen değeri hesaplayın. Buraya bakmak için anahtar kelime "sözde marjinal" dir, ayrıca buraya ve buraya bakınız .

1) Hartig, F .; Calabrese, JM; Reineking, B .; Wiegand, T. & Huth, A. (2011) Stokastik simülasyon modelleri için istatistiksel çıkarım - teori ve uygulama . EcoL. Lett., 14,816-827.

2) Fasiolo, M. (2016) Karmaşık Nüfus Dinamiği için İstatistiksel Yöntemler . Bath Üniversitesi


4

Diyelim ki ayrı bir olasılık uzayındayız, böylece . Sezgisel olarak, optimize edebilmeniz için bazı fonksiyonuna ihtiyacınız vardır . Yalnızca tek bir hedefi optimize edebilirsiniz!f(x)RnU:RnRU(f(x))

Tek bir objektif fonksiyonunun optimizasyonu oldukça kısıtlayıcı gelebilir , ama değil ! Daha ziyade, tek bir hedef, daha iyi veya daha kötü bir çözümün ne olduğu konusunda inanılmaz derecede farklı tercihleri ​​temsil edebilir.

İleri atlamak için, başlamak için basit bir yer rastgele bir değişken seçip :λ

minimize (over x)E[λf(x)]subject toxX
Bu, öğesinin basit bir doğrusal yeniden ağırlıklandırmasıdır . Her neyse, işte birden fazla hedefi tek bir hedefe daraltmanın tipik bir nedeni var.E[f(x)]

Temel kurulum:

  • Bir seçim değişkeni ve uygun bir kümeniz var .xX
  • seçiminiz rastgele bir sonuç verirxy~=f(x)
  • You have rasyonel tercihleri rastgele sonucuyla ilgili. (Temel olarak, rastgele bir sonucu diğerine tercih edip etmediğinizi söyleyebilirsiniz .)y~

Sorununuz i seçmektir :xX

xXf(x)f(x)
İngilizce'de, seçeneğini seçmek istersiniz, böylece hiçbir seçeneği için tercih edilen bir sonuca yol .xxf(x)

Fayda maksimizasyonu ile eşdeğerlik (belirli teknik koşullar altında)

Teknik basitlik için, sonucu olan ayrık bir olasılık alanında olduğumuzu söyleyeceğim, böylece vektörü ile rastgele sonucu temsil edebilirim .ny~yRn

Belirli teknik koşullar altında (pratik anlamda sınırlayıcı değildir), yukarıdaki sorun bir faydalı fonksiyon maksimuma çıkarmaya eşdeğerdir . (Fayda fonksiyonu daha fazla tercih edilen sonucu daha yüksek bir sayıya atar.)U(y)

Bu mantık, seçiminizin birden çok sonuç değişkenine yol açtığı herhangi bir sorun için geçerlidir.

maximize (over x)U(f(x))subject toxX

Fayda fonksiyonuna daha fazla yapı verilmesi : Beklenen Fayda hipotezi:U

Olasılıksal bir ortamdaysak ve Neumann-Morgernstern aksiyomlarını kabul edersek , genel fayda fonksiyonu özel bir form almalıdır:U

U(y)=E[u(yi)]=ipiu(yi)
Burada , ve durumunun olasılığı içbükey bir yardımcı program işlevidir. Eğriliği riskten kaçınma ölçer. Sadece bu özel formunu değiştirerek elde edersiniz:piiuuU

maximize (over x)ipiu(yi)subject toxXy=f(x)

Basit beklenen değeri en üst düzeye çıkardığını (yani riskten kaçınma yok).u(yi)=yi

Başka bir yaklaşım: ağırlıklarıλ

Yapılacak başka bir şey:

maximize (over x)iλiyisubject toxXy=f(x)

Sezgisel, sen ağırlıkları seçebilir olasılığı daha büyük veya daha küçük olan bir devlet meydana gelen ve bir devletin bu yakalar önemi.λipi

Bu yaklaşımın daha derin gerekçesi, belirli teknik koşullar altında , yukarıdaki sorun ve daha önceki sorunların (örn. maksimize edilmesi) aynı çözüme sahip olacak şekilde lambda ağırlıkları olmasıdır .λU(f(x))


Ancak bu kurulumda tüm yardımcı fonksiyonlar aynı cevaba doğru yol açmıyor mu?
RustyStatistician

Yardımcı işlevler için tipik seçenekler var mı? Benim sorunum aslında bir blackbox simülatörü olan stokastik bir bilgisayar simülatörü, bu yüzden altta yatan mekaniği hakkında hiçbir bilgi bilmiyorum, bu yüzden muhtemelen bir yardımcı program işlevi atayabilir miyim?
RustyStatistician

Probleminizin mantığını, iyi bir sonucu neyin oluşturduğunu düşünmeniz ve daha iyi sonuçları daha yüksek bir sayı veren objektif bir işlev bulmanız gerekir. (Ya da eşdeğer olarak, bunu bir minimizasyon problemi olarak ayarlayabilir ve daha kötü sonuçlar daha yüksek bir sayı atayabilirsiniz. Örneğin, bir kare hatası kavramını en aza indirin vb.)
Matthew Gunn
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.