Нейрокомпьютерные системы



              

Реализация булевых функций нейронными сетями


Простой персептрон (нейрон МакКаллока-Питса) с весовым вектором

w = ( -0.5, 1, 1)
реализует гиперплоскость

 x_1 + x_2 = 0.5

и булеву функцию ИЛИ от двух аргументов

x_1
и
x_2
, каждый из которых может быть нулем или единицей. При
w = ( - 1.5, 1, 1)
персептрон реализует гиперплоскость

 x_1 + x_2 = 1.5

и булеву функцию И. Однако, персептрон не может воспроизвести даже такую простую функцию как ИСКЛЮЧАЮЩЕЕ ИЛИ. Она принимает значение единицы, когда один из аргументов равен единице (но не оба) (табл.1).

Таблица 1. Булева функция ИСКЛЮЧАЮЩЕЕ ИЛИ

x_1
x_2
x_1\oplus x_2
000
011
101
110

Эту функцию реализует двухслойная нейронная сеть, представленная на рис.1 (сигнал

x_0=1
не указан). Первый слой такой сети состоит из двух нейронов, каждый из которых реализует разделяющую гиперплоскость в двумерном пространстве входных данных. Первая гиперплоскость описывается уравнением

 x_1 + x_2 = 0.5,

а вторая - уравнением

 - x_1 - x_2 = - 1.5.

Соответствующие векторы весов имеют вид

w^1 = (- 0.5, 1, 1)
и
w^2 = (1.5, - 1, - 1)
. Нейрон во втором слое реализует функцию И от двух выходных сигналов нейронов первого слоя.

Двухслойная сеть, реализующая функцию ИСКЛЮЧАЮЩЕЕ ИЛИ

Рис. 1.  Двухслойная сеть, реализующая функцию ИСКЛЮЧАЮЩЕЕ ИЛИ

Гиперплоскости, реализующие функцию ИСКЛЮЧАЮЩЕЕ ИЛИ

Рис. 2.  Гиперплоскости, реализующие функцию ИСКЛЮЧАЮЩЕЕ ИЛИ

Выходным сигналом сети будет 1, если входные сигналы сети соответствуют точкам пространства входных сигналов, расположенным между вышеуказанными гиперплоскостями, т.е. точкам (0,1) и (1,0) (рис.2).




Содержание  Назад  Вперед