Нейронные сети и их возможности - Студенческий научный форум

XII Международная студенческая научная конференция Студенческий научный форум - 2020

Нейронные сети и их возможности

Кочетов А.Я. 1, Развеева И.Ф. 1
1ДГТУ
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Понятие нейронной сети в мире не ново в мире, несмотря на то, что сейчас это преподноситься, как техническая революция. Впервые, основополагающие разработки были описаны в конце прошлого века. В период с 1943 по 1950 мир увидел первые описательные процессы мышления человека в проекции на ее компьютерную модель. Уореном Маккалока и Уолтером Питтсом авторы этих работы. В 1949 году был сформирован и описан детальный процесс обучения сети британским ученым Дональдом Хеббом в своей книге «Организация поведения». Ключевые работы по изучению математических моделей продолжались до 90-х годов, некоторые из них были опровергнуты. Сформировывались новые теории и положения о самообучении, также теории распространения ошибок.

Понятие искусственный интеллект сейчас распространенно по просторам сети «интернет». Многие маркетинговые компании рассказывают о возможностях своих новых продуктов. Примером может послужить выставка «CES 19». Многие из производителей презентовали их «ИИ» возможности. Разобрав эти продукты более детально, можно сделать вывод о том, что компании применили довольно хороший линейный алгоритм анализа с помощью различных датчиков.

Таким образом, мы говорим, лишь о разделах «ИИ», таких как: машинное обучение, искусственная нейронная сеть, их методах и моделях. Именно нейронные сети, нашли активное применение в нашей жизни, бизнесе, маркетинге, безопасности.

Что же такое нейронные сети. Как мы знаем наша кора головного мозга состоит из нейронов.

Построим упрощенную компьютерную модель обработки данных через Нейронную сеть.

.

Рис. 2 принцип работы однослойной нейронной сети.

где: входные данные ; веса ; S-синапс ; ∑ - суммирование данных (сумматор); £- функция активации ; - новые данные ранее не известные нам ,спрогнозированные с определенной вероятностью.

Данная модель упрощена, не включает в себя всей системы компьютерной нейронной сети, она необходима для понимания сути механизма.

У нейрона идут разные потоки информации (зачастую закодированные в цифрах ), следующим этапом идет вычисление взвешенной суммы данных и подбора (так называемых весов ) после вся данная складывается в функции ∑ сложения и активируется функцией £. На выходе мы получаем новые данные, на основе предыдущих.

Процесс обучения компьютерной нейронной сети заключен в настройке и создание архитектуры сети, а именно: настройке весов( ), создания синоптических связей (S), это необходимо для получения решения задачи, получения новых данных, точного прогноза.

Обучение нейронной сети это один из самых долгих этапов, требующий огромного массива данных, их достоверности и сортировки. Данный процесс можно более детально рассмотреть на примере действующей модели от передовых компаний, занимающийся разработкой в данной сфере. Компания «Google» Относительно недавно запустили проект «experiments.withgoogle». Они наглядно показали, как именно происходит обучение нейронной сети на упрощенной модели.

Преимущества нейронных сетей. Около 5 лет назад, самым популярным методом решения сложных задач являлось применение сложных и массивных строк алгоритмических кодов, написанных человеком. Основная загвоздка в том, что эти алгоритмы можно назвать простыми. Безусловно они выполняли полезную работу, но у них не было возможности обучения, они подвержены зависимости от логики одного программиста или отдела их. Объективно, не сможет один отдел уместить весь опыт и данные, которые есть в сети интернет в один алгоритм.

Разница нейронной сети по сравнению с обычными алгоритмами:

При правильном обучении нейросети способны фильтровать входные данные. Некоторые из экспертов привели аналогию с человеческим ухом. Мы можем с вами слышать тонкие диапазоны частот, которые нам необходимы, а остальные остаются за пределом нашего восприятия, так же и нейросети. Допустим мы загружаем в нее «big data» фотографий разного плана. Наша цель: тренировка нейросети на распознавание кошек и определения ее расцветки. Нейросеть из множества фотографий животных сделает для себя выборку только из кошек и после на основании этой выборки будет обучаться распознаванию расцветки.

Нейросеть является легко приспосабливающейся к новым изменениям. Самым ярким примером могут служить социальные сети. Идет постоянная новостная лента с определенной темой. Мы как пользователь заинтересовались другой и незамедлительно к нам поступает дополнительная информация по другой теме. Также, работу нейронной сети ,в данном ключе, показывает поисковые системы, предлагая нам контекстную рекламу по данной тематике.

Несомненным преимуществом нейронной сети является ее отказоустойчивость.

При удалении части нейронной сети, вплоть до 80% она сохранит свою работоспособность, при этом уменьшиться точность ответов, но показатель работоспособности составит 50%. Чего нельзя сказать о стандартных алгоритмах. Если удалить часть кода или запутать одну из переменных программа, с большей долей вероятности, алгоритм выдаст ошибку.

Рис. 1 Зависимость работы нейронной сети от степени поврежденности ее структуры

Один из самых сложных этапов работы нейронной сети – является процесс её обучения.

Методы обучение возможно подразделять на разные типы, например: 1) детерминированный- это метод исследования воздействия на объект факторов, которые связаны с результатом воздействия функционально. При данных методах изменению подвергаются начальные данные при этом ориентация идет на желаемый результат; 2) стохастический - это неполная, вероятностная зависимость между показателями, проявляется только в массе наблюдений.

При данном подходе изменению подвергаются все данные, но сохраняются лишь те, которые привели к более лучшему результату. Так же есть особый отдел обучения, «deep machine learning», глубокое машинное обучение. Они же в свою очередь разделяться по методам обучения:

Обучение с учителем (supervised learning). Данный метод заключается в том, что обучение требует размеченного набора данных (датасета). На готовых примерах показываем нейронной сети, какой результат должен получиться. Эффективным примером является использование этой нейронной сети для распознавания предметов по фотографии. В основном данный метод служит для решения типов задач, связанных с классификацией и регрессией. Все данные подразделяться на 2 группы: а) Множество учебных примеров. б) множество контрольных примеров. Из минусов данного метода, можно выделить, необходимость большого датасета размеченных наборов данных.

Так же необходимо определить функцию ошибки (величина предельной ошибки), где - количество обработанных нейронной сети примеров; - реальный выход нейронной сети; - желаемый (идеальный) выход нейронной сети.

Обучение без учителя (unsupervised learning)

На сегодня крайне сложно получить идеально отобранный датасет размеченных данных, даже те готовые которые существуют на 2019 составляют ,лишь миллион, чего крайне мало для корректного обучения.

Необходимо обозначить, что данный метод подразделяется в зависимости от задач. Необходимо отметить, что чаще это простые задач Искусственные нейронные сети подразделяются на: 1) Сортировка по классам. Одна из первых простых задач. Так как, это не требует знания исключительных специалистов в этой области, а данные довольно простые, Нейронная сеть сам понимает базовые признаки, такие как: цвет, размер, форма. 2) Обнаружения отличительного объекта из группы. Данный метод очень удобен для экономистов и людей, занятых в сфере контроля в банковской деятельности. Нейросеть обучается набором обычных проверенных данных. Работает на поиск нестандартных операций выявляя возможные мошеннические действия. 3) Ассоциативные признаки. Наиболее ярко работу нейросети в этом типе, демонстрируют поисковые сети, крупные медиа ресурсы, так же интернет магазины. Сеть трудится на подбром контента и товаров для пользователей.

4) Автоэнкодеры. Функции нейронной сети сведены к тому, что нейросеть кодирует входные данные, после пытается расшифровать выходные. Служит для применения в государственных органах.

Лучшим среди двух методов является комбинированный метод обучения.

Когда часть дата сета является с размеченными данными, а также есть и наличие неразмеченных данных. Данный метод крайне распространён для обучения медицинских снимков.

Рассмотрим процесс написания нейронных сетей подключим в работе свою на основе готовых библиотек и баз данных.

Готовая база данных содержащая 60000 тысяч изображений с рукописным текстом, для удобства база разбита на 2 части. Где 50000 тысяч изображений необходимы для обучения, а 10000 для теста работы корректности системы. А также одну из самых распространённых библиотек ,это Разработка  ведется с сентября 2013 г. Начал разработку  Yangqing Jia.  Библиотека очень сильно поддерживается сообществом разработчиков на  GitHub. известна под лицензией BSD 2-Clause. Реализована на языке С++ и обертками на Python.

. Этапы несколько упростим. После создания среды, сортировке нужных нам данных из базы изображений, например, на языке python. Подключить данную библиотеку не составляет огромного труда.

Рис. 2 часть кода подключения библиотеки.

Подключаем библиотеку, выбираем режим тестирования и создаем среду cpu .

Рис. 3 часть кода создание среды.

И наконец создаем нейронную сеть с указанием всех необходимых параметров. Загружаем изображения для классификации.

Рис. 4 часть кода подключения библиотеки.

Получаем ответ нейронной сети. Изображение было классифицировано классом и распознано.

Список использованных источников:

https://www.pvsm.ru/algoritmy/88240 [Электронный ресурс].

https://docplayer.ru/58881555-Sravnenie-bibliotek-glubokogo-obucheniya.html/

List of sources used:

1) https://www.pvsm.ru/algoritmy/88240 [Electronic resource].

2) https://docplayer.ru/58881555-Sravnenie-bibliotek-glubokogo-obucheniya.html

Просмотров работы: 5