Sequencer — это алгоритм, который автоматически извлекает основные закономерности в данных. Для этого Sequencer переупорядочивает набор объектов, чтобы получить наиболее длинное многообразие, описывающее сходства объектов. Алгоритм использует четыре разные метрики. Метрики включают в себя евклидово расстояние, KL-дивергенцию, метрику Васерштейна и энергетическое расстояние. Sequencer масштабируется на любой датасет.
Алгоритм принимает во внимание разные уровни в данных. Каждый объект во входном датасете делится на отдельные части (чанки). Между чанки измеряется схожесть. Затем информация о каждом чанке агрегируется отдельно для каждой метрики и уровня.
Sequencer использует размерность графов, описывающих многоуровневые близости. В частности алгоритм использует тот факт, что непрерывные тренды (последовательности) в датасете ведут к более длинным графам.
Изначально Sequencer — это метод снижения размерности данных, который обучается без учителя. Однако алгоритм от других методов понижения размерности, как tSNE и UMAP, отличают следующие аспекты:
- Sequencer может кодировать входной датасет в одномерном пространстве, когда tSNE и UMAP способны переводить данные в большемерные пространства: 2D или 3D;
- tSNE и UMAP зависят от предопределенного набора гиперпараметров, которые часто задаются вручную, и напрямую не могут оптимизироваться, что отличает их от Sequencer;
- Sequencer обходит tSNE и UMAP на части задач в поиске одномерных трендов в данных