Однослойным персептроном назовем множество нейронов Мак-Каллока — Питтса, которые имеют общие входы. Пусть — входные сигналы, а
— выходной сигнал
-ого нейрона,
, где
— число нейронов. Тогда
.
Здесь — общий вектор входных сигналов,
— синаптический вектор
— ого нейрона,
— его пороговое значение. Выходные сигналы принимают либо нулевое, либо единичное значения (бинарны). Предположения о бинарности вектора
делать не будем. Персептрон формирует вектор выходных сигналов
. Обозначим через
— матрицу, в строках которой находятся синаптические векторы
. Ее назовем синаптической. Введем также вектор
, который назовем пороговым. Тогда выходной вектор персептрона суть
,
где функция вычисляется покоординатно. Множество бинарных векторов (координаты равны либо нулю, либо единице) обозначим через
. Пусть
— некоторый набор входных векторов, а
— множество выходных векторов. Поставим задачу об обучении персептрона. Требуется выбрать синаптическую матрицу
и пороговый вектор
так, чтобы для входных векторов
персептрон формировал выходные векторы
, т.е.
.
Если обучение удалось произвести, то персептрон выполняет функции ассоциативной памяти. По входному вектору генерирует связанный с ним выходной вектор
. При этом если входной вектор
слегка искажен, выходным вектором все равно будет вектор
(функция
непрерывна). Часто пары векторов
называют ассоциативными парами.
Пусть и векторы
линейно независимы. Тогда задача об обучении однослойного персептрона разрешимы. В силу того, что нейроны слоя не связаны между собой, достаточно решить задачу обучения для произвольного
-ого нейрона (персептрон из одного нейрона). Его ассоциативные пары имеют вид:
, где
— координата с номером
вектора
, которая принимает либо нулевое, либо единичное значения. Таким образом, нейрон осуществляет классификацию входных векторов: одним “ приписывает” нулевое, а другим — единичное значения признака. Выше показано, что в рамках сделанных предположений о векторах
задача классификации разрешима. Описан алгоритм выбора синаптического вектора
и порогового значения
, для которых
.
Задача об обучении персептрона часто оказывается неразрешимой даже в простых случаях. Рассмотрим персептрон, состоящий из одного нейрона, который имеет два синаптических входа, т.е. входной вектор суть . Поставим задачу найти синаптический вектор и пороговое значение такими, чтобы для входных векторов
и
выходной сигнал был равен единице, а для векторов
и
— нулю? Данный нейрон должен реализовать логическую операцию “исключающее или”. Выпуклые оболочки векторов
и
очевидно пересекаются в точке
. Следовательно, поставленная задача в принципе не разрешима.
Нерешенная простейшая задача сильно уменьшает энтузиазм. Однако, оказывается, что она разрешима на двухслойном персептроне. Рассмотрим конструкцию из трех нейронов. Первые два из них имеют общие входы и образуют первый слой. Выходные сигналы этих нейронов являются входными сигналами для третьего нейрона. Пусть и
входной и выходной векторы первого слоя, а
— выходной сигнал третьего нейрона. Положим для нейронов
,
,
.Простым перебором доказывается, что описанный персептрон реализует операцию “исключающее или”.
Рассмотренный пример — решение задачи классификации на множестве бинарных векторов. Оказывается, что теоретически двухслойный персептрон решает задачу классификации бинарных векторов в общем случае. Однако, это утверждение имеет лишь теоретическое значение, поскольку доказывается оно, когда число нейронов в первом слое равно , где
— размерность входного вектора.