Диаграммы влияния / Модели принятия решений в Stan и PyMC3

Можно ли писать модели принятия решений в Stan или PyMC3? Под этим я подразумеваю: мы определяем не только распределение случайных величин, но также определение переменных решения и полезности и определяем решения, максимизирующие ожидаемую полезность.

Насколько я понимаю, Stan - это скорее общий оптимизатор, чем PyMC3, поэтому можно предположить, что модели принятия решений будут более непосредственно реализованы в нем, но я хотел бы услышать, что люди скажут.

Изменить: Хотя можно перечислить все решения и вычислить их соответствующую ожидаемую полезность, я задаюсь вопросом о более эффективных методах, так как число решений может быть слишком много (например, сколько предметов можно купить из списка с тысячами товаров)). Алгоритмы диаграмм влияния используют факторизации в модели для определения независимости, которая позволяет вычислять решения только по меньшему набору соответствующих случайных величин. Интересно, могут ли Стэн или PyMC3 делать такие вещи?

1 ответ

Основные этапы байесовской теории принятия решений:

  1. Перечислите конечный набор решений, которые могут быть приняты
  2. Укажите функцию полезности решения и, возможно, другие вещи
  3. Нарисуйте из апостериорного распределения всех неизвестных с учетом известных данных
  4. Оцените функцию полезности для каждого возможного решения и каждого последующего розыгрыша
  5. Примите решение с наибольшей ожидаемой полезностью, усредняя по задним тиражам.

Вы можете выполнить эти пять шагов с любым программным обеспечением - включая Stan и PyMC3 - которое производит (действительные) отрисовки из апостериорного распределения. В Stan функция полезности должна оцениваться в generated quantities блок.

Другие вопросы по тегам