Нейронний газ
Нейронний газ — це штучна нейронна мережа, натхненна самоорганізаційною картою і введена в 1991 році Томасом Мартинецем[en] і Клаусом Шультеном[1]. Нейронний газ є простим алгоритмом для знаходження оптимальних відображень даних на основі векторів ознак. Алгоритм був названий «нейронним газом» через схожість динаміки векторів ознак в процесі адаптації, які розподіляють себе як газ в просторі даних. Він застосовується там, де стиснення даних або векторне квантування[en] є проблемою в таких областях, як розпізнавання мовлення,[2] обробка зображень[3] або розпізнавання образів. Кластеризація методом k-середніх також використовується для кластерного аналізу, як надійно збіжна альтернатива.[4]
Алгоритм[ред. | ред. код]
Дано розподіл ймовірностей векторів даних і скінченне число векторів ознак .
З кожним кроком часу ,представлений вектор даних випадково вибирають з . Потім визначається порядок відстані векторів ознак до заданого вектора даних . Нехай позначає індекс найближчого вектора ознаки, — індекс другого найближчого вектора ознак, а — індекс вектора ознак, найбільш віддаленого вектора . Потім кожен вектор ознак адаптується відповідно до
де — розмір етапу адаптації і — так званий діапазон сусідства. Значення та зменшуються зі збільшенням . Після досить багатьох етапів адаптації вектори ознак охоплюють простір даних з мінімальною помилкою подання.[5]
Етап адаптації нейронного газу можна інтерпретувати як градієнтний спуск за функцією втрат. Шляхом адаптації не тільки найближчого вектора ознак, але й усіх векторів зі зменшенням розміру кроку при збільшенні порядку відстані. У порівнянні з (онлайн) кластеризацією методом k-середніх можна досягти набагато більш надійної збіжності алгоритму. Модель нейронного газу не видаляє вузлів, також не створює нових вузлів.
Варіанти[ред. | ред. код]
У літературі існує ряд варіантів алгоритму нейронного газу, що дозволяє пом'якшити деякі його недоліки. Більш помітним є, можливо, зростаючий нейронний газ Бернда Фріцке[6], але також слід згадати подальші розробки, такі як зростаюча при необхідності мережа[7], а також додатковий зростаючий нейронний газ[8].
Зростаючий нейронний газ[ред. | ред. код]
Фрітцке описує зростаючий нейронний газ (ЗНГ) як модель інкрементної мережі, яка вивчає топологічні відносини, використовуючи «правило навчання, подібне до Хебба»[6], на відміну від нейронного газу, він не має параметрів, які змінюються з часом, він здатний до безперервного навчання.
Зростаюча при необхідності мережа[ред. | ред. код]
Наявність мережі зі зростаючою множиною вузлів, подібно до того, що реалізовано алгоритмом ЗНГ, розглядалося як велика перевага, однак, деяке обмеження на навчання було помічено введенням параметра λ, в якому мережа зможе зростати тільки тоді, коли ітерації були б кратними цьому параметру.[7] Пропозицією пом'якшити цю проблему був новий алгоритм — мережа «Зростаючий при необхідності» (ЗПН), яка дозволила б зрости мережу швидше, шляхом додавання вузлів якомога швидше, коли мережа виявила, що існуючі вузли не будуть досить добре описувати вхідні дані.
Інкрементно зростаючий нейронний газ[ред. | ред. код]
Іншим варіантом нейронного газу, натхненного алгоритмом ЗНГ, є інкрементно зростаючий нейронний газ (ІЗНГ). Авторами припускають, що основною перевагою цього алгоритму є «вивчення нових даних (пластичність) без погіршення раніше підготовленої мережі та забування старих вхідних даних (стабільності).»[8]
Примітки[ред. | ред. код]
- ↑ Thomas Martinetz and Klaus Schulten (1991). A "neural gas" network learns topologies (PDF). Artificial Neural Networks. Elsevier. с. 397—402.
- ↑ F. Curatelli and O. Mayora-Iberra (2000). Competitive learning methods for efficient Vector Quantizations in a speech recognition environment. У Osvaldo Cairó, L. Enrique Sucar, Francisco J. Cantú-Ortiz (ред.). MICAI 2000: Advances in artificial intelligence : Mexican International Conference on Artificial Intelligence, Acapulco, Mexico, April 2000 : proceedings. Springer. с. 109. ISBN 978-3-540-67354-5.
- ↑ Angelopoulou, Anastassia and Psarrou, Alexandra and Garcia Rodriguez, Jose and Revett, Kenneth (2005). Automatic landmarking of 2D medical shapes using the growing neural gas network. У Yanxi Liu, Tianzi Jiang, Changshui Zhang (ред.). Computer vision for biomedical image applications: first international workshop, CVBIA 2005, Beijing, China, October 21, 2005 : proceedings. Springer. с. 210. doi:10.1007/11569541_22. ISBN 978-3-540-29411-5.
- ↑ Fernando Canales and Max Chacon (2007). Modification of the growing neural gas algorithm for cluster analysis. У Luis Rueda, Domingo Mery, Josef Kittler, International Association for Pattern Recognition (ред.). Progress in pattern recognition, image analysis and applications: 12th Iberoamerican Congress on Pattern Recognition, CIARP 2007, Viña del Mar-Valparaiso, Chile, November 13–16, 2007 ; proceedings. Springer. с. 684—693. doi:10.1007/978-3-540-76725-1_71. ISBN 978-3-540-76724-4.
- ↑ http://wwwold.ini.rub.de/VDM/research/gsn/JavaPaper/img187.gif[недоступне посилання з 01.01.2016]
- ↑ а б Fritzke, Bernd (1995). A Growing Neural Gas Network Learns Topologies. Advances in Neural Information Processing Systems. 7: 625—632. Процитовано 26 квітня 2016.
- ↑ а б Marsland, Stephen; Shapiro, Jonathan; Nehmzow, Ulrich (2002). A self-organising network that grows when required. Neural Networks. 15 (8): 1041—1058. CiteSeerX 10.1.1.14.8763. doi:10.1016/s0893-6080(02)00078-3.
- ↑ а б Prudent, Yann; Ennaji, Abdellatif (2005). An incremental growing neural gas learns topologies. Т. 2. с. 1211—1216. doi:10.1109/IJCNN.2005.1556026. ISBN 978-0-7803-9048-5. Процитовано 26 квітня 2016.
{{cite book}}
: Проігноровано|journal=
(довідка)
Посилання[ред. | ред. код]
- DemoGNG.js Javascript симулятор нейронного газу (та інших мережевих моделей)
- Java Competitive Learning Applications Unsupervised Neural Networks (including Self-organizing map) in Java with source codes.
- формальний опис алгоритму нейронного газу
- ЗНГ та ЗПН реалізація класифікатора в Matlab