Главные графы
Материал из MachineLearning.
Метод главных графов (principal graphs, elastic principal graphs) — метод нелинейного снижения размерности и аппроксимации данных, предложенный и развитый А. Н. Горбанем, А. Ю. Зиновьевым и соавторами как обобщение метода главных компонент, k-means и главных многообразий. Главный граф представляет данные объектом малой сложности: графом, вложенным в исходное признаковое пространство. Вложение выбирается так, чтобы одновременно минимизировать среднеквадратичную ошибку аппроксимации данных и штрафовать чрезмерную длину, изгиб и ветвление графа.
Метод относится к обучению без учителя и используется для визуализации, нелинейного снижения размерности, построения скелетов распределений, поиска ветвящихся траекторий и построения интерпретируемых «карт» данных.
Мотивация
Пусть дана выборка многомерных наблюдений. Классический PCA ищет линейные прямые, плоскости и гиперплоскости, минимизирующие сумму квадратов расстояний от точек до линейного подпространства. Это эффективно, устойчиво и вычислительно просто, но аппроксимирующий объект заранее задан как линейное аффинное многообразие. Поэтому PCA плохо описывает распределения, у которых есть выраженная кривизна, ветвление, переменная локальная размерность или несколько «рукавов», сходящихся в общий узел.
Главные графы сохраняют ту же базовую идею — аппроксимировать облако точек объектом меньшей сложности, проходящим через «середину» распределения, — но снимают линейное ограничение. Вместо одной главной прямой или плоскости строится конечный граф:
- вершины графа вкладываются в
;
- рёбра задают соседство и позволяют интерпретировать граф как кусочно-линейный скелет;
- звёзды и рёбра графа задают упругий штраф, не позволяющий графу произвольно подстроиться под шум;
- графовая грамматика управляет ростом топологии: например, разрешает добавить вершину или разделить ребро.
В этом смысле PCA — линейная модель фиксированной топологии, k-means — аппроксимация конечным набором несвязанных центров, а главный граф занимает промежуточное положение: он остаётся дискретным и вычислимым как k-means, но несёт геометрическую структуру, близкую к главным кривым и многообразиям.
Краткая историческая сводка
В 1901 году К. Пирсон предложил аппроксимировать многомерные наблюдения «прямыми и плоскостями наилучшего приближения», что стало геометрической основой PCA. Позднее k-means сформулировал близкую задачу аппроксимации не прямыми и плоскостями, а конечным набором центров. В 1980-е годы Т. Хасти и В. Штюцле ввели главные кривые как самосогласованные нелинейные обобщения главных компонент, а карты Кохонена дали алгоритмически близкую нейросетевую конструкцию с регулярной сеткой узлов.
В работах Горбаня и Зиновьева была развита техника эластичных карт (elastic maps): главные многообразия строятся как упругая сетка, вложенная в пространство данных. В этой конструкции регулярность задаётся простым квадратичным функционалом длины и изгиба. Затем Горбань, Зиновьев, Самнер и соавторы расширили эту схему на графы произвольной, но контролируемой топологии: топология строится графовыми грамматиками, а вложение каждого кандидата оптимизируется по эластическому функционалу.
Термин «principal graph» ранее использовался Б. Кеглем и А. Крыжаком для кусочно-линейной скелетизации символов. Подход Горбаня и соавторов отличается универсальным штрафом для ветвящихся точек: идеальная конфигурация задаётся не списком специальных типов вершин, а условием гармоничности или плюригармоничности звёзд графа.
Постановка задачи
Пусть
— конечный набор многомерных наблюдений. Пусть
— аппроксимирующий объект. Ортогональной проекцией точки
на
называется
Возможна неоднозначность проекции; в алгоритмах обычно фиксируют одно из ближайших значений.
Среднеквадратичное расстояние от выборки до аппроксимирующего объекта:
Взвешенная версия при
:
Главный объект должен:
- хорошо аппроксимировать данные в смысле малого
;
- удовлетворять регуляризующим условиям, ограничивающим геометрическую, структурную и конструкционную сложность.
Для PCA множество — аффинное линейное подпространство. Для k-means множество
— конечный набор центров. Для главных графов
получается как образ вершин графа и, при необходимости, как кусочно-линейная интерполяция по его рёбрам.
Эластичный граф
Пусть — простой неориентированный граф. Для
-звездой в
называется подграф с вершинами
и рёбрами
,
. Вершина
называется центральной. 2-звезда называется ребром (rib) в терминологии эластичных карт; это не ребро графа, а тройка соседних вершин, штрафующая изгиб.
Пусть для каждого выбрано семейство
из
-звёзд. Эластичный граф — это граф с выбранными семействами
, в котором каждому ребру
поставлен в соответствие модуль растяжения
, а каждой звезде
— модуль изгиба
.
Примитивный эластичный граф — эластичный граф, в котором каждая нетерминальная вершина, то есть вершина степени больше единицы, является центром -звезды, образованной всеми её соседями. В таком графе семейства звёзд полностью определяются топологией графа.
Пусть
— вложение вершин графа в пространство данных. Если
,
— концы ребра
, а
— вершины
-звезды, причём
центральная, то эластическая энергия вложения задаётся функционалом
где
Первый член штрафует суммарное растяжение рёбер. Второй член штрафует отклонение центральной вершины звезды от среднего положения её соседей. Для 2-звезды это дискретный аналог квадрата второй производной, то есть штраф за изгиб.
Метафора упругой мембраны
Физическая картина метода — упругая мембрана, натянутая внутри облака точек. Каждая точка данных соединена с ближайшим узлом невидимой пружиной: эти пружины тянут граф к данным и уменьшают ошибку аппроксимации. Одновременно рёбра графа работают как упругие связи, сопротивляющиеся растяжению, а звёзды сопротивляются изгибу и изломам. Если сделать мембрану слишком мягкой, она начнёт повторять шум; если слишком жёсткой, она приблизится к линейной PCA-модели. Полезный режим находится между этими крайностями.
Для -звезды с центром
и концами
энергия имеет вид
В пружинной интерпретации этот член можно записать как
То есть звезда эквивалентна системе положительных пружин от центра к концам и отрицательных пружин между концами. Эта запись объясняет, почему локальная «мембрана» выпрямляется: минимум достигается, когда центр совпадает со средним своих соседей.
Энергия аппроксимации
Для фиксированного вложения вершины графа разбивают выборку на ячейки ближайших узлов:
Энергия аппроксимации:
где
— веса точек; в простейшем случае
.
Оптимальное вложение при фиксированной топологии минимизирует полный функционал
В узловой версии проекция точки берётся на ближайшую вершину. Для визуализации и получения внутренних координат часто используют кусочно-линейную интерполяцию по рёбрам и проекцию на ближайшую точку полученного полилинейного объекта.
Идеальные и плюригармонические вложения
Штраф звезды обращается в нуль тогда и только тогда, когда центральная вершина совпадает со средним значением соседних вершин:
Вложение называется идеальным, если все такие штрафы равны нулю.
Для примитивного эластичного графа это условие означает, что вложение является гармонической функцией на графе: значение в каждой нетерминальной вершине равно среднему значению в ближайших соседях. Для общего эластичного графа, где звёзды могут включать не всех соседей центра, авторы используют понятие плюригармонического отображения: отображение плюригармонично, если указанное среднее условие выполнено для каждой выбранной
-звезды.
Плюригармонические вложения играют роль «идеальных» конфигураций. Эластическая энергия измеряет отклонение главного графа от этой идеальной формы; тем самым она является мерой нелинейности и нерегулярности.
Сложность главного графа
Главные графы у Горбаня и соавторов формулируются как аппроксиматоры контролируемой сложности. Используются три типа сложности.
Геометрическая сложность — отклонение вложения от идеального плюригармонического графа. Для эластичных главных графов она явно измеряется энергией .
Структурная сложность — неубывающая функция числа вершин, рёбер и звёзд:
Например, можно ограничить только число вершин
или число ветвлений степени 3.
Конструкционная сложность — число применений элементарных преобразований графовой грамматики, необходимых для получения данного графа из простейшего начального графа.
Пусть выбраны графовая грамматика, ограничения и
, а также коэффициенты
и
. Эластичным главным графом для выборки
называется эластичный граф
, вложенный в
отображением
, такой что
и полный функционал
минимален среди допустимых вложений и допустимых графов, достижимых выбранной грамматикой.
Процедура обучения
Обучение состоит из двух вложенных процедур: оптимизации вложения при фиксированной топологии и изменения топологии графа с помощью грамматики.
Оптимизация вложения при фиксированном графе
При фиксированном разбиении функционал
является положительным квадратичным функционалом по координатам узлов. Поэтому новые положения вершин находятся из системы линейных уравнений:
где
,
Здесь
Матрицы
и
зависят только от рёбер, звёзд и коэффициентов упругости.
Для ребра с весом
и концами
матрица
обновляется так. Новые значения обозначены тильдой:
Для -звезды с весом
, центральной вершиной
и внешними вершинами
матрица
обновляется так:
При
:
Алгоритм EM-типа:
- выбрать начальное положение узлов;
- разбить данные на множества ближайших узлов
;
- при фиксированном разбиении решить разреженную систему линейных уравнений для новых
;
- повторять два предыдущих шага до сходимости.
Как и k-means, эта процедура гарантирует локальный минимум, но не глобальный. Поэтому на практике применяют стратегии продолжения: начинают с жёсткого графа, то есть больших и
, затем постепенно «смягчают» его. Для регулярных сеток внутренней размерности
используется масштабировка
где
— число рёбер,
— число 2-звёзд. Для произвольных графов размерность не всегда определена, поэтому коэффициенты выбираются из прикладных соображений или адаптивно.
Рост топологии графа
Графовая грамматика — набор правил вида , где
и
— эластичные графы. Применение правила заменяет в текущем графе копию
на копию
и соединяет её с остальным графом согласно меткам.
Алгоритм построения эластичного главного графа:
- инициализировать граф двумя вершинами, соединёнными ребром; начальное вложение берётся на первом главном направлении так, чтобы данные проектировались на отрезок между этими вершинами;
- применить все операции текущей грамматики ко всем допустимым местам графа, получив набор кандидатов
;
- отбросить кандидаты, нарушающие ограничения
и
;
- для каждого допустимого кандидата оптимизировать вложение EM-процедурой;
- выбрать кандидат с минимальным значением
и заменить текущий граф;
- повторять до исчерпания допустимых преобразований или достижения заданной конструкционной сложности.
Главные деревья и metro map
Простейший важный класс главных графов — главные деревья.
Главное дерево — ациклический примитивный эластичный главный граф.
Для построения главных деревьев используется грамматика роста :
- add a node: к любой вершине
добавляется новая вершина
и новое ребро
;
- bisect an edge: ребро
удаляется, добавляется вершина
и два ребра
,
.
Так как граф примитивный, список звёзд изменяется автоматически вместе с топологией. Последовательное применение этих операций порождает деревья. Для улучшения результата авторы также используют грамматику сжатия , включающую удаление листа и удаление ребра. Комбинация роста и последующего «подрезания» уменьшает лишние ветвления и сливает звёзды, разделённые короткими мостами.
Для визуализации главного дерева используется представление metro map. Дерево вкладывается в двумерную схему так, чтобы:
-
-звёзды выглядели равноугольными;
- длины рёбер в двумерной схеме были согласованы с длинами в исходном многомерном вложении;
- порядок листьев в каждой звезде выбирался так, чтобы уменьшать пересечения рёбер.
Название подчёркивает смысл: это не буквальная проекция, а схематическая карта структуры данных, подобная схеме метро. Расстояние на такой карте оценивают суммой длин ветвей, а классы или плотности точек можно показывать размером и окраской узлов.
Связь с PCA, k-means и картами Кохонена
Если убрать рёбра и звёзды, остаётся аппроксимация конечным набором независимых центров — это близко к k-means. Если задать регулярную решётку и сделать её достаточно жёсткой, эластичная карта приближается к линейным главным многообразиям PCA. При промежуточных значениях упругости получается нелинейная аппроксимация, способная изгибаться, но не следовать каждому шумовому отклонению.
Карты Кохонена также используют узлы и соседства между ними, но в классической формулировке SOM задаётся алгоритмом самоорганизации, а не явным минимизируемым функционалом с контролем геометрической, структурной и конструкционной сложности. Эластичные главные графы делают этот контроль явным: качество аппроксимации, регулярность и сложность входят в одну постановку.
Главное отличие от PCA состоит не только в нелинейности. PCA сохраняет глобальную линейную систему координат, но не умеет создавать ветвления. Главный граф может выражать ситуацию, когда данные расходятся по нескольким ветвям от общего ствола: например, траектории дифференцировки клеток, варианты динамического режима или несколько родственных классов объектов.
Практические замечания
- Метод чувствителен к выбору коэффициентов
,
и ограничений сложности. Большие значения дают гладкие и жёсткие графы, малые значения увеличивают риск переобучения.
- Из-за локальности EM-оптимизации полезны стратегии смягчения, несколько инициализаций и ограничение грамматики.
- Для данных с выбросами желательно использовать веса
, робастные модификации расстояния или предварительную очистку данных.
- Для визуализации важно различать граф как аппроксиматор в
и его двумерную схему; metro map может искажать углы и расстояния ради читаемости.
- При пропущенных значениях можно модифицировать расстояния и проекции, поскольку алгоритм требует главным образом вычисления ближайших узлов и решения квадратичной задачи.
См. также
- Метод главных компонент
- K-means
- Кластеризация
- Обучение без учителя
- EM-алгоритм
- Сингулярное разложение
- Многомерное шкалирование
- Нейронная сеть Кохонена
Приложения
- Визуализация многомерных данных. Главные деревья и metro map дают двумерные схемы ветвящихся распределений, часто более интерпретируемые, чем линейная PCA-проекция.
- Биоинформатика и транскриптомика. В работах Горбаня и Зиновьева эластичные карты и главные деревья применялись к данным микрочипов, где нелинейные карты лучше разделяли подтипы опухолей и нормальные ткани.
- Анализ геномных текстов. Principal trees использовались для анализа 7-кластерной структуры бактериальных геномов и визуализации частотных признаков фрагментов ДНК.
- Динамические системы. Главные многообразия и графы применялись для аппроксимации инвариантных многообразий и траекторий в фазовом пространстве.
- Сравнительная политология и социальные данные. Нелинейные главные объекты использовались для построения низкоразмерных карт стран и режимов, когда линейная PCA-плоскость сглаживает важные нелинейные зависимости.
- Скелетизация и распознавание образов. Исторически principal graphs применялись для кусочно-линейной скелетизации рукописных символов; эластичная регуляризация делает такие скелеты устойчивее.
- Разведочный анализ данных. Метод удобен как промежуточный инструмент между кластеризацией и снижением размерности: узлы графа задают грубые кластеры, а рёбра показывают связи между ними.
Ссылки
- Горбань А. Н., Зиновьев А. Ю. Principal Graphs and Manifolds. arXiv:0809.0490, 2008; Handbook of Research on Machine Learning Applications and Trends, 2009.
- Горбань А. Н., Самнер Н. Р., Зиновьев А. Ю. PCA Beyond The Concept of Manifolds: Principal Trees, Metro Maps, and Elastic Cubic Complexes. arXiv:0801.0176, 2007; in: Principal Manifolds for Data Visualization and Dimension Reduction, Springer, 2008.
- Горбань А. Н., Зиновьев А. Ю. Elastic Maps and Nets for Approximating Principal Manifolds and Their Application to Microarray Data Visualization. arXiv:0801.0168, 2007; in: Principal Manifolds for Data Visualization and Dimension Reduction, Springer, 2008.
- Горбань А. Н., Зиновьев А. Ю. Principal manifolds and graphs in practice: from molecular biology to dynamical systems. arXiv:1001.1122, 2010; International Journal of Neural Systems, 20(3), 219--232.
- Горбань А. Н., Kegl B., Wunsch D. C., Зиновьев А. Ю. (eds.) Principal Manifolds for Data Visualization and Dimension Reduction. Lecture Notes in Computational Science and Engineering, Vol. 58. Springer, 2008.
- Pearson K. On lines and planes of closest fit to systems of points in space. Philosophical Magazine, 2(11), 559--572, 1901.
- Hastie T., Stuetzle W. Principal curves. Journal of the American Statistical Association, 84(406), 502--516, 1989.
- Kegl B., Krzyzak A. Piecewise linear skeletonization using principal curves. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(1), 59--74, 2002.

