Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Оисание Перцептрона ARS-3.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
572.42 Кб
Скачать

«Перцептрон»

Постановка задачи 2

Представление задачи 2

Руководство пользователя 5

Список литературы 10

 Приложение. Обучение нейросети распознаванию различных видов объектов. 10

Универсальные ЭВМ неэффективны при решении трудноформализуемых задач – задач, алгоритм решения которых неизвестен.

Они неспособны обучаться решению какой-либо задачи «на примерах». А человек и животные такой способностью обладают!

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

Одновременно с разработкой методов распознавания, реализуемых на универсальных ЭВМ фон-Неймановской архитектуры, ведется поиск методов решения задач, основанных на иных принципах.

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

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

НейроЭВМ характеризуются:

  • принципом действия: это однородная система, состоящая из большого числа очень простых элементов;

  • тем, что нейроЭВМ не требуют программирования; нужно обучение на специально подобранных примерах, составляющих обучающую выборку;

  • способностью к обучению и самообучению (способность к самообучению начинает появляться при наличии около 100 нейронов);

  • способностью решать задачи на примерах, отсутствовавших в обучающей выборке – при этом если нейросистема обучена распознавать образы, то полученный навык она сохраняет при предъявлении ей части объекта или при показе ей объекта, повернутого под другим углом;

НейроЭВМ имеют высокую стоимость. Поэтому предпринимаются попытки реализовать алгоритмы работы нейросети на универсальных ЭВМ. Такие программы называются нейроимитаторами, когнитронами или нейропакетами.

Рассмотрим возможности простейших нейропакетов.

Постановка задачи

Перцептрон – это одна из разновидностей нейронных сетей.

На вход программы подаётся рисунок типа:

или

Программа должна этот рисунок воспринять, как обучающую выборку – под рисунком написано, что рисунок содержит.

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

Совсем не обязательно распознавать графические объекты. Можно распознавать объекты по их свойствам и др. Но в любом случае что-то предъявить программе в каком-то виде надо. А программа должна использовать для распознавания методологию нейронной сети.

Представление задачи

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

Рис.1. Модель нейронной сети.

На вход поступает только двоичный сигнал, т.е. либо 0 либо 1. Элемент Сумматор умножает каждый вход xn на вес wn и суммирует взвешенные входы. Если эта сумма больше заданного порогового значения, выход равен единице, в противном случае – нулю.

Персептроны состоят из одного слоя (т.е. количество слоев нейронов между входом X и выходом OUT равно одному) искусственных нейронов, соединенных с помощью весовых коэффициентов с множеством входов, модель представлена на рисунке2.

Рис.2. Перцепрон

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

Алгоритм обучения персептрона следующий:

  1. Присвоить синаптическим весам w1,w2, ... ,wN некоторые начальные значения. Например, нулю.

  2. Подать входной образ X и вычислить OUT. Если OUT правильный, то переходят к шагу 4. Иначе к шагу 3.

  3. Применяя дельта-правило (см. ниже) вычислить новые значения синаптических весов.

  4. Повторить шаги 2-4 данного алгоритма обучения персептрона пока сеть не станет выдавать ожидаемый выход на векторах из обучающей выборки или пока отклонение не станет ниже некоторого порога.

Т.о. логика обучения персептрона следующая: если сигнал персептрона при некотором образе верен, то ничего корректировать не надо, если нет – производится корректировка весов.

Правила корректировки весов следующие:

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

  • Если OUT неверен и равен единице, то необходимо уменьшить веса тех входов, на которые была подана единица.

Допустим, что на вход был подан некоторый обучающий двоичный вектор X. Этому вектору соответствует выход OUT равный единице. И этот выход неправильный. Тогда веса, присоединенные к единичным входам, должны быть уменьшены, так как они стремятся дать неверный результат. Аналогично, если некоторому другому обучающему вектору X соответствует неправильный выход OUT равный нулю, то веса, присоединенные к единичным входам, должны быть уже уменьшены.

Дельта-правило является математической моделью правил корректировки весов. Введем величину delta, которая равна разности между требуемым T и реальным OUT выходом:

Delta = T - OUT

Тогда, веса персептрона после коррекции будут равны:

wN(i+1) = wN(i) +eta * delta xN

где:

i – номер текущей итерации обучения персептрона;

eta (греческая буква «эта») – коэффициент скорости обучения, позволяет управлять средней величиной изменения весов;

xN – величина входа соответствующая wN синаптическому весу. Добавление величины xN в произведение позволяет избежать изменения тех весов, которым на входе соответствовал ноль.