Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: Научного журнала «Студенческий» № 21(317)

Рубрика журнала: Информационные технологии

Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3, скачать журнал часть 4, скачать журнал часть 5, скачать журнал часть 6, скачать журнал часть 7, скачать журнал часть 8, скачать журнал часть 9

Библиографическое описание:
Клейнер С.Г. ОПТИМИЗАЦИЯ ГИПЕРПАРАМЕТРОВ КАК ЗАДАЧА НЕЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ // Студенческий: электрон. научн. журн. 2025. № 21(317). URL: https://sibac.info/journal/student/317/379052 (дата обращения: 03.07.2025).

ОПТИМИЗАЦИЯ ГИПЕРПАРАМЕТРОВ КАК ЗАДАЧА НЕЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ

Клейнер София Георгиевна

студент, Севастопольский государственный университет,

РФ, г. Севастополь

Гиперпараметры – это параметры настройки, определяемые до обучения модели, которые влияют на поведение алгоритма машинного обучения. В отличие от весов нейросети (параметры модели, которые обучаются автоматически), гиперпараметры задаются разработчиком и не обновляются в процессе обучения. [1] Примеры гиперпараметров нейросети включают коэффициент обучения, коэффициенты регуляризации, количество слоев и нейронов, параметры оптимизатора и функции активации. Правильный выбор этих параметров напрямую влияет на качество модели. На практике подбор гиперпараметров вручную часто неэффективен и затруднителен, особенно при большом количестве. [2] В современных нейросетях с их множеством настроек оптимизации гиперпараметров стала неотъемлемой частью процесса разработки, влияя на достижения передовых результатов в задачах компьютерного зрения, обработки языка и другие.

Таким образом, оптимизация гиперпараметров нейросети представляют собой поиск такого набора параметров, который обеспечивает наилучшую производительность модели. Этот поиск является нетривиальной задачей из-за высокой размерности пространства гиперпараметров, возможной дискретности некоторых из них и отсутствия прямой формулы, связывающей гиперпараметры с метрикой качества

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

где  – вектор гиперпараметров (скорость обучения, коэффициент регуляризации, глубина и ширина нейронной сети, размер батча и другие),  – целевая функция, например функция потерь нейронной сети на валидационном наборе данных (в общем случае задается неявно, так как её значение получается в результате обучения нейросети на тренировочных данных), а  – пространство допустимых значений гиперпараметров (ограничения). В таком случае цель – минимизировать валидационную ошибку. Альтернативно, можно рассматривать функцию качества и максимизировать её. Обе формулировки являются эквивалентными.

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

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

где  – валидационный набор данных, состоящий из пар вида , которые используются для оценки качества модели,  – входной пример,  – истинная метка или значение для ,  – предсказание нейросети, а  – функция потерь, представляющая собой, например, кросс-энтропию или среднеквадратичную ошибку.

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

Задача оптимизации гиперпараметров нейросети чрезвычайно вычислительно затратна, поскольку каждая оценка функции  требует полного обучения модели (занимающего часы или дни для современных сетей). Кроме того, пространство поиска может быть нерегулярным и содержать как непрерывные, так и дискретные измерения, что затрудняет применение стандартных градиентных методов нелинейного программирования. Фактически, отсутствие аналитических градиентов и присутствие категориальных параметров превращают оптимизацию гиперпараметров в задачу безградиентной оптимизации «черного ящика». [3]

Несмотря на эти трудности, эффективное решение данной задачи критически важно. Автоматическая настройка гиперпараметров позволяет значительно повысить качество моделей по сравнению с наивной или ручной настройкой.

Для оптимизации гиперпараметров на практике в основном применяются такие подходы, как поиск по сетке, случайный поиск, байесовская оптимизация, эволюционные и генетические алгоритмы, методы градиентной оптимизации.

В последние годы становится все более очевидным то, что классические численные и эвристические методы решения задач нелинейного программирования часто оказываются неэффективными при наличии высокоразмерных функций, которые не имеют явного аналитического вида и могут требовать дорогостоящих вычислений так называемого «черного ящика». [4] В связи с этим в мире быстроразвивающихся и широко популярных нейронных сетей сформировалось новое направление – нейросетевой подход решения задач нелинейного программирования, в частности, суррогатные модели, способные аппроксимировать зависимость значения целевой функции от вектора переменных. Такой подход значительно сокращает количество дорогостоящих обращений к исходной целевой функции и заменяет их быстрым обращением к нейронной сети. На практике это даёт экономию ресурсов в десятки раз при сопоставимом качестве найденных решений и открывает путь к решению сложнейших задач, где традиционные методы либо застревают в локальных экстремумах, либо требуют неприемлемо больших затрат времени.

 

Список литературы:

  1. Evolutionary algorithms for hyperparameter optimization in machine learning for application in high energy physics [Электронный ресурс] // Springer Nature Link. URL: https://link.springer.com/article/10.1140/epjc/s10052-021-08950-y (дата обращения: 03.06.2025).
  2. Hyperparameter Optimization in Machine Learning [Электронный ресурс] // Arxiv. URL: https://arxiv.org/html/2410.22854v1 (дата обращения: 03.06.2025).
  3. Snoek J., Larochelle H., Adams R. Practical Bayesian Optimization of Machine Learning Algorithms // Advances in Neural Information Processing Systems 25. 2012.  c. 2951–2959.
  4. Hyperparameter Tuning [Electronic resource] // Wikiconsp. URL: http://neerc.ifmo.ru/wiki/index.php?title=Настройка_гиперпараметров (дата обращения: 03.06.2025).

Оставить комментарий