| Назва: | Швидкість збіжності алгоритму навчання нейрона |
| Розмiр: | 20,1 KB |
| Надіслав(ла): | Володимир Орос |
| Опис: | Ужгородський Національний Унівеситет, 1998 р. Керівник - професор Айзенберг Наум Нісонович. - 20 k /реферат/``Оцінка - відмінно! |
| Скачувань: | 721 |
G=1 if (W1*X1+W2*X2+...+Wn*Xn) T;
(*)
G=1 if (W1*X1+W2*X2+...+Wn*Xn)
Тут G - це двійковий сигнал на вході порогового елементу - пристрою з декількома двійковими входами і двійковим виходом.
Xi-це двійковий сигнал на і-вому вході пристрою,який дорівнює 1 або 0.
Wi - це вага і-вого входу, скінчене дійсне число. (i=1,...,n)
n - загальне число входів.
Т - поріг, скінчене дійсне число.
Вузли, поведінка яких з тим чи іншим степенем точності відповідає такій моделі, були знайдені в нервовій системі живих організмів. В останньому випадку нейрони мають в порівнянні із звичайними елементами ряд переваг, які зв’язані , насамперед із їх великими функціональними можливостями при таких самих затратах і розмірах.
§ 3. РЕАЛІЗАЦІЯ БУЛЬОВОЇ ФУНКЦІЇ НА ОДНОМУ НЕЙРОНІ
Розглянемо алфавіт значень змінних Z2={0,1}. Самі бульові змінні будемо позначати через x1,x2,...,xn.Розглянемо множину Z2N={(a1,a2,...,an)/ai Z2}.
Означення 1.
Довільне функціональне відображення f:Z2N Z2 називається
n-місною бульовою функцією.
Означення 2.
Якщо існує такий n+1-вимірний вектор (w0,w1,w2,...,wn), що P(w0+w1*x1+...+wn*xn) = f(x1,x2,...,xn), або, що еквівалентно, якщо існує гіперплощина, що відділяє вершини позначенні 1-ми від вершин що позначенні 0-ми n-вимірного одиничного куба, то f називається пороговим нейроном (пороговою функцією). P-предикат, який є звичайною функцією sign(x).
На площині n-вимірний одиничний куб є квадратом. Нехай вершини цього квадрата помічені 1, можна відділити від вершин помічених 0 прямою лйнією, як показано на малюнку 1.
Y
01 1 1 11
00 0 1 10 x
МАл. 1
Тоді, в данному випадку, бульова функція f є пороговою, а w0+w1*x1+w2*x2=0 - є ваговим вектором нейрона, а також є рівнянням прямої, що відділяє вершини з 0, від вершин з 1.
X1X2 f
0 0 0
0 1 1
1 0 1
1 1 1
Вагові вектори бульової функції, в загальному випадку, якщо вона є нейроном вибираються неоднозначно. Більше того, ми завжди можемо вибрати пряму так, що вона буде проходити через початок координат. Константи 0 або 1 теж вважаються нейронами, бо існує ваговий вектор, який всі 4 точки відділяє від пустої множини.
Означення 3.
Гіперплощина - це множина розв’язків одного лінійного рівняння із n невідомими.
Будь-який нейрон є многофункціональним елементом, тобто ми можемо перебудовувати його, керуючи вхід, так що нейрон буде реалізовувати іншу функцію, не змінюючи своєї фізичної структури.
Означення 4.
N-місним предикатом визначеним на множинах М1,М2,...,Мn називається довільне функціональне відображення множини М1*М2*...*Мn в множину {1,0}.
Означення 5.
Універсальний нейрон - це нейрон, на якому можна реалізувати довільну функцію.
Поняття універсального нейрону введено в (5).
§ 4. Нейрони в алфавіті 2={-1,1}.
До цього часу ми розглядали нейрон в алфавіті {0,1}. Нехай 2={1,-1} новий алфавіт.
n2 = { (b1,...,bn) bi 2}
Перехід від алфавіту {0,1} до {1,-1} можна здійснити відображенням f : bi (-1)bi, тобто 01, 1-1.
F: 2Z2.
Аналітично цей перехід: xi=1 - 2*yi (i=1,...,n); (1)
yi=(1-xi)/2. (1*)
Отже f=(1-F)/2.
Підставивши (1) і (1*) в (*) отримаємо:
w0+w1/2-w1*x1/2+...+wn/2-wn*xn/2>0, (1-F)/2=1.
w0+w1/2-w1*x1/2+...+wn/2-wn*xn/2<0, (1-F)/2=0. (2)
Для першого рядка (2) F= -1, для другого F=1.Тоді отримуємо
w0*2+w1-w1*x1+...+wn-wn*xn>0, F= -1.
w0*2+w1-w1*x1+...+wn-wn*xn<0, F= 1. (3)
Позначимо -2*w0-w1-...-wn=a0, w1=a1, ... , wn=an.
Тоді: a0+a1*x1+...+an*xn<0, F=-1;
a0+a1*x1+...+an*xn>0, F=1; (3*)
Так як у нас w0=-T, то a0=2*T-w1-...-wn.
Таким чином, всі вагові коефіцієнти залишилися без змін, а змінився тільки поріг, який називається модифікованим порогом.
Означення 6.
Комплексним нейроном (комплекснопороговою функцією), називається така бульова функція F(x1,x2,...,xn) для якої існують такі комплексні вагові коефіцієнти (a0,a1,...,an), що P(a0+a1*x1+...+an*xn)= =F(x1,x2,...,xn)
Теорема.
Будь-яка бульова функція реалізується універсальним нейроном над полем комплексних чисел С [5].
Поняття комплексного нейрона розширює інженерні можливості реалізації нейронів.
Розділ 2
§1. Алгоритм навчання порового нейрона над полем комплексних чисел.
Метою данної роботи була перевірка алгоритму навчання порогового нейрона запропонованого проф. Айзенбергом Н.Н.
та знаходження оптимізуючих факторів швидкості його збіжноті.
WS+1=WS+( - )*Xj/N,
де WS - n+1-вимірний ваговий вектор;
N - нормуючий множник;
- номер сектора, куда повинна була попасти вагова сума W; - номер сектора, куда попала вагова сума W;
m=cos(2*Pi*m/k)+i*sin(2*Pi*m/k) де k - кількість секторів,
на які розбито комплеклексну площину;
(*)
G=1 if (W1*X1+W2*X2+...+Wn*Xn)
Тут G - це двійковий сигнал на вході порогового елементу - пристрою з декількома двійковими входами і двійковим виходом.
Xi-це двійковий сигнал на і-вому вході пристрою,який дорівнює 1 або 0.
Wi - це вага і-вого входу, скінчене дійсне число. (i=1,...,n)
n - загальне число входів.
Т - поріг, скінчене дійсне число.
Вузли, поведінка яких з тим чи іншим степенем точності відповідає такій моделі, були знайдені в нервовій системі живих організмів. В останньому випадку нейрони мають в порівнянні із звичайними елементами ряд переваг, які зв’язані , насамперед із їх великими функціональними можливостями при таких самих затратах і розмірах.
§ 3. РЕАЛІЗАЦІЯ БУЛЬОВОЇ ФУНКЦІЇ НА ОДНОМУ НЕЙРОНІ
Розглянемо алфавіт значень змінних Z2={0,1}. Самі бульові змінні будемо позначати через x1,x2,...,xn.Розглянемо множину Z2N={(a1,a2,...,an)/ai Z2}.
Означення 1.
Довільне функціональне відображення f:Z2N Z2 називається
n-місною бульовою функцією.
Означення 2.
Якщо існує такий n+1-вимірний вектор (w0,w1,w2,...,wn), що P(w0+w1*x1+...+wn*xn) = f(x1,x2,...,xn), або, що еквівалентно, якщо існує гіперплощина, що відділяє вершини позначенні 1-ми від вершин що позначенні 0-ми n-вимірного одиничного куба, то f називається пороговим нейроном (пороговою функцією). P-предикат, який є звичайною функцією sign(x).
На площині n-вимірний одиничний куб є квадратом. Нехай вершини цього квадрата помічені 1, можна відділити від вершин помічених 0 прямою лйнією, як показано на малюнку 1.
Y
01 1 1 11
00 0 1 10 x
МАл. 1
Тоді, в данному випадку, бульова функція f є пороговою, а w0+w1*x1+w2*x2=0 - є ваговим вектором нейрона, а також є рівнянням прямої, що відділяє вершини з 0, від вершин з 1.
X1X2 f
0 0 0
0 1 1
1 0 1
1 1 1
Вагові вектори бульової функції, в загальному випадку, якщо вона є нейроном вибираються неоднозначно. Більше того, ми завжди можемо вибрати пряму так, що вона буде проходити через початок координат. Константи 0 або 1 теж вважаються нейронами, бо існує ваговий вектор, який всі 4 точки відділяє від пустої множини.
Означення 3.
Гіперплощина - це множина розв’язків одного лінійного рівняння із n невідомими.
Будь-який нейрон є многофункціональним елементом, тобто ми можемо перебудовувати його, керуючи вхід, так що нейрон буде реалізовувати іншу функцію, не змінюючи своєї фізичної структури.
Означення 4.
N-місним предикатом визначеним на множинах М1,М2,...,Мn називається довільне функціональне відображення множини М1*М2*...*Мn в множину {1,0}.
Означення 5.
Універсальний нейрон - це нейрон, на якому можна реалізувати довільну функцію.
Поняття універсального нейрону введено в (5).
§ 4. Нейрони в алфавіті 2={-1,1}.
До цього часу ми розглядали нейрон в алфавіті {0,1}. Нехай 2={1,-1} новий алфавіт.
n2 = { (b1,...,bn) bi 2}
Перехід від алфавіту {0,1} до {1,-1} можна здійснити відображенням f : bi (-1)bi, тобто 01, 1-1.
F: 2Z2.
Аналітично цей перехід: xi=1 - 2*yi (i=1,...,n); (1)
yi=(1-xi)/2. (1*)
Отже f=(1-F)/2.
Підставивши (1) і (1*) в (*) отримаємо:
w0+w1/2-w1*x1/2+...+wn/2-wn*xn/2>0, (1-F)/2=1.
w0+w1/2-w1*x1/2+...+wn/2-wn*xn/2<0, (1-F)/2=0. (2)
Для першого рядка (2) F= -1, для другого F=1.Тоді отримуємо
w0*2+w1-w1*x1+...+wn-wn*xn>0, F= -1.
w0*2+w1-w1*x1+...+wn-wn*xn<0, F= 1. (3)
Позначимо -2*w0-w1-...-wn=a0, w1=a1, ... , wn=an.
Тоді: a0+a1*x1+...+an*xn<0, F=-1;
a0+a1*x1+...+an*xn>0, F=1; (3*)
Так як у нас w0=-T, то a0=2*T-w1-...-wn.
Таким чином, всі вагові коефіцієнти залишилися без змін, а змінився тільки поріг, який називається модифікованим порогом.
Означення 6.
Комплексним нейроном (комплекснопороговою функцією), називається така бульова функція F(x1,x2,...,xn) для якої існують такі комплексні вагові коефіцієнти (a0,a1,...,an), що P(a0+a1*x1+...+an*xn)= =F(x1,x2,...,xn)
Теорема.
Будь-яка бульова функція реалізується універсальним нейроном над полем комплексних чисел С [5].
Поняття комплексного нейрона розширює інженерні можливості реалізації нейронів.
Розділ 2
§1. Алгоритм навчання порового нейрона над полем комплексних чисел.
Метою данної роботи була перевірка алгоритму навчання порогового нейрона запропонованого проф. Айзенбергом Н.Н.
та знаходження оптимізуючих факторів швидкості його збіжноті.
WS+1=WS+( - )*Xj/N,
де WS - n+1-вимірний ваговий вектор;
N - нормуючий множник;
- номер сектора, куда повинна була попасти вагова сума W; - номер сектора, куда попала вагова сума W;
m=cos(2*Pi*m/k)+i*sin(2*Pi*m/k) де k - кількість секторів,
на які розбито комплеклексну площину;
Новости загрузка новостей...