Самоорганізовані карти (Self Organizing Maps – SOM) як один з різновидів нейромережевих алгоритмів.

Самоорганізовані карти (Self Organizing Maps – SOM) це один з різновидів нейромережевих алгоритмів. Основною відмінністю даної технології від розглянутих нами раніше нейромереж, яких навчають за алгоритмом зворотного поширення, є те, що при навчанні використовується метод навчання без вчителя, то є результат навчання залежить тільки від структури вхідних даних. Нейронні мережі денного типу часто застосовуються для вирішення різних завдань, від відновлення пропусків в даних до аналізу даних і пошуку закономірностей, наприклад, у фінансовій завданню.

Основи самоорганізованих карт. Алгоритм функціонування самообучающихся карт представляє собою один з варіантів кластеризації багатовимірних векторів. Прикладом таких алгоритмів може служити алгоритм найближчих середніх (з-means). Важливою відмінністю алгоритму SOM є те, що в ньому всі нейрони (вузли, центри класів) упорядковані в деяку структуру (зазвичай двовимірну сітку). При цьому в ході навчання модифікується не тільки нейрон-переможець, але і його сусіди, але в меншій мірі. За рахунок цього SOM можна вважати одним з методів проектування багатовимірного простору в простір з більш низькою розмірністю При використанні цього алгоритму вектора, схожі у вихідному просторі, виявляються поруч і на отриманій карті.

Структура самоорганізованих карт. SOM увазі використання впорядкованої структури нейронів. Зазвичай використовуються одно-й двовимірні сітки. При цьому кожен нейрон являє собою і-мірний вектор-стовпець w ~ [щ, і; 2 ,…, w n], де п визначається розмірністю початкового простору (розмірністю вхідних векторів). Застосування одно-і двовимірних сіток пов’язано з тим, що виникають проблеми при відображенні просторових структур більшої розмірності (при цьому знову виникають проблеми з пониженням розмірності до двовимірної, представимо на моніторі).

Зазвичай нейрони розташовуються у вузлах двовимірної сітки з прямокутними або шестикутними осередками. При цьому, як було сказано вище, нейрони також взаємодіють один з одним. Величина цієї взаємодії визначається відстанню між нейронами на карті.

Початкова ініціалізація карти. При реалізації алгоритму SOM заздалегідь задається конфігурація сітки (прямокутна або шестикутна), а також кількість нейронів у мережі. Деякі джерела рекомендують використовувати максимально можливу кількість нейронів в карті. При цьому початковий радіус навчання (neighborhood в англомовній літературі) в значній мірі впливає на здатність узагальнення при допомоги, отриманої карти. У випадку, коли кількість вузлів карти перевищує кількість прикладів у навчальній вибірці, то успіх використання алгоритму у великій мірі залежить від відповідного вибору початкового радіуса навчання. Однак у випадку, коли розмір карти складає десятки тисяч нейронів, час, необхідний на навчання карти, зазвичай буває занадто велике для вирішення практичних завдань, таким чином, необхідно досягати допустимого компромісу при виборі кількості вузлів.

Перед початком навчання карти необхідно проініціалізувати вагові коефіцієнти нейронів. Вдало вибраний спосіб ініціалізації може істотно прискорити навчання і привести до одержання більш якісних результатів. Існують три способи ініціювання початкових ваг:

1. ініціалізація випадковими значеннями, коли всім вагам даються малі випадкові величини;

2. ініціалізація прикладами, коли в якості початкових значень задаються значення випадково вибраних прикладів з навчальної вибірки;

3. лінійна ініціалізація. У цьому випадку ваги ініціюються значеннями векторів, лінійно упорядкованих уздовж лінійного підпростору, що проходить між двома головними власними векторами вихідного набору даних. Власні вектори можуть бути знайдені, наприклад, за допомогою процедури Грама-Шмідта.

Навчання самоорганізованих карт. Навчання складається з послідовності корекцій векторів, що представляють собою нейрони. На кожному кроці навчання з вихідного набору даних випадково вибирається один з векторів, а потім здійснюється пошук найбільш схожого на нього вектора коефіцієнтів нейронів. При цьому вибирається нейрон-переможець, який найбільш схожий на вектор входів. Під схожістю в даній задачі розуміється відстань між векторами, звичайно обчислюється в евклідовому просторі. Після того, як знайдено нейрон-переможець, проводиться коригування ваги нейро-мережі. При цьому вектор, що описує нейрон-переможець, і вектори, що описують його сусідів у сітці, переміщаються в напрямку вхідного вектора.

2 thoughts on “Самоорганізовані карти (Self Organizing Maps – SOM) як один з різновидів нейромережевих алгоритмів.

    1. Цікаве питання. На нашу думку нейромережі можуть використовуватись для орієнтації та пошуку маршрутів в автонавігації і керування авто. Не виключається також ймовірність, що гугл автопілот або інші аналогічні проекти реалізовані в частині штучного інтелекту власно на нейротехнологіях. Із останніх прикладів інтелектуального застосування нейромереж можна назвати – програмне забезпечення для реалістичного кольорового розфарбовування фото- і відеоматеріалів, інструментарій стильової обробки фотографій під відомих художників, системи розпізнавання облич по фото- і відеоматеріалах в Інтернеті і т.п. В більшості випадків мова йде про розв’язання складних завдань розпізнавання образів, ідентифікацію об’єктів, алгоритми навчання і самонавчання та прийняття рішень. Отже, це основні складові механізмів, знань і навичок керування автомобілем.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *