Правила Хэбба
Материал из MachineLearning.
Строка 1: | Строка 1: | ||
- | Правило обучения для сети Хопфилда опирается на исследования Дональда Хебба (D.Hebb, 1949), который предположил, что синаптическая связь, соединяющая два нейрона будет усиливатьося, если в процессе обучения оба нейрона согласованно испытывают возбуждение либо торможение. Простой алгоритм, реализующий такой механизм обучения, получил название правила Хебба. | + | Правило обучения для [[сети Хопфилда]] опирается на исследования Дональда Хебба (D.Hebb, 1949), который предположил, что синаптическая связь, соединяющая два нейрона будет усиливатьося, если в процессе обучения оба нейрона согласованно испытывают возбуждение либо торможение. Простой алгоритм, реализующий такой механизм обучения, получил название правила Хебба. |
=История= | =История= | ||
- | + | [[Перcептрон Розенблатта]] в первоначальном его исполнении состоял из фотоэлементов, которые, в зависимости от поданного на них сигнала вырабатывали сигнал логической единицы, либо логического нуля. | |
Сигналы с фотоэлементов поступали на взвешенный сумматор (элементарный процессор, искусственный нейрон) с пороговой функцией активации. | Сигналы с фотоэлементов поступали на взвешенный сумматор (элементарный процессор, искусственный нейрон) с пороговой функцией активации. | ||
Нейрон также выдавал сигнал логического нуля, либо логической единицы. | Нейрон также выдавал сигнал логического нуля, либо логической единицы. | ||
Строка 15: | Строка 15: | ||
=Математическая постановка= | =Математическая постановка= | ||
- | + | Будем полагать, что классы помечены числами −1 и 1,а персептрон выдаёт знак скалярного произведения: | |
<center><tex>a(x)=sign(\langle\omega, x\rangle)</tex></center> | <center><tex>a(x)=sign(\langle\omega, x\rangle)</tex></center> | ||
- | Тогда несовпадение знаков <tex>\langle\omega, x\rangle</tex> и y<sub>i</sub> означает, что | + | где ω - вектор синаптических весов, 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. | ||
+ | Для того, чтобы персептрон выдавал правильный ответ необходимо, чтобы скалярное произведение стало больше. Поскольку переменные принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов. | ||
+ | Однако нет смысла увеличивать веса при переменных , которые равны нулю. Увеличиваем веса только при тех, которые равны 1. Для закрепления единичных сигналов с ω, следует провести ту же процедуру и на всех остальных слоях. | ||
+ | |||
+ | Второй тип ошибки – на выходе персептрона a(x<sub>i</sub>) =1, а правильный ответ y<sub>i</sub>=0. Для уменьшения скалярного произведения в правой части, необходимо уменьшить веса связей при тех переменных , которые равны 1. Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | Тогда несовпадение знаков <tex>\langle\omega, x\rangle</tex> и y<sub>i</sub> означает, что персептрон ошибается на объекте x<sub>i</sub>. | ||
<center>'''если''' <tex>\langle\omega, x\rangle y_i <0</tex>, '''то''' <tex>\omega = \omega +\eta x_ig_i</tex></center> | <center>'''если''' <tex>\langle\omega, x\rangle y_i <0</tex>, '''то''' <tex>\omega = \omega +\eta x_ig_i</tex></center> | ||
называемое правилом Хэбба. | называемое правилом Хэбба. | ||
+ | |||
+ | |||
= См. также = | = См. также = |
Версия 14:42, 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. Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев.
Тогда несовпадение знаков и yi означает, что персептрон ошибается на объекте xi.
называемое правилом Хэбба.
См. также
- Персептрон
- Теорема Новикова
- Перcептрон Розенблатта
- Модель МакКаллока-Питтса
- Адаптивный линейный элемент
- Искусственная нейронная сеть
Литература
Ссылки
Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |