Оптимизация с ограничениями и проекции

Как модели на самом деле обучаются — от обычного градиентного спуска до Adam

Иногда параметрам не разрешено двигаться куда угодно. Они должны удовлетворять ограничениям: неотрицательные веса, ограниченные нормы, вероятности, которые должны оставаться неотрицательными и в сумме давать 1 (такое множество называют вероятностным симплексом), пределы справедливости, пределы безопасности или физическая осуществимость.

Оптимизация с ограничениями означает минимизацию потери, оставаясь внутри допустимого множества. Один из практических методов — проекционный градиентный спуск: сделать обычный шаг, а затем спроецировать результат обратно на допустимое множество.

Робот-пылесос с ограничительными полосами может попытаться проехать сквозь стену, но граница возвращает его обратно в разрешённую комнату. Проекционная оптимизация работает так же. Шаг градиента может указывать наружу, а проекция затем «отсекает» результат обратно в допустимую область. Фигура ниже показывает геометрическое сердце этой операции: перетаскивание точки к её ближайшему представителю на допустимом множестве (здесь — на прямой). Проекция на прямоугольник или на вероятностный симплекс использует тот же принцип ближайшей точки, только с другим допустимым множеством.

Где это встречается в MLВ ML ограничения проявляются как пределы норм, вероятностные ограничения, требования монотонности, пределы безопасных действий и ограничения выравнивания (alignment) после обучения. Проекция — самый простой способ удержать обучение внутри допустимой области.
▶ Оптимизация с ограничениями и проекции
← Выпуклость на практикеРегуляризация как геометрия →