Полиномиальный автоэнкодер против PCA: кто кого? Спойлер: нейронки побеждают

Новый метод сжатия эмбеддингов трансформеров — полиномиальный автоэнкодер — обходит PCA по качеству, но не по скорости.
Вы когда-нибудь пытались втиснуть многомерный эмбеддинг от BERT в двумерную плоскость, чтобы нарисовать красивый график? Если да, то вы знаете, что PCA — это как швейцарский нож: работает, но не всегда идеально. И вот, исследователи придумали новый трюк — полиномиальный автоэнкодер.
Идея проста: вместо линейного преобразования (как у PCA) использовать полиномиальные слои в автоэнкодере. Это позволяет улавливать нелинейные зависимости в данных. В результате — более точное сжатие эмбеддингов трансформеров, особенно когда размерность исходного пространства велика (а она велика, ещё как).
Конечно, есть нюанс: полиномиальный автоэнкодер обучается дольше, чем PCA, который просто считает собственные вектора. Зато на тестовых задачах (например, визуализация или кластеризация) он показывает лучшие метрики. Так что если у вас есть время подождать — можно получить картинку, от которой у коллег отвиснет челюсть.
Комментарий студии METABYTE: Мы тоже любим, когда модель работает лучше, но если ваш автоэнкодер обучается дольше, чем длится спринт, возможно, стоит позвонить нам. Мы умеем ускорять нейронки без потери качества (и без полиномиальных шаманств).