NVIDIA · Hugging Face · Искусственный интеллект · Табличные данные · Машинное обучение · Фундаментальные модели29 сентября в 19:03 · 5 мин

NVIDIA представила Kumo Tabular: новый стандарт точности и эффективности для прогнозирования таблиц

Компания NVIDIA открыла на платформе Hugging Face новую фундаментальную модель Kumo Tabular, предназначенную для задач классификации и регрессии на табличных данных. Модель, не требующая обучения на конкретных датасетах, демонстрирует лучшие показатели точности и скорости работы по сравнению с традиционными градиентно-бустинговыми деревьями и конкурентами в индустрии.

# NVIDIA Kumo Tabular: Фундаментальная модель для табличных данных нового поколения

Корпорация NVIDIA объявила о выпуске открытой фундаментальной модели Kumo Tabular, которая обещает изменить подход к машинному обучению на структурированных данных. Модель доступна на платформе Hugging Face и предназначена для решения задач прогнозирования в предобученном режиме, без необходимости тонкой настройки гиперпараметров или инженерии признаков.

Переход к фундаментальным моделям для таблиц

Табличные данные остаются основой предиктивной аналитики в корпоративном секторе. От записей о клиентах и транзакциях до логов сенсоров и страховых случаев — именно из таблиц компании извлекают прогнозы оттока, вероятности дефолта или спроса на продукцию. Две десятилетия этой работой доминировали градиентно-бустинговые деревья (Gradient Boosted Trees), которые демонстрировали хорошие результаты. Однако жизненный цикл таких моделей оставался неизменным: для каждой новой задачи требовалось собирать данные, создавать признаки, искать оптимальные параметры и обучать модель, которая не обладала бы общими знаниями о табличных структурах.

Метод работы изменился благодаря большим языковым моделям (LLM). Эти модели показали способность решать новые задачи в контекстном обучении (in-context learning): при наличии нескольких примеров в запросе они находят решение, не обновляя ни одного веса сети. Принцип применим и к таблицам. NVIDIA Kumo Tabular, как фундаментальная модель, предобучена на миллионах таблиц и способна прочитать таблицу с метками как контекст и напрямую предсказать метки для новых строк за один проход (forward pass).

Как устроена архитектура Kumo Tabular

В основе модели лежит Transformer-архитектура, адаптированная под структуру таблицы. Она использует механизмы внимания между колонками, строками и данными в контексте. Чтобы сделать прогноз, модель выполняет три ключевые задачи: понимает значение каждого значения в рамках своей колонки, анализирует взаимодействие признаков внутри строки и связывает строки с известными метками (контекст) со строками с неизвестными метками (запрос).

Технически процесс трансформации данных происходит следующим образом:

* Встраивание ячеек (Cell Embedding): Группа ячеек преобразуется в токен. Числовые и категориальные значения проходят через функции Фурье (синусы и косинусы с обучаемыми частотами). Отсутствующие значения не требуют импутации и обрабатываются специально. Каждому токенту контекста присваивается метка. * Встраивание строк (Row Embedding): Каждая строка превращается в вектор представления через чередование двух типов внимания. Внимание по колонкам анализирует значения в пределах одной колонки, определяя, является ли значение типичным или экстремальным (стоимость растет линейно от числа строк). Внимание по строкам анализирует взаимодействие признаков (стоимость не зависит от числа колонок). В конце добавляются специальные токены [CLS], которые выступают как итоговое чтение информации о строке. * Контекстное обучение: Финальный Transformer работает со строковыми встраиваниями. Строки контекста взаимодействуют друг с другом, а строки запроса обращаются только к контексту. Поскольку контекст не смотрит на запросы, его ключи и значения вычисляются один раз и могут повторяться для последующих прогнозов, что повышает эффективность.

Модель также использует температурное внимание, зависящее от длины, чтобы сохранять остроту внимания при работе с очень большими таблицами, где количество строк превышает тренировочные нормы.

Процесс обучения на синтетических данных

Одной из ключевых особенностей Kumo Tabular является метод подготовки данных. Модель предобучена исключительно на искусственных таблицах. Генератор данных использует структурные причинно-следственные модели (SCM), которые создают таблицы со случайными графами связей, функциями распределения и паттернами пропусков данных.

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

Обучение проходило в трех стадиях: сначала модель изучала структуру таблиц размером до 100 колонок и 1024 строк, затем контекст расширялся до 10 240 строк, и на финальной стадии — до 60 000 строк. Итоговый набор данных включает сотни миллионов синтетических таблиц.

Результаты и ограничения

При тестировании на бенчмарках TabArena, BeyondArena, TALENT и ScoringBench модель продемонстрировала выдающиеся результаты. Kumo Tabular заняла первое место в рейтинге TabArena с показателем ELO 1950, выполняя вычисления в 17 раз быстрее, чем конкурирующая модель LimiX-2 на одном GPU NVIDIA RTX 6000 Pro.

На бенчмарке BeyondArena модель достигла ELO 1418 и показателя улучшаемости 7,78%, заняв первое место. На TALENT она также продемонстрировала топовые результаты по точности классификации, лог-потерям и среднеквадратичной ошибке регрессии.

Некоторые ограничения, которые стоит учитывать:

* Модель работает нативно с числовыми и категориальными колонками. Текстовые данные, изображения или даты требуют предварительной обработки для перевода в числовой формат. * В стандартной реализации один проход покрывает до 10 классов. Для большего числа классов библиотека NVIDIA предоставляет расширения с использованием кодов коррекции ошибок. * Точность может снижаться на данных, распределение которых сильно отличается от тренировочного набора. Поэтому перед внедрением в промышленность всегда рекомендуется валидировать модель на удерживаемых данных.

Пример использования

Интеграция модели осуществляется через открытую библиотеку structured-data-models. Процесс прогнозирования сводится к загрузке данных из Pandas, тензоризации и выполнению одного вызова модели. Ниже представлен упрощенный пример кода:

```python import sdm # библиотека structured-data-models import pandas as pd

# Тензоризация табличных данных table = sdm.TableTensor.from_pandas(pd.load_csv(...), device="cuda")

# Определение масок для контекста и запросов na_mask = table["target"].isnan()

# Создание модели model = sdm.models.KumoTabular(device="cuda")

# Прогноз pred = model( # Примеры контекста (признаки/цели) x_context=table[~na_mask].drop_columns("target"), y_context=table[~na_mask, "target"], # Строки для прогнозирования (признаки) x_query=table[na_mask].drop_column("target") ) ```

Kumo Tabular выпущена под лицензией OpenMDW 1.1, что позволяет использовать её в коммерческих проектах. Разработчикам рекомендуется соблюдать этические принципы и проверять модель перед использованием в критических отраслевых приложениях.

Первоисточники

Hugging Face Blog ↗
← Вернуться в эфир