Вариант 15
Содержание |
Синтезируемое VHDL-описание нейронной сети
Введение
Исследования по искусственным нейронным сетям связаны с тем, что способ обработки информации человеческим мозгом в корне отличается от методов, применяемых обычными цифровыми компьютерами. Нейронные сети не программируются в привычном смысле этого слова, они обучаются. Возможность обучения — одно из главных преимуществ нейронных сетей перед традиционными алгоритмами. Технически обучение заключается в нахождении коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными данными и выходными, а также выполнять обобщение
Биологические нейронные сети
Нейрон:
- тело клетки (сома)
- ядро
- цитоплазма
- мембрана
- дендриты,
- аксон
Модель нейрона
В 1943 году Маккалок и Питтс предложили математическую модель нейрона, формальный нейрон. Как и его биологический прототип, модель нейрона содержит несколько входов и один выход (рис. 1.2). Все компоненты вектора входного сигнала суммируются после умножения на соответствующие веса связи весового вектора , которые определяют силу синаптической связи. Вес связи является скалярной величиной, положительной для усиливающих и отрицательной величиной для тормозящих связей. Над полученным суммарным сигналом (взвешенной суммой) выполняется нелинейное преобразование, определяемое активационной функцией нейрона , т.е. ,где - выходной сигнал. Еще один параметр, которым может обладать нейронный элемент, называется порогом или смещением . Он характеризует смещение функции активации по оси абсцисс. Тогда взвешенная сумма представляется как . Веса связей нейронов удобно представлять в виде матрицы , для которой – вес связи -го нейрона с -м. Функционирование нейрона можно рассматривать как процесс, формирующий выходной сигнал при изменении хотя бы одного из входных сигналов.
VHDL описание нейрона
entity my_neuron1 is generic (N:positive; fun:activ_f); port (x: in real_vector(0 to N-1); -- входы нейрона w: in real_vector(0 to N); -- весовые коэффициенты, где w(N)- -- смещение или порог y: out real); --выход нейрона end entity; architecture behav of my_neuron1 is begin process(x, w) variable S: real:=0.0; begin S:=0.0; for i in x'range loop if (x(i) < real'high and x(i)>real'low) then S := S+w(i)*x(i); -- взвешенная сумма входных сигналов end if; end loop; case fun is when sigm => y <= sigmoid(S-w(N)); when sum => y <= S-w(N); end case; end process; end;
Классификация нейронные сетей
По архитектуре и обучению различают следующие известные нейронные сети:
- Персептронные сети с прямыми связями.
- Самоорганизующиеся нейронные сети. К ним относятся:
- Нейронные сети Кохонена.
- Нейронные сети адаптивного резонанса.
- Рециркуляционные нейронные сети.
- Нейронные сети с обратными связями:
- Нейронные сети Хопфилда
- Нейронные сети Хэмминга.
- Двунаправленная ассоциативная память.
- Рекуррентные нейронные сети.
- Гибридные нейронные сети:
- Нейронные сети встречного распространения.
- Нейронные сети с радиально-базисной функцией активации (РБФ-сети)
Тестирование
x | y | f(x,y) | Выход сети |
---|---|---|---|
0.5 | 0.5 | 1.25 | 1.2472 |
0.001 | 0.001 | 2.96 | 3.00201 |
0.1 | 0.95 | 0.995 | 1.0366 |
0.3 | 0.3 | 1.89 | 1.88799 |
Название глав дипломной работы | Отметка о выполнении |
---|---|
Биолгический нейронные сети | + |
Модель нейрона | + |
Искусственные нейронные сети | + |
VHDL- модель сети | - |
Анализ полученных результатов | - |
Название глав дипломной работы | Дата начала выполнения | Дата конца выполнения |
---|---|---|
Разработка VHDL-модели нейронной сети | 01.12.2013 | 10.05.2014 |
Биолгический нейронные сети | 01.12.2013 | 01.02.2014 |
Искусственные нейронные сети | 02.02.2014 | 10.05.2014 |
Список литературы
- http://alife.narod.ru/lectures/neural/Neu_ch03.htm
- http://ru.wikipedia.org/wiki/Метод_коррекции_ошибки
- Нейронные сети: Конспект лекций / В. М. Лутковский. - Мн.: БГУ, 2003. - 99 с.
- Лабораторные работы (MediaWiki)