Оптимізація стохастичних комп'ютерних моделей


11

Це дуже важка для себе тема Google, оскільки використання слів оптимізації та стохастичності в пошуку майже автоматично встановлюється за замовчуванням для пошуку стохастичної оптимізації. Але що я дійсно хочу знати, які методи існують для оптимізації комп'ютерних моделей, коли вихід комп'ютерної моделі є стохастичним, тобто не детермінованим?

Наприклад, якщо розглядати комп'ютерну модель, де є якась невідома функція яка представляє вихід комп'ютерної моделі, то існує багато статистичних методів для вирішення таких задач, якf(x)

minf(x)xX

коли f(x) детермінований. Але що відбувається, коли f(x) стохастичний? Чи є рішення проблеми, або в кращому випадку ми можемо лише вирішити

minE[f(x)]xX

де E() - звичайний оператор очікування.


1
Це дуже цікаве питання. Оптимізація - це єдине, що реально можливо. Статистичним додатком, пов’язаним із цим питанням, є алгоритм MCEM, де функція повної ймовірності можна спостерігати лише з помилкою MCMC. Аналогічно, алгоритми фільтрування частинок MCMC мають ту саму проблему. Я не прочитав достатньо жодної літератури, щоб знати, які існують сучасні методи відповіді на це. E[f(x)]
Кліф АВ

2
Це залежить від вашої мети. - лише один із багатьох можливих варіантів. У деяких додатках ви можете мати «надійне» рішення, а не лише те, яке «добре в середньому». У цьому випадку ви б оптимізували wrt до деякого квантилу розподілу . Байєсова оптимізація стосується дорогих (а іноді і галасливих) оцінок функцій. Перевірте, наприклад, це питання . f ( x )E[f(x)]f(x)
lacerbi

1
@lacerbi хтось із цих прикладів шумно? Я думаю, що вони лише детерміновані.
RustyStatistician

@RustyStatistician: Ви праві, більшість прикладів детерміновані або говорять про байєсівську оптимізацію взагалі. Дивіться нижче посилання, більш присвячені "галасливій" частині.
lacerbi

Чи маєте ви доступ до комп'ютерної програми, щоб ви могли запустити її самостійно для обраних входів ? Тоді методи проектування експериментів стають доступними для використання! Шукайте на цьому сайті. x
kjetil b halvorsen

Відповіді:


10

( Розширюючи мій коментар до належної відповіді. )

Як я вже згадував, це залежить від вашої мети.

Очікуване значення - лише один із багатьох можливих варіантів вибору цілі оптимізації. Наприклад, припускаючи, що нормально розподілений, ви можете зробити:f ( x )E[f(x)]f(x)

κRκ>0κκ

xopt=argminx{E[f(x)]+κVar[f(x)]}
для деякі що маніпулює чутливістю до ризику. Якщо ви шукаєте надійне рішення, яке, ймовірно, буде найкращим і відлякує великі позитивні коливання. І навпаки, негативна сприяла б "оптимістичній" оптимізації, яка шукає великі негативні коливання (мінус - це добре, оскільки ми мінімізуємо). Ви можете вибрати на основі квантових норм нормального розподілу (див. Посилання 2 нижче).κRκ>0κκ

Взагалі, байєсівська оптимізація (БО, яка пов'язана з гауссовими процесами та кригінгами ) має справу з дорогими, а іноді галасливими оцінками функцій; хоча більша частина уваги літератури була приділена колишній частині. Ви можете знайти відгуки про оптимізацію Bayesian у цьому питанні .

Кілька людей застосували БО до галасливих функцій. Як вступ до теми, Девід Гінзбургер виголосив приємну розмову під назвою "Варіації очікуваного вдосконалення" на семінарі "Гауссові процеси глобальної оптимізації" (Шеффілд, 17 вересня 2015 р.). Ви можете знайти його розмови тут , а всі розмови доступні на цій сторінці (я також рекомендую всі інші переговори як відмінний загальний вступ до БО.)

В якості довідки я б розпочав роботу, яку виконали Ginsbourger та його колеги, Gramacy та його колеги:

  1. Picheny, V. and Ginsbourger, D., 2014. "Шумні методи крігінгу на основі оптимізації: уніфікована реалізація в рамках пакета DiceOptim". Обчислювальна статистика та аналіз даних , 71, стор.1035-1053. ( посилання )

  2. Picheny, V., Ginsbourger, D., Richet, Y. and Caplin, G., 2013. "Оптимізація на основі квантиліту галасливих комп'ютерних експериментів з регульованою точністю". Технометрія , 55 (1), стор.2-13. ( посилання )

  3. Gramacy, RB and Lee, HK, 2012. "Байєсівські моделі, що обробляють гауссові процеси, із застосуванням до комп'ютерного моделювання". Журнал Американської статистичної асоціації . ( посилання )

  4. Gramacy, RB and Apley, DW, 2015. "Місцеве наближення Гауссового процесу для великих комп'ютерних експериментів". Журнал обчислювальної та графічної статистики , 24 (2), с.561-578. ( посилання )

І Ginsburger, і Gramacy мають R-пакети, які реалізують свої методи BO, відповідно DiceOptim та tgp .


1
Де у вашій відповіді, або ви маєте на увазі ? κkκ
RustyStatistician

1
Ще один алгоритм, який я не використовував *, але перемагає у кумедному відділі імен, - SNOBFIT . (* Автор є помітним в оптимізації співтоваристві , однак, і програмне забезпечення було КІ на детермінований тесті , тому дана рекомендація не тільки на основі імені прохолодного!)
GeoMatt22

4

Поточні відповіді зосереджуються на правильному (математичному) визначенні цілей стохастичної оптимізації - я хочу надати дещо більш застосовану перспективу.

Ця проблема часто виникає при встановленні стохастичних моделей, наприклад, при використанні неофіційних або синтетичних вірогідностей. Довідка (1) надає список варіантів, які можна використовувати для визначення відстані між стохастичною моделлю та даними.

Визначивши таким чином свою ціль, проблемою, яка залишається, є пошук оптимального середнього рівня гучної цілі. Є два маршрути: a) оптимізація та b) вибірка MCMC. Ви запитували конкретно про оптимізацію, але я хочу залучити MCMC, оскільки вони часто краще поводяться для цього завдання.

а) Якщо ви залишаєтесь оптимізацією, вам потрібно переконатися, що ви не зациклюєтесь і що оптимізатор може боротися зі стохастичною ціллю. У розділі 4 кандидатської дисертації Маттео Фасіоло даються деякі підказки, див. (2).

б) Як ми зазначаємо в (1), MCMC, як правило, більш стійкі проти стохастичної цілі - при помірних умовах щодо розподілу шуму MCMC буде оцінювати рівень шуму, а вибіркова ціль не відрізнятиметься від галасливого. ціль із середнім рівнем гучної цілі. Однак MCMC теж може застрягнути при зустрічі з оцінкою, яка є особливо хорошою. Тепер ви НЕ МОЖЕТЕ ЗРОБИТИ наступну "очевидну" ідею: просто обчисліть як поточне, так і запропоноване значення в кожній ітерації MCMC. Ключове слово, яке слід шукати тут, - "псевдо-маргінальний", дивіться також тут і тут .

1) Hartig, F .; Калабрезе, Дж. М.; Переосмислення, В .; Wiegand, T. & Huth, A. (2011) Статистичні умовиводи для моделей стохастичного моделювання - теорія та застосування . Екол. Лет., 14, 816-827.

2) Фасіоло, М. (2016) Статистичні методи комплексної динаміки населення . Університет Бат


4

Скажімо, ми знаходимося в дискретному просторі ймовірностей, щоб . Інтуїтивно вам потрібна деяка функція щоб ви могли оптимізувати . Ви можете оптимізувати лише одну ціль! U : R nR U ( f ( x ) )f(x)RnU:RnRU(f(x))

Оптимізація однієї цільової функції може здатися досить стриманою, але це не так ! Скоріше одна мета може представляти неймовірно різноманітні переваги, які ви можете мати над тим, що є кращим чи гіршим рішенням.

Пропускаючи вперед, простим місцем для початку може бути вибір випадкової змінної а потім вирішення:λ

minimize (over x)E[λf(x)]subject toxX
Це просте лінійне повторне зважування . У будь-якому випадку, ось аргумент, чому згортання декількох цілей на одну ціль, як правило, нормально.E[f(x)]

Основна настройка:

  • У вас є вибір змінної і допустиме безліч .xX
  • Ваш вибір призводить до випадкового результатуxy~=f(x)
  • Ви маєте раціональні уподобання щодо випадкового результату. (В основному, ви можете сказати, чи віддаєте перевагу одному випадковому результату іншому.)y~

Ваша проблема полягає в тому, щоб вибрати таким чином:xX

xXf(x)f(x)
Англійською мовою ви хочете вибрати щоб жоден здійсненний вибір призводив до результату, відданого перевагу .xxf(x)

Еквівалентність максимальній корисності (за певних технічних умов)

Для технічної простоти я скажу, що ми знаходимося в дискретному просторі ймовірностей з результатами, тому я можу представляти випадковий результат з вектором .ny~yRn

За певних технічних умов (які в практичному розумінні не обмежують) вищевказана проблема еквівалентна максимізації функції утиліти . (Функція корисності призначає більш бажані результати більшу кількість.)U(y)

Ця логіка застосовується до будь-якої проблеми, коли ваш вибір призводить до декількох змінних результатів.

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

Надання більшої структури функції утиліти : Гіпотеза очікуваної корисності :U

Якщо ми перебуваємо у вірогідній обстановці і приймаємо аксіоми Неймана-Моргернстерна , загальна корисна функція повинна приймати особливу форму:U

U(y)=E[u(yi)]=ipiu(yi)
Де - ймовірність стану а - увігнута корисна функція. Кривизна вимірює відхилення від ризику. Просто замінивши цю спеціалізовану форму ви отримаєте:piiuuU

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

Зауважте, що простий випадок - це максимізація очікуваного значення (тобто відсутність відхилення від ризику).u(yi)=yi

Інший підхід: вагиλ

Ще одне, що потрібно зробити:

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

Інтуїтивно ви можете вибрати ваги які є більшими або меншими, ніж ймовірність стану, що виникає, і це фіксує важливість стану.p iλipi

Більш глибоке обґрунтування цього підходу полягає в тому, що за певних технічних умов існує лямбда-ваги такі, що вищезазначена проблема та більш ранні проблеми (наприклад, максимізація ) мають однакове рішення.U ( f ( x ) )λU(f(x))


Але в цій установці не всі функції утиліти призводять до тієї ж відповіді правильної?
RustyStatistician

А чи є типові варіанти функцій корисності? Моя проблема - стохастичний комп’ютерний симулятор, який насправді є симулятором blackbox, тому я не знаю жодної інформації про базову механіку, щоб я міг навіть призначити їй функцію корисності?
RustyStatistician

Вам потрібно продумати логіку вашої проблеми, що є хорошим результатом, а потім знайти якусь об'єктивну функцію, яка призначає кращі результати більшого числа. (Або рівнозначно, ви можете встановити це як проблему мінімізації та присвоїти гірші результати більшою кількістю. Наприклад, мінімізувати поняття про квадратичну помилку тощо.)
Меттью Ганн
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.