Three Samplers, One Posterior: NUTS vs. Emcee vs. Nested Sampling
🇬🇧 English
I have used all three of these samplers in real research, often without much thought about why I chose one over another. emcee was my first sampler, NUTS arrived when I moved my likelihoods to JAX, and dynesty came in whenever someone asked for a Bayes factor. Eventually I realised I could not say which one I would trust on a problem I did not already understand.
Most sampler comparisons measure speed, but speed means little if the samples are wrong, and you can only check wrongness when you know the right answer. So I chose three problems small enough to solve exactly, on a dense grid or analytically, and scored each sampler against the truth rather than against the others.
NUTS was the fastest, by a factor of two to four on smooth problems, but it failed completely on the multimodal problem, and its diagnostics said so clearly. emcee was fine on the easy problems but gave confidently wrong answers on the multimodal one, with no warning in its default output. dynesty was the only sampler that found every mode and produced a correct evidence, though its evidence error bars were optimistic.
The three test problems grew progressively harder. The first was a control: fitting Ωm and H0 in flat ΛCDM to 40 simulated Type Ia supernovae, giving a roughly elliptical posterior. The second was a curved, thin ridge, fitting Ωm and the dark energy equation of state with H0 fixed. The third was a multimodal problem: finding the frequency of a sinusoid observed on 40 nights over 80 days, which produces several separated peaks.
🇸🇦 العربية
NUTS مقابل Emcee مقابل أخذ العينات المتداخلة: أيها يفوز؟
لقد استخدمت الأدوات الثلاث في أبحاث حقيقية، وغالباً دون تفكير كبير في سبب اختيار إحداها على الأخرى. كانت emcee أول أداة أستخدمها، وظهرت NUTS عندما نقلت دوال الإمكان الخاصة بي إلى JAX، أما dynesty فكانت تأتي كلما طلب أحد عامل بايز. وفي النهاية أدركت أنني لا أستطيع أن أقول أي واحدة سأثق بها في مسألة لا أفهمها مسبقاً.
تقيس معظم المقارنات بين أدوات أخذ العينات السرعة، لكن السرعة لا تعني الكثير إذا كانت العينات خاطئة، ولا يمكنك التحقق من الخطأ إلا إذا كنت تعرف الإجابة الصحيحة. لذلك اخترت ثلاث مسائل صغيرة بما يكفي لحلها بدقة، إما على شبكة كثيفة أو تحليلياً، وقيّمت كل أداة مقارنةً بالحقيقة لا مقارنةً بالأدوات الأخرى.
كانت NUTS الأسرع، بمعدل يتراوح بين ضعفين وأربعة أضعاف في المسائل السلسة، لكنها فشلت تماماً في المسألة متعددة القمم، وأوضحت تشخيصاتها ذلك بجلاء. كانت emcee جيدة في المسائل السهلة، لكنها أعطت إجابات خاطئة بثقة تامة في المسألة متعددة القمم، دون أي تحذير في مخرجاتها الافتراضية. كانت dynesty الأداة الوحيدة التي وجدت كل القمم وأنتجت دليلاً صحيحاً، رغم أن أشرطة خطأ الدليل لديها كانت متفائلة أكثر من اللازم.
تصاعدت صعوبة مسائل الاختبار الثلاث تدريجياً. كانت الأولى مرجعاً للمقارنة: تركيب Ωm وH0 في نموذج ΛCDM المسطح على 40 مستعراً أعظم من النوع Ia مُحاكى، مما أعطى توزيعاً لاحقاً شبه إهليلجي. والثانية حافة منحنية رفيعة، بتركيب Ωm ومعادلة حالة الطاقة المظلمة مع تثبيت H0. أما الثالثة فكانت مسألة متعددة القمم: إيجاد تردد موجة جيبية رُصدت في 40 ليلة خلال 80 يوماً، وهو ما ينتج عدة قمم منفصلة.
الكيانات الرئيسية: الشركات: Towards Data Science | الأشخاص: Arvi Z.
سؤال شائع: بأي أداة يجب أن تثق في مسألة متعددة القمم؟
في هذا الاختبار المعياري، كانت dynesty الأداة الوحيدة التي وجدت كل القمم وأنتجت دليلاً صحيحاً، بينما فشلت NUTS وأعطت emcee نتائج خاطئة بثقة تامة. ومع ذلك، تبين أن أشرطة خطأ الدليل لديها متفائلة.
بأي أداة يجب أن تثق في مسألة متعددة القمم؟
في هذا الاختبار المعياري، كانت dynesty الأداة الوحيدة التي وجدت كل القمم وأنتجت دليلاً صحيحاً، بينما فشلت NUTS وأعطت emcee نتائج خاطئة بثقة تامة. ومع ذلك، تبين أن أشرطة خطأ الدليل لديها متفائلة.
🇧🇩 বাংলা
NUTS বনাম Emcee বনাম Nested Sampling: কে জেতে?
আমি বাস্তব গবেষণায় তিনটি sampler-ই ব্যবহার করেছি, প্রায়ই একটিকে অন্যটির চেয়ে কেন বেছেছি তা ভালোভাবে না ভেবেই। emcee ছিল আমার প্রথম sampler, যখন আমি আমার likelihood গুলো JAX-এ নিয়ে গেলাম তখন NUTS এলো, আর কেউ Bayes factor চাইলেই dynesty ব্যবহার করতাম। শেষ পর্যন্ত বুঝলাম, যে সমস্যা আমি আগে থেকে ভালোভাবে বুঝি না, তাতে কোনটিকে বিশ্বাস করব তা আমি বলতে পারি না।
বেশিরভাগ sampler তুলনায় গতি মাপা হয়, কিন্তু নমুনা ভুল হলে গতির তেমন মূল্য নেই, আর সঠিক উত্তর জানা থাকলেই ভুল যাচাই করা যায়। তাই আমি তিনটি সমস্যা বেছে নিয়েছি যেগুলো যথেষ্ট ছোট, যাতে ঘন গ্রিডে বা বিশ্লেষণাত্মকভাবে সঠিকভাবে সমাধান করা যায়, এবং প্রতিটি sampler-কে অন্যদের সাথে নয় বরং সত্যের সাথে তুলনা করে মূল্যায়ন করেছি।
NUTS সবচেয়ে দ্রুত ছিল, মসৃণ সমস্যায় দুই থেকে চার গুণ দ্রুত, কিন্তু বহু-শিখর সমস্যায় সে সম্পূর্ণ ব্যর্থ হয়েছে, এবং এর diagnostics তা স্পষ্টভাবে জানিয়েছে। emcee সহজ সমস্যায় ভালো ছিল, কিন্তু বহু-শিখর সমস্যায় আত্মবিশ্বাসের সাথে ভুল উত্তর দিয়েছে, এবং এর ডিফল্ট আউটপুটে কোনো সতর্কতা ছিল না। dynesty ছিল একমাত্র sampler যে প্রতিটি শিখর খুঁজে পেয়েছে এবং সঠিক evidence দিয়েছে, যদিও এর evidence error bar গুলো আশাবাদী ছিল।
তিনটি পরীক্ষার সমস্যা ধাপে ধাপে কঠিন হয়েছে। প্রথমটি ছিল একটি নিয়ন্ত্রণ: ৪০টি সিমুলেটেড Type Ia supernova ব্যবহার করে flat ΛCDM-এ Ωm ও H0 ফিট করা, যা প্রায় উপবৃত্তাকার posterior দেয়। দ্বিতীয়টি ছিল একটি বাঁকা, সরু রিজ, যেখানে H0 স্থির রেখে Ωm ও dark energy equation of state ফিট করা হয়েছে। তৃতীয়টি ছিল বহু-শিখর সমস্যা: ৮০ দিনে ৪০ রাতে পর্যবেক্ষিত একটি sinusoid-এর কম্পাঙ্ক খুঁজে বের করা, যা একাধিক আলাদা শিখর তৈরি করে।
মূল সত্তা: কোম্পানি: Towards Data Science | ব্যক্তি: Arvi Z.
বহু-শিখর সমস্যায় কোন sampler-কে বিশ্বাস করা উচিত?
এই benchmark-এ dynesty ছিল একমাত্র sampler যে প্রতিটি শিখর খুঁজে পেয়েছে এবং সঠিক evidence দিয়েছে, অন্যদিকে NUTS ব্যর্থ হয়েছে এবং emcee আত্মবিশ্বাসের সাথে ভুল ফল দিয়েছে। তবে এর evidence error bar গুলো আশাবাদী পাওয়া গেছে।
🇩🇪 Deutsch
NUTS vs. Emcee vs. Nested Sampling: Wer gewinnt?
Ich habe alle drei Sampler in echter Forschung eingesetzt, oft ohne groß darüber nachzudenken, warum ich mich für den einen statt den anderen entschieden habe. emcee war mein erster Sampler, NUTS kam dazu, als ich meine Likelihoods zu JAX verlagerte, und dynesty tauchte immer dann auf, wenn jemand einen Bayes-Faktor wollte. Irgendwann wurde mir klar, dass ich nicht sagen konnte, welchem ich bei einem Problem vertrauen würde, das ich noch nicht vollständig verstehe.
Die meisten Sampler-Vergleiche messen die Geschwindigkeit, doch Geschwindigkeit bedeutet wenig, wenn die Samples falsch sind, und Falschheit lässt sich nur prüfen, wenn man die richtige Antwort kennt. Deshalb wählte ich drei Probleme, die klein genug sind, um sie exakt zu lösen, auf einem dichten Gitter oder analytisch, und bewertete jeden Sampler anhand der Wahrheit statt im Vergleich zu den anderen.
NUTS war am schnellsten, um den Faktor zwei bis vier bei glatten Problemen, scheiterte aber vollständig am multimodalen Problem, und seine Diagnosen zeigten das deutlich. emcee war bei den einfachen Problemen in Ordnung, lieferte aber beim multimodalen Problem selbstsicher falsche Antworten, ohne jede Warnung in der Standardausgabe. dynesty war der einzige Sampler, der alle Moden fand und eine korrekte Evidenz lieferte, wenngleich seine Fehlerbalken für die Evidenz optimistisch waren.
Die drei Testprobleme wurden schrittweise schwieriger. Das erste diente als Kontrolle: die Anpassung von Ωm und H0 in einem flachen ΛCDM an 40 simulierte Supernovae vom Typ Ia, was eine etwa elliptische Posterior-Verteilung ergibt. Das zweite war ein gekrümmter, schmaler Grat, bei dem Ωm und die Zustandsgleichung der Dunklen Energie bei festem H0 angepasst wurden. Das dritte war ein multimodales Problem: die Bestimmung der Frequenz einer Sinusschwingung, die an 40 Nächten über 80 Tage beobachtet wurde, was mehrere getrennte Spitzen erzeugt.
Wichtige Entitäten: Unternehmen: Towards Data Science | Personen: Arvi Z.
Welchem Sampler sollte man bei einem multimodalen Problem vertrauen?
In diesem Benchmark war dynesty der einzige Sampler, der alle Moden fand und eine korrekte Evidenz lieferte, während NUTS scheiterte und emcee selbstsicher falsche Ergebnisse lieferte. Seine Fehlerbalken für die Evidenz erwiesen sich jedoch als optimistisch.
🇪🇸 Español
NUTS vs Emcee vs Muestreo Anidado: ¿Cuál gana?
He usado los tres muestreadores en investigación real, a menudo sin pensar mucho por qué elegía uno sobre otro. emcee fue mi primer muestreador, NUTS llegó cuando pasé mis verosimilitudes a JAX, y dynesty aparecía cada vez que alguien pedía un factor de Bayes. Con el tiempo me di cuenta de que no podía decir en cuál confiaría en un problema que aún no entendiera del todo.
La mayoría de las comparaciones de muestreadores miden la velocidad, pero la velocidad significa poco si las muestras son incorrectas, y solo puedes comprobar que son incorrectas cuando conoces la respuesta correcta. Por eso elegí tres problemas lo bastante pequeños como para resolverlos exactamente, en una malla densa o de forma analítica, y puntué a cada muestreador frente a la verdad y no frente a los demás.
NUTS fue el más rápido, entre dos y cuatro veces más en problemas suaves, pero falló por completo en el problema multimodal, y sus diagnósticos lo indicaron con claridad. emcee funcionó bien en los problemas fáciles, pero dio respuestas erróneas con total seguridad en el multimodal, sin ninguna advertencia en su salida predeterminada. dynesty fue el único muestreador que encontró todos los modos y produjo una evidencia correcta, aunque sus barras de error de evidencia eran optimistas.
Los tres problemas de prueba aumentaron progresivamente en dificultad. El primero era un control: ajustar Ωm y H0 en un ΛCDM plano a 40 supernovas Tipo Ia simuladas, lo que da una posterior aproximadamente elíptica. El segundo era una cresta curva y estrecha, ajustando Ωm y la ecuación de estado de la energía oscura con H0 fijo. El tercero era un problema multimodal: encontrar la frecuencia de una sinusoide observada en 40 noches a lo largo de 80 días, lo que produce varios picos separados.
Entidades clave: Empresas: Towards Data Science | Personas: Arvi Z.
PREGUNTA FRECUENTE: ¿En qué muestreador deberías confiar en un problema multimodal?
En este benchmark, dynesty fue el único muestreador que encontró todos los modos y produjo una evidencia correcta, mientras que NUTS falló y emcee dio resultados erróneos con total seguridad. Sus barras de error de evidencia, sin embargo, resultaron ser optimistas.
¿En qué muestreador deberías confiar en un problema multimodal?
En este benchmark, dynesty fue el único muestreador que encontró todos los modos y produjo una evidencia correcta, mientras que NUTS falló y emcee dio resultados erróneos con total seguridad. Sus barras de error de evidencia, sin embargo, resultaron ser optimistas.
🇫🇷 Français
NUTS vs Emcee vs Échantillonnage imbriqué : lequel gagne ?
J'ai utilisé ces trois échantillonneurs dans de vraies recherches, souvent sans trop réfléchir au choix de l'un plutôt que de l'autre. emcee a été mon premier échantillonneur, NUTS est arrivé lorsque j'ai migré mes vraisemblances vers JAX, et dynesty intervenait chaque fois qu'on me demandait un facteur de Bayes. À force, j'ai réalisé que je ne pouvais pas dire lequel je ferais confiance sur un problème que je ne comprenais pas déjà.
La plupart des comparaisons d'échantillonneurs mesurent la vitesse, mais la vitesse signifie peu si les échantillons sont faux, et on ne peut vérifier une erreur que lorsqu'on connaît la bonne réponse. J'ai donc choisi trois problèmes suffisamment petits pour être résolus exactement, sur une grille dense ou analytiquement, et j'ai évalué chaque échantillonneur par rapport à la vérité plutôt que par rapport aux autres.
NUTS a été le plus rapide, d'un facteur deux à quatre sur les problèmes réguliers, mais il a complètement échoué sur le problème multimodal, et ses diagnostics l'ont clairement signalé. emcee s'est bien comporté sur les problèmes faciles, mais a donné des réponses fausses avec assurance sur le problème multimodal, sans aucun avertissement dans sa sortie par défaut. dynesty a été le seul échantillonneur à trouver tous les modes et à produire une évidence correcte, bien que ses barres d'erreur sur l'évidence soient optimistes.
Les trois problèmes de test ont gagné progressivement en difficulté. Le premier servait de contrôle : ajuster Ωm et H0 dans un ΛCDM plat à 40 supernovae de type Ia simulées, ce qui donne une postérieure à peu près elliptique. Le deuxième était une crête courbe et fine, en ajustant Ωm et l'équation d'état de l'énergie noire avec H0 fixé. Le troisième était un problème multimodal : trouver la fréquence d'une sinusoïde observée sur 40 nuits réparties sur 80 jours, ce qui produit plusieurs pics séparés.
Entités clés : Entreprises : Towards Data Science | Personnes : Arvi Z.
FAQ : Quel échantillonneur faut-il croire sur un problème multimodal ?
Dans ce benchmark, dynesty a été le seul échantillonneur à trouver tous les modes et à produire une évidence correcte, tandis que NUTS a échoué et qu'emcee a donné des résultats faux avec assurance. Ses barres d'erreur sur l'évidence se sont toutefois révélées optimistes.
Quel échantillonneur faut-il croire sur un problème multimodal ?
Dans ce benchmark, dynesty a été le seul échantillonneur à trouver tous les modes et à produire une évidence correcte, tandis que NUTS a échoué et qu'emcee a donné des résultats faux avec assurance. Ses barres d'erreur sur l'évidence se sont toutefois révélées optimistes.
🇮🇳 हिन्दी
NUTS बनाम Emcee बनाम Nested Sampling: कौन जीतता है?
मैंने असली शोध में ये तीनों samplers इस्तेमाल किए हैं, अक्सर यह ठीक से सोचे बिना कि एक को दूसरे पर क्यों चुना। emcee मेरा पहला sampler था, NUTS तब आया जब मैंने अपनी likelihoods को JAX पर ले गया, और dynesty तब आया जब कोई Bayes factor माँगता था। आखिरकार मुझे एहसास हुआ कि जिस समस्या को मैं पहले से पूरी तरह नहीं समझता, उस पर मैं यह नहीं बता सकता कि किस पर भरोसा करूँगा।
अधिकतर sampler तुलनाएँ गति मापती हैं, लेकिन अगर नमूने गलत हों तो गति का कोई खास मतलब नहीं रहता, और गलती तभी जाँची जा सकती है जब सही उत्तर पता हो। इसलिए मैंने तीन ऐसी समस्याएँ चुनीं जो इतनी छोटी थीं कि उन्हें सटीक रूप से हल किया जा सके, या तो घने grid पर या विश्लेषणात्मक रूप से, और हर sampler को दूसरों से नहीं बल्कि सच्चाई से तौला।
NUTS सबसे तेज था, सहज समस्याओं पर दो से चार गुना तेज, लेकिन multimodal समस्या पर वह पूरी तरह विफल रहा, और उसके diagnostics ने यह साफ़ बताया। emcee आसान समस्याओं पर ठीक रहा, लेकिन multimodal समस्या पर उसने पूरे विश्वास के साथ गलत उत्तर दिए, और उसके default आउटपुट में कोई चेतावनी नहीं थी। dynesty एकमात्र sampler था जिसने हर mode खोजा और सही evidence दिया, हालाँकि उसकी evidence error bars आशावादी थीं।
तीन परीक्षण समस्याएँ क्रमशः कठिन होती गईं। पहली एक control थी: 40 simulated Type Ia supernovae पर flat ΛCDM में Ωm और H0 फिट करना, जिससे लगभग दीर्घवृत्ताकार posterior मिला। दूसरी एक वक्र और पतली रिज थी, जिसमें H0 स्थिर रखकर Ωm और dark energy equation of state फिट किए गए। तीसरी multimodal समस्या थी: 80 दिनों में 40 रातों पर देखी गई sinusoid की आवृत्ति खोजना, जिससे कई अलग-अलग शिखर बनते हैं।
प्रमुख इकाइयाँ: कंपनियाँ: Towards Data Science | लोग: Arvi Z.
multimodal समस्या पर किस sampler पर भरोसा करना चाहिए?
इस benchmark में dynesty एकमात्र sampler था जिसने हर mode खोजा और सही evidence दिया, जबकि NUTS विफल रहा और emcee ने पूरे विश्वास के साथ गलत परिणाम दिए। हालाँकि, उसकी evidence error bars आशावादी पाई गईं।
🇮🇩 Bahasa Indonesia
NUTS vs Emcee vs Nested Sampling: Mana yang Menang?
Saya telah menggunakan ketiga sampler ini dalam riset nyata, sering kali tanpa banyak memikirkan alasan memilih yang satu dibandingkan yang lain. emcee adalah sampler pertama saya, NUTS datang ketika saya memindahkan likelihood ke JAX, dan dynesty muncul setiap kali ada yang meminta faktor Bayes. Akhirnya saya menyadari bahwa saya tidak bisa mengatakan sampler mana yang akan saya percayai untuk masalah yang belum sepenuhnya saya pahami.
Sebagian besar perbandingan sampler mengukur kecepatan, tetapi kecepatan tidak berarti banyak jika sampelnya salah, dan kesalahan hanya bisa diperiksa ketika Anda mengetahui jawaban yang benar. Karena itu saya memilih tiga masalah yang cukup kecil untuk diselesaikan secara eksak, baik pada kisi padat maupun secara analitik, dan menilai setiap sampler terhadap kebenaran, bukan terhadap sampler lain.
NUTS adalah yang tercepat, dua hingga empat kali lebih cepat pada masalah yang mulus, tetapi gagal total pada masalah multimodal, dan diagnosisnya menunjukkan hal itu dengan jelas. emcee baik-baik saja pada masalah yang mudah, tetapi memberikan jawaban yang keliru dengan penuh keyakinan pada masalah multimodal, tanpa peringatan apa pun dalam keluaran defaultnya. dynesty adalah satu-satunya sampler yang menemukan semua modus dan menghasilkan evidence yang benar, meskipun batas galat evidence-nya terlalu optimistis.
Tiga masalah uji semakin sulit secara bertahap. Yang pertama adalah kontrol: mencocokkan Ωm dan H0 dalam ΛCDM datar terhadap 40 supernova Tipe Ia simulasi, yang menghasilkan posterior berbentuk kira-kira elips. Yang kedua adalah punggungan melengkung dan tipis, dengan mencocokkan Ωm dan persamaan keadaan energi gelap dengan H0 tetap. Yang ketiga adalah masalah multimodal: menemukan frekuensi sinusoida yang diamati selama 40 malam dalam 80 hari, yang menghasilkan beberapa puncak yang terpisah.
Entitas kunci: Perusahaan: Towards Data Science | Orang: Arvi Z.
Sampler mana yang harus dipercaya pada masalah multimodal?
Dalam benchmark ini, dynesty adalah satu-satunya sampler yang menemukan semua modus dan menghasilkan evidence yang benar, sedangkan NUTS gagal dan emcee memberikan hasil yang salah dengan penuh keyakinan. Namun, batas galat evidence-nya ternyata terlalu optimistis.
🇯🇵 日本語
NUTS対Emcee対ネストサンプリング:勝つのはどれか?
私は実際の研究で3つのサンプラーすべてを使ってきましたが、なぜ一方を他方より選んだのかをあまり深く考えないことも多かったです。emcee が最初のサンプラーで、尤度をJAXに移したときにNUTSが加わり、誰かがベイズ因子を求めるたびにdynestyを使っていました。やがて、まだ十分に理解していない問題で、どれを信頼できるかを言えないことに気づきました。
多くのサンプラー比較は速度を測定しますが、サンプルが間違っていれば速度はほとんど意味を持ちません。そして誤りを確認できるのは、正しい答えがわかっているときだけです。そこで、密なグリッドや解析的な方法で厳密に解ける程度に小さい3つの問題を選び、各サンプラーを互いではなく真の答えと比べて評価しました。
NUTSは最速で、滑らかな問題では2倍から4倍速かったものの、多峰性の問題では完全に失敗し、その診断もそのことを明確に示していました。emcee は簡単な問題では問題ありませんでしたが、多峰性の問題では自信満々に誤った答えを出し、デフォルトの出力には何の警告もありませんでした。dynesty は、すべてのモードを見つけて正しいエビデンスを出した唯一のサンプラーでしたが、そのエビデンスの誤差範囲は楽観的すぎました。
3つのテスト問題は段階的に難しくなっていきました。最初はコントロールで、40個のシミュレートしたIa型超新星を用いて平坦なΛCDMでΩmとH0をフィットしました。これはほぼ楕円形の事後分布になります。2つ目は曲がった細い尾根で、H0を固定してΩmと暗黒エネルギーの状態方程式をフィットしました。3つ目は多峰性の問題で、80日間にわたり40夜観測された正弦波の周波数を見つけるもので、いくつも離れた山が生じます。
主要な固有表現:企業:Towards Data Science | 人物:Arvi Z.
よくある質問:多峰性の問題ではどのサンプラーを信頼すべきか?
このベンチマークでは、dynestyがすべてのモードを見つけて正しいエビデンスを出した唯一のサンプラーでした。一方、NUTSは失敗し、emceeは自信を持って誤った結果を出しました。ただし、dynestyのエビデンスの誤差範囲は楽観的であることがわかりました。
多峰性の問題ではどのサンプラーを信頼すべきか?
このベンチマークでは、dynestyがすべてのモードを見つけて正しいエビデンスを出した唯一のサンプラーでした。一方、NUTSは失敗し、emceeは自信を持って誤った結果を出しました。ただし、dynestyのエビデンスの誤差範囲は楽観的であることがわかりました。
🇧🇷 Português
NUTS vs Emcee vs Amostragem Aninhada: Quem Vence?
Usei os três amostradores em pesquisas reais, muitas vezes sem pensar muito sobre por que escolhia um em vez do outro. O emcee foi meu primeiro amostrador, o NUTS chegou quando passei minhas verossimilhanças para o JAX, e o dynesty entrava sempre que alguém pedia um fator de Bayes. Com o tempo percebi que não conseguia dizer em qual confiaria num problema que eu ainda não entendia completamente.
A maioria das comparações entre amostradores mede a velocidade, mas velocidade significa pouco se as amostras estiverem erradas, e você só pode verificar o erro quando conhece a resposta correta. Por isso escolhi três problemas pequenos o bastante para serem resolvidos exatamente, em uma grade densa ou analiticamente, e avaliei cada amostrador em relação à verdade, e não em relação aos outros.
O NUTS foi o mais rápido, de duas a quatro vezes mais em problemas suaves, mas falhou completamente no problema multimodal, e seus diagnósticos deixaram isso claro. O emcee se saiu bem nos problemas fáceis, mas deu respostas erradas com total confiança no multimodal, sem nenhum aviso em sua saída padrão. O dynesty foi o único amostrador que encontrou todos os modos e produziu uma evidência correta, embora suas barras de erro da evidência fossem otimistas.
Os três problemas de teste ficaram progressivamente mais difíceis. O primeiro era um controle: ajustar Ωm e H0 em um ΛCDM plano a 40 supernovas do Tipo Ia simuladas, o que gera uma posterior aproximadamente elíptica. O segundo era uma crista curva e fina, ajustando Ωm e a equação de estado da energia escura com H0 fixo. O terceiro era um problema multimodal: encontrar a frequência de uma senoide observada em 40 noites ao longo de 80 dias, o que produz vários picos separados.
Entidades principais: Empresas: Towards Data Science | Pessoas: Arvi Z.
Pergunta frequente: Em qual amostrador você deve confiar em um problema multimodal?
Nesse benchmark, o dynesty foi o único amostrador que encontrou todos os modos e produziu uma evidência correta, enquanto o NUTS falhou e o emcee deu resultados errados com total confiança. Suas barras de erro da evidência, porém, mostraram-se otimistas.
Em qual amostrador você deve confiar em um problema multimodal?
Nesse benchmark, o dynesty foi o único amostrador que encontrou todos os modos e produziu uma evidência correta, enquanto o NUTS falhou e o emcee deu resultados errados com total confiança. Suas barras de erro da evidência, porém, mostraram-se otimistas.
🇷🇺 Русский
NUTS против Emcee против вложенной выборки: кто победит?
Я использовал все три сэмплера в реальных исследованиях, часто не задумываясь о том, почему выбрал один вместо другого. emcee был моим первым сэмплером, NUTS появился, когда я перенёс функции правдоподобия на JAX, а dynesty подключался всякий раз, когда кто-то просил фактор Байеса. В конце концов я понял, что не могу сказать, какому из них доверять в задаче, которую я ещё не понимаю до конца.
Большинство сравнений сэмплеров измеряют скорость, но скорость мало что значит, если выборки неверны, а ошибку можно проверить только тогда, когда известен правильный ответ. Поэтому я выбрал три задачи, достаточно простые для точного решения, на плотной сетке или аналитически, и оценивал каждый сэмплер относительно истины, а не относительно других.
NUTS был самым быстрым, в два-четыре раза быстрее на гладких задачах, но полностью провалился на мультимодальной задаче, и его диагностика ясно это показала. emcee справился с простыми задачами, но на мультимодальной задаче уверенно дал неверные ответы, и в его выводе по умолчанию не было никакого предупреждения. dynesty был единственным сэмплером, который нашёл все моды и получил правильное свидетельство, хотя его погрешности свидетельства оказались оптимистичными.
Три тестовые задачи возрастали по сложности. Первая служила контролем: подгонка Ωm и H0 в плоской ΛCDM по 40 смоделированным сверхновым типа Ia, что дало примерно эллиптическое апостериорное распределение. Вторая представляла собой искривлённый тонкий гребень: подгонка Ωm и уравнения состояния тёмной энергии при фиксированном H0. Третья была мультимодальной: поиск частоты синусоиды, наблюдаемой в течение 40 ночей на протяжении 80 дней, что порождает несколько разделённых пиков.
Ключевые сущности: Компании: Towards Data Science | Люди: Arvi Z.
Часто задаваемый вопрос: какому сэмплеру доверять на мультимодальной задаче?
В этом бенчмарке dynesty был единственным сэмплером, который нашёл все моды и получил правильное свидетельство, тогда как NUTS провалился, а emcee уверенно дал неверные результаты. Однако погрешности его свидетельства оказались оптимистичными.
Какому сэмплеру доверять на мультимодальной задаче?
В этом бенчмарке dynesty был единственным сэмплером, который нашёл все моды и получил правильное свидетельство, тогда как NUTS провалился, а emcee уверенно дал неверные результаты. Однако погрешности его свидетельства оказались оптимистичными.
🇨🇳 简体中文
NUTS、emcee 与嵌套采样:谁更胜一筹?
我在真实研究中用过这三种采样器,常常没有仔细考虑为什么选择其中一种而不是另一种。emcee 是我最早使用的采样器,当我把似然函数迁移到 JAX 后才开始用 NUTS,而每当有人要求计算贝叶斯因子时,我就会用到 dynesty。最终我意识到,对于一个我并不already理解的问题,我无法说出自己会信任哪一个。
大多数采样器比较关注速度,但如果样本是错误的,速度就没有太大意义,而只有在知道正确答案时才能检验样本是否错误。因此,我选择了三个足够简单、可以精确求解的问题,通过密集网格或解析方法求解,并把每个采样器与真实答案而不是彼此相比来评分。
NUTS 是最快的,在平滑问题上快两到四倍,但它在多峰问题上完全失败,而且其诊断信息对此给出了明确提示。emcee 在简单问题上表现良好,但在多峰问题上给出了自信却错误的答案,其默认输出中没有任何警告。dynesty 是唯一找到所有峰并给出正确证据值的采样器,不过其证据误差条偏于乐观。
三个测试问题难度逐步提高。第一个是对照问题:在平坦 ΛCDM 模型中,用 40 个模拟的 Ia 型超新星拟合 Ωm 和 H0,得到近似椭圆形的后验分布。第二个是弯曲而狭窄的脊状问题:在固定 H0 的情况下拟合 Ωm 和暗能量状态方程。第三个是多峰问题:在 80 天内的 40 个夜晚观测一个正弦信号并求其频率,会产生多个分离的峰。
关键实体:公司:Towards Data Science | 人物:Arvi Z.
常见问题:在多峰问题上应该信任哪一种采样器?
在本次基准测试中,dynesty 是唯一找到所有峰并给出正确证据值的采样器,而 NUTS 失败,emcee 给出了自信却错误的结果。不过,其证据误差条被发现偏于乐观。
在多峰问题上应该信任哪一种采样器?
在本次基准测试中,dynesty 是唯一找到所有峰并给出正确证据值的采样器,而 NUTS 失败,emcee 给出了自信却错误的结果。不过,其证据误差条被发现偏于乐观。