Материалы сайта
Это интересно
Математические модели естествознания
Формальный нейрон Мак-Каллока - Питтса Модель отражает единственный атрибут биологического нейрона -его способность генерировать импульсы “все, или нечего” в ответ на достаточно сильное воздействие. Нейрон Мак-Каллока - Питтса функционирует в дискретном времени. Он имеет [pic] входов -синапсов и единственный выход. Значение выходного сигнала [pic]соответствует генерации спайка (состояние возбуждения). В состоянии покоя выходной сигнал [pic]. В момент времени [pic] выходной сигнал формируется в зависимости от сигналов [pic], поступивших на синапсы в момент времени [pic]. Последние также могут принимать значения ноль или единица. Если синаптический сигнал равен нулю, то говорят, что синапс находится в состоянии покоя. Единичное значение соответствует состоянию возбуждения синапса. Сигнал на синапс поступает либо от выхода другого нейроны, либо от сенсора -специального входа для внешних сигналов. Первоначально правила формирования выходного сигнала были введены авторами модели в виде ряда аксиом. Приведем две из них. 1. Для возбуждения нейрона в момент времени [pic] необходимо в момент времени [pic] возбудить определенное, фиксированное число синапсов, которое не зависит ни от предыдущей истории, ни от состояния нейрона. 2. Нейрон имеет особые входы -тормозящие синапсы. Возбуждение любого из них в момент времени [pic] исключает возбуждение нейрона в момент времени [pic]. Первая аксиома отражает пороговые свойства нейрона, а вторая - подчеркивает особую роль торможения (на сетях “без запретов” нельзя реализовать произвольный алгоритм). Впоследствии модель изменилась. Синаптические сигналы [pic]( не обязательно бинарные) стали взвешивать и формировать суммарный входной сигнал [pic]. Здесь [pic] -числа, которые называют синаптическими весами. Синапс называют возбудительным, если [pic], и тормозным, если [pic]. Договорились, что в момент времени [pic] нейрон находится в возбужденном состоянии [pic], если суммарный входной сигнал в момент времени [pic] превысил некоторое пороговое значение [pic], т.е. [pic]. Пусть [pic] -функция Хевисайта. Она принимает нулевое значение при [pic] и единичное при [pic]. Тогда можно записать: [pic]. (12) Описанный объект есть то, что в настоящее время называют формальным нейроном Мак-Каллока - Питтса. Функция [pic] в (12) получила название функции активации. Часто рассматривают нейроны с другими функциями активации. Нулевое значение выходного сигнала означает, что в соответствующий момент времени нейрон не действует на другие нейроны (он как бы искючен из сети). Представляется разумным, что в любой момент времени [pic] выходное значение не равно нулю и зависит от величины [pic]. В связи с этим, часто берут в качестве функции активации знак числа. Формула для выходного сигнала приобретает вид: [pic]. (13) Здесь [pic] при [pic] и [pic] при [pic]. Отметим, что в данном случае поделить нейроны на возбудительные и тормозные в принципе невозможно (напомним, что для биологических нейронов такая классификация производится). Еще один подход к выбору функции активации связан с биологическим фактом, что на более сильное воздействие нейрон отвечает пачкой спайков. Число спайков (или частоту их следования) можно принять за характеристику выходного сигнала. В связи с этим рассматривают нейрон, у которого выходной сигнал задается формулой: [pic]. (14) Здесь [pic] -монотонно растущая функция, имеющая предел [pic] при [pic]. Дополнительно предполагают, что [pic] при [pic], либо [pic] при [pic] (сигмоидная функция). Широко используется так называемая логистическая функция: [pic]. Другой вариант: [pic] при [pic], например, [pic]. Иногда в качестве функции [pic] выбирают линейный трехзвенный сплайн (ломаную, состоящую из трех частей): [pic] при [pic], [pic], где [pic] и [pic], [pic] для [pic]. Тогда на восходящем участке функции активации нейрон работает как линейный сумматор входных сигналов. Рассмотрим нейрон Мак-Каллока - Питтса, выходной сигнал которого задается формулой (12). Вектор [pic], состоящий из входных сигналов (не обязательно бинарных), назовем входным, а вектор [pic]-синаптическим. Обычным образом введем скалярное произведение: [pic]. Гиперплоскость [pic] разбивает пространство [pic] на два полупространства [pic] и [pic]. В первом из них [pic], а во втором [pic]. Если входной вектор [pic], то выходной сигнал нейрона [pic], если же [pic], то [pic]. Тем самым, нейрон относит каждый из входных векторов к одному из двух классов. Для того, чтобы нейрон мог осуществлять “правильную” в каком -то смысле классификацию, должны быть соответствующим образом выбраны вектор синаптических весов [pic] и пороговое значение [pic]. Процедура выбора этих параметров называется обучением нейрона. Различают обучение с “учителем” и “без учителя”. Задача обучения с учителем ставится следующим образом. Задаются два набора входных векторов [pic] и [pic]. Они называются эталонными векторами или паттернами, а также образами. Требуется определить вектор [pic] синаптических весов и порог [pic] так, чтобы выходной сигнал нейрона в ответ на входные векторы[pic] был равен единице, а на векторы [pic] -нулю. Тем самым, обучение с учителем предполагает, что для каждого эталонного входного вектора заведомо известен ответ нейрона. Эталон и желаемый ответ называются обучающей парой. Несмотря на многочисленные прикладные достижения обучение с учителем критикуется за свою биологическую неправдоподобность, поскольку совершенно не понятно откуда могут появиться желаемые ответы. При обучении без учителя заранее неизвестно разбиение эталонов на подмножества. До обучения невозможно предсказать в какой класс попадет каждый конкретный эталонный вектор. В процессе обучения выделяются статистические свойства обучающей последовательности и вырабатываются правила классификации. Естественно идея, на которой основаны правила, априорно заложена в процесс обучения. Например, эталонные векторы усредняются по координатам. Если эталонный вектор находится от усредненного “не слишком далеко”, то он относится к первому классу, а иначе -ко второму. Постановка задачи об обучении без учителя выглядит несколько расплывчатой. Однако в ряде случаев она успешно решена. Различают также внешнее и адаптивное обучение. В первом случае синаптические веса вычисляются неким внешним устройством, а затем импортируются в синапсы. При адаптивном обучении веса подстраиваются в процессе функционирования сети, которой предъявляется обучающая последовательность эталонов. Многие авторы считают механизм адаптации неотъемлемым атрибутом нейронов. Внешнее обучение позволяет понять, во -первых, возможна ли вообще интересующая нас классификация для данной обучающей последовательности. Во -вторых, позволяет, не задумываясь о возможных механизмах адаптации, разумно выбрать синаптические веса для изучения вопроса о функционировании нейронов, объединенных в сеть. После завершения процесса обучения нейрон осуществляет классификацию векторов эталонной последовательности, т.е. “запоминает” для каждого вектора класс, к которому тот относится. Кроме этого, произвольный входной вектор нейрон относит к определенному классу, т.е. “обобщает” классификацию (принцип сортировки) эталонной последовательности на произвольный образ. Рассмотрим вопрос о разрешимости задачи обучения с учителем в частном случае, когда второе множество состоит из единственного представителя [pic]. Геометрически это означает, что строится гиперплоскость, которая отделяет векторы [pic] от нуля, т.е. решается задача об отделимости. Отметим, что для бинарных векторов, координаты которых равны либо нулю, либо единице, задача об отделимости всегда разрешима. В качестве нормального вектора можно взять, например вектор [pic]и положить для порогового значения [pic]. Нижеследующие построения на используют предположения о бинарности векторов. Легко понять, что задача об отделимости разрешима в том и только том случае, когда выпуклая оболочка векторов [pic] не содержит нуля (отделена от нуля). Напомним, что выпуклой оболочкой векторов [pic] называется множество [pic], состоящее из векторов: [pic], где [pic] и [pic]. Пусть множество [pic] отделено от нуля и [pic] -его ближайшая к нулю точка, т.е. [pic] по всем [pic]. Здесь, как обычно, [pic]. Положим [pic] и выберем произвольно [pic]. Вектор [pic] -искомый синаптический вектор, а [pic] -пороговое значение для нейрона, реагирующего на входные векторы [pic] выходным сигналом [pic], а на вектор [pic] -сигналом [pic]. Задача о нахождении вектора, на котором реализуется минимальное расстояние от нуля до выпуклой оболочки сама по себе весьма сложна. Если число векторов [pic] не превышает размерность пространства и сами они линейно независимы, то отделяющую гиперплоскость можно построить другим способом. Достаточно провести через векторы [pic] какую-нибудь не содержащую ноль гиперплоскость, а затем сдвинуть ее по направлению нормали ближе к нулю. В качестве вектора синаптических весов следует взять нормальный к гиперплоскости вектор, направленный в полупространство, не содержащее ноль. Нормальный вектор к гиперплоскости, содержащей векторы [pic] строится конструктивно. Выбор вектора будет однозначным (с точность до множителя), если предполагать, что он принадлежит подпространству, порожденному векторами [pic]. При построении будем использовать алгоритм Шмидта. Он позволяет по последовательности линейно независимых векторов [pic] построить последовательность [pic] ортогональных между собой векторов, обладающих следующим свойством. Вектор [pic] принадлежит подпространству, порожденному векторами [pic] и ортогонален всем векторам, расположенным в подпространстве, порожденном векторами [pic]. Последовательность [pic] строится рекуррентно. Положим [pic]. Вектор [pic] представим в виде: [pic]. Из условия [pic] получим: [pic]. Далее полагаем [pic]. Вектор [pic] ортогонален любому вектору из подпространства, порожденного векторами [pic], которому принадлежат векторы [pic]. Следовательно [pic] и [pic]. Учитывая ортогональность векторов [pic], получаем: [pic], [pic]. На [pic]- ом шаге алгоритма полагаем [pic]. (15) Из условия [pic] [pic] в силу ортогональности векторов [pic] [pic] находим [pic]. Отметим важное обстоятельство, что [pic]. (16) Действительно, из (15) следует: [pic] Пусть векторы [pic], где [pic]линейно независимы. Построим проходящую через них гиперплоскость [pic], т.е. такую гиперплоскость, для которой [pic] при всех [pic]. Используя алгоритм Шмидта, ортогонализируем последовательность векторов [pic] (легко видеть, что они линейно независимы). Пусть последний элемент последовательности суть [pic]. Это и есть искомый нормальный вектор. Действительно, по построению [pic] для [pic]. Таким образом, [pic] для всех [pic]. В силу (16) получаем [pic]. Используя это равенство, уравнение гиперплоскости можно переписать в виде: [pic]. Зафиксируем произвольно [pic]. Гиперплоскость [pic]отделяет векторы [pic] от нуля. Действительно, [pic]. Рассмотрим задачу о разделении гиперплоскостью множеств векторов [pic] и [pic], для [pic]. Она разрешима в том и только том случае, когда выпуклые оболочки [pic] и [pic] соответственно векторов [pic] и [pic] не пересекаются. Пусть [pic] и [pic]- векторы, на которых реализуется минимальное расстояние между точками выпуклых оболочек [pic] и [pic]. Тогда разделение множеств осуществляет любая гиперплоскость, которая ортогональна отрезку, соединяющего векторы [pic]и [pic] и проходит через его внутреннюю точку. Нахождение векторов [pic]и [pic]- сложная задача. Разделяющую гиперплоскость можно легко построить, если число [pic] и векторы [pic], [pic] линейно независимы (можно вычитать любой фиксированный вектор [pic], или [pic]). Рассмотрим последовательность векторов [pic], [pic], [pic]. Они линейно независимы. Используя алгоритм Шмидта, по данной последовательности построим ортогональную последовательность. Пусть [pic]- последний вектор, полученный в процессе ортогонализации. По построению [pic] для [pic], [pic] для [pic]. Из равенства (16) следует, что [pic]. Тем самым, [pic] [pic], [pic] [pic]. Кроме того, [pic]. Обозначим: [pic] и [pic]. Пусть [pic]. Гиперплоскость [pic] разделяет векторы [pic] и [pic]. Действительно, [pic], [pic]. Отметим, что рассмотренный алгоритм выбора синаптических весов, основанный на ортогонализации входных векторов, - пример внешнего обучения нейрона Мак-Каллока Питтса.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16