Персептрон Розенблатта

Персептрон Розенблатта [146, 181] является исторически первой обучаемой нейронной сетью. Существует несколько версий персептрона. Рассмотрим классический персептрон – сеть с пороговыми нейронами и входными сигналами, равными нулю или единице. Опираясь на результаты, изложенные в работе [146] можно ввести следующие ограничения на структуру сети.

1. Все синаптические веса могут быть целыми числами.

2. Многослойный персептрон по своим возможностям эквивалентен двухслойному. Все нейроны имеют синапс, на который подается постоянный единичный сигнал. Вес этого синапса далее будем называть порогом. Каждый нейрон первого слоя имеет единичные синаптические веса на всех связях, ведущих от входных сигналов, и его порог равен числу входных сигналов сумматора, уменьшенному на два и взятому со знаком минус.

Таким образом, можно ограничиться рассмотрением только двухслойных персептронов с не обучаемым первым слоем. Заметим, что для построения полного первого слоя пришлось бы использовать нейронов, где n – число входных сигналов персептрона. На рис. 19а приведена схема полного персептрона для трехмерного вектора входных сигналов. Поскольку построение такой сети при достаточно большом n невозможно, то обычно используют некоторое подмножество нейронов первого слоя. К сожалению, только полностью решив задачу можно точно указать необходимое подмножество. Обычно используемое подмножество выбирается исследователем из каких-то содержательных соображений или случайно.

Классический алгоритм обучения персептрона является частным случаем правила Хебба. Поскольку веса связей первого слоя персептрона являются не обучаемыми, веса нейрона второго слоя в дальнейшем будем называть просто весами. Будем считать, что при предъявлении примера первого класса персептрон должен выдать на выходе нулевой сигнал, а при предъявлении примера второго класса – единичный. Ниже приведено описание алгоритма обучения персептрона.

1. Полагаем все веса равными нулю.

2. Проводим цикл предъявления примеров. Для каждого примера выполняется следующая процедура.

1. Если сеть выдала правильный ответ, то переходим к шагу 2.4.

2. Если на выходе персептрона ожидалась единица, а был получен ноль, то веса связей, по которым прошел единичный сигнал, уменьшаем на единицу.

3. Если на выходе персептрона ожидался ноль, а была получена единица, то веса связей, по которым прошел единичный сигнал, увеличиваем на единицу.

4. Переходим к следующему примеру. Если достигнут конец обучающего множества, то переходим к шагу 3, иначе возвращаемся на шаг 2.1.

3. Если в ходе выполнения второго шага алгоритма хоть один раз выполнялся шаг 2.2 или 2.3 и не произошло зацикливания, то переходим к шагу 2. В противном случае обучение завершено.

В этом алгоритме не предусмотрен механизм отслеживания зацикливания обучения. Этот механизм можно реализовывать по разному. Наиболее экономный в смысле использования дополнительной памяти имеет следующий вид.

1. k=1; m=0. Запоминаем веса связей.

2. После цикла предъявлений образов сравниваем веса связей с запомненными. Если текущие веса совпали с запомненными, то произошло зацикливание. В противном случае переходим к шагу 3.

3. m=m+1. Если m<k, то переходим ко второму шагу.

4. k=2k; m=0. Запоминаем веса связей и переходим к шагу 2.

Поскольку длина цикла конечна, то при достаточно большом k зацикливание будет обнаружено.

Для использования в обучении сети обратного функционирования, необходимо переписать второй шаг алгоритма обучения в следующем виде.

2. Проводим цикл предъявления примеров. Для каждого примера выполняется следующая процедура.

2.1. Если сеть выдала правильный ответ, то переходим к шагу 2.5.

2.2. Если на выходе персептрона ожидалась единица, а был получен ноль, то на выход сети при обратном функционировании подаем .

2.3. Если на выходе персептрона ожидался ноль, а была получена единица, то на выход сети при обратном функционировании подаем .

2.4. Проводим шаг обучения с единичными параметрами.

2.5. Переходим к следующему примеру. Если достигнут конец обучающего множества, то переходим к шагу 3, иначе возвращаемся на шаг 2.1.

На рис. 19в приведена схема обратного функционирования нейрона второго слоя персептрона. Учитывая, что величины входных сигналов этого нейрона равны нулю или единице, получаем эквивалентность модифицированного алгоритма исходному. Отметим также, что при обучении персептрона впервые встретились не обучаемые параметры – веса связей первого слоя.

Основное назначение нейронных сетей: организация параллельных вычислений

 

12/18/2009

Распознавание объектов в условиях помех и маскировки.

Помеха – искажение отображения сигнала за счет отображения другого сигнала или сигнала, как правило, в том же частотном диапазоне.

Маскировка – придание объекту признаков другого объекта и уменьшение интенсивности передачи своих собственных признаков, часто маскировку первого уровня называют – камуфляж.

Задача: наведение ракеты на командный пункт противника. Командный пункт противника замаскирован (может даже находится под землей). В этом случае в визуальном спектре мы не можем определить признаки объекта. Тогда переходим в другой частотный диапазон и выдвигается гипотеза о признаках в этом спектре:

1. Инфракрасный – тепловизор.

2. Передатчик радио сигнала: пеленг сигнала – определение источника сигнала, которое реализуется с помощью приемника сигнала из двух разных точек. В точке ищется максимальная амплитуда сигнала. Максимальная амплитуда достигается изменением направления положения антенны. Затем определяется вектор, происходит перемещение в другую точку и решается аналогичная задача, получается второй вектор. На пересечение этих векторов будет передатчик.

Если наведение наиболее точно реализуется в видимом диапазоне, то формируется фиктивный признак в этом диапазоне (координаты, маячок, наведение лазером). Чтобы сделать реальный признак, как правило, используют координаты и ищут уникальный реальный объект вблизи этих координат.

Задача маскировки усложняется, если признаки объекта являются вероятностными, в этом случае необходимо реализовать признаки, которые позволяют воспроизводить значения в соответствии с некоторым распределением, которое соответствует эталонному объекту. Очень важным процессом при распознавании объекта в условиях помех и маскировки является процесс формирования гипотез. Формируются гипотезы о наличии замаскированного объекта или ложного объекта, затем эти гипотезы проверяются. Могут быть ошибки первого и второго рода. Часто при проверке гипотез используется платежная матрица, которая определяет стоимость ошибки в том или ином случае. Задачу распознавания пытаются свести к задаче оптимизации, где стремятся минимизировать стоимость потерь, которая задается с помощью платежной матрицы.

Кроме помех и маскировки может быть дезинформация. Дезинформация похожа на маскировку, потому что один объект стремятся выдать за другой. Пример: 1962г. Карибский кризис, СССР и США на гране войны. США по фотографиям со спутников получили информацию, что в СССР достаточно большое количество баллистических ракет. Вместо ракет были сделаны муляжи, которые имели много признаков настоящих ракет.

В современных ВС используется надувные комплексы, которые имитируют различные военные соединения.