Информационная система автоматизации вычислительных экспериментов с искусственными нейронными сетями, модернизированными посредством предикторов весовых коэффициентов
ВВЕДЕНИЕ 2
1 Аналитический обзор средств автоматизации вычислительных
экспериментов с нейронными сетями 4
1.1 Общие сведения об искусственных нейронных сетях 4
1.2 Обзор пакета статистического анализа «STATISTICA Automated Neural Networks» 8
1.3 Обзор среды «MATLAB» 10
2 Разработка архитектуры информационной системы 13
2.1 Применение SED-разложения для задания весовых коэффициентов
2.2 Процедурная модель информационной системы 15
2.3 Моделирование объектно-ориентированной архитектуры
информационной системы 19
3 Разработка документации и тестирование ИС 32
3.1 Элементы технической документации разработанной ИС 32
3.2 Результаты тестирования и проверки гипотезы посредством
разработанной ИС 37
ЗАКЛЮЧЕНИЕ 47
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 48
ПРИЛОЖЕНИЕ А Листинг исходного кода 49
ПРИЛОЖЕНИЕ Б Графики обучения 71
В настоящее время можно наблюдать быстрое развитие различных методов машинного обучения, и, в частности, искусственных нейронных сетей (ИНС), это направление является одним из наиболее перспективных, что подтверждается указом президента Российской Федерации «О развитии искусственного интеллекта в Российской Федерации», в рамках которого была утверждена национальная стратегия развития искусственного интеллекта на период до 2030 года.
Таким образом, построение и анализ искусственных нейронных сетей является актуальной задачей. Вместе с тем, средств для автоматизации вычислительных экспериментов с нейронными сетями немного, и они являются сложными в освоении. Из-за этого средние временные затраты, на построение нейронной сети с высокой скоростью сходимости, довольно велики. Кроме того, ряд потенциальных исследователей не обладает необходимыми компетенциями в области программирования, для реализации нейронных сетей путем написания кода.
Одним из подходов к повышению сходимости искусственных нейронных сетей является прогнозирование значений весовых коэффициентов. Если на этапе построения ИНС задать веса близкие к тем, что будут достигнуты в результате обучения, то время обучения сократится. Назовём программные модули для прогнозирования весовых коэффициентов предикторами.
Таким образом, целью работы является снижение трудовых и временных затрат на постановку вычислительных экспериментов по повышению сходимости искусственных нейронных сетей, модернизированных посредством предикторов весовых коэффициентов.
Для достижения поставленной цели необходимо решить следующие задачи:
- провести аналитический обзор существующих искусственных нейронных сетей, подходов к выбору начального значения весов и соответствующих инструментов разработки;
- разработать объектно-ориентированную архитектуру информационной системы автоматизации вычислительных экспериментов с искусственными нейронными сетями, модернизированными посредством предикторов весовых
коэффициентов;
- реализовать спроектированную информационную систему;
- разработать элементы технической документации и произвести тестирование ИС;
- провести проверку гипотезы о влиянии сингулярных чисел на скорость обучения ИНС при их задании в качестве весовых коэффициентов.
Объектом исследования является информационная система автоматизации вычислительных экспериментов по повышению сходимости искусственных нейронных сетей, модернизированных посредством предикторов весовых коэффициентов.
Предметом исследования является автоматизация вычислительных экспериментов по повышению сходимости искусственных нейронных сетей, модернизированных посредством предикторов весовых коэффициентов.
В процессе выполнения выпускной квалификационной работы были решены следующие задачи:
- проведен аналитический обзор существующих искусственных нейронных сетей, подходов к выбору начального значения весов и соответствующих инструментов разработки, в результате были выбраны наиболее популярные виды ИНС, основные подходы к выбору начального значения весов и средства разработки;
- разработана объектно-ориентированная архитектура ИС автоматизации вычислительных экспериментов с ИНС, модернизированных посредством предикторов весовых коэффициентов, отличающаяся относительной простотой понимания, гибкостью и наличием возможности дальнейшего расширения функционала, благодаря применению паттернов программирования MVC, Tem¬plate method;
- реализована спроектированная информационная система, посредством языка Python,с использованием библиотек Tensorflow, Keras, numpy, PyQt;
- разработаны элементы технической документации и произведено тестирование ИС, продемонстрировавшее наглядность визуализации архитектуры ИНС, легкость создания и сравнения ИНС.
- произведена проверка гипотезы о влиянии сингулярных чисел на скорость обучения, в результате чего показано, что в ИНС с одним и двумя скрытыми слоями, использование предикторов на основе ЗИП-разложения, снижает точность в среднем на 0,02. Ограничением к результатам исследования является число экспериментов в количестве 10 и тестовый характер обучающей выборки.
В результате выполнения выпускной квалификационной работы было достигнуто снижение трудовых и временных затрат на постановку вычислительных экспериментов по повышению сходимости ИНС, модернизированных посредством предикторов весовых коэффициентов.
1. Аггарвал, Ч. Нейронные сети и глубокое обучение. Учебный курс / Ч. Аггарвал. - М.: Диалектика, 2020. - 754 с.
2. Бринк, Х. Машинное обучение / Х. Бринк, Д. Ричардсон, Ф. Марк - СПб.: Питер, 2017. - 336 с.
3. Босуэлл, Д. Читаемый код, или Программирование как искусство / Д. Босуэлл, Т. Фаучер. - СПб.: Питер, 2012. - 208 с.
4. Гудфеллоу, Я. Глубокое обучение / Я. Гудфеллоу, И. Бенджио, А. Курвиль. - М.: ДМК, 2018. - 653 с.
5. Ru.Qwe.Wiki[Электронный ресурс] - Режим доступа:
https://ru.qwe.wiki/wiki/Singular_value_decomposition.- Дата обращения:
10.05.2020.
6. Вержбицкий, В.М. Вычислительная линейная алгебра / В.М. Вержбицкий. - М.: Высшая школа, 2009. - 351 с.
7. Леоненков, А.В. Самоучитель UML/ А. В. Леоненков. - 2-е изд - СПб.: БХВ, 2004. - 569 с.
8. Приемы объектно-ориентированного проектирования. Паттерны проектирования / Э. Гамма [и др.]. - М.: Питер, 2018. - 366 с.
9. Эккель, Б. Философия программирования / Б. Эккель. - СПб.: Питер, 2015. - 1168 с.
10. Методы программирования: учебное пособие / Ю.Ю. Громов [и др.]. - Тамбов: Изд-во ФГБОУ ВПО «ТГТУ», 2012. - 144 с.