Обсуждение статьи "Эволюционная стратегия адаптации ковариационной матрицы — Covariance Matrix Adaptation Evolution Strategy (CMA-ES)"

 

Опубликована статья Эволюционная стратегия адаптации ковариационной матрицы — Covariance Matrix Adaptation Evolution Strategy (CMA-ES):

Исследуем один из самых интересных алгоритмов без градиентной оптимизации, который учится понимать геометрию целевой функции. Рассмотрим классическую реализацию CMA-ES с небольшой модификацией — заменой нормального распределения на степенное. Детальный разбор математики алгоритма, практическая реализация и честный анализ: где CMA-ES непобедим, а где его лучше не применять.

В основе CMA-ES лежит обманчиво простое уравнение: x_k ~ N(m, σ²C). Но за этой простотой скрывается глубокая математическая структура. Каждый символ здесь несет важную информацию о состоянии поиска: m — это текущая лучшая догадка о местоположении оптимума, σ — мера того, насколько далеко мы готовы рискнуть отойти от известного, а C — ковариационная матрица, которая кодирует наше понимание геометрии функции. Единственное изменение, которое оправданно внесем, заменим нормальное распределение на степенное, это означает, что реализация будет следовать модифицированной формуле: x_k ~ PowerDist(m, σ²C). Эта модификация меняет характер исследования пространства (более широкие "прыжки"), но сохраняет фундаментальную адаптивную природу алгоритма.

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

Автор: Andrey Dik