Самоорганизующаяся карта

редактировать
Тип искусственной нейронной сети

A самоорганизующаяся карта (SOM ) или самоорганизующаяся карта характеристик (SOFM ) - это тип искусственной нейронной сети (ANN), которая обучается с использованием неконтролируемого обучения для создания низкоразмерное (обычно двумерное) дискретное представление входного пространства обучающих выборок, называемое картой, и поэтому является методом уменьшения размерности. Самоорганизующиеся карты отличаются от других искусственных нейронных сетей, поскольку они применяют конкурентное обучение в отличие от обучения с исправлением ошибок (например, обратное распространение с градиентным спуском ) и в том смысле, что они используют функцию соседства для сохранения топологических свойств входного пространства.

Самоорганизующаяся карта с изображением США. Конгресс схемы голосования. Входными данными была таблица со строкой для каждого члена Конгресса и столбцами для определенных голосов, содержащими голоса каждого члена «да» / «нет» / «воздержался». Алгоритм SOM ​​расположил эти элементы в двумерной сетке, расположив аналогичные элементы ближе друг к другу. Первый график показывает группировку, когда данные разделены на два кластера. Второй график показывает среднее расстояние до соседей: большие расстояния темнее. Третий сюжет предсказывает членство в партии республиканцев (красный) или демократов (синий). На остальных графиках каждая наложена на результирующую карту с прогнозируемыми значениями во входном измерении: красный цвет означает прогнозируемое голосование «да» по этому законопроекту, синий означает голосование «нет». График был создан в Synapse.

. Это делает SOM полезными для визуализации за счет создания низкоразмерных представлений многомерных данных, сродни многомерному масштабированию. Искусственная нейронная сеть, представленная финским профессором Теуво Кохоненом в 1980-х годах, иногда называется картой Кохонена или сетью . Сеть Кохонена представляет собой удобную в вычислительном отношении абстракцию, основанную на биологических моделях нейронных систем 1970-х годов и моделях морфогенеза, восходящих к Алану Тьюрингу в 1950-х.

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

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

Также часто используется U-матрица. Значение U-матрицы конкретного узла - это среднее расстояние между вектором веса узла и его ближайшими соседями. В квадратной сетке, например, могут рассматриваться ближайшие 4 или 8 узлов (окрестности фон Неймана и Мура соответственно) или шесть узлов в гексагональной сетке.

Большие SOM отображают эмерджентные свойства. В картах, состоящих из тысяч узлов, можно выполнять кластерные операции на самой карте.

Содержание
  • 1 Структура и операции
  • 2 Алгоритм обучения
    • 2.1 Переменные
    • 2.2 Алгоритм
    • 2.3 Инициализация SOM
  • 3 Примеры
    • 3.1 Данные цветка ириса Фишера
  • 4 Интерпретация
  • 5 Альтернативы
  • 6 Приложения
  • 7 См. Также
  • 8 Примечания
  • 9 Ссылки
Структура и операции

Как и большинство искусственных нейронных сетей, SOM работают в двух режимах: обучение и отображение. «Обучение» строит карту с использованием примеров ввода (конкурентный процесс, также называемый векторным квантованием ), тогда как «отображение» автоматически классифицирует новый входной вектор.

Видимая часть самоорганизующейся карты - это пространство карты, которое состоит из компонентов, называемых узлами или нейронами. Пространство карты определяется заранее, обычно как конечная двумерная область, где узлы расположены в регулярной шестиугольной или прямоугольной сетке. Каждый узел связан с вектором «веса», который является позицией во входном пространстве; то есть он имеет ту же размерность, что и каждый входной вектор. Пока узлы в пространстве карты остаются фиксированными, обучение заключается в перемещении векторов весов к входным данным (уменьшение метрики расстояния) без нарушения топологии, созданной из пространства карты. Таким образом, самоорганизующаяся карта описывает отображение из входного пространства более высокого измерения в пространство карты более низкого измерения. После обучения карта может классифицировать вектор из входного пространства, найдя узел с ближайшим (с наименьшей метрикой расстояния) весовым вектором к вектору входного пространства.

Алгоритм обучения

Цель обучения на самоорганизующейся карте - заставить разные части сети одинаково реагировать на определенные входные шаблоны. Частично это вызвано тем, как зрительная, слуховая или другая сенсорная информация обрабатывается в отдельных частях коры головного мозга в человеческом мозге.

. Иллюстрация тренировки самоорганизующаяся карта. Голубая капля - это распределение обучающих данных, а маленький белый диск - текущие обучающие данные, взятые из этого распределения. Сначала (слева) узлы SOM произвольно располагаются в пространстве данных. Выбирается ближайший к обучающей базе узел (выделен желтым). Он перемещается к обучающей базе данных, поскольку (в меньшей степени) является ее соседями по сетке. После многих итераций сетка имеет тенденцию аппроксимировать распределение данных (справа).

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

В сеть необходимо подавать большое количество примеров векторов, которые представляют, насколько это возможно, типы векторы, ожидаемые во время картирования. Примеры обычно вводятся несколько раз в виде итераций.

В обучении используется соревновательное обучение. Когда обучающий пример подается в сеть, вычисляется его евклидово расстояние до всех весовых векторов. Нейрон, весовой вектор которого наиболее похож на входной, называется единицей наилучшего согласования (BMU). Веса BMU и близких к нему нейронов в сетке SOM корректируются по входному вектору. Величина изменения уменьшается со временем и по мере удаления от BMU сетки. Формула обновления для нейрона v с вектором весов Wv(s):

W v (s + 1) = W v (s) + θ (u, v, s) ⋅ α (s) ⋅ (D (T) - W v (s)) {\ Displaystyle W_ {v} (s + 1) = W_ {v} (s) + \ theta (u, v, s) \ cdot \ alpha (s) \ cdot ( D (t) -W_ {v} (s))}{\ displaystyle W_ {v } (s + 1) = W_ {v} (s) + \ theta (u, v, s) \ cdot \ alpha (s) \ cdot (D (t) -W_ {v} (s))} ,

где s - индекс шага, t - индекс обучающей выборки, u - индекс BMU для входного вектора D (t), α (s) - монотонно убывающий коэффициент обучения; Θ (u, v, s) - функция соседства, которая дает расстояние между нейроном u и нейроном v на шаге s. В зависимости от реализаций t может систематически сканировать набор обучающих данных (t равно 0, 1, 2... T-1, затем повторять, T - размер обучающей выборки), случайным образом извлекаться из набора данных (Самостоятельная выборка ) или реализовать какой-либо другой метод выборки (например, складной нож ).

Функция соседства Θ (u, v, s) (также называемая функцией бокового взаимодействия) зависит от расстояния сетки между BMU (нейроном u) и нейроном v. В простейшей форме это 1 для всех нейронов, достаточно близких к BMU и 0 для других, но функции Gaussian и mexican-hat также являются обычным выбором. Независимо от функциональной формы, функция соседства сжимается со временем. Вначале, когда окружение велико, самоорганизация происходит в глобальном масштабе. Когда соседство сократилось до пары нейронов, веса сходятся к локальным оценкам. В некоторых реализациях коэффициент обучения α и функция соседства Θ неуклонно уменьшаются с увеличением s, в других (в частности, в тех, где t сканирует набор обучающих данных) они уменьшаются пошагово, один раз каждые T шагов.

Процесс обучения SOM на двумерном наборе данных

Этот процесс повторяется для каждого входного вектора в течение (обычно большого) количества циклов λ . В итоге сеть связывает выходные узлы с группами или шаблонами во входном наборе данных. Если эти шаблоны могут быть названы, имена могут быть присоединены к связанным узлам в обученной сети.

Во время отображения будет один единственный нейрон-победитель: нейрон, весовой вектор которого находится ближе всего к входному вектору. Это можно просто определить, вычислив евклидово расстояние между входным вектором и вектором весов.

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

Переменные

Это необходимые переменные, векторы выделены жирным шрифтом,

  • s {\ displaystyle s}s - текущая итерация
  • λ {\ displaystyle \ lambda}\ lambda - предел итераций
  • t {\ displaystyle t}t - индекс вектора целевых входных данных во входном наборе данных D {\ displaystyle \ mathbf {D}}\ mathbf {D}
  • D (t) {\ displaystyle {D} (t)}{\ displaystyle {D} (t)} - целевой вектор входных данных.
  • v {\ displaystyle v}v- индекс узла на карте
  • W v {\ displaystyle \ mathbf {W} _ {v}}{\ displaystyle \ mathbf {W} _ {v}} - это текущий весовой вектор узла v {\ displaystyle v}v
  • u {\ displaystyle u}u - это индекс единицы наилучшего соответствия (BMU) на карте
  • θ (u, v, s) {\ displaystyle \ theta (u, v, s) }{\ displaystyle \ theta (u, v, s)} - ограничение из-за расстояния от BMU, обычно называемое функцией соседства, а
  • α (s) {\ displaystyle \ alpha (s)}\ alpha (s) - ограничение обучения из-за по ходу итерации.

Алгоритм

  1. Рандомизируйте весовые векторы узлов на карте
  2. Случайным образом выберите входной вектор D (t) {\ displaystyle {D} (t)}{\ displaystyle {D} (t)}
  3. Обойдите каждый узел на карте
    1. Используйте Евклидово расстояние формула для поиска сходства между входным вектором и вектором весов узла карты
    2. Отслеживайте узел, который производит наименьшее расстояние (этот узел является наилучшим совпадающим элементом, BMU)
  4. Обновите весовые векторы узлы в окрестности BMU (включая сам BMU), подтягивая их ближе к входному вектору
    1. W v (s + 1) = W v (s) + θ (u, v, s) ⋅ α ( s) ⋅ (D (T) - W v (s)) {\ Displaystyle W_ {v} (s + 1) = W_ {v} (s) + \ theta (u, v, s) \ cdot \ alpha ( s) \ cdot (D (t) -W_ {v} (s))}{\ displaystyle W_ {v } (s + 1) = W_ {v} (s) + \ theta (u, v, s) \ cdot \ alpha (s) \ cdot (D (t) -W_ {v} (s))}
  5. Увеличьте s {\ displaystyle s}s и повторите с шага 2, пока s < λ {\displaystyle s<\lambda }s <\ lambda

вариант алгоритма :

  1. Рандомизировать весовые векторы узлов карты
  2. Обойти каждый входной вектор во входном наборе данных
    1. Обойти каждый узел на карте
      1. Использовать евклидову формула расстояния, чтобы найти сходство между входной вектор и вектор веса узла карты
      2. Отслеживайте узел, который производит наименьшее расстояние (этот узел является наилучшим совпадающим блоком, BMU)
    2. Обновите узлы в окрестности BMU (включая сам BMU), потянув их ближе к входному вектору
      1. W v (s + 1) = W v (s) + θ (u, v, s) ⋅ α (s) ⋅ (D (t) - W v (s)) {\ Displaystyle W_ {v} (s + 1) = W_ {v} (s) + \ theta (u, v, s) \ cdot \ alpha (s) \ cdot (D (t) -W_ {v } (s))}{\ displaystyle W_ {v } (s + 1) = W_ {v} (s) + \ theta (u, v, s) \ cdot \ alpha (s) \ cdot (D (t) -W_ {v} (s))}
  3. Увеличьте s {\ displaystyle s}s и повторите, начиная с шага 2, пока s < λ {\displaystyle s<\lambda }s <\ lambda

Инициализация SOM

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

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

Примеры

Данные цветка ириса Фишера

Рассмотрим массив узлов размером n × m, каждый из которых содержит вектор весов и знает о своем местоположении в массиве. Каждый весовой вектор имеет ту же размерность, что и входной вектор узла. Первоначально веса могут быть установлены на случайные значения.

Теперь нам нужен ввод для подачи карты. Цвета могут быть представлены их красными, зелеными и синими компонентами. Следовательно, мы будем представлять цвета как векторы в единичном кубе свободного векторного пространства над ℝ, созданном базисом :

R = <255, 0, 0>
G = <0, 255, 0>
B = <0, 0, 255>

Показанная диаграмма

Самоорганизующиеся карты (SOM) трех и восьми цветов с U-Matrix.

сравнивает результаты обучения на наборах данных

threeColors = [255, 0, 0], [0, 255, 0], [0, 0, 255]
восемьColors = [0, 0, 0], [255, 0, 0], [0, 255, 0], [0, 0, 255 ], [255, 255, 0], [0, 255, 255], [255, 0, 255], [255, 255, 255]

и исходные изображения. Обратите внимание на поразительное сходство между ними.

Точно так же после обучения сетки нейронов 40 × 40 для 250 итераций со скоростью обучения 0,1 на Ирис Фишера карта уже может обнаружить основные различия между видами.

Самоорганизующаяся карта (SOM) набора данных о цветках ириса Фишера с U-матрицей. Вверху слева: цветное изображение, образованное первыми тремя измерениями четырехмерных весовых векторов SOM. Вверху справа: псевдоцветное изображение величины весовых векторов SOM. Внизу слева: U-матрица (евклидово расстояние между весовыми векторами соседних ячеек) SOM. Внизу справа: наложение точек данных (красный: I. setosa, зеленый: I. versicolor и синий: I. virginica) на U-матрицу на основе минимального евклидова расстояния между векторами данных и векторами веса SOM.
Интерпретация
Картографическое представление самоорганизующейся карты (U-Matrix ) на основе данных из избранных статей Википедии (частота слов). Расстояние обратно пропорционально сходству. «Горы» - это грани между кластерами. Красные линии - это ссылки между статьями. Одномерный SOM в сравнении с анализом главных компонентов (PCA) для аппроксимации данных. SOM - красная ломаная линия с квадратами, 20 узлов. Первый главный компонент представлен синей линией. Точки данных - это маленькие серые кружки. Для PCA доля необъяснимой дисперсии в этом примере составляет 23,23%, для SOM - 6,86%.

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

Другой способ - рассматривать веса нейронов как указатели на входное пространство.. Они образуют дискретную аппроксимацию распределения обучающих выборок. Больше нейронов указывает на области с высокой концентрацией обучающей выборки и меньше нейронов, где выборок мало.

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

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

Альтернативы
  • Генеративная топографическая карта (GTM) - потенциальная альтернатива SOM. В том смысле, что GTM явно требует гладкого и непрерывного отображения из входного пространства в пространство карты, он сохраняет топологию. Однако с практической точки зрения эта мера топологической сохранности отсутствует.
  • Сеть адаптивная самоорганизующаяся карта времени (TASOM) является расширением базовой сети. СОМ. TASOM использует адаптивную скорость обучения и функции соседства. Он также включает параметр масштабирования, чтобы сделать сеть инвариантной к масштабированию, перемещению и вращению входного пространства. TASOM и его варианты использовались в нескольких приложениях, включая адаптивную кластеризацию, многоуровневую пороговую обработку, аппроксимацию входного пространства и моделирование активного контура. Более того, было предложено двоичное дерево TASOM или BTASOM, напоминающее двоичное естественное дерево, имеющее узлы, состоящие из сетей TASOM, где количество его уровней и количество его узлов адаптируются к его среде.
  • растущая самоорганизующаяся карта (GSOM) - это растущий вариант самоорганизующейся карты. ВШМ была разработана для решения проблемы определения подходящего размера карты в ЗВОЛ. Он начинается с минимального количества узлов (обычно четырех) и наращивает новые узлы на границе на основе эвристики. Используя значение, называемое коэффициентом распространения, аналитик данных имеет возможность контролировать рост GSOM.
  • Подход эластичных карт заимствует из сплайн-интерполяция идея минимизации упругой энергии. При обучении он минимизирует сумму квадратичной энергии изгиба и растяжения с ошибкой аппроксимации методом наименьших квадратов .
  • Конформный подход, который использует конформное отображение для интерполяции каждой обучающей выборки между узлами сетки на непрерывной поверхности. В этом подходе возможно сглаживание однозначного соответствия.
  • (OS-Map) обобщает функцию соседства и выбор победителя. Однородная гауссовская функция окрестности заменяется матричной экспонентой. Таким образом, можно указать ориентацию либо в пространстве карты, либо в пространстве данных. SOM имеет фиксированный масштаб (= 1), так что карты «оптимально описывают область наблюдения». Но как насчет карты, покрывающей область дважды или n-кратно? Это влечет за собой концепцию масштабирования. OS-Map рассматривает масштаб как статистическое описание того, сколько узлов наилучшим образом соответствует входным данным на карте.
Приложения
См. Также
Примечания
Ссылки
На Викискладе есть материалы, связанные с Самоорганизующимися картами.
Последняя правка сделана 2021-06-07 09:24:26
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте