Топологический анализ данных

Topological features

Топологические признаки

актуальноТекущий рабочий стандарт

Векторизация топологии: энтропия персистентности, суммарная длина жизни, числа Бетти, persistence images.

Ключевые тезисы

  • На выходе — обычный числовой вектор для любой ML-модели.
  • Такие признаки дополняют геометрические и статистические, а не заменяют их.
  • Библиотеки: giotto-tda, gudhi, ripser, scikit-tda.

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Векторизация топологии

Как получить обычные числовые признаки для обычной модели.

ПризнакФормула / смыслРазмерность
Числа Бетти на заданных εнесколько чисел
Суммарная персистентность1 на размерность
Персистентная энтропия, 1 на размерность
Persistence imageрастеризованная сглаженная диаграммадесятки–сотни
Ландшафтыдискретизированные десятки–сотни
from gtda.diagrams import PersistenceEntropy, NumberOfPoints, Amplitude
from sklearn.pipeline import make_union

topo = make_union(PersistenceEntropy(), NumberOfPoints(),
                  Amplitude(metric="wasserstein"))
X_topo = topo.fit_transform(diagrams)
X_full = np.hstack([X_classic, X_topo])   # топология дополняет обычные признаки
Топологические признаки почти всегда используют вместе с классическими, а не вместо них
2

Встраивание в ML-пайплайн

Как честно измерить, дало ли TDA прирост.

  1. Зафиксировать бейзлайн на классических признаках с кросс-валидацией.
  2. Добавить топологические признаки и повторить ровно ту же процедуру.
  3. Сравнить не только среднее, но и разброс по фолдам.
  4. Провести абляцию: какие именно топологические признаки дали эффект.
На практике

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

Связанные темы

Признаки: создание, отбор, важность · Топология данных

Topology basics90%

Основы топологии · Топологический анализ данных

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

Simplicial complexes90%

Симплициальные комплексы · Топологический анализ данных

Дискретная аппроксимация формы облака точек: точки, рёбра, треугольники и их многомерные аналоги.

Homology90%

Гомологии · Топологический анализ данных

Алгебраический аппарат, который считает дыры разных размерностей в топологическом пространстве.

Persistent Homology90%

Персистентные гомологии · Топологический анализ данных

Центральный метод TDA: вместо одного порога ε рассматривается вся фильтрация, и отслеживается, когда топологические особенности рождаются и умирают.

Persistence Diagrams90%

Диаграммы персистентности · Топологический анализ данных

Каждая топологическая особенность — точка (рождение, смерть) на плоскости. Компактная сводка формы данных.

Persistence Landscapes90%

Ландшафты персистентности · Топологический анализ данных

Превращение диаграммы в набор кусочно-линейных функций — то есть в элемент гильбертова пространства.

Betti Numbers90%

Числа Бетти · Топологический анализ данных

Ранги групп гомологий: β₀ — число компонент, β₁ — число независимых циклов, β₂ — число полостей.

Mapper90%

Алгоритм Mapper · Топологический анализ данных

Строит граф-скелет данных: проекция фильтрующей функцией, покрытие интервалами, локальная кластеризация и склейка.

TDA + Machine Learning90%

TDA и машинное обучение · Топологический анализ данных

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

TDA + Time Series90%

TDA и временные ряды · Топологический анализ данных

Ряд вкладывается в фазовое пространство (Такенс), и топология полученного облака описывает динамику системы.

Metric spaces90%

Метрические пространства · Топологический анализ данных

Множество с функцией расстояния. Любой TDA-пайплайн начинается с выбора метрики.

Feature engineering70%

Конструирование признаков · Данные

Создание признаков, в которых закономерность становится линейно отделимой или просто более заметной для модели.

Encoding70%

Кодирование категорий · Данные

Перевод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.

Feature selection70%

Отбор признаков · Данные

Убираем шумные и избыточные признаки, чтобы снизить переобучение, ускорить инференс и упростить интерпретацию.

Feature engineering70%

Работа с признаками · Практика ML

На табличных данных грамотные признаки дают больший прирост, чем смена модели.

Feature importance70%

Важность признаков · Интерпретируемость моделей

Оценка вклада признаков в предсказания модели — первый шаг к пониманию её логики.

Permutation Importance70%

Перестановочная важность · Интерпретируемость моделей

Признак перемешивается, и измеряется падение качества модели — модельно-независимый и честный подход.

Feature Stores70%

Хранилища признаков · MLOps

Централизованное хранилище признаков, единое для обучения и онлайн-инференса.