Формулировка проблемы: двухфазная настройка

Формулировка проблемы: двухфазная настройка

3 апреля 2024 г.

:::информация Этот документ доступен на arxiv под лицензией CC BY-NC-ND 4.0 DEED.

Авторы:

(1) Минхао Ян, Университет Висконсин-Мэдисон;

(2) Хонги Ван, Университет Карнеги-Меллон;

(3) Шиварам Венкатараман, myan@cs.wisc.edu.

:::

Таблица ссылок

5 ПОСТАНОВКА ЗАДАЧИ: ДВУХФАЗНАЯ НАСТРОЙКА

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

1. Пространство поиска велико, и выполнение поиска по сетке может занять несколько часов в зависимости от размера модели. На TX2 и Orin в сетке будет 5005 и 1820 точек, если мы разрешим 5 разных размеров пакетов. Полный поиск займет 14 и 5 часов соответственно.

2. Чтобы удовлетворить ограничения на задержку, трудно отделить каждое измерение и оптимизировать их по отдельности, поскольку они совместно влияют на задержку вывода нетривиальным образом.

3. Условия оптимизации могут различаться в зависимости от модели и устройства.

Мы видим, что частота ЦП может быть отделена от частоты графического процессора, частоты памяти и размера пакета, поскольку она в основном влияет на задержку предварительной обработки и энергопотребление. Мы конвейеризируем запросы, чтобы разные запросы могли одновременно использовать ресурсы ЦП и графического процессора для увеличения пропускной способности вывода.

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

5.1 Байесовская оптимизация с ограничениями

Байесовская оптимизация — распространенный метод настройки гиперпараметров (Кандасами и др., 2020; Кляйн и др., 2015), поскольку она позволяет оптимизировать различные функции черного ящика. Этот метод особенно выгоден, когда оценка целевой функции является дорогостоящей и требует значительного количества времени и ресурсов.

Однако некоторые приложения могут включать ограничения, которые должны быть удовлетворены в дополнение к оптимизации целевой функции. Байесовская оптимизация с ограничениями (CBO) (Gardner et al., 2014) — это расширение байесовской оптимизации, которое решает эту проблему путем включения ограничений в процесс оптимизации.

В CBO целевая функция и ограничения рассматриваются как отдельные функции. Алгоритм оптимизации стремится определить набор входных параметров, которые максимизируют целевую функцию при соблюдении ограничений. Эти ограничения обычно выражаются в виде ограничений-неравенств, которые должны соблюдаться в процессе оптимизации. Функция получения ожидаемого ограниченного улучшения в CBO определяется следующим образом: EIC (ˆx) = P F(ˆx) × EI(ˆx).

Здесь EI(ˆx) представляет собой ожидаемое улучшение (EI) (Brochu et al., 2010) в рамках сценария неограниченной байесовской оптимизации, тогда как PF(ˆx) представляет собой одномерную кумулятивную функцию распределения Гаусса, описывающую ожидаемую вероятность того, сможет ли xˆ соответствовать ограничения. Интуитивно EI выбирает следующую конфигурацию, оптимизируя ожидаемое улучшение относительно лучшей недавно исследованной конфигурации. В PolyThrottle мы выбираем EI, поскольку наши эмпирические результаты и подтверждения дополнительных исследований (Alipourfard et al., 2017) показывают, что EI работает лучше, чем

другие широко используемые функции сбора данных (Snoek et al., 2012).

CBO (Gardner et al., 2014) также использует совместное априорное распределение по целевым функциям и функциям ограничений, которое фиксирует их корреляционную структуру. Этот совместный априор строится на основе предположения, что целевые функции и функции ограничений взяты из многомерного гауссова распределения с параметризованным вектором среднего и ковариационной матрицей. Эти гиперпараметры извлекаются из данных с использованием оценки максимального правдоподобия.

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


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE