МРНТИ 28.23.37
ПЕРСПЕКТИВЫ НЕЙРОННЫХ СЕТЕЙ И ГЛУБОКОГО МАШИННОГО ОБУЧЕНИЯ НА ПРИМЕРЕ СОЗДАНИЯ РЕКОМЕНДАТЕЛЬНЫХ СИСТЕМ
В статье рассматривается система глубокого машинного обучения для генерации рекомендаций, а также реализованный программный проект – компьютерная модель рекомендательной системы Microsoft Azure Machine Learning Studio с использованием встроенных модулей.
Ключевые слова: рекомендательная система, глубокое машинное обучение, нейронные сети, Microsoft Azure Machine Learning Studio.
Введение
На сегодняшний день искусственный интеллект считается важнейшей сферой ИТ-исследований и ведущим драйвером прорывного индустриального роста. Искусственный интеллект применяется в тех случаях, когда поставленная задача не имеет решения и затрагивает те виды человеческой деятельности, которые традиционно считаются интеллектуальными или творческими и могут быть воссозданы только с помощью специальных вычислительных технологий. Одной из таких технологий, направленной на решение задач в области распознавания образов, прогнозирования, оптимизации и т.д., является применение искусственных нейронных сетей. Данная технология набирает все большую популярность в настоящее время в связи с ростом вычислительных возможностей. Внедрение устройств, использующих нейронные сети, во все сферы жизнедеятельности – одна из основных задач на ближайшие несколько лет, потому данная тема в наше время очень актуальна. В данной статье рассмотрены особенности применения нейронных сетей и описаны дальнейшие перспективы возможного развития.
Нейронные сети и глубокое машинное обучение
Нейронная сеть – это последовательность нейронов, соединенных между собой синапсами. Синапс – это место контакта между двумя нейронами или между нейроном и получающей сигнал клеткой. Структура нейронных сетей пришла из биологии. Благодаря такой структуре, машина обретает способность анализировать и даже запоминать различную информацию. Нейронные сети способны не только анализировать информацию, но также воспроизводить её из своей памяти. Таким образом, нейронная сеть – это машинная интерпретация мозга человека, в котором находятся миллионы нейронов, передающих информацию в виде электрических импульсов [1].
Чтобы разобраться, как работают нейронные сети, необходимо понять составляющие нейронной сети и ее параметры. Основной составляющей нейронной сети является нейрон. Нейрон – это вычислительная единица, которая получает информацию, производит над ней вычисления и передает её дальше [2].
Нейронные сети представляют собой систему соединенных и взаимодействующих между собой простых процессов. Каждый процесс подобной сети имеет дело только с сигналами, которые он периодически получает, и сигналами, которые он периодически посылает другим процессорам. С точки зрения машинного обучения нейронная сеть представляет собой частный случай методов распознавания образов, дискриминантного анализа, методов кластеризации и т.д.
Машинное обучение является одним из направлений искусственного интеллекта. Основной принцип заключается в том, что машины получают данные и «обучаются» на них. В настоящее время это наиболее перспективный инструмент для бизнеса, основанный на искусственном интеллекте. Системы машинного обучения позволяют быстро применять знания, полученные при обучении на больших наборах данных, что позволяет им преуспевать в таких задачах, как распознавание лиц, распознавание речи, распознавание объектов, перевод, и многих других. В отличие от программ с закодированными вручную инструкциями для выполнения конкретных задач, машинное обучение позволяет системе научиться самостоятельно распознавать шаблоны и делать прогнозы.
Глубокое обучение является подмножеством машинного обучения. Оно использует некоторые методы машинного обучения для решения реальных задач, используя нейронные сети, которые могут имитировать человеческое принятие решений.
Применение нейронных сетей
Нейронные сети используются для решения сложных задач, которые требуют аналитических вычислений, подобных тем, что делает человеческий мозг. Самыми распространенными применениями нейронных сетей являются:
- Классификация – распределение данных по параметрам. Например, на вход дается набор людей и нужно решить, кого из данных людей выбрать, а кого нет. Очень популярно в банковской сфере для оценки кредитоспособности клиентов на основе данных об их доходе, семейном положении, возрасте и т.д.
- Предсказание – возможность предсказывать следующий шаг. Например, рост или падение акций, исходя из данных на биржевом рынке.
- Распознавание – в настоящее время это направление имеет самое широкое применение в нейронных сетях. Классический пример – распознавание лиц. Данная технология используется в любых системах, где требуется идентификация человека, в пропускных и контролирующих системах.
- Генерирование – создание, получение или образование образов. Под образом подразумевается текст, рисунок, звук.
- Рекомендация – предложение данных по параметрам. Например, пользователю, исходя из его индивидуальных предпочтений, предлагается выбор того или иного продукта или услуги. Классический пример: на основе пользовательского плейлиста или списка просмотренных фильмов ему предлагается музыка или фильм, которые могут его заинтересовать.
Распознавание образов
Теория распознавания образов – раздел информатики, развивающий основы и методы классификации и идентификации предметов, явлений, процессов, сигналов, ситуаций и т.п. объектов, которые характеризуются конечным набором некоторых свойств и признаков. Такие задачи решаются довольно часто, например, при переходе или проезде улицы по сигналу светофора. Распознавание цвета загоревшейся лампы светофора и знание правил дорожного движения позволяют принять правильное решение о том, можно или нельзя переходить дорогу. Необходимость такого распознавания возникает в самых разных областях – от военного дела и систем безопасности до оцифровки аналоговых сигналов [3].
Для оптического распознавания образов можно применить метод перебора вида объекта под различными углами, масштабами, смещениями и т.д. Для букв нужно перебирать шрифт, свойства шрифта и т.д. Второй подход – нахождение контура объекта и исследование его свойств (связность, наличие углов и т.д.). Существует множество примеров задач распознавания образов:
- оптическое распознавание символов;
- распознавание штрих-кодов;
- распознавание автомобильных номеров;
- распознавание лиц, речи, изображений;
- распознавание локальных участков земной коры, в которых находятся месторождения полезных ископаемых;
- классификация документов.
Технология распознавания лиц с использованием нейронной сети также нашла своё применение в разработке мобильного программного обеспечения. Компания Apple представила технологию FaceID, позволяющую пользователю разблокировать свой девайс с помощью лица: благодаря специальному алгоритму, основанному на нейронной сети, устройство составляет 3D модель лица пользователя и затем сравнивает его при следующей разблокировке. Кроме того, продукция Apple использует несколько моделей глубокого обучения на своих устройствах: распознавание лиц на фото, фразы «Привет, Siri» и рукописные китайские иероглифы. Но все эти модели ничему не учатся от пользователя. Разработчики сервиса OpenFace утверждают, что точность распознавания лиц можно повысить.
Частота применения технологии искусственных нейронных сетей в различных сферах жизни общества и в науке, несомненно, растет. Об этом свидетельствуют те новшества, которые постоянно внедряются в быт людей. Технологии с применением нейронных сетей активно используются в области информационных технологий. Наиболее часто встречающееся применение – голосовой поиск от компании Google на портативных устройствах и персональных компьютерах, преобразующий речь в текст за считанные секунды, используя специальные алгоритмы, основанные на глубоких нейронных сетях [4],[5].
Рекомендательные системы, основанные на нейронных сетях
В данной работе нас интересует генерирование рекомендаций с помощью нейронных сетей. Способности нейронной сети к рекомендации напрямую следуют из её способности к обобщению и выделению скрытых зависимостей между входными и выходными данными. После обучения система способна порекомендовать данные, на основе ваших уже имеющихся данных и каких-то существующих в настоящий момент факторов.
В качестве примера использования нейронных сетей и глубокого машинного обучения был произведен тестовый вариант рекомендательной системы через Microsoft Azure Machine Learning Studio. Экспериментом послужил интерес пятерых людей в просмотре фильмов разных жанров и названий фильмов по этим жанрам, а также оценка указанных просмотренных фильмов по шкале от 1 до 5. С помощью модулей, имеющихся в Microsoft Azure Machine Learning Studio: TrainMatchboxRecommender и ScoreMatchboxRecommender, создается модель рекомендательной системы (рис. 1).
После запуска модуля ScoreMatchboxRecommender система анализирует предпочтения лиц и создается таблица с рекомендациями для них (рис. 2). Исходя из вышеуказанной рекомендации следует, что система рекомендует для пользователя «Adil» такой фильм, как «Reincarnation» в первую очередь, несмотря на то, что этот фильм был уже просмотрен данным пользователем, поскольку в настройках рекомендации было указано «From all items». Затем стоит фильм «The_Spell» и на третьем месте – «Champions».
Как видно, нейронные сети имеют большие перспективы в будущем. Их применение практически безгранично, будь то распознавание образов и прогнозирование или же анализ данных и постановка точных диагнозов. Поскольку экономические, финансовые и социальные системы очень сложны и являются результатом действий и противодействий различных людей, то крайне сложно создать полную математическую модель с учетом всех возможных действий и противодействий. Нейронные же сети, способные обучаться на основе вложенных в них данных и результатов прошлых действий, могут решать задачи подобного рода сложности [6].
В ходе выполнения работы было рассмотрено глубокое обучение в различных применениях. Результатом работы является разработанная модель рекомендательной системы с применением Microsoft Azure Machine Learning Studio и её модулями. Полученный результат показал возможность использования выделяемых параметров набора данных для рекомендательной системы.
Список литературы
- Барский А.Б. Введение в нейронные сети // Финансы и статистика. – 2004. – 176 с.
- Habr.com [Электронный ресурс]. – URL: https://habr.com/ru/post/312450/ (дата обращения 24.11.2019).
- Масалович А. Нейронная сеть – оружие финансиста / А. Масалович [Электронный ресурс]. – URL: http://www.computer-museum.ru/histussr/neiro_net.htm (дата обращения 24.11.2019).
- Scienceforum.ru [Электронный ресурс] – URL: https://scienceforum.ru/2019/article/2018017318 (дата обращения 24.11.2019).
- Джеффри Е. Хинтон. Как обучаются нейронные сети // В мире науки. –2012. – 107 с.
- Малыгина Ю.П. Нейронные сети: особенности, тенденции, перспективы развития // Молодой исследователь Дона / Донской государственный технический университет. – Ростов-на-Дону, Российская Федерация. – №5(14). – 2018. – 4 с.