Реализация булевых функций нейронными сетями
Простой персептрон (нейрон МакКаллока-Питса) с весовым вектором
реализует гиперплоскостьи булеву функцию ИЛИ от двух аргументов
и , каждый из которых может быть нулем или единицей. При персептрон реализует гиперплоскостьи булеву функцию И. Однако, персептрон не может воспроизвести даже такую простую функцию как ИСКЛЮЧАЮЩЕЕ ИЛИ. Она принимает значение единицы, когда один из аргументов равен единице (но не оба) (табл.1).
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Эту функцию реализует двухслойная нейронная сеть, представленная на рис.1 (сигнал
не указан). Первый слой такой сети состоит из двух нейронов, каждый из которых реализует разделяющую гиперплоскость в двумерном пространстве входных данных. Первая гиперплоскость описывается уравнениема вторая - уравнением
Соответствующие векторы весов имеют вид
и . Нейрон во втором слое реализует функцию И от двух выходных сигналов нейронов первого слоя.Рис. 1. Двухслойная сеть, реализующая функцию ИСКЛЮЧАЮЩЕЕ ИЛИ
Рис. 2. Гиперплоскости, реализующие функцию ИСКЛЮЧАЮЩЕЕ ИЛИ
Выходным сигналом сети будет 1, если входные сигналы сети соответствуют точкам пространства входных сигналов, расположенным между вышеуказанными гиперплоскостями, т.е. точкам (0,1) и (1,0) (рис.2).