Гамільтоніант Монте-Карло добре справляється з безперервним розподілом цілей з "дивними" формами. Він вимагає, щоб цільовий розподіл був диференційованим, оскільки він в основному використовує нахил цільового розподілу, щоб знати, куди йти. Ідеальний приклад - функція у формі банана.
Ось стандартний Метрополіс Гастінгс у функції банана: коефіцієнт прийняття 66% та дуже поганий покрив.
Ось з HMC: 99% прийняття з хорошим покриттям.
SMC (метод, що стоїть за фільтруванням частинок) майже неперевершений, коли розподіл цілі є багатомодальним, особливо якщо є кілька окремих ділянок з масою. Замість того, щоб один ланцюг Маркова потрапив у режим, ви маєте кілька ланцюгів Маркова, які працюють паралельно. Зауважте, що ви використовуєте його для оцінки послідовності розподілів, як правило, різкої різкості. Ви можете створити зростаючу різкість, використовуючи щось на зразок симульованого відпалу (покладіть на мішень прогресивно зростаючий показник). Або, як правило, в баєсівському контексті послідовність розподілів - це послідовність плакатів:
П( θ | у1),П( θ | у1, у2),. . .,П( θ | у1, у2, . . . , уN)
Наприклад, ця послідовність є відмінною ціллю для SMC:
Паралельний характер SMC робить його особливо придатним для розподілених / паралельних обчислень.
Підсумок:
- HMC: добре для витягнутої дивної цілі. Не працює з неперервною функцією.
- SMC: добре для мультимодальних та неперервних випадків. Можливо, повільніше зближуються або використовують більше обчислювальної потужності для дивних фігур високих розмірів.
Джерело: Більшість зображень надходять із статті, яку я написав, поєднуючи 2 методи (Гамільтонівський послідовний Монте-Карло). Це поєднання може симулювати будь-яку дистрибуцію, яку ми можемо кинути на неї, навіть у дуже великих розмірах.