Навигация по странице:
|
Нейронные сети. Нейронные сети что это, умная программа, основанная на самообучении или искусственный интеллект
Введение.
Нейронные сети- что это, умная программа, основанная на самообучении или искусственный интеллект?
Начнем с того что это новая перспективная область, основанная на математической модели использующая программное воплощение, строящаяся на основе функционирования сетей.
Это понятие сравнимо с процессами происходящих в мозге человека и их изучения .
Для простоты изучения можно сказать что нейронная сеть- совокупность сравнимо простых процессов, которые в свою очередь тесно связанны друг с другом и постоянно взаимодействуют между собой образуя целую систему.
Нейронные сети могут выполнять самые различные задачи, начиная от решения различных алгоритмов, математических моделей, создание веб сайтов, компьютерных игр, заканчивая управлением целой системой. Кроме решения конкретных задач они могут анализировать различные ситуации и выявлять закономерности, которые могут переходить в законы и правила по которым работает эта система. Примером выполнения более масштабных задач анализа и получения результата являются: распознавание рисунка, лиц людей, прогнозирование курса валют.
Этапы решения задач
Для решений таких сложных задач требуется разбить на этапы:
Сбор данных системой для дальнейшего обучения
Подготовка данных и нормализация
Выбор топологии сети
-
Выбор нужных характеристик сети
Подбор параметров
Обучение на основе собранных данных
Проверка эффективности
Корректировка параметров
Пример самоорганизующейся сети
Примером простого обучения можно привести пример.
Входные данные Нейронная сеть Изображение Нейронная сеть
а
А
а
А
А
Обучение Практика
Нейросети учатся на примерах. Нашей целью НС является распознание буквы «А». Пользователь подбирает пригодные данные, а затем запускает алгоритм обучения. При этом пользователю требуется ввести большое количество критериев отбора и ограничений, для того чтобы правильно выбирать и подготавливать данные, создавать четкую архитектуру для правильной интерпретации результатов. Берем для ввода в сеть множество «А» различных шрифтов и размеров. После этого начинаем тысячи раз прогонять все вариации буквы «А». Следовательно, сама сеть начинает распознавать все виды буквы «А», сеть считаем обученной. Теперь мы можем использовать ее на практике. Представляем сети картинку с буквой «А», она начинает анализировать и сравнивать с более подходящим вариантом, и выводим нужный нам результат. Сеть обучается выполнять поставленную задачу без вмешательства со стороны человека.
Стоит отметить, что за четкую постановку и формулировку задачи отвечает пользователь, а не компьютер. Причем грамотное применение нейросетей требует хороших знаний в области нейроинформатике и других методов мониторинга и анализа данных.
Область практического применения
В 21 веке информационные системы занимают значительное место, в этом случае стоит говорить о перспективах развития данной области. Одним из быстро развивающимся направлением являются нейронные сети.
Экономика и бизнес. Прогнозирование временных показателей: курс валют, спрос, цены на сырье, автоматический трейдинг, оценка стоимости недвижимости, прогнозирование банкротства, распознавание чеков и документов.
Авиатехника. Обучаемый автопилот, распознание потенциальных угроз, адаптивное пилотирование поврежденного самолета.
Автоматизация производства. Контроль качества производства, мониторинг и защита от аварийных ситуаций, визуализация информации.
Связь. Уменьшение объёма передаваемой видеоинформации , оптимизация быстрого поиска нужного маршрута, быстрое кодирование/декодирование информации, повышение методов защиты информации.
Ввод и обработка информации. Отслеживание платежей, почтовых документов, распознание речевой информации, голосовой ввод текста в пк, быстрая обработка и преобразование.
Безопасность. Распознание лиц, отпечатков пальцев, лица, голосу. Мониторинг информационных потоков обнаружение уязвимостей, вторжений. Анализ видео датчиков, поиск подделок.
Приведем примеры использования искусственного интеллекта в различных инновационных направлениях:
Искусственный интеллект помогает беспилотным автомобилям определять свое местоположение на карте
Искусственный интеллект помогает фермерам бороться с болезнями растений
Искусственный интеллект может спрогнозировать сердечную недостаточность еще до диагностирования
Искусственный интеллект сможет распознать ложь лучше, чем полиграф
Военная академия связи имени С.М.Буденного
Доклад на тему:
«Нейронные сети и их применение»
Выполнил: к-т Храмов А.А.
Руководитель: п-к Авраменко В.С.
Санкт-Петербург 2017
Процесс обучения Хопфилда
Общая постановка задачи, решаемой с помощью нейронной сети Хопфилда, следующая. Известен набор из N эталонных образов, которые должны храниться в памяти сети и, при необходимости, правильно распознаваться ею. Каждый образ – это вектор, состоящий из M идеальных входных сигналов. После обучения сети Хопфилда она должна уметь из поданного на ее вход зашумленного вектора выделить (распознать) один из заложенных в нее эталонных образов или дать заключение, что входные данные не соответствуют ни одному из них.
Алгоритм жизненного цикла нейронной сети Хопфилда включает две стадии: обучения и практического использования.
На стадии обучения выполняется следующая последовательность действий:
Составляется матрица эталонных образов размера NхM (табл. 1). Поскольку архитектура сети предусматривает использование лишь бинарных входов, никаких дополнительных нормализации и нормировки данных не требуется.
Таблица 1. Матрица эталонных образов нейронной сети Хопфилда
№
образа
|
№ входной бинарной переменной
|
1
|
2
|
…
|
i
|
…
|
M
|
1
|
x11
|
x12
|
…
|
x1i
|
…
|
x1M
|
2
|
x21
|
x22
|
…
|
x2i
|
…
|
x2M
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
k
|
xk1
|
xk2
|
…
|
xki
|
…
|
xkM
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
N
|
xN1
|
xN2
|
…
|
xNi
|
…
|
xNM
|
1.2. Рассчитываются элементы wji матрицы весовых коэффициентов :
(1)
или в матричной форме записи:
- кроме диагональных элементов;
-для диагональных элементов.
Очевидно, что квадратная матрица симметрична относительно нулевой главной диагонали.
На стадии практического использования:
2.1. На входы сети подается неизвестный, в общем случае, зашумленный вектор-столбец сигналов . Выходам нейронов присваиваются соответствующие значения элементов входного вектора:
. (2)
2.2. Пересчитываются состояния нейронов для следующей (q+1) итерации:
(3)
или в матричной форме:
.
2.3. Рассчитываются новые значения элементов выходного вектора:
(4)
или в матричной форме:
.
где f(s) – активационная функция в виде повышающегося единичного скачка с бинарным множеством допустимых значений {–1; 1}:
(5)
Порог активации T обычно принимается равным нулю.
2.4. Цикл повторяется с п. 2.2 до тех пор, пока все значения элементов выходного вектора не стабилизируются, т. е. пока не будет выполнено условие:
(6)
либо пока выходные вектора не начнут чередоваться:
(7)
2.5. После стабилизации выходов должен получиться вектор:
– соответствующий одному из эталонных образов – сеть проассоциировала и распознала его (условие (6));
– не соответствующий ни одному из эталонов – сеть не смогла распознать сигнал, что означает либо его сильную зашумленность, либо несоответствие ни одному из эталонных образов в памяти сети Хопфилда (условия (6) или (7)).
При использовании данной архитектуры для решения задачи распознавания образов следует иметь в виду, что это возможно только при соблюдении определенного соотношения между количеством бинарных признаков, характеризующих образы, и количеством самих запоминаемых образов. В первом приближении должно соблюдаться условие: N ≤ 0,15×M. В предельно строгом выражении:
. (8)
Если среди запоминаемых образов нет сильно похожих друг на друга, достаточно воспользоваться первым условием. В противном случае схожие образы могут вызывать так называемые перекрестные ассоциации и необходимо учитывать второе ограничение.
Рассмотрим пример распознавания двух графических образов, представленных бинарными элементами в квадратной матрице (рис. 2). С учетом ограничения сети Хопфилда размер входного вектора для двух эталонных образов должен быть больше 13 элементов, а поскольку графический образ кодируется квадратной матрицей, минимально возможное число входов будет равно 16. Формат (количество и последовательность) выходов идентичен формату входов.
Значение элемента входного вектора, равное +1, соответствует наличию изображения в соответствующем участке. В противном случае элемент равен –1.
В соответствии с алгоритмом для данных образов составляется матрица эталонных образов (табл. 2), содержащая 2 строки эталонных векторов и 16 столбцов бинарных данных. Далее с использованием соотношения (1) определяются весовые коэффициенты нейронной сети Хопфилда (табл. 3).
Таблица 2. Матрица эталонных образов для настройки нейронной сети Хопфилда
№ образа
|
№ переменной
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
16
|
1
|
1
|
1
|
1
|
1
|
1
|
–1
|
–1
|
1
|
1
|
–1
|
–1
|
1
|
1
|
–1
|
–1
|
1
|
2
|
1
|
1
|
1
|
1
|
–1
|
1
|
1
|
–1
|
–1
|
1
|
1
|
–1
|
1
|
1
|
1
|
1
|
Таблица 3. Матрица весовых коэффициентов нейронной сети Хопфилда
Рис. 2. Эталонные образы для обучения сети Хопфилда
На стадии практического использования попытаемся распознать зашумленные образы, представленные на рис. 3, обученной нейронной сетью.
Рис. 3. Зашумленные образы для распознавания сетью Хопфилда
Подаем на входы сети образ 3. По соотношениям (2)–(4) последовательно определяем начальные выходные значения и серии состояний нейронов, изменяющихся при синхронной активизации обратных связей, и соответствующих им новых выходных значений.
Процесс изменения сигналов в работающей сети Хопфилда при подаче образа 3 продемонстрирован в табл. 4.
Последний столбец табл. 4 идентичен первому эталонному образу, а значит распознавание следует признать выполненным успешно.
Таблица 4. Изменение сигналов в сети Хопфилда при подаче образа 3
№ входа или выхода i, j
|
xi
|
yj(0)
|
Итерация 1
|
Итерация 2
|
sj(1)
|
yj(1)
|
sj(2)
|
yj(2)
|
1
|
1
|
1
|
6
|
1
|
10
|
1
|
2
|
1
|
1
|
6
|
1
|
10
|
1
|
3
|
1
|
1
|
6
|
1
|
10
|
1
|
4
|
–1
|
–1
|
10
|
1
|
10
|
1
|
5
|
1
|
1
|
14
|
1
|
18
|
1
|
6
|
–1
|
–1
|
–14
|
–1
|
–18
|
–1
|
7
|
1
|
1
|
–18
|
–1
|
–18
|
–1
|
8
|
1
|
1
|
14
|
1
|
18
|
1
|
9
|
1
|
1
|
14
|
1
|
18
|
1
|
10
|
–1
|
–1
|
–14
|
–1
|
–18
|
–1
|
11
|
–1
|
–1
|
–14
|
–1
|
–18
|
–1
|
12
|
1
|
1
|
14
|
1
|
18
|
1
|
13
|
1
|
1
|
6
|
1
|
10
|
1
|
14
|
–1
|
–1
|
–14
|
–1
|
–18
|
–1
|
15
|
–1
|
–1
|
–14
|
–1
|
–18
|
–1
|
16
|
1
|
1
|
6
|
1
|
10
|
1
|
|
–
|
–
|
–
|
8
|
–
|
0
|
Таблица 5. Изменение сигналов в сети Хопфилда при подаче образа 4
№ входа или выхода i, j
|
xi
|
yj(0)
|
Итерация 1
|
Итерация 2
|
Итерация 3
|
sj(1)
|
yj(1)
|
sj(2)
|
yj(2)
|
sj(3)
|
yj(3)
|
1
|
1
|
1
|
10
|
1
|
10
|
1
|
10
|
1
|
2
|
1
|
1
|
10
|
1
|
10
|
1
|
10
|
1
|
3
|
1
|
1
|
10
|
1
|
10
|
1
|
10
|
1
|
4
|
1
|
1
|
10
|
1
|
10
|
1
|
10
|
1
|
5
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
6
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
7
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
8
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
9
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
10
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
11
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
12
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
13
|
1
|
1
|
10
|
1
|
10
|
1
|
10
|
1
|
14
|
–1
|
–1
|
2
|
1
|
–2
|
–1
|
2
|
1
|
15
|
1
|
1
|
–2
|
–1
|
2
|
1
|
–2
|
–1
|
16
|
1
|
1
|
10
|
1
|
10
|
1
|
10
|
1
|
|
–
|
–
|
–
|
40
|
–
|
40
|
–
|
40
|
|
–
|
–
|
–
|
–
|
–
|
0
|
–
|
0
|
|
–
|
–
|
–
|
–
|
–
|
–
|
–
|
0
|
Подаем теперь на входы образ 4 и выполняем все операции в соответствии с алгоритмом стадии практического использования нейронной сети Хопфилда. Процесс изменения сигналов в этом случае представлен в табл. 5.
Очевидно, что в данном случае сеть не может отнести зашумленный образ к какому-либо из эталонных, так как происходит постоянное чередование двух различных выходных векторов, причем не соответствующих ни одному из исходных эталонных образов. Это позволяет сделать вывод, что значит распознавание зашумленного образа 4 данной нейронной сетью Хопфилда невозможно.
|
|
|