Правила Хэбба

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
Строка 1: Строка 1:
-
Правило обучения для сети Хопфилда опирается на исследования Дональда Хебба (D.Hebb, 1949), который предположил, что синаптическая связь, соединяющая два нейрона будет усиливатьося, если в процессе обучения оба нейрона согласованно испытывают возбуждение либо торможение. Простой алгоритм, реализующий такой механизм обучения, получил название правила Хебба.
+
Правило обучения для [[сети Хопфилда]] опирается на исследования Дональда Хебба (D.Hebb, 1949), который предположил, что синаптическая связь, соединяющая два нейрона будет усиливатьося, если в процессе обучения оба нейрона согласованно испытывают возбуждение либо торможение. Простой алгоритм, реализующий такой механизм обучения, получил название правила Хебба.
=История=
=История=
-
Персептрон Розенблатта в первоначальном его исполнении состоял из фотоэлементов, которые, в зависимости от поданного на них сигнала вырабатывали сигнал логической единицы, либо логического нуля.
+
[[Перcептрон Розенблатта]] в первоначальном его исполнении состоял из фотоэлементов, которые, в зависимости от поданного на них сигнала вырабатывали сигнал логической единицы, либо логического нуля.
Сигналы с фотоэлементов поступали на взвешенный сумматор (элементарный процессор, искусственный нейрон) с пороговой функцией активации.
Сигналы с фотоэлементов поступали на взвешенный сумматор (элементарный процессор, искусственный нейрон) с пороговой функцией активации.
Нейрон также выдавал сигнал логического нуля, либо логической единицы.
Нейрон также выдавал сигнал логического нуля, либо логической единицы.
Строка 15: Строка 15:
=Математическая постановка=
=Математическая постановка=
-
Иногда удобнее полагать, что классы помечены числами −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>
-
Тогда несовпадение знаков <tex>\langle\omega, x\rangle</tex> и y<sub>i</sub> означает, что нейрон ошибается на объекте x<sub>i</sub>.
+
где &omega; - вектор синаптических весов, x<sub>i<sub> = (x<sub>i<sub><sup></sup>, &hellip;, x<sub>i<sub><sup>n</sup>) объект из обучающей выборки прецентдентов X<sup>l</sup> = {x<sub>1<sub>, &hellip;, x<sub>n<sub>}, для которого известен правильный ответ y<sub>i</sub>.
 +
Персептрон обучают по правилу Хебба.
 +
Предъявляем на вход персептрона один объект.
 +
Если выходной сигнал персептрона совпадает с правильным ответом, то никаких действий предпринимать не надо.
 +
В случае ошибки необходимо обучить персептрон правильно решать данный пример. Ошибки могут быть двух типов. Рассмотрим каждый из них.
 +
 
 +
Первый тип ошибки – a(x<sub>i</sub>) = 0, а правильный ответ – y<sub>i</sub>=1.
 +
Для того, чтобы персептрон выдавал правильный ответ необходимо, чтобы скалярное произведение стало больше. Поскольку переменные принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов.
 +
Однако нет смысла увеличивать веса при переменных , которые равны нулю. Увеличиваем веса только при тех, которые равны 1. Для закрепления единичных сигналов с &omega;, следует провести ту же процедуру и на всех остальных слоях.
 +
 
 +
Второй тип ошибки – на выходе персептрона 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,а персептрон выдаёт знак скалярного произведения:

a(x)=sign(\langle\omega, x\rangle)

где ω - вектор синаптических весов, xi = (xi, …, xin) объект из обучающей выборки прецентдентов Xl = {x1, …, xn}, для которого известен правильный ответ yi. Персептрон обучают по правилу Хебба. Предъявляем на вход персептрона один объект. Если выходной сигнал персептрона совпадает с правильным ответом, то никаких действий предпринимать не надо. В случае ошибки необходимо обучить персептрон правильно решать данный пример. Ошибки могут быть двух типов. Рассмотрим каждый из них.

Первый тип ошибки – a(xi) = 0, а правильный ответ – yi=1. Для того, чтобы персептрон выдавал правильный ответ необходимо, чтобы скалярное произведение стало больше. Поскольку переменные принимают значения 0 или 1, увеличение суммы может быть достигнуто за счет увеличения весов. Однако нет смысла увеличивать веса при переменных , которые равны нулю. Увеличиваем веса только при тех, которые равны 1. Для закрепления единичных сигналов с ω, следует провести ту же процедуру и на всех остальных слоях.

Второй тип ошибки – на выходе персептрона a(xi) =1, а правильный ответ yi=0. Для уменьшения скалярного произведения в правой части, необходимо уменьшить веса связей при тех переменных , которые равны 1. Необходимо также провести эту процедуру для всех активных нейронов предыдущих слоев.



Тогда несовпадение знаков \langle\omega, x\rangle и yi означает, что персептрон ошибается на объекте xi.

если \langle\omega, x\rangle y_i <0, то \omega = \omega +\eta x_ig_i

называемое правилом Хэбба.


См. также

Литература

  1. Машинное обучение (курс лекций, К.В.Воронцов)

Ссылки


Данная статья является непроверенным учебным заданием.
Студент: Участник:Platonova.Elena
Преподаватель: Участник:Константин Воронцов
Срок: 8 января 2010

До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}.

См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе.

Личные инструменты