УДК 004.722
А.В. Паращинец, А.Е. Ефремова
Нейросетевой алгоритм кластеризации узлов беспроводной сенсорной сети на основе самоорганизующейся карты Кохонена
Исследуется нейросетевой алгоритм кластеризации узлов беспроводной сенсорной сети на основе самоорганизующейся карты Кохонена. Рассматриваются различные критерии для кластеризации узлов беспроводной сенсорной сети. Представлены результаты моделирования алгоритма кластеризации узлов беспроводной сенсорной сети с помощью самоорганизующейся карты Кохонена.
Ключевые слова: беспроводная сенсорная сеть, нейросетевой алгоритм, кластеризация, самоорганизация, топология сети.
ао1: 10.21293/1818-0442-2018-21-4-87-91
В настоящее время количество предметов окружающего мира, обладающих встроенным приемопередающим модулем, неуклонно растет [1]. К таким предметам относятся носимая электроника, предметы быта, различное промышленное оборудование и т.д. Появление такого направления развития не случайно, оно обусловлено неуклонно набирающей популярность концепцией «Интернет вещей», которая подразумевает объединение предметов окружающего нас физического пространства в локальные сети, а затем и в глобальную вычислительную сеть [2].
Одна из основополагающих технологий, лежащих в основе концепции Интернета вещей, - это беспроводные сенсорные сети.
Беспроводные сенсорные сети (БСС) - распределенные сети, состоящие из множества автономных приемопередающих модулей (узлов БСС), способных к самоорганизации и масштабированию [3].
БСС способны решать широкий спектр задач, таких как: мониторинг местности без вмешательства человека, обеспечение связи между подвижными объектами, создание адаптивных охранных систем и многое другое [4]. Такой широкий спектр решаемых задач ставит очень высокие и зачастую различные требования к сети.
На текущем этапе развития беспроводные сенсорные сети имеют множество реализаций, которые различаются по ряду критериев: методу доступа к каналу связи, структуре сети, способу маршрутизации сообщений в сети, составу аппаратной части, возможности подзарядки узлов и длительности автономной работы, наличию в сети устройств, принимающих решения, объему передаваемых данных, требованиям к надежности и др. [5].
Создание универсальной БСС, удовлетворяющей требованиям всех вышеперечисленных задач, технически невозможно, однако аналитически и практически установлено, что оптимальной конфигурацией сети по ряду параметров является иерархическая многоинтервальная модель построения [6]. На рис. 1 представлена иерархическая многоинтервальная модель БСС. В данной модели особо важным процессом, который определяет эффективность построения сети, является кластеризация узлов БСС.
® - базовая станция;
О - узел БСС.
Рис. 1. Иерархическая многоинтервальная модель БСС
Таким образом, нахождение оптимальных алгоритмов кластеризации, которые позволят максимально задействовать все имеющиеся узлы БСС и снизят энергопотребление сети в целом, является важной задачей для построения наиболее универсальной реализации БСС, удовлетворяющей наиболее широкому спектру задач.
Цели и задачи
Целью работы является совершенствование алгоритмов кластеризации узлов БСС путем использования нейросетевого алгоритма кластеризации, известного как самоорганизующаяся карта Кохонена.
Исходя из цели, были определены следующие задачи:
1) выбор признака для проведения кластеризации узлов БСС;
2) изучение алгоритма работы и математического аппарата самоорганизующейся карты Кохонена;
3) моделирование нейросетевого алгоритма самоорганизующейся карты Кохонена;
4) анализ результатов программного моделирования.
Выбор признака для кластеризации узлов
Кластеризация узлов, входящих в состав БСС, может производится на основе нескольких признаков, таковыми могут являться [6]:
- месторасположение узлов сети;
- уровень остаточной энергии узла;
- уровень мощности сигналов узлов.
Использование данных о местоположении узлов в качестве критерия кластеризации сети имеет ряд недостатков, а именно:
- увеличивается вычислительная нагрузка на каждый узел;
- увеличивается энергопотребление каждого узла;
- увеличивается сложность конструкции узла;
- корректность работы системы полностью зависит от правильности определения местоположения каждого узла.
Таким образом, использование данных о местоположении не является универсальным критерием для кластеризации сети, хотя этот подход и может быть использован в ряде частных случаев БСС, ровно как и уровень остаточной энергии узла, который не отражает реального состояния сети, в том числе связности топологии выстраиваемой сети.
Использование уровня мощности сигналов узлов, напротив, обладает рядом преимуществ:
- данные о взаимной мощности могут быть получены без усложнения конструкции узла БСС, напрямую с приемопередающего модуля;
- не увеличивается вычислительная нагрузка на
узел;
- не увеличивается энергопотребление.
Поскольку концепция БСС подразумевает под
собой низкие вычислительные затраты, а также низкое энергопотребление и простую конструкцию узлов, входящих в её состав, использование кластеризации на основе данных о мощности сигналов узлов друг к другу можно считать технически оправданным решением.
Самоорганизующаяся карта Кохонена
Самоорганизующаяся карта Кохонена (self-organizing map, SOM) - результат процесса непараметрической регрессии, который может использоваться для представления многомерных, нелинейно связанных элементов данных в наглядной форме, часто в виде двумерного изображения, а также для выполнения классификации без учителя и кластеризации [7]. Иными словами, SOM можно охарактеризовать как один из видов искусственной нейронной сети (ИНС), основанной на обучении без учителя.
Обобщенная модель карты самоорганизации Кохонена представлена на рис. 2 [7, 8]. Приведенная на рисунке конфигурация состоит из четырех нейронов и входного массива из трех элементов.
Рис. 2. Карта самоорганизации Кохонена
На рис. 2 приведена обобщенная модель 80М, в приведенной модели нейроны расположены на
двухмерной плоскости и представляют собой узлы карты 80М. Каждый элемент входного вектора X (входные данные) поступает на каждый из нейронов решетки. В свою очередь, каждый нейрон обладает вектором весовых коэффициентов который непрерывно обновляется в процессе обучения.
Необходимо отметить, что существуют различные конфигурации 80М, различия могут заключаться не только в количестве нейронов, входящих в состав решетки, но также и в конфигурации решетки, функции обновления весовых коэффициентов, также различными могут быть размерности массива данных X, поступающих на вход нейросети.
Обучение 80М может быть условно разделено на три этапа: конкуренция, кооперация и адаптация [7].
Алгоритм 80М для некоторой решетки нейронов можно кратко выразить в выполнении следующих пунктов [7-9]:
1. Для всех векторов решетки 80М происходит инициализация векторов весовых коэффициентов Wj размерностью, совпадающей с размером входных данных X; в качестве значений весовых коэффициентов выбирается случайное значение от -1 до 1, в некоторых случаях от 0 до 1.
2. Происходит выбор вектора из входного пространства X.
3. Поиск победившего нейрона. В качестве метрики зачастую используется критерий минимума Евклидова расстояния между вектором входных значений и вектором весовых коэффициентов.
4. Вычисление топологической окрестности И^, с учетом текущего шага обучения п вокруг победившего нейрона. Внутри топологической окрестности нейроны, соседствующие с победившим нейроном, изменяют свои весовые коэффициенты некоторым образом, а именно в соответствии с параметром скорости обучения п и нахождением внутри топологической окрестности. Победивший нейрон также изменяет свои весовые коэффициенты.
5. Изменяются параметры скорости обучения п, а также параметр эффективной ширины топологической окрестности с, в соответствии с заданным законом изменения.
6. Происходит возвращение ко второму шагу.
Самоорганизующаяся карта Кохонена имеет
следующие основные особенности:
- необходимость подбора констант ть т2, а также начальных значений с0 и п0;
- обучение 80М состоит из двух этапов: этап самоорганизации, в процессе которого происходит основной цикл обучения и изменения основных величин, и этап сходимости, на котором выполняется точная подстройка карты, а значение эффективной ширины и как следствие топологической окрестности больше не меняется;
- 80М преобразует непрерывное исходное пространство данных X в дискретное выходное пространство;
- 80М позволяет выявить неявную корреляцию между входными данными;
- SOM не имеет обратного распространения (back propagation, BP);
- SOM может обладать различной конфигурацией, т.е. сетка нейронов не обязательно должна быть квадратной, возможны также гексагональные и различные другие модификации расположения нейронов в сетке, все зависит от типа входных данных [7-9].
Моделирование нейросетевого алгоритма SOM и анализ результатов
Цель проведения моделирования кластеризации узлов БСС посредством нейросетевого алгоритма -самоорганизующейся карты Кохонена состоит в подтверждении возможности использования предложенного математического аппарата в качестве алгоритма кластеризации, а в качестве критерия для кластеризации - уровней мощности сигналов узлов БСС друг к другу.
Инструментами моделирования были выбраны язык программирования Python версии 3.6.4, а также фреймворки pandas, numpy и TensorFlow [10].
На вход SOM был подан массив, представляющий собой матрицу размером n на n, где n - количе-ство узлов БСС, элементы матрицы Pp представляют собой уровень мощности узла i по отношению к узлу p.
В случае если i = j, то pp = 1, так как узел по отношению к себе условно имеет максимальный уровень мощности излучения.
Подавая сформированный массив на вход самообучающегося алгоритма ИНС, можно выделить степень подобия между строками данного массива, иными словами, выделить кластеры в данных, а значит, и в узлах БСС. Приведены результаты кластеризации узлов при различных исходных данных.
1. Узлы распределены согласно равномерному распределению на квадратном поле с размером стороны 1000 м, дальность покрытия одного узла 200 м. Узлы разделены на 4 кластера с помощью алгоритма SOM (рис. 3).
1000
800
600
400
200
Y, м
«*«____V
— ■»-
„© 0 © о
V 'U í" е
T^tí ;/ Н *
L
Кластер [1,0] [0.0] [1,1] [0.1]
О 250 500 750 1000 Рис. 3. Кластеризация равномерно распределенных узлов на 4 кластера
2. Узлы сосредоточены вокруг локальных центров на квадратном поле размером 1000 м, даль-
ность покрытия одного узла 200 м. Узлы разделены на 4 кластера с помощью алгоритма 80М (рис. 4).
3. Узлы распределены согласно равномерному распределению на квадратном поле с размером стороны 1000 м, дальность покрытия одного узла 200 м. Узлы разделены на 9 кластеров с помощью алгоритма 80М (рис. 5).
У, м
1000 800 -
600
400
200
0
Кластер
[1.1] [1.0] [0,0] [0.1]
X, м
0 250 500 750 1000 Рис. 4. Кластеризация равномерно распределенных узлов на 4 кластера
Y, м
1000
800
600
400
200
О
0
250
a*' H¡.; Кластер
' ' ÁfjíViéZi X [2,0]
А [0,2]
Vf + [1.2] * [2. 1] • И [2,2] ® 10, 1] [1.0] [1,1]
X, м
500 750 1000 Рис. 5. Кластеризация равномерно распределенных узлов на 9 кластеров
Как видно из рис. 5, кластеризация в некоторых случаях может производиться неравномерно, это объясняется тем, что на этапе конкуренции в решетке возможно образование так называемых «мертвых нейронов», т.е. нейронов, векторы весовых коэффициентов которых в значительной степени отличаются от входных векторов. В результате чего эти нейроны никогда не выигрывают в процессе обучения, и с каждой итерацией эта разница между векторами весовых коэффициентов и входными векторами лишь усиливается. Таким образом, нейрон лишается возможности выиграть и становиться «мертвым», следовательно, входные данные интерпретируются меньшим количеством классов, т. е. разбиваются на меньшее количество кластеров, чем необходимо [11, 12]. Это приводит к тому, что в ситуации, когда узлы будут представлять собой реальные физические устройства, неверная кластеризация может привести к
потере весомой доли связности в системе и некорректной работе всей БСС.
Проблему «мертвых нейронов» можно решить с использованием так называемого конструктивного метода обучения SOM [11, 12]. Суть этого метода обучения - дать всем нейронам одинаковый шанс выиграть на этапе конкуренции путем добавления параметра потенциала каждому нейрону при инициализации SOM. При этом параметр потенциала нейрона обновляется с каждой итерацией обучения согласно некоторому закону, по достижении минимального потенциала нейрон исключается из борьбы, нейроны, достигшие максимального потенциала, выигрывают по очереди, так как в каждом цикле только один из нейронов готов к борьбе.
Описанный алгоритм кластеризации на основе SOM может быть использован для создания реальной системы БСС посредством использования устройства Intel Movidius NCS. Intel Movidius NCS представляет собой модуль для нейронных вычислений и может быть задействован в переносимых устройствах с низким энергопотреблением [13-15].
Заключение
Актуальность проведенного исследования заключается в возможности использования в качестве алгоритма кластеризации узлов БСС метода машинного обучения, известного как самоорганизующаяся карта Кохонена и являющегося искусственной нейронной сетью. Использование методов машинного обучения, в частности искусственных нейронных сетей, позволит добиться высокой адаптивности процессов, выполняющихся во время функционирования БСС, что в свою очередь может повысить качество построения сети и добиться универсальности применений БСС для различных задач.
Тем не менее, как видно из моделирования процесса кластеризации, необходимо использовать дополнительные методики обучения самоорганизующейся карты Кохонена для препятствия образованию «мертвых нейронов». Одной из таких методик может служить конструктивный метод обучения SOM.
Литература
1. The Dynamic Demands of IoT in a Connected World [Электронный ресурс]. - Режим доступа: https://www.ad-ventone.com/wp-content/files_mf/1464326780 Whitepaper-TheDynamicDemandsofIoTinaConnectedWorld.pdf (дата обращения: 05.04.2018).
2. That 'Internet of Things' Thing [Электронный ресурс]. - Режим доступа: http://www.rfidjournal.com/artic-les/pdf?4986 (дата обращения: 05.04.2018).
3. Росляков А.В., Ваняшин С.В., Гребешков А.Ю., Самсонов М.Ю. Интернет вещей / под ред. А.В. Рослякова. - Самара: ПГУТИ, Изд-во «Ас Гард», 2014. - 342 с.
4. Лаборатория физических основ и технологий беспроводной связи. Беспроводные сенсорные сети [Электронный ресурс]. - Режим доступа: http://www.wl.unn.ru/ study/?page=4 (дата обращения: 15.03.2018).
5. Кашпур М.А., Кориков А.М. Задачи оптимизации в беспроводных сенсорных сетях // Природные и интеллектуальные ресурсы Сибири (СИБРЕСУРС-23-2017):
доклады (материалы конференции) 23-й Междунар. науч.-практ. конф., Томск, 24 ноября 2017 г. - Томск: Изд-во ТУСУР, 2017. - С. 94-97.
6. Махров С.С. Исследование связности узлов в иерархических протоколах беспроводных сенсорных сетей // Фундаментальные проблемы радиоэлектронного приборостроения: матер. междунар. науч.-техн. конф. «INTERMATIC-2013», 2-6 декабря 2013 г., Москва / под ред. А.С. Сигова. - М.: Энергоатомиздат, 2013. - Ч. 4. -C. 186-189.
7. Кохонен Т. Самоорганизующиеся карты: пер 3-го англ. изд. - 2-е изд. (эл.). - М.: БИНОМ. Лаборатория знаний, 2014. - 655 с.
8. Карта самоорганизации (Self-orginizing map) на TensorFlow [Электронный ресурс]. - Режим доступа: https://habr.com/post/334810/ (дата обращения: 07.03.2018).
9. Нестандартная кластеризация 4: Self-Organizing Maps, тонкости, улучшения, сравнение с t-SNE [Электронный ресурс]. - Режим доступа: https://habr.com/post/ 338868/ (дата обращения: 08.03.2018).
10. Лутц М. Изучаем Python. - 4-е изд.: пер. с англ. -СПб.: Символ-Плюс, 2011. - 1280 с.
11. Махров С.С. Нейросетевая кластеризация узлов беспроводной сенсорной сети // T-COMM: Телекоммуникации и транспорт. - 2014. - № 6. - С. 31-35.
12. Баталов А.С. Методы повышения эффективности обучения нейронной сети Кохонена // Вестник Перм. унта. Сер.: Математика. Механика. Информатика. - 2012. -Вып. 3 (11). - С. 86-93.
13. NCSDK Documentation [Электронный ресурс]. -Режим доступа: https://movidius.github.io/ncsdk/ (дата обращения: 09.03.2018).
14. Intel Movidius Neural Compute Stick [Электронный ресурс]. - Режим доступа: https://developer.movidius.com/ (дата обращения: 09.03.2018).
15. Mouser Electronics [Электронный ресурс]. - Режим доступа: https://ru.mouser.com/new/intel/intel-movidius-stick/ (дата обращения: 09.03.2018).
Паращинец Александр Викторович
Аспирант каф. автоматизированных систем управления
(АСУ) Томского университета систем управления
и радиоэлектроники (ТУСУР)
Ленина пр-т, д. 40, г. Томск, Россия, 634050
Тел.: +7-923-403-62-84
Эл. почта: [email protected]
Ефремова Алёна Евгеньевна
Магистрант каф. радиотехнических систем (РТС) ТУСУРа
Ленина пр-т, д. 40, г. Томск, Россия, 634050
Тел.: +7-923-403-62-68
Эл. почта: [email protected]
Parashchinec A.V., Efremova A.E.
Neural network algorithm for clustering wireless sensor network nodes based on Kohonen self-organizing maps
The neural network algorithm for clustering the nodes of a wireless sensor network based on the Kohonen self-organizing map is investigated. Various methods for clustering nodes of a wireless sensor network are considered. The results of clustering modeling using a neural network algorithm for clustering the nodes of a wireless sensor network are
presented. A method to improve the quality of neural clustering network is also presented.
Keywords: wireless sensor network, neural network algorithm, clustering, self-organization, network topology. doi: 10.21293/1818-0442-2018-21-4-87-91
References
1. The Dynamic Demands of IoT in a Connected World. ADVENT ONE Publ. Available at: https://www.advento-ne.com/wp-content/files_mf/1464326780WhitepaperTheDy-namicDemandsofIoTinaConnectedWorld.pdf (accessed: April 05, 2018).
2. That «Internet of Things» Thing. RFID JOURNAL Publ. Available at: http://www.rfidjournal.com/articles/pdf74986 (accessed: April 05, 2018).
3. Roslyakov A.V., Vanyashin S.V., Grebeshkov A.Yu., Samsonov M.Yu. Internet Veshchei: monografya [Internet of Things: a monograph]. Samara, Izd-vo «As Gard» Publ., 2014. 342 p. (in Russ.)
4. Laboratory of physical fundamentals and wireless technologies. Wireless sensor networks. Available at: http://www.wl.unn.ru/study/?page=4 (accessed: March 15, 2018).
5. Kashpur M.A., Korikov A.M. Zadachi optimizatsii v bes-provodnykh sensornykh setyakh Optimization problems in Wireless Sensor Networks]. Prirodnye i intellektu-al'nye re-sursy Sibiri (SIBRESURS-23-2017): doklady (materialy kon-ferentsii) 23-i Mezhdunarodnoi nauchno-prakticheskoi kon-ferentsii. [Proc. of the twenty-third international scientific-practical conference]. Tomsk, TUSUR Publ,, 2017, pp. 94-97 (in Russ.).
6. Makhrov S.S. Issledovanie svyaznosti uzlov v ier-arkhicheskikh protokolakh besprovodnykh sensornykh setei. [Investigation of the connectivity of nodes in the hierarchical protocols of wireless sensor networks] Fundamental'nye prob-lemy radioelektronnogo priborostroeniya: Materialy mezhdu-narodnoi nauchno-tekhnicheskoy konferentsii «INTERMATIC-2013» [Fundamental problems of radio electronic instrument making: Materials of Int. scientific-techn. Conf. «INTERMATIC-2013»]. Moscow, Energoatomizdat Publ., 2013, vol. 4, pp. 186-189.
7. Kokhonen T. Self-organizing maps. 3rd ed. Luxembourg, 2001. 502 p. (Russ. ed.: Strigunova M.S., Lozin-
91
skaya N.A., Novak N.A. Samoorganizuyushchiesya karty. Moscow, BINOM. Laboratoriya znanii Publ., 2014. 655 p.).
8. Self-organizing map on TensorFlow. Available at: https://habr.com/post/334810/ (accessed March 07, 2018).
9. Non-standard clustering 4: Self-Organizing Maps, subtleties, improvements, comparison with t-SNE. Available at: https://habr.com/post/338868/ (accessed: March 08, 2018).
10. Lutz M. Learning Python. 4th ed. O'Reilly Media, 2010. 1628 p. (Russ. ed.: Galunov A., Makarova N., Shchego-lev P., Bochina Yu., Minin S., Chubarov K. Izuchaem Python. Saint Petersburg, Simvol-Plyus Publ., 2011. 1280 p.).
11. Makhrov S.S. Neural network clustering of wireless sensor network nodes. T-COMM: Telecommunications and Transport, 2014, no. 6, pp. 31-35 (in Russ.).
12. Batalov A.S. Methods for increasing the efficiency of training the Kohonen neural network. Bulletin of Perm University. Series «Mathematics, Mechanics, Informatics», 2012, vol. 3, no. 11, pp. 86-93 (in Russ.).
13. NC SDK Documentation. Available at: https://movidius.github.io/ncsdk/ (accessed: March 09, 2018).
14. Intel Movidius Neural Compute Stick. Available at: https://developer.movidius.com/ (accessed: March 09, 2018).
15. Mouser Electronics. Available at: https://ru.mouser.com/ new/intel/intel-movidius-stick/ (accessed: March 09, 2018).
Alexander V. Parashchinec
PhD student, Department of Automated Control System,
Tomsk State University of Control Systems and
Radioelectronics (TUSUR)
40, Lenin pr., Tomsk, Russia, 634050
Phone: +7-923-403-62-84
Email: [email protected]
Alena E. Efremova
Master student, Department of Radio Engineering Systems,
Tomsk State University of Control Systems and
Radioelectronics (TUSUR)
40, Lenin pr., Tomsk, Russia, 634050
Phone: +7-923-403-62-68
Email: [email protected]