Saya sedang mengerjakan proyek penelitian yang terkait dengan optimasi dan baru-baru ini punya ide untuk menggunakan MCMC dalam pengaturan ini. Sayangnya, saya cukup baru untuk metode MCMC jadi saya punya beberapa pertanyaan. Saya akan mulai dengan menjelaskan masalahnya dan kemudian mengajukan pertanyaan saya.
Masalah kita bermuara memperkirakan nilai yang diharapkan dari fungsi biaya di mana adalah -dimentional variabel acak dengan kepadatan .
Dalam kasus kami, versi bentuk tertutup dari tidak ada. Ini berarti bahwa kita harus menggunakan metode Monte Carlo untuk memperkirakan nilai yang diharapkan. Sayangnya, ternyata estimasi yang dihasilkan menggunakan metode MC atau QMC memiliki terlalu banyak varian untuk digunakan dalam pengaturan praktis.
Satu gagasan bahwa kami harus menggunakan distribusi sampling yang penting untuk menghasilkan titik sampel yang akan menghasilkan estimasi varians rendah . Dalam kasus kami, distribusi pengambilan sampel kepentingan yang ideal, , harus sebanding dengan c (\ omega) f (\ omega) . Melihat bagaimana g (\ omega) diketahui hingga konstan, saya bertanya-tanya apakah saya dapat menggunakan MCMC bersama dengan distribusi proposal c (\ omega) f (\ omega) untuk akhirnya menghasilkan sampel dari g (\ omega) .g ( ω ) c ( ω ) f ( ω ) g ( ω ) c ( ωg ( ω )
Pertanyaan saya di sini adalah:
Bisakah MCMC digunakan dalam pengaturan ini? Jika demikian, metode MCMC apa yang sesuai? Saya bekerja di MATLAB, jadi saya memiliki preferensi untuk apa pun yang sudah memiliki implementasi MATLAB.
Apakah ada teknik yang bisa saya gunakan untuk mempercepat periode burn-in untuk MCMC. Dan bagaimana saya bisa tahu bahwa distribusi stasioner telah tercapai? Dalam kasus ini, sebenarnya dibutuhkan sedikit waktu untuk menghitung untuk diberikan .ω
sumber
Jawaban:
Saya akan selalu ingat, bahwa MCMC hanyalah alat integrasi numerik (dan yang agak tidak efisien pada saat itu). Ini bukan sihir / mistis. Ini sangat berguna karena cukup mudah diterapkan. Tidak memerlukan banyak pemikiran dibandingkan dengan beberapa teknik integrasi numerik lainnya. Misalnya, Anda tidak harus melakukan turunan apa pun. Anda hanya perlu membuat "angka acak".
Namun, seperti metode integrasi numerik apa pun, ini bukan alat universal catch all. Ada kondisi saat itu berguna, dan kondisi saat tidak.
Mungkin lebih bijaksana untuk mengatur teknik lain. Bergantung pada seberapa besar , dan seberapa cepat komputer Anda, dan berapa lama Anda siap untuk menunggu hasil. Grid yang seragam dapat melakukan pekerjaan itu (meskipun ini membutuhkan kecil atau lama menunggu). "Pekerjaan" adalah mengevaluasi integral - persamaan tidak peduli apa artinya Anda atau saya lampirkan pada hasilnya (dan karenanya tidak peduli apakah kami memperoleh hasilnya secara acak atau tidak).hh h
Selain itu, jika perkiraan cukup akurat, akan memuncak tajam dan sangat mirip dengan fungsi delta, sehingga integralnya secara efektif menggantikan .f ( ω ) ω → ω m a xω f(ω) ω→ωmax
Teknik integrasi numerik lainnya menggunakan seri taylor di bawah integral.f(ω)≈f(ωmax)+(ω−ωmax)f′(ωmax)+12(ω−ωmax)2f′′(ωmax)+…
Ini adalah strategi yang berguna ketika momen mudah diperoleh.ω
Edwin Jaynes memiliki kutipan yang bagus tentang ini:
setiap kali ada cara acak untuk melakukan sesuatu, ada cara non-acak yang menghasilkan hasil yang lebih baik, tetapi membutuhkan lebih banyak pemikiran
Satu cara "lebih banyak berpikir" adalah menggunakan "MCMC bertingkat" untuk melakukan integral. Jadi alih-alih "secara acak" pilih tempat di seluruh ruang parameter: bagilah menjadi "strata". "Strata" ini harus dipilih sehingga Anda mendapatkan kisaran yang baik dari bagian integral yang tinggi. Kemudian sampel secara acak dalam setiap strata. Tetapi ini akan mengharuskan Anda untuk menulis kode Anda sendiri yang saya bayangkan (yaitu lebih banyak berpikir).
sumber
Tidak ada indikasi bahwa variabel Anda di sini berkorelasi jadi saya tidak tahu mengapa Anda akan menggunakan MCMC sebagai lawan dari Monte Carlo biasa. Ada banyak metode pengambilan sampel yang berbeda termasuk pengambilan sampel bertingkat (Latin hypercube) dan QMC. Metode kuadratur jarang sangat baik jika dimensi masalahnya tidak terlalu tinggi (tidak lebih dari 10) karena kisi kuadratur jarang tumbuh secara geometris (kutukan dimensi).
Tapi sepertinya Anda berada di jalur yang benar sehubungan dengan pentingnya pengambilan sampel. Kuncinya di sini adalah untuk memilih distribusi yang bias yang memiliki probabilitas besar terkonsentrasi di dekat daerah yang Anda minati dan memiliki ekor yang lebih tebal daripada distribusi nominal.
Saya ingin menambahkan bahwa ini adalah masalah penelitian terbuka jadi jika Anda dapat menemukan sesuatu yang baik itu akan sangat menarik bagi masyarakat!
sumber
Karena tidak ada yang benar-benar menjawab pertanyaan secara langsung: ya, Anda dapat menggunakan MCMC untuk mengambil sampel dari . MCMC dapat digunakan untuk mengambil sampel dari distribusi mana pun di mana distribusi hanya diketahui hingga konstan proporsionalitas.g(ω)
Selain itu, Anda mungkin ingin mencari teknik reduksi varians di bidang integrasi MC. Seperangkat sumber daya mandiri yang lengkap adalah bab buku gratis yang tersedia dari Art Owen di Stanford. Khususnya bab 8, 9, dan 10.
Di sana Anda akan menemukan perawatan mendalam untuk pengambilan sampel adaptif, rekursi, dan teknik lainnya.
sumber