ТЕХНОЛОГИЯ МАШИННОГО ОБУЧЕНИЯ И ЕЕ ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ - Студенческий научный форум

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

ТЕХНОЛОГИЯ МАШИННОГО ОБУЧЕНИЯ И ЕЕ ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ

Арзамазов Н.А. 1, Ематина Н.И. 1
1ФГБОУ ВО «Владивостокский государственный университет экономики и сервиса», филиал в г. Артеме
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
В настоящее время у пользователей ПК появилась возможность научить программу работать в соответствии не только с запрограммированным алгоритмом, но и на основании предыдущего опыта. Такая техника получила название «машинное обучение». Задача машинного обучения – на основании огромного количества входных данных разглядеть какую-то общую закономерность, шаблон, и затем использовать эту закономерность в дальнейшей работе (Рисунок 1).

Рисунок 1 – Суть машинного обучения

Например, программа, которая «просмотрела» тысячи изображений, на которых были изображены кошки, сможет в итоге сама определить, что на входной картинке изображена еще одна кошка (Рисунок 2). Если показать программе колоссальное количество поисковых запросов, то она сможет заранее угадывать слова, которые захочет написать в поиск пользователь, только начавший писать запрос.

Рисунок 2 – Распознавание на изображении образа кошки

Машинное обучение основано на работе искусственных нейросетей. Нейросеть так называется потому, что эта программа, аналогичная мозгу человека, включает в себя аналоги нейронов – элементарных частей программы, организованных в сеть. Все, что необходимо готовой собранной нейросети – большое количество исходных данных для обработки и анализа. Нейросети удивительны тем, что позволяют программе набирать опыт, причем в сотни и тысячи раз быстрее, чем это способен делать человек. Нейросети бывают разных видов и архитектур, но суть их одна – на основании огромного количества данных выявить закономерность, и «угадать» результат.

В настоящее время машинное обучение широко используется крупными компаниями, и ему уделяется большое внимание, поскольку эта технология дает по-настоящему чудесные результаты. Если Вы пользуетесь Facebook, должно быть, вы уже удивлялись, как при загрузке фотографий программа выделяет лица на фотографиях, и более того, даже угадывает людей, изображенных на фотографиях, и указывает ссылки на их профили (Рисунок 3). Чтобы такое было возможно, прежде другие пользователи должны несколько раз отметить пользователя на фотографии, и сопоставить его с уже выделенным, но конкретно неопознанным лицом.

Рисунок 3 – Пример распознования лиц на Facebook

Запоминая это, и анализируя сходства, программа вскоре сможет угадывать лицо конкретного человека – и чем больше раз его отметят (или подтвердят, что на изображении находится именно он), тем точнее в будущем программа сможет его опознать.

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

Нейросеть является сложной функцией с большим количеством автоматически настраиваемых параметров. Кроме того, каждый нейрон имеет свой «вес», т.е. значимость, который автоматически регулируется в результате обучения программы. К примеру, наиболее вероятно, что нейроны, отвечающие за самые края изображения (в случае анализа изображений), с процессом обучения будут иметь меньшую значимость, чем нейроны, отвечающие за центральные пиксели. В каждый нейрон поступает массив значений – исходных данных, а он на основании прошлого опыта и необходимых вычислений выдает всего лишь одно «выходное» значение, которое зависит от так называемого порогового значения.

Если значение входных данных меньше порогового значения, установленного для данного нейрона, то на выходе нейрон даст 0, а если больше – то 1. С каждым проходом программы на основании входных данных немного «подкручиваются» веса, пороговое значение и другие параметры. И вскоре, после тысяч проходов, ошибка определения станет настолько мала, а веса нейронов так точно подкручены, что сеть станет обученной и готовой к работе. Таким образом, реализуется простейшая схема нейросети, состоящей из одного слоя анализа данных и одного пункта для вывода данных, имеющая название Перцептрон(P) (Рисунок 4). Каждая модель архитектуры имеет свое название и аббревиатуру для употребления.

Рисунок 4 – Пример простейшей схемы нейросети

Так как же программа – такое «прямолинейное» и «бездушное» творение улавливает такие неочевидные сходства? К тому же, работает со всеми основными каналами информации – звуком, текстом, изображениями. Дело в том, что так называемая глубокая нейросеть (с помощью которой и творятся настоящие компьютерные чудеса) работает с несколькими слоями нейронов. И после обработки информации первым слоем, в ход вступает второй, и ищет сходства по данным первого слоя. Затем берется следующий слой, и анализирует второй слой - уровень абстракции воспринимаемой информации еще больше вырастает. Как, например, работает мозг гроссмейстера, который, глядя на шахматную доску, может за секунду определить, хорошо ли стоят фигуры на ней, или близится неизбежное поражение? Ведь чтобы проанализировать такие данные обычными алгоритмами компьютера, потребуется огромное количество времени даже при очень высоких вычислительных мощностях. А все дело в том, что гроссмейстер оценил высокий уровень абстракции входной информации – расположения фигур, то естьзадействовал высокий слой нейросети своего мозга. Нейронная сеть, состоящая из одного слоя, не способна улавливать такие абстракции, поэтому для глубокого обучения возникает необходимость в нескольких слоях.

Премию «HR-бренд-2015» получил российский стартапPrisma, способный фотографии преобразовывать в произведения искусства, изменяя их по подобию стилей известных художников (Рисунок 5).

Рисунок 5 – Российский стартапPrisma

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

Обучение нейросети удобнее сделать автоматическим. К примеру, нам необходимо определить, есть ли на картинке кролик, или его нет. Тогда достаточно загружать каждый раз случайное изображение одной из папок, и в зависимости от выбранной папки, уже иметь заготовленный ответ, есть ли кролик, или нет. А сам алгоритм при этом будет анализировать изображение, и ничего не будет знать о том, из какой папки он его взял, ведь его задача – научиться распознавать кролика вне зависимости от чего-либо, кроме самого изображения. И так, пройдясь по всем изображениям, программа уже с большой точностью сможет определить – есть ли на новом изображении кролик, или нет. И чем больше изображений она проанализирует, тем более точно сможет угадывать результат.

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

Для наибольшей наглядности схем, на рисунке 6 отображены некоторые архитектуры нейросетей, первой из которых (вверху) является Перцептрон.

Рисунок 6 – Пример отображения некоторых архитектур нейросетей

Данная технология совершенствуется, и получает все более широкое распространение. Активно инвестируются стартапы, программирующие искусственный интеллект, способный учиться. Специалисты в этой области всегда желанны в самых крупных компаниях, ведь благодаря технологии машинного обучения и ее совершенствованию, скорее всего, скоро многие действия, которые мог выполнять только человек, смогут послушно и качественно выполнять роботы.

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

  1. Сайт IT-проектов [Электронный ресурс]. Режим доступа: https://habrahabr.ru/company/yandex/blog/314222/

  2. Сайт IT-проектов [Электронный ресурс]. Режим доступа: https://habrahabr.ru/company/wunderfund/blog/313696/

  3. Сайт IT-проектов [Электронный ресурс]. Режим доступа: https://habrahabr.ru/post/144881/

  4. Cайт русскоязычной Америки [Электронный ресурс]. Режим доступа: http://www.forumdaily.com/rossijskij-startap-prisma-sdelal-proryv-v-mobilnyx-texnologiyax/

  5. Научно-популярный сайт [Электронный ресурс]. Режим доступа: https://nplus1.ru/material/2016/05/10/likemonet

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