Правила Хэбба
Материал из MachineLearning.
(→Математическая постановка) |
|||
Строка 17: | Строка 17: | ||
Будем полагать, что классы помечены числами −1 и 1,а персептрон выдаёт знак скалярного произведения: | Будем полагать, что классы помечены числами −1 и 1,а персептрон выдаёт знак скалярного произведения: | ||
<center><tex>a(x)=sign(\langle\omega, x\rangle)</tex></center> | <center><tex>a(x)=sign(\langle\omega, x\rangle)</tex></center> | ||
- | где ω - вектор синаптических весов, x<sub>i</sub> = (x<sub>i</sub><sup></sup>, …, x<sub>i</sub><sup>n</sup>) объект из обучающей выборки прецентдентов X<sup> | + | где ω - вектор синаптических весов, x<sub>i</sub> = (x<sub>i</sub><sup></sup>, …, x<sub>i</sub><sup>n</sup>) объект из обучающей выборки прецентдентов X<sup>L</sup> = {x<sub>1</sub>, …, x<sub>n</sub>}, для которого известен правильный ответ y<sub>i</sub>. |
+ | |||
Персептрон обучают по правилу Хебба. | Персептрон обучают по правилу Хебба. | ||
- | Предъявляем на вход | + | Предъявляем на вход один объект. |
Если выходной сигнал персептрона совпадает с правильным ответом, то никаких действий предпринимать не надо. | Если выходной сигнал персептрона совпадает с правильным ответом, то никаких действий предпринимать не надо. | ||
В случае ошибки необходимо обучить персептрон правильно решать данный пример. Ошибки могут быть двух типов. Рассмотрим каждый из них. | В случае ошибки необходимо обучить персептрон правильно решать данный пример. Ошибки могут быть двух типов. Рассмотрим каждый из них. | ||
- | Первый тип ошибки – a(x<sub>i</sub>) = 0, а правильный ответ – y<sub>i</sub>=1. | + | '''Первый тип ошибки''' – a(x<sub>i</sub>) = 0, а правильный ответ – y<sub>i</sub>=1. |
Для того, чтобы персептрон выдавал правильный ответ необходимо, чтобы скалярное произведение стало больше. Поскольку переменные принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов. | Для того, чтобы персептрон выдавал правильный ответ необходимо, чтобы скалярное произведение стало больше. Поскольку переменные принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов. | ||
Однако нет смысла увеличивать веса при переменных , которые равны нулю. Увеличиваем веса только при тех, которые равны 1. Для закрепления единичных сигналов с ω, следует провести ту же процедуру и на всех остальных слоях. | Однако нет смысла увеличивать веса при переменных , которые равны нулю. Увеличиваем веса только при тех, которые равны 1. Для закрепления единичных сигналов с ω, следует провести ту же процедуру и на всех остальных слоях. | ||
+ | То есть при этой ощибке применяется первое правило Хэбба. | ||
- | Второй тип ошибки – на выходе персептрона a(x<sub>i</sub>) =1, а правильный ответ y<sub>i</sub>=0. Для уменьшения скалярного произведения в правой части, необходимо уменьшить веса связей при тех переменных , которые равны 1. Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев. | + | '''Второй тип ошибки''' – на выходе персептрона a(x<sub>i</sub>) =1, а правильный ответ y<sub>i</sub>=0. Для уменьшения скалярного произведения в правой части, необходимо уменьшить веса связей при тех переменных , которые равны 1. Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев. |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
+ | При этой ощибке применяется второе правило Хэбба. | ||
= См. также = | = См. также = |
Версия 14:52, 6 января 2010
Правило обучения для сети Хопфилда опирается на исследования Дональда Хебба (D.Hebb, 1949), который предположил, что синаптическая связь, соединяющая два нейрона будет усиливатьося, если в процессе обучения оба нейрона согласованно испытывают возбуждение либо торможение. Простой алгоритм, реализующий такой механизм обучения, получил название правила Хебба.
Содержание |
История
Перcептрон Розенблатта в первоначальном его исполнении состоял из фотоэлементов, которые, в зависимости от поданного на них сигнала вырабатывали сигнал логической единицы, либо логического нуля. Сигналы с фотоэлементов поступали на взвешенный сумматор (элементарный процессор, искусственный нейрон) с пороговой функцией активации. Нейрон также выдавал сигнал логического нуля, либо логической единицы. Возможен вариант использования вместо {0,1} сигналов {-1,1}.
Цель обучения перцептрона состояла в том, чтобы при подаче на фотоэлементы закодированного образа на его выходе появлялась логическая единица в случае принадлежности поданного образа к заранее определенному классу и ноль в противном случае. Логика обучения следующая: если сигнал персептрона при некотором образе верен, то ничего корректировать не надо, если нет — производится корректировка весов сумматора. Правила корректировки весов предложены Хеббом в 1949 году и имеют следующий смысл:
- Первое правило Хебба — Если сигнал персептрона неверен и равен нулю, то необходимо увеличить веса тех входов, на которые была подана единица.
- Второе правило Хебба — Если сигнал персептрона неверен и равен единице, то необходимо уменьшить веса тех входов, на которые была подана единица.
Правила применяются последовательно для всех образов, на которых производится обучение. На вопрос о том, придет ли персептрон к устойчивому состоянию, когда он будет корректно классифицировать все входные образы отвечает теорема Новикова.
Математическая постановка
Будем полагать, что классы помечены числами −1 и 1,а персептрон выдаёт знак скалярного произведения:
где ω - вектор синаптических весов, xi = (xi, …, xin) объект из обучающей выборки прецентдентов XL = {x1, …, xn}, для которого известен правильный ответ yi.
Персептрон обучают по правилу Хебба. Предъявляем на вход один объект. Если выходной сигнал персептрона совпадает с правильным ответом, то никаких действий предпринимать не надо. В случае ошибки необходимо обучить персептрон правильно решать данный пример. Ошибки могут быть двух типов. Рассмотрим каждый из них.
Первый тип ошибки – a(xi) = 0, а правильный ответ – yi=1. Для того, чтобы персептрон выдавал правильный ответ необходимо, чтобы скалярное произведение стало больше. Поскольку переменные принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов. Однако нет смысла увеличивать веса при переменных , которые равны нулю. Увеличиваем веса только при тех, которые равны 1. Для закрепления единичных сигналов с ω, следует провести ту же процедуру и на всех остальных слоях. То есть при этой ощибке применяется первое правило Хэбба.
Второй тип ошибки – на выходе персептрона a(xi) =1, а правильный ответ yi=0. Для уменьшения скалярного произведения в правой части, необходимо уменьшить веса связей при тех переменных , которые равны 1. Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев.
При этой ощибке применяется второе правило Хэбба.
См. также
- Персептрон
- Теорема Новикова
- Перcептрон Розенблатта
- Модель МакКаллока-Питтса
- Адаптивный линейный элемент
- Искусственная нейронная сеть
Литература
Ссылки
![]() | Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |