Language of Time
130 subscribers
88 photos
1 video
34 links
Канал на стыке языковых моделей и временных рядов. Foundational time series, multimodality. Обзоры статей, приложения и мысли на тему.

Авторы:
@alexanderchemeris
<твоё имя>
Download Telegram
Я устал, я <s>ухожу</s> напишу - просмотрщик датасетов с рядами и текстом.

Разбираясь в эвал датасетах ChatTS я немного сломал глаза и мозг, просматривая их глазами в JSON и решил написать свой, с блекджеком, картинками и статистикой.

Несколько вечеров вайбкодинга и вот - прошу любить и жаловать:
https://explorer.langotime.ai

Оказалось очень удобно и я думаю теперь добавить туда больше датасетов с временными рядами для удобного просмотра.

А что кроме Jupyter используете для просмотра таких датасетов вы?
👍5
В новой статье авторы делают следующий шаг и предлагают метод кодирования чисел, который (а) основан на внутреннем представлении чисел в трансформерах и (б) занимает ровно один токен/эмбеддинг (см Figure 1)

То, что всё число занимает один токен - важный момент, потому что при тренировке классических авторегрессионных трансформеров функция потерь не считается одинаково для каждого токена, а значит ошибка в первом и последнем разряде числа будет для модели "весить" одинаково. Т.е. если нужно вывести число 3197, а модель написала 4197, то для неё это будет ошибка такого же порядка как 3198, хотя на самом деле это три десятичных порядка разницы. Для решения этой проблемы предлагались разные подходы, в том числе добавляющие специальную функцию потерь для чисел, но не трогающие токенизатор. Например, недавний (28 Feb 2025) PDCE - Position-Dependent Cross-Entropy, который я попытался запустить на наших экспериментах с рядами, но устал синхронизировать его функцию потерь с функцией потерь и забил. Использование одного токена/эмбеддинга для всего числа интуитивно выглядит более правильным подходом.

Итак, FoNE:

Позволяет кодировать/декодировать числа в десятичной системе счисления с заранее заданным количеством знаков до и после запятой в один токен/эмбеддинг. А числа произвольной длины кодируются простым объединением нескольких токенов/эмбеддингов подряд. Числа 100% точно кодируются и декодируются без потери точности.

СFoNE трансформеры "магически" научаются точно складывать и умножать вещественные числа при размере датасета 64x меньше.

Эксперименты в статье приводятся как для тренировки небольших LLM с нуля, так и для тюнинга предобученной Llama-3.2-1B. Предобученная Llama учится медленнее, но в большинстве случаев достигает такой же точности (тёмно-синяя линия "finetune" на графиках) - см Figure 2, 3.

Что НЕ сделано в статье - полноценная интеграция в LLM на стороне декодирования эмбедингов в токены, чтобы научить модель определять, где в выводе вставлять FoNE токен, а где обычный. В своих экспериментах с предобученной Llama авторы "срезали углы" и при тренировке/эвалах ожидают на выходе модели всегда только FoNE токены (на вход подают смесь текста и закодированных FoNEчисел). В переписке авторы говорят, что "наверное надо тренировать отельный слой-классификатор... мы не пробовали, но вы попробуйте!" 😄

Результаты - фантастические (см последние две картинки).
Эксперименты авторов воспроизводятся и совпадают с опубликованными данными. На практических примерах попробуем завести.

Если вы тоже будете экспериментировать и получите позитивные или негативные результаты - дайте знать, сверим показания. 🤝
FoNE: Precise Single-Token Number Embeddings via Fourier Features
paper 13 Feb 2025 | blog | source code

У LLM традиционно проблемы с операциями с числами. И если с целочисленными значениями они ещё справляются, то с вещественными числами всё становится сильно хуже, что делает работу с временными рядами при помощи LLM проблематичной. Новая статься показывает, что это не обязательно принципиальная проблема LLM, а скорее - ограничение токенизации.

В своей прошлой работе (Pre-trained Large Language Models Use Fourier Features to Compute Addition, NeurIPS 2024) авторы показывают, что трансформер, прошедший широкий претрейнинг использует "фурье-представление" чисел и сложение по модулю для выполнения сложения чисел, где MLP-слои используют низкие "частоты" (моды) для примерной оценки области, в которой должен находиться ответ, а attention-слои используют высокие "частоты" - для получения точных десятичных цифр ответа (первые две картинки, Figure 1 и 4).
This Time is Different: An Observability Perspective on Time Series Foundation Models (20 May 2025)
blog | paper | HF model | HF Dataset | GitHub

DataDog, один из крупнейших облачных obervability сервисов, выпустил open weight TSFM модель Toto и большой тренировочный observability датасет BOOM, собранный из их данных.

Модель Toto
* 151млн параметров.
* Decoder-only архитектура.
* Probabilistic output (Student-T).
* Обещают существенно лучшие характеристики в области observability (см картинки).

Датасеты:
* Observability Metrics: ~1 trillion points from Datadog internal systems (no customer data)
* Public Datasets:
- GIFT-Eval Pretrain
- Chronos datasets
* Synthetic Data: ~1/3 of training data

Подробнее не успел посмотреть, но выглядит интересно. Жаль, что датасет не размеченный кажется.
🔥1
IGC: Integrating a Gated Calculator into an LLM to Solve Arithmetic Tasks Reliably and Efficiently
paper 1 Jan 2025

Ещё одна (после FoNE) необычная работа по повышению точности математических операций в LLM. В этот раз заходят не со стороны токенизации, а со стороны того, как эффективно проводить операции внутри самой LLM. Точнее - математические операции выносятся в "сопроцессор", встроенный между слоями LLM (между 1м и 2м в примере), и который выполняет операции на GPU напрямую.

Так как калькулятор не дифференцируем и прерывает поток градиентов, то для тренировки Input Mapping модуля используется специальный подход к тренировке.

Код не опубликован, а жаль. Результаты в статье выглядят неплохо, модель 8B бьёт по показателям модели на два порядка больше (585B). Но почему-то всё-равно не достигает 100%.

У FoNE результаты вроде бы не хуже. Интересно, какая архитектура окажется более широко распространённой?
Кто готов законтрибьютить данных в новый мощный датасет для time series forecasting?

Наш science advisor в партнёрстве с ещё несколькими видными научными группами собирает новый датасет для тренировки и бенчмарка time series forecasting моделей и ищет больше индустриальных партнёров, которые готовы поделиться (анонимизированными) данными. В проекте уже участвуют Amazon, Salesforce, Alibaba и Bytdance и он имеет все шансы стать новым стандартом бенчмарков для time series forecasting ресёрча. Но нужно больше ада данных из разных областей.

Чем это полезно вашей компании (питч для руководства)

Например тем, что вы будете сразу знать, какие новые модели подходят для ваших задач, а какие - нет. И в целом больше шансов, что появятся модели, которые работают на ваших данных.

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

Ну и в целом, опубликоваться в такой компании - хороший пиар. 🙂

Кто готов подключиться? Напишите в личку
2😱1
Retrieval of Temporal Event Sequences from Textual Descriptions (17 Oct 2024)
paper | datasets | code

Для архива. Искал работы по использованию трансформеров/LLM для работы с event sequences, такими как логи софта, события в телеком сетях и т.п. Это второй важный тип временных рядов в нашей области, после регулярных (типа метрик), и важно уметь как делать для них RAG, так и рассуждать о происходящем.

В статье предлагается простой способ получения эмбеддингов для RAG для event sequences, где к каждому события прикреплена метка времени.

1. В качестве backbone берут стандартную LLM (TinyLlama-1.1B-Intermediate-Step-1431k-3T и TinyLlama-1.1B-Chat-v1.0) в 4-битовой квантизации.
2. На LLM добавляют LoRA адаптер (rank of 16).
3. Последовательности описывают как обычные эмбеддинги описания + Temporal Embeddings для привязки ко времени.
4. Тренируют при помощи contrastive loss.

иии..... получают SOTA по целому набору стандартных датасетов.

Минусы

Модель большая, так как это полноценная LLM (см таблицу со сравнением размеров). Тренируемых параметров почти ничего, но инференс скорее всего будет сильно медленнее более мелких моделей. Жаль, что измерений скорости инференса в статье не привели.

Насколько я понимаю, основная мысль в том, что таким нехитрым способом можно получить универсальную модель, которая достаточно хорошо (пусть и медленно) работает на самых разнообразных датасетах и не требует каждый раз обучения с нуля.

PS Работа основана на более ранней работе тех же авторов TPP-LLM (paper, 2 Oct 2024), где они использую ровно такую же архитектуру + текстовый промпт, чтобы предсказывать вероятности событий в тех же самых event streams (Temporal Point Processes по-научному).
👍1