الگوریتم زنجیره مارکوف مونت کارلو (MCMC) در متلب
در این بخش پروژه پیاده سازی الگوریتم زنجیره مارکوف مونت کارلو برای داده کاوی را در نرم افزار MATLAB آماده کرده ایم که در ادامه به معرفی این الگوریتم آماری پرداخته و فیلم و تصاویر خروجی در محیط MATLAB قرار داده شده است.
زنجیره مارکوف مونت کارلو (MCMC) چیست ؟
در علم آمار (Statistics)، روش های زنجیره مارکف مونت کارلو (Markov chain Monte Carlo – MCMC) که شامل روش های قدم زدن تصادفی مونت کارلو (Monte Carlo) است، دسته ای از الگوریتم ها هستند که کاربرد آنها در نمونه برداری از توزیع های احتمال می باشد که مبنای آن ساختن یک زنجیره مارکف با ویژگی های مناسب است. حالت زنجیره پس از طی مراحل بسیار زیادی، به عنوان نمونه ای از توزیع مناسب مورد استفاده قرار می گیرد. کیفیت این نمونه با توجه به افزایش تعداد مراحل، افزایش پیدا می کند.
ساختن یک زنجیره مارکف با ویژگی های مناسب، در اکثر موارد کار ساده ای می باشد. اما مشکل اصلی در تعداد مراحل مورد نیاز می باشد. دلیل این مشکل این است که حالت زنجیره می بایست با خطای قابل قبولی به یک توزیع ثابت همگرا گردد. زنجیره مناسب زنجیره ای می باشد که در آن با شروع از یک موقعیت دلخواه، بتوانیم سریعا به توزیع ثابت دست یابیم.
استفاده از زنجیره مارکف مونت کارلو (MCMC) به منظور نمونه برداری، توزیع مورد نظر ما را تنها تخمین می زند که دلیل آن نیز تحت تاثیر قرار گرفتن نقطه شروع، برای این توزیع می باشد. اما الگوریتم های پیچیده ای نیز هستند که اساس کار آنها، زنجیره های مارکف مونت کارلو بوده و با انجام دادن محاسبات اضافی، تاثیر نقطه شروع را از بین می برد و توزیع مورد نظر ما را به صورت دقیق تعیین می کنند.
کاربرد اصلی این الگوریتم ها در محاسبه عددی انتگرال های چندگانه (Multiple integrals) می باشد. انتگرال های چندگانه اغلب در فیزیک محاسباتی (Computational physics)، زیست شناسی محاسباتی (Computational biology) و زبان شناسی محاسباتی (Computational Linguistics) به وجود می آیند، از این رو می توان گفت که زنجیره های مارکف مونت کارلو کاربرد های بسیار زیادی در این زمینه ها دارند.
سلام وقت بخیر ممنون از سایت خوبتون ببخشید شما الگوریتم و برنامه زنجیره مارکوف جهت پیش بینی در متلب رو هم دارید؟