Monday, September 19, 2022

Hebbian Learning Rule with Implementation of AND Gate

 Правило обучения Хебба, также известное как правило обучения Хебба, было предложено Дональдом О Хеббом. Это одно из первых, а также самых простых правил обучения в нейронной сети. Он используется для классификации шаблонов. Это однослойная нейронная сеть, то есть она имеет один входной слой и один выходной слой. Входной слой может иметь много единиц, скажем, n. Выходной слой имеет только один модуль. Правило Хебба работает путем обновления весов между нейронами в нейронной сети для каждой обучающей выборки.

Алгоритм правила обучения Хеббиана:

1.Установите все веса на ноль, wi = 0 для i = от 1 до n и смещение на ноль.

2.Для каждого входного вектора S(входной вектор): t(целевая выходная пара) повторите шаги 3-5.

3.Установите активации для входных единиц с входным вектором Xi = Si для i = от 1 до n.

4.Установите соответствующее выходное значение для выходного нейрона, т.е. y = t.

5.Обновите вес и смещение, применив правило Хебба для всех значений от i = 1 до n:










Имеется 4 обучающих образца, поэтому будет 4 итерации. Кроме того, функция активации, используемая здесь, представляет собой биполярную сигмоидальную функцию, поэтому диапазон составляет [-1,1].

Implementing AND Gate :
















Шаг 1 :

Установите вес и смещение на ноль, w = [ 0 0 0 ]T и b = 0.

Шаг 2 :
Установите входной вектор Xi = Si для i = 1 до 4.
Х1 = [-1-1 1 ]Т
Х2 = [-1 1 1 ]Т
Х3 = [ 1 -1 1 ]Т
Х4 = [ 1 1 1 ]T

Шаг 3 :
Выходное значение установлено равным y = t.

Шаг 4:
Изменение весов по правилу Хебба:

Первая итерация –
w(новый) = w(старый) + x1y1 = [ 0 0 0 ]T + [ -1 -1 1 ]T . [-1] = [1 1 -1 ]Т

Для второй итерации будет использоваться окончательный вес первой и так далее.
Вторая итерация –
w(новый) = [ 1 1 -1 ]T + [ -1 1 1 ]T . [ -1 ] = [ 2 0 -2 ]Т
Третья итерация –
w(новый) = [ 2 0 -2]T + [ 1 -1 1 ]T . [ -1 ] = [ 1 1 -3 ]Т
Четвертая итерация –
w(новый) = [ 1 1 -3]T + [ 1 1 1 ]T . [ 1 ] = [ 2 2 -2 ]Т
Итак, окончательная матрица весов равна [ 2 2 -2 ]T
Тестирование сети:





















For x1 = -1, x2 = -1, b = 1, Y = (-1)(2) + (-1)(2) + (1)(-2) = -6
For x1 = -1, x2 = 1, b = 1, Y = (-1)(2) + (1)(2) + (1)(-2) = -2
For x1 = 1, x2 = -1, b = 1, Y = (1)(2) + (-1)(2) + (1)(-2) = -2
For x1 = 1, x2 = 1, b = 1, Y = (1)(2) + (1)(2) + (1)(-2) = 2

Все результаты совместимы с исходной таблицей.

Границы решения:

2х1 + 2х2 – 2b = у
Замена y на 0, 2x1 + 2x2 - 2b = 0
Поскольку смещение, b = 1, поэтому 2x1 + 2x2 – 2(1) = 0
2( х1 + х2 ) = 2
Окончательное уравнение, x2 = -x1 + 1






































No comments:

Post a Comment