ИГОРЬ КУРАЛЁНОК К.Ф.-М.Н., ЯНДЕКС/СПБГУ Машинное обучение: целевые функции
План Целевые функции Экстремумы средних значений Lq Вероятности Байесовы методы Максимизация апостериори (MAP) Метод максимального правдоподобия (MLE) EM-оптимизация Принцип максимальной энтропии (PME) Минимальная длина описания (MDL) Что делать, когда целевая функция «плохая» Разбор д/з
Целевые функции Целевая функция – это то, что стоит под argmax. С точки зрения оптимизации функции, имеющие одинаковые оптимальные значения, эквивалентны. Преобразования оставляющие экстремумы: монотонные преобразования; шансы (odds); сглаживания; etc. Можно оставлять экстремум «примерно» :). Не всегда совпадает с KPI
Средние значения Естественно делать по точкам Важна независимость Xi (!) За все «хорошее» или против всего «плохого»
Нет других средних Часто необходимо подобрать пространство в котором делать усреднение Например можно играться со степенями
Lq для задач с мучителем Перейдем в пространство где n – количество точек в X,
Свойства Lq
L0 Понятный физический смысл (сколько неточных ответов) Кусочно-постоянна Разрешается только перебором Чем ближе q к 0, тем более похоже на L0 Часто вместо L0 используют L1
Примеры Чем больше риск, тем больше q (пациенты) Чем ценнее точное предсказание тем меньше q (подсказки)
Вероятностные/стохастические модели Вероятности естественны для ML Интересно найти параметры, которые наиболее вероятны при наблюдаемых данных Обычно непонятно как это распределение построить напрямую
Байесовские методы Да, внизу интеграл, мы надеемся, что его можно взять и он не 0 Решающая функция не f
Байесовские методы Задаем априорное распределение параметров (например N(0,1)) Вычисляем вероятность X, считая что точки независимы и одинаково распределены Получаем распределение из которого можно посамплить Усредняем посампленное
Байесовские методы Pros: Все честно с точностью до входных данных Можно использовать информацию о предыдущем обучении (задавая prior) Можно понять погрешность предсказания (даже если она не выводится аналитически) Cons: Все сильно зависит от выбора prior Сложная решающая функция Необходимо эффективное сэмплирование пространства решений
Максимум апостериори (Байес по-простому) Хочется попроще Для оценки ошибок есть бутстраппинг Ансамбли можно сделать другими способами и включить в решающую функцию
Метод максимального правдоподобия (Байес совсем по-простому) Лень придумывать prior Нет информации о предыдущих экспериментах Быстро меняющиеся условия
ММП: не все точки одинаково полезны Важность точек может быть разной Введем «вес» для каждой точки Будем выбирать точки случайно, с вероятностью пропорциональной весу
ММП: консистентность Идентификация (все функции разные) Множество функций компактно Функции непрерывны с вероятностью 1 Существует мажорирующая интегрируемая D при увеличении количества точек L сходится
ММП: асимптотическая нормальность Первые 2 производные L определены Матрица I не ноль, непрерывная функция лямбды Выполняется консистентность И все остальное хорошо
EM-метод Dempster, A.P.; Laird, N.M.; Rubin, D.B. (1977). "Maximum Likelihood from Incomplete Data via the EM Algorithm E(xpectation)-шаг М(aximization)-шаг
Принцип максимальной энтропии Много Больцмана, но кто придумал – не понятно (если найдете, скажу спасибо!) Кажется, что энтропия умеет сама только увеличиваться Если оставить систему в покое, то может быть она прийдет к максимуму энтропии Будем считать, что система живет уже давно Найдем такие параметры системы, которые обеспечивают максимальную энтропию, сохраняя априорно заданные параметры
Принцип максимальной энтропии Выразим априорные свойства в виде ограничений Найдем распределение обладающее максимальной энтропией (в данном случае Гиббса) Когда хочется своего p(x|I) решение будет другое
Минимальная длина описания Формализация бритвы Оккама Колмогоров/Solomonoff Введем сложность по Колмогорову Найдем оптимальное решение По хорошему вероятность = 1
Когда целевая функция «плохая» Можно попробовать провести сглаживание:
Как выбрать таргет? Чувство прекрасного Возможность применять математику: Скорость вычисления (для разных обходов) Дифференцируемость (градиентные методы) Наличие «интересных» внутренних параметров Возможность проверить осмысленность промежуточных результатов