Метод машинного обучения, полезный для снижения размерности
Самоорганизующаяся карта ( SOM ) или самоорганизующаяся карта признаков ( SOFM ) — это метод машинного обучения без учителя , используемый для создания низкоразмерного (обычно двумерного) представления многомерного набора данных с сохранением топологической структуры данных. Например, набор данных с переменными, измеренными в наблюдениях, может быть представлен в виде кластеров наблюдений со схожими значениями переменных. Затем эти кластеры могут быть визуализированы в виде двумерной «карты», так что наблюдения в проксимальных кластерах имеют более схожие значения, чем наблюдения в дистальных кластерах. Это может упростить визуализацию и анализ многомерных данных.
SOM — это тип искусственной нейронной сети, но обучается с использованием конкурентного обучения , а не обучения с исправлением ошибок (например, обратного распространения с градиентным спуском ), используемого другими искусственными нейронными сетями. SOM была введена финским профессором Теуво Кохоненом в 1980-х годах и поэтому иногда называется картой Кохонена или сетью Кохонена . [1] [2] Карта или сеть Кохонена — это вычислительно удобная абстракция, построенная на биологических моделях нейронных систем 1970-х годов [3] и моделях морфогенеза , восходящих к Алану Тьюрингу в 1950-х годах. [4]
SOM создают внутренние представления, напоминающие кортикального гомункула [ требуется ссылка ] , искаженное представление человеческого тела , основанное на неврологической «карте» областей и пропорций человеческого мозга, предназначенных для обработки сенсорных функций , для различных частей тела.
Обзор
Самоорганизующиеся карты, как и большинство искусственных нейронных сетей, работают в двух режимах: обучение и картирование. Во-первых, обучение использует набор входных данных («входное пространство») для генерации низкоразмерного представления входных данных («пространство карты»). Во-вторых, картирование классифицирует дополнительные входные данные с использованием сгенерированной карты.
В большинстве случаев целью обучения является представление входного пространства с p измерениями в виде пространства карты с двумя измерениями. В частности, говорят , что входное пространство с p переменными имеет p измерения. Пространство карты состоит из компонентов, называемых «узлами» или «нейронами», которые организованы в виде шестиугольной или прямоугольной сетки с двумя измерениями. [5] Количество узлов и их расположение указываются заранее на основе более масштабных целей анализа и исследования данных .
Каждый узел в пространстве карты связан с вектором «веса», который является положением узла в пространстве ввода. В то время как узлы в пространстве карты остаются фиксированными, обучение заключается в перемещении векторов веса к входным данным (уменьшая метрику расстояния, такую как евклидово расстояние ) без порчи топологии, индуцированной из пространства карты. После обучения карту можно использовать для классификации дополнительных наблюдений для пространства ввода путем нахождения узла с ближайшим вектором веса (наименьшая метрика расстояния) к вектору пространства ввода.
Алгоритм обучения
Цель обучения в самоорганизующейся карте — заставить различные части сети реагировать одинаково на определенные входные шаблоны. Это частично мотивируется тем, как визуальная, слуховая или другая сенсорная информация обрабатывается в отдельных частях коры головного мозга человека . [ 6]
Веса нейронов инициализируются либо небольшими случайными значениями, либо равномерно выбираются из подпространства, охватываемого двумя наибольшими собственными векторами главных компонент . При использовании последней альтернативы обучение происходит намного быстрее, поскольку начальные веса уже дают хорошее приближение весов SOM. [7]
Сеть должна быть снабжена большим количеством векторов-примеров, которые представляют, насколько это возможно, типы векторов, ожидаемых во время картирования. Примеры обычно вводятся несколько раз в качестве итераций.
где s — индекс шага, t — индекс в обучающей выборке, u — индекс BMU для входного вектора D ( t ), α ( s ) — монотонно убывающий коэффициент обучения; θ ( u , v , s ) — функция соседства , которая определяет расстояние между нейроном u и нейроном v на шаге s . [8] В зависимости от реализации, t может систематически сканировать обучающий набор данных ( t равно 0, 1, 2... T -1, затем повторять, T — размер обучающей выборки), быть случайным образом выбранным из набора данных ( бутстреп-выборка ) или реализовать какой-либо другой метод выборки (например, складной нож ).
Функция соседства θ ( u , v , s ) (также называемая функцией латерального взаимодействия ) зависит от расстояния сетки между BMU (нейроном u ) и нейроном v . В простейшей форме она равна 1 для всех нейронов, достаточно близких к BMU, и 0 для других, но функции Гаусса и мексиканской шляпы [9] также являются распространенным выбором. Независимо от функциональной формы, функция соседства со временем уменьшается. [6] В начале, когда соседство широкое, самоорганизация происходит в глобальном масштабе. Когда соседство сократилось до пары нейронов, веса сходятся к локальным оценкам. В некоторых реализациях коэффициент обучения α и функция соседства θ неуклонно уменьшаются с увеличением s , в других (в частности, тех, где t сканирует набор обучающих данных) они уменьшаются пошагово, один раз за каждые T шагов.
Этот процесс повторяется для каждого входного вектора для (обычно большого) числа циклов λ . Сеть завершает связывание выходных узлов с группами или шаблонами во входном наборе данных. Если эти шаблоны могут быть названы, имена могут быть прикреплены к связанным узлам в обученной сети.
В процессе картирования будет один единственный нейрон- победитель : нейрон, весовой вектор которого лежит ближе всего к входному вектору. Это можно просто определить, вычислив евклидово расстояние между входным вектором и весовым вектором.
Хотя в этой статье подчеркивается представление входных данных в виде векторов, любой тип объекта, который может быть представлен в цифровом виде, который имеет соответствующую меру расстояния, связанную с ним, и в котором возможны необходимые операции для обучения, может быть использован для построения самоорганизующейся карты. Это включает матрицы, непрерывные функции или даже другие самоорганизующиеся карты.
Алгоритм
Рандомизировать векторы веса узлов на карте
Для
Случайным образом выбрать входной вектор
Найдите узел на карте, ближайший к входному вектору. Этот узел является наилучшим совпадающим блоком (BMU). Обозначим его как
Для каждого узла обновим его вектор, приблизив его к входному вектору:
Имена переменных означают следующее (векторы выделены жирным шрифтом):
это текущая итерация
это предел итерации
индекс целевого вектора входных данных в наборе входных данных
является целевым вектором входных данных
это индекс узла на карте
текущий вектор веса узла
это индекс наиболее подходящего блока (BMU) на карте
это функция соседства,
график скорости обучения.
Ключевые решения по дизайну — это форма SOM, функция соседства и график скорости обучения. Идея функции соседства заключается в том, чтобы сделать так, чтобы BMU обновлялся больше всего, его непосредственные соседи обновлялись немного меньше и т. д. Идея графика скорости обучения заключается в том, чтобы сделать так, чтобы обновления карты были большими в начале и постепенно прекращались.
Например, если мы хотим изучить SOM с использованием квадратной сетки, мы можем индексировать ее с помощью where both . Функция соседства может сделать так, чтобы BMU обновлялась полностью, ближайшие соседи обновлялись наполовину, а их соседи обновлялись снова наполовину и т. д. И мы можем использовать простой линейный график скорости обучения .
Обратите внимание, в частности, что скорость обновления зависит не от того, где находится точка в евклидовом пространстве, а только от того, где она находится в самом SOM. Например, точки находятся близко на SOM, поэтому они всегда будут обновляться схожим образом, даже если они находятся далеко друг от друга на евклидовом пространстве. Напротив, даже если точки в конечном итоге накладываются друг на друга (например, если SOM выглядит как сложенное полотенце), они все равно не обновляются схожим образом.
Альтернативный алгоритм
Рандомизировать векторы веса узлов карты
Пройти каждый входной вектор во входном наборе данных
Пройдите каждый узел на карте
Используйте формулу евклидова расстояния , чтобы найти сходство между входным вектором и вектором веса узла карты.
Отслеживайте узел, который создает наименьшее расстояние (этот узел является наилучшим соответствующим блоком, BMU)
Обновить узлы в окрестности BMU (включая сам BMU), приблизив их к входному вектору.
Увеличьте и повторите с шага 2, пока
Параметры инициализации
Выбор начальных весов в качестве хороших приближений конечных весов является хорошо известной проблемой для всех итеративных методов искусственных нейронных сетей, включая самоорганизующиеся карты. Кохонен изначально предложил случайную инициализацию весов. [10] (Этот подход отражен в алгоритмах, описанных выше.) В последнее время инициализация главных компонент, при которой начальные веса карты выбираются из пространства первых главных компонент, стала популярной из-за точной воспроизводимости результатов. [11]
Однако тщательное сравнение случайной инициализации с инициализацией главных компонент для одномерной карты показало, что преимущества инициализации главных компонент не являются универсальными. Лучший метод инициализации зависит от геометрии конкретного набора данных. Инициализация главных компонент была предпочтительнее (для одномерной карты), когда главная кривая, аппроксимирующая набор данных, могла быть однозначным и линейно спроецирована на первый главный компонент (квазилинеарные наборы). Однако для нелинейных наборов данных случайная инициализация показала лучшие результаты. [12]
Интерпретация
Существует два способа интерпретации SOM. Поскольку в фазе обучения веса всего соседства перемещаются в одном направлении, похожие элементы, как правило, возбуждают соседние нейроны. Поэтому SOM формирует семантическую карту, где похожие образцы отображаются близко друг к другу, а непохожие — отдельно. Это можно визуализировать с помощью U-матрицы (евклидово расстояние между весовыми векторами соседних ячеек) SOM. [14] [15] [16]
Другой способ — думать о нейронных весах как об указателях на входное пространство. Они формируют дискретную аппроксимацию распределения обучающих образцов. Больше нейронов указывают на области с высокой концентрацией обучающих образцов и меньше — на области, где образцов мало.
SOM можно считать нелинейным обобщением анализа главных компонент (PCA). [17] Было показано, что с использованием как искусственных, так и реальных геофизических данных SOM имеет много преимуществ [18] [19] по сравнению с традиционными методами извлечения признаков, такими как эмпирические ортогональные функции (EOF) или PCA.
Первоначально SOM не была сформулирована как решение задачи оптимизации. Тем не менее, было предпринято несколько попыток изменить определение SOM и сформулировать задачу оптимизации, которая дает схожие результаты. [20] Например, эластичные карты используют механическую метафору эластичности для аппроксимации главных многообразий : [21] аналогия — эластичная мембрана и пластина.
Примеры
Приоритезация и выбор проекта [22]
Анализ сейсмических фаций для разведки нефти и газа [23]
Поиск репрезентативных данных в больших наборах данных
представительные виды для экологических сообществ [25]
репрезентативные дни для моделей энергосистем [26]
Альтернативные подходы
Генеративная топографическая карта (GTM) является потенциальной альтернативой SOM. В том смысле, что GTM явно требует плавного и непрерывного отображения из входного пространства в пространство карты, она сохраняет топологию. Однако, в практическом смысле, эта мера топологического сохранения отсутствует. [27]
Растущая самоорганизующаяся карта (GSOM) — это растущий вариант самоорганизующейся карты. GSOM была разработана для решения проблемы определения подходящего размера карты в SOM. Она начинается с минимального количества узлов (обычно четырех) и выращивает новые узлы на границе на основе эвристики. Используя значение, называемое фактором распространения , аналитик данных имеет возможность контролировать рост GSOM. [28]
Подход конформного отображения использует конформное отображение для интерполяции каждого обучающего образца между узлами сетки на непрерывной поверхности. В этом подходе возможно гладкое отображение один к одному. [29] [30]
Сеть самоорганизующейся карты с временной адаптацией (TASOM) является расширением базовой SOM. TASOM использует адаптивные скорости обучения и функции соседства. Она также включает параметр масштабирования, чтобы сделать сеть инвариантной к масштабированию, трансляции и вращению входного пространства. TASOM и ее варианты использовались в нескольких приложениях, включая адаптивную кластеризацию, многоуровневую пороговую обработку, аппроксимацию входного пространства и активное контурное моделирование. [31] Более того, было предложено двоичное дерево TASOM или BTASOM, напоминающее двоичное натуральное дерево с узлами, состоящими из сетей TASOM, где число его уровней и число его узлов адаптивны к его среде. [32]
Ориентированная и масштабируемая карта (OS-Map) обобщает функцию соседства и выбор победителя. [34] Однородная гауссовская функция соседства заменяется матричной экспонентой. Таким образом, можно указать ориентацию либо в пространстве карты, либо в пространстве данных. SOM имеет фиксированный масштаб (=1), так что карты «оптимально описывают область наблюдения». Но как насчет карты, покрывающей область дважды или в n-кратном размере? Это влечет за собой концепцию масштабирования. OS-Map рассматривает масштаб как статистическое описание того, сколько наиболее соответствующих узлов имеет вход на карте.
Кохонен, Теуво (январь 2013 г.). «Основы самоорганизующейся карты». Нейронные сети . 37 : 52–65. doi :10.1016/j.neunet.2012.09.018. PMID 23067803. S2CID 17289060.
Кохонен, Теуво (2001). Самоорганизующиеся карты: с 22 таблицами . Springer Series in Information Sciences (3-е изд.). Берлин-Гейдельберг: Springer. ISBN 978-3-540-67921-9.
Кохонен , Теуво (1988). "Самоорганизация и ассоциативная память". Springer Series in Information Sciences . 8. doi :10.1007/978-3-662-00784-6. ISBN 978-3-540-18314-3. ISSN 0720-678X.
Каски, Самуэль, Яри Кангас и Теуво Кохонен. «Библиография статей по самоорганизующимся картам (SOM): 1981–1997». Neural computing surveys 1.3&4 (1998): 1-176.
Оя, Мерья, Самуэль Каски и Теуво Кохонен. «Библиография документов по самоорганизующимся картам (SOM): приложение за 1998–2001 годы». Обзоры нейронных вычислений 3.1 (2003): 1-156.
^ Кохонен, Теуво (1982). «Самоорганизованное формирование топологически правильных карт признаков». Биологическая кибернетика . 43 (1): 59–69. doi :10.1007/bf00337288. S2CID 206775459.
^ Фон дер Мальсбург, К (1973). «Самоорганизация чувствительных к ориентации клеток в полосатой коре». Kybernetik . 14 (2): 85–100. doi :10.1007/bf00288907. PMID 4786750. S2CID 3351573.
^ Тьюринг, Алан (1952). «Химическая основа морфогенеза». Phil. Trans. R. Soc . 237 (641): 37–72. Bibcode : 1952RSPTB.237...37T. doi : 10.1098/rstb.1952.0012.
^ Яакко Холлмен (9 марта 1996 г.). «Самоорганизующаяся карта (СОМ)». Университет Аалто .
^ ab Haykin, Simon (1999). "9. Самоорганизующиеся карты". Нейронные сети - всеобъемлющая основа (2-е изд.). Prentice-Hall. ISBN978-0-13-908385-3.
^ Кохонен, Теуво (2005). «Введение в СОМ». Панель инструментов СОМ . Проверено 18 июня 2006 г.
^ Вриз, О.Дж. (1995). «Сеть Кохонена» (PDF) . Искусственные нейронные сети . Конспекты лекций по информатике. Том. 931. Лимбургский университет, Маастрихт. стр. 83–100. дои : 10.1007/BFb0027024. ISBN978-3-540-59488-8. Получено 1 июля 2020 г. . {{cite book}}: |website=проигнорировано ( помощь )
^ Кохонен, Т. (2012) [1988]. Самоорганизация и ассоциативная память (2-е изд.). Springer. ISBN978-3-662-00784-6.
^ Ciampi, A.; Lechevallier, Y. (2000). "Кластеризация больших многоуровневых наборов данных: подход, основанный на самоорганизующихся картах Кохонена". В Zighed, DA; Komorowski, J.; Zytkow, J. (ред.). Принципы добычи данных и обнаружения знаний: 4-я Европейская конференция, PKDD 2000 Лион, Франция, 13–16 сентября 2000 г. Труды . Конспекты лекций по информатике. Том 1910. Springer. стр. 353–358. doi : 10.1007/3-540-45372-5_36 . ISBN3-540-45372-5.
^ Акиндуко, А.А.; Миркес, Э.М.; Горбань, А.Н. (2016). «SOM: Стохастическая инициализация против главных компонент». Информационные науки . 364–365: 213–221. doi :10.1016/j.ins.2015.10.013.
^ Иллюстрация подготовлена с использованием свободного программного обеспечения: Mirkes, Evgeny M.; Principal Component Analysis and Self-Organizing Maps: applet, University of Leicester, 2011
^ Ultsch, Alfred; Siemon, H. Peter (1990). "Самоорганизующиеся карты признаков Кохонена для разведочного анализа данных". В Widrow, Bernard; Angeniol, Bernard (ред.). Труды Международной конференции по нейронным сетям (INNC-90), Париж, Франция, 9–13 июля 1990 г. Том 1. Дордрехт, Нидерланды: Kluwer. стр. 305–308. ISBN978-0-7923-0831-7.
^ Ultsch, Alfred (2003). U*-Matrix: инструмент для визуализации кластеров в многомерных данных (технический отчет). Кафедра компьютерных наук, Университет Марбурга. С. 1–12. 36.
^ Saadatdoost, Robab; Sim, Alex Tze Hiang; Jafarkarimi, Hosein (2011). "Применение самоорганизующейся карты для обнаружения знаний на основе данных о высшем образовании". Исследования и инновации в области информационных систем (ICRIIS), 2011 Международная конференция по . IEEE. doi :10.1109/ICRIIS.2011.6125693. ISBN978-1-61284-294-3.
^ Инь, Худжун. «Изучение нелинейных главных многообразий с помощью самоорганизующихся отображений». Горбан и др. 2008 .
^ Лю, Юнган; Вайсберг, Роберт Х. (2005). «Закономерности изменчивости океанических течений на шельфе Западной Флориды с использованием самоорганизующейся карты». Журнал геофизических исследований . 110 (C6): C06003. Bibcode : 2005JGRC..110.6003L. doi : 10.1029/2004JC002786 .
^ Лю, Юнган; Вайсберг, Роберт Х.; Мурс, Кристофер НК (2006). «Оценка производительности самоорганизующейся карты для извлечения признаков». Журнал геофизических исследований . 111 (C5): C05018. Bibcode : 2006JGRC..111.5018L. doi : 10.1029/2005jc003117 .
^ Хескес, Том (1999). «Энергетические функции для самоорганизующихся карт». В Oja, Erkki; Kaski, Samuel (ред.). Карты Кохонена . Elsevier. стр. 303–315. doi :10.1016/B978-044450270-4/50024-3. ISBN978-044450270-4.
^ Горбань, Александр Н .; Кегль, Балаж; Вунш, Дональд К.; Зиновьев, Андрей, ред. (2008). Главные многообразия для визуализации данных и снижения размерности. Конспект лекций по информатике и инжинирингу. Том 58. Springer. ISBN978-3-540-73749-0.
^ Чжэн, Г.; Вайшнави, В. (2011). «Многомерный подход к карте восприятия для приоритизации и выбора проектов». Труды AIS по взаимодействию человека и компьютера . 3 (2): 82–103. doi : 10.17705/1thci.00028 .
^ Танер, М. Т.; Уоллс, Дж. Д.; Смит, М.; Тейлор, Г.; Карр, М. Б.; Дюма, Д. (2001). «Характеристика резервуара путем калибровки самоорганизующихся кластеров карты». SEG Technical Program Expanded Abstracts 2001. Vol. 2001. pp. 1552–1555. doi :10.1190/1.1816406. S2CID 59155082.
^ Чанг, Вуй Ли; Панг, Ли Мэн; Тай, Кай Мэн (март 2017 г.). «Применение самоорганизующейся карты к методологии анализа режимов и последствий отказов» (PDF) . Нейрокомпьютинг . 249 : 314–320. doi :10.1016/j.neucom.2016.04.073.
^ Park, Young-Seuk; Tison, Juliette; Lek, Sovan; Giraudel, Jean-Luc; Coste, Michel; Delmas, François (2006-11-01). "Применение самоорганизующейся карты для выбора репрезентативных видов в многомерном анализе: исследование случая определения закономерностей распределения диатомовых водорослей по всей Франции". Ecological Informatics . 4th International Conference on Ecological Informatics. 1 (3): 247–257. Bibcode : 2006EcInf...1..247P. doi : 10.1016/j.ecoinf.2006.03.005. ISSN 1574-9541.
^ Йылмаз, Хасан Умиткан; Фуше, Эдуард; Денгиз, Томас; Краус, Лукас; Келес, Доган; Фихтнер, Вольф (2019-04-01). «Сокращение временных рядов энергии для моделей энергетических систем с помощью самоорганизующихся карт». It - Information Technology . 61 (2–3): 125–133. doi :10.1515/itit-2019-0025. ISSN 2196-7032. S2CID 203160544.
^ Каски, Самуэль (1997). «Исследование данных с использованием самоорганизующихся карт». Acta Polytechnica Scandinavica . Серия «Математика, вычисления и управление в инженерии». 82. Эспоо, Финляндия: Финская технологическая академия. ISBN978-952-5148-13-8.
^ Алахакун, Д.; Халгамуге, СК; Сиринивасан, Б. (2000). «Динамические самоорганизующиеся карты с контролируемым ростом для обнаружения знаний». Труды IEEE по нейронным сетям . 11 (3): 601–614. doi :10.1109/72.846732. PMID 18249788.
^ Liou, C.-Y.; Tai, W.-P. (2000). «Конформность в сети самоорганизации». Искусственный интеллект . 116 (1–2): 265–286. doi :10.1016/S0004-3702(99)00093-4.
^ Liou, C.-Y.; Kuo, Y.-T. (2005). «Конформная самоорганизующаяся карта для многообразия рода Zero». The Visual Computer . 21 (5): 340–353. doi :10.1007/s00371-005-0290-6. S2CID 8677589.
^ Шах-Хоссейни, Хамед; Сафабахш, Реза (апрель 2003 г.). «TASOM: Новое время адаптивной самоорганизующейся карты». Труды IEEE по системам, человеку и кибернетике — Часть B: Кибернетика . 33 (2): 271–282. doi :10.1109/tsmcb.2003.810442. PMID 18238177.
^ Шах-Хоссейни, Хамед (май 2011 г.). «Двоичное дерево. Адаптивная самоорганизующаяся карта времени». Нейрокомпьютинг . 74 (11): 1823–1839. doi :10.1016/j.neucom.2010.07.037.
^ Горбань, АН; Зиновьев, А. (2010). «Главные многообразия и графы на практике: от молекулярной биологии до динамических систем». International Journal of Neural Systems . 20 (3): 219–232. arXiv : 1001.1122 . doi :10.1142/S0129065710002383. PMID 20556849. S2CID 2170982.
^ Хуа, Х (2016). «Обработка изображений и геометрии с помощью ориентированной и масштабируемой карты». Нейронные сети . 77 : 1–6. doi :10.1016/j.neunet.2016.01.009. PMID 26897100.
Внешние ссылки
Медиа, связанные с Самоорганизующиеся карты на Wikimedia Commons