Міністерство освіти і науки, молоді та спорту України
Національний університет «Львівська політехніка»
/
Звіт
до лабораторної роботи №7
«Карти Кохонена. Застосування карт, що самоорганізуються (self-organizing map (SOM)) для розв’язання задач кластеризації»
Перевірив:
ас. Поліщук У.В.
Львів - 2013
Теоретичні відомості
Мережі, що називаються картами Кохонена – це один з різновидів нейронних мереж, однак вони принципово відрізняються від розглянутих раніше, оскільки використовують неконтрольоване навчання. Нагадаємо, що при такому навчанні навчальна множина складається лише зі значень вхідних змінних, у процесі навчання немає порівняння виходів нейронів з еталонними значеннями. Можна сказати, що така мережа вчиться розуміти структуру даних.
Ідея мережі Кохонена належить фінському вченому Тойво Кохонену (1982 рік). Основний принцип роботи мереж - введення в правило навчання нейрона інформації щодо його розташування.
В основі ідеї мережі Кохонена лежить аналогія із властивостями людського мозку. Кора головного мозку людини являє собою плоский аркуш і згорнуга складками. Таким чином, можна сказати, що вона має певні топологічні властивості (ділянки, відповідальні за близькі частини тіла, примикають одна до одної й все зображення людського тіла відображається на цю двовимірну поверхню).
Завдання, що розв'язуються за допомогою карт Кохонена
Карти, що самоорганізуються, можуть використовуватися для розв’язання таких завдань, як моделювання, прогнозування, пошук закономірностей у великих масивах даних, виявлення наборів незалежних ознак і стиск інформації.
Найпоширеніше застосування мереж Кохонена - рішення завдання класифікації без учителя, тобто кластеризації.
Нагадаємо, що при такій постановці завдання нам задано набір об’єктів, кожному з яких відповідає рядок таблиці (вектор значень ознак). Потрібно розбити вихідну множину на класи, тобто для кожного об’єкта знайти клас, до якого він належить.
У результаті одержання нової інформації про класи можлива корекція існуючих правил класифікації об'єктів.
От два з найбільш розповсюджених застосувань карт Кохонена: розвідницький аналіз даних і виявлення нових явищ.
Розвідницький аналіз даних. Мережа Кохонена здатна розпізнавати кластери в даних, а також встановлювати близькість класів. Таким чином, користувач може поліпшити своє розуміння структури даних, щоб потім уточнити нейромережеву модель. Якщо в даних розпізнані класи, то їх можна позначити, після чого мережа зможе вирішувати завдання класифікації. Мережі Кохонена можна використати й у тих завданнях класифікації, де класи вже задані, - тоді перевага буде в тім, що мережа зможе виявити подібність між різними класами.
Виявлення нових явищ. Мережа Кохонена розпізнає кластери в навчальних даних і відносить всі дані до тих або інших кластерів. Якщо після цього мережа зустрінеться з набором даних, несхожим ні на один з відомих зразків, то вона не зможе класифікувати такий набір і тим самим виявить його новизну.
Навчання мережі Кохонена
Мережа Кохонена, на відміну від багатошарової нейронної мережі, дуже проста; вона являє собою два шари: вхідний і вихідний. Її також називають самоорганізуючою картою. Елементи карти розташовуються в деякому просторі, як правило, двовимірному. Мережа Кохонена зображена на рис. 1
Рис. 1. Мережа Кохонена
Мережа Кохонена навчається методом послідовних наближень. У процесі навчання таких мереж на входи подаються дані, але мережа при цьому підлаштовується не під еталонне значення виходу, а під закономірності у вхідних даних. Починається навчання з обраного випадковим образом вихідного розташування центрів.
У процесі послідовної подачі на вхід мережі навчальних прикладів визначається найбільш схожий нейрон (той, у якого скалярний добуток ваг і поданого на вхід вектора мінімальний). Цей нейрон оголошується переможцем і є центром під час підстроювання ваг у сусідніх нейронах. Таке правило навчання припускає "змагальне" навчання з урахуванням відстані нейронів від "нейрона- переможця".
Навчання при цьому полягає не в мінімізації помилки, а в підстроюванні ваг (внутрішніх параметрів нейронної мережі) для найбільшого збігу із вхідними даними.
Алгоритм навчання мережі Кохонена виглядає в такий спосіб:
Ініціювати матрицю ваг малими випадковими значеннями (на відрізку [-1,1]).
Випадковим образом вибрати вектор із вхідної множини.
Для кожного вихідного нейрона j обчислити відстань (2) між його вектором ваг wj і вхідним вектором х ;
/
Знайти вихідний нейрон-переможець jтіn з мінімальною відстанню (2) min(dj).
Для вихідного нейрона-переможця)тіп і для його сусідів з околу (3) оновлюються вектори ваг за правилом (4).
/
Повторити для всіх елементів вхідної множини.
Цикл навчання триває до досягнення системою потрібного стану. Як критерії зупинки процесу навчання можна використати наступні:
Топологічна впорядкованість карти ознак (матриці ваг).
Зміни ваг стають незначними.
Вихід мережі стабілізується, тобто вхідні вектора не переходять між кластерними елементами.
Отже, основний ітераційний алгоритм Кохонена послідовно проходить ряд епох, на кожній з яких обробляється один приклад з навчальної вибірки. Вхідні сигнали послідовно пред’являються мережі, при цьому бажані вихідні сигнали не визначаються. Після пред'явлення достатнього числа вхідних векторів синаптичні ваги мережі стають здатні визначити кластери. Ваги організуються так, що топологічно близькі вузли чутливі до схожих вхідних сигналів.
У результаті роботи алгоритму центр кластера встановлюється в певній позиції, що задовільно кластеризує приклади, для яких даний нейрон є "переможцем". У результаті навчання мережі необхідно визначити із сусідства нейронів, тобто околу, нейрон-переможець.
Окіл - це кілька нейронів, які оточують нейрон-переможець. Спочатку до околу належить велика кількість нейронів, далі її розмір поступово зменшується.
Отриману карту можна використати як засіб візуалізації під час аналізу даних. У результаті навчання карта Кохонена класифікує вхідні приклади на кластери (групи схожих прикладів) і візуально відображає багатомірні вхідні дані на площині нейронів.
Унікальність методу карт, що самоорганізуються, полягає в перетворенні n-вимірного простору у двовимірний. Застосування двовимірних сіток пов’язане з тим, що існує проблема відображення просторових структур більшої розмірності.
Маючи таке подання даних, можна візуально визначити наявність або відсутність взаємозв'язку у вхідних даних.
Карти Кохонена розташовують у вигляді двовимірної матриці, розфарбовують цю матрицю залежно від аналізованих параметрів нейронів.
/
Рис. 2. Приклад карти Кохонена
Що ж означає її розфарбування.Як ми бачимо, темно-сині ділянки на карті відповідають найменшим значенням показника, червоні - найвищим. Тепер, вертаючись до рис.2, ми можемо сказати, які об'єкти мають найбільші значення розглянутого показника (група об'єктів, позначена червоним кольором), а які - найменші значення (група об'єктів, позначена синім кольором).
Таким чином, карти Кохонена (як і географічні карти) можуть відображати:
у двомірному вигляді, тоді карта розфарбовується відповідно до рівня виходу нейрона;
у тривимірному виді.
У результаті роботи алгоритму одержуємо такі карти:
карта входів нейронів;
карта виходів нейронів;
спеціальні карти.
Координати кожної карти визначають положення одного нейрона. Так, координати [15:30] визначають нейрон, що перебуває на перетинанні 15-го стовпця з 30-м поруч у матриці нейронів. Розглянемо, що ж являють собою ці карти.
Карта входів нейронів
Ваги нейронів підбудовуються під значення вхідних змінних і відображають їх внутрішню структуру. Для кожного входу рисуємо свою карту, яка розфарбована у відповідності зі значенням конкретної ваги нейрона.
При аналізі даних використають кілька карт входів.
На одній з карт виділяють область певного кольору - це означає, що відповідні вхідні приклади мають приблизно однакове значення відповідного входу. Колірний розподіл нейронів із цієї області аналізується на інших картах для визначення схожих або відмітних характеристик.
Карта виходів нейронів
На карту виходів нейронів проектується взаємне розташування досліджуваних вхідних даних. Нейрони з однаковими значеннями виходів утворять кластери - замкнуті області на карті, які включають нейрони з однаковими значеннями виходів.
Спеціальні карти
Це карта кластерів, матриця відстаней, матриця щільності влучення й інших карт, які характеризують кластери, отримані в результаті навчання мережі Кохонена.
Важливо розуміти, що між всіма розглянутими картами існує взаємозв'язок - всі вони є різними розфарбуваннями тих самих нейронів. Кожен приклад з навчальної вибірки має те саме розташування на всіх картах.
Виконання роботи
Імпортую попередньо сформовані дані, проходячи необхідні кроки майстра імпорту
/
/
/
/
/
/
По завершенню імпортування даних отримую наступну таблицю
/
Імпортовані дані
Завантажую майстер обробки даних і обираю «Карта Кохонена» та проходжу необхідні кроки для обробки наявних даних
/
/
/
/
/
/
/
/
/
Результати:
/
/
Зміню процес відображення карт та увімкнув відображення таблиці з даними для того, щоб дослідити де який об’єкт знаходиться на картах
/
Висновок: отже, на цій лабораторній роботі я ознайомився із застосуванням карт, що самоорганізуються (self-organizing map (SOM)) для розв’язання задач кластеризації.