- PVSM.RU - https://www.pvsm.ru -
(В данной статье не объясняются базовые понятия теории нейронных сетей. Для тех, кто не знаком с ними, перед прочтением советую ознакомиться для исключения дальнейших заблуждений.)
Суть этого текста, заключается в ознакомлении с некоторыми видами нейронных сетей, которые на русскоязычных просторах освещаются, не так часто, если не сказать что и вовсе, крайне редко.
Идея логических нейросетей, заключается в установлении на каждый нейрон скрытого слоя одну, из логических операций: конъюнкцию или дизъюнкцию.
Иллюстрация из книги «Логические нейронные сети», стр. 241
Почему подобный вид нейросетей стоит относить к RBNN? Потому что описанные выше логические операции и есть своеобразные правила, которые выражают отношения входных параметров между собой.
Описанное выше понятия «начальных правил» можно обозначить проще – база знаний. Для тех, кто знаком с системами нечеткого(Fuzzy)-управления это определение будет не ново.
База знаний – это место где находятся все наши правила в виде выражений «ЕСЛИ Х1 ИИЛИ Х2 ТОГДА У» и.т.д. Почему я упомянула именно нечеткие системы? Потому что создание Fuzzy-регулятора можно представить в качестве первой стадии создания RBNN, также из-за того, что именно они натолкнули меня на идею о превращении обычных нейросетей в нечто подобное.
Предположим, у нас есть база знаний и построенная на ней небольшая экспертная система. В виде графов это можно было бы выразить так:
Источник: www.lund.irf.se/HeliosHome/rulebased.html [1]
Теперь вопрос, как из этой строгой системы сделать обучающуюся нейросеть?
Во первых, важным моментом является внесение в подобную структуру веса, на каждое ребро. Каждый вес будет отражать вероятность отношения того, или иного элемента к группе других (например входной параметр А к первому нейрону скрытого слоя, соответственно к причастности к группе АВ ), или же к ответу X, Y, Z и.т.д.
Возможно читателю будет не совсем ясно где могут пригодится такие нейросети, — в таком случае я приведу довольно простой пример:
Предположим, у нас нет большой выборки данных, а лишь только "обобщенное мнение". Мы хотим создать нейросеть которая выдавала бы индивидуальное меню для человека.
Предположим, что мы вообще ничего не знаем о вкусах и предпочтениях данного пользователя, но с чего-то начинать все-таки нужно. Мы составляем обобщенную схему типичного меню:
Соответственно в первые дни человек получает именно такое меню, но с «знакомством» нейросети с предпочтениями пользователя, вес связывающий завтрак и омлет становится меньше, а вес связывающий завтрак и кашу увеличивается. Соответственно теперь, нейросети «ясно», что именно предпочитает пользователь в тот, или иной прием пищи (в данном случае, оказывается нашему пользователю больше нравится каша на завтрак, а не омлет). С течением времени, возможно предпочтения человека будут меняться и нейросеть снова будет подстраиваться под них.
Итак. Как минимум, сети RBNN могут быть очень полезны в случаях, когда нет больших выборок, когда их, вообще нет и также, когда нам нужна система которая полностью подстраивалась бы под конкретного человека. Более того, подобные нейросети довольно просты, что позволяет использовать их для обучения других людей и понятного объяснения действия нейронных сетей.
Ранее всегда было принято говорить о том, что нейросеть представляет из себя «черный ящик», и все, что находится внутри нее, доступным образом никак нельзя объяснить. Сейчас же, имея представленную выше структуру, есть возможность построить нейросеть которая была бы не только эффективной, но и доступной для понимания окружающих её же механизма.
Автор: burn7ng
Источник [2]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/mashinnoe-obuchenie/292695
Ссылки в тексте:
[1] www.lund.irf.se/HeliosHome/rulebased.html: http://www.lund.irf.se/HeliosHome/rulebased.html
[2] Источник: https://habr.com/post/423393/?utm_campaign=423393
Нажмите здесь для печати.