В начале было исследование
На воркшопе SPIGM, проходившем в рамках конференции ICML, вы с коллегами представляли проект ReCache. Скажи пару слов о том, что это такое
Мы пытались ускорить современные генеративные модели, которые создают изображения и видео. Они работают очень качественно, но за это приходится платить временем: чтобы сгенерировать одну картинку, модель последовательно выполняет десятки вычислительно затратных шагов генерации.
Представьте художника, который постепенно дорисовывает картину. На каждом этапе он немного уточняет детали. Диффузионная генеративная модель действует похожим образом: шаг за шагом убирает шум и делает изображение всё более чётким.
А где появляется возможность ускорить процесс?
Соседние шаги очень похожи друг на друга. Если модель только что выполнила сложные вычисления, то на следующих шагах нет смысла заново пересчитывать абсолютно всё: часть результатов можно просто использовать повторно.
Такой подход называется кешированием. На что это похоже? Допустим, вы уже решили длинный пример на предыдущем этапе и теперь не начинаете вычисления с нуля, а берёте готовый промежуточный результат и продолжаете работу.
Получается, до вас этим способом никто не пользовался?
Пользовались, но обычно расписание кеширования определялось заранее: исследователи задавали, на каких шагах можно использовать сохранённые вычисления, а на каких нужно полностью пересчитывать модель. Были и адаптивные эвристики, но они тоже основывались на заранее придуманных правилах и не всегда одинаково хорошо работали в разных условиях.
Мы предложили не задавать такое расписание вручную, а обучать его на данных. Пользователь может заранее указать доступный вычислительный бюджет. Например, сказать: «Из пятидесяти шагов полностью пересчитывай модель только на семи», — и обученный алгоритм выберет, какие именно семь шагов самые важные. Причём одна и та же обученная модель может строить расписания для разных вычислительных бюджетов.
И что это дало на практике?
Оказалось, что такой обучаемый подход отлично работает: почти во всех наших экспериментах при одинаковом вычислительном бюджете модель выдаёт более высокое качество изображений и видео, чем решения, основанные на заранее придуманных правилах.






