Содержание статьи
Обучение нейросети: методы и алгоритмы
Алгоритмы обучения нейросетей
Люди с творческими профессиями и помогающими специальностями, например психологи, детские воспитатели, учителя и консультанты, имеют больше шансов сохранить работу. Искусственный интеллект еще не скоро сможет заменить человеческий опыт. По мнению Яна Лекуна, современным нейронным сетям не хватает разума. «Когда дело доходит до создания действительно умных машин, способных разрабатывать стратегии и хорошо разбираться в мире, у нас даже нет ингредиентов для рецепта», — жалуются ученые-коллеги Яна Лекуна.
Алгоритм обратного распространения вносит решающий вклад в обучение глубоких нейросетей с несколькими слоями. Он позволяет эффективно оптимизировать веса узлов нейронной сети, в том числе в сложных архитектурах с большим количеством параметров. Помимо стандартного варианта такого алгоритма существуют его расширенные и продвинутые версии, способные адаптивно регулировать скорость обучения (например, Adam или RMSprop).
Даже самые лучшие системы искусственного интеллекта, к сожалению, тратят очень много энергии. Если человеческий мозг совершает 1,5×10¹⁸ операций в секунду и потребляет всего 25 Вт в день, то современная видеокарта может выполнить только 1013 операций в секунду и потребляет около 250 Вт. Чтобы достичь мощности человеческого мозга, пришлось бы подключить сотню тысяч таких видеокарт к гигантскому компьютеру, потребляющему не менее 25 мегаватт. Это в миллион раз превышает потребности человеческого мозга.
Все нейронные сети решают разные задачи, и поэтому тренировать их нужно тоже по-разному. В зависимости от будущего функционала, наличия ресурсов и времени выбирайте подходящий формат обучения — и спустя время получите наученную решению именно ваших задач ИИ-модель.
При этом обучение с подкреплением рассчитано не только на успешное прохождение игр. Нейросети , подготовленные к самостоятельной работе таким способом, могут в дальнейшем управлять транспортом в качестве автопилота или выступать техподдержкой, получая положительную обратную связь за каждый верно решенный запрос.
Нейронные сети используются почти во всех голосовых приложениях. При этом они научились распознавать речь не только взрослых, но и детей, у которых она не всегда внятная, а также людей с акцентами и необычными голосами. Но недостаточно просто расшифровать звук — виртуальный помощник должен еще правильно понять его смысл. Для Алексы, например, инженеры Amazon определили около 80 различных намерений: позвонить кому-нибудь, воспроизвести музыку, дать информацию о пробках на дороге, выбрать радиостанцию. Как только помощник распознает намерение, сервер Amazon сможет выполнить запрошенную задачу.
Для того чтобы обучение с подкреплением было результативно, важно пройти много предварительных тренировок. Долгий период развития навыков модели и необходимость большого количества примеров называют главными минусами этого формата. Если в будущей работе нейросеть столкнется с незнакомой ситуацией, то реакция будет непредсказуема.
Нейросети могут прогнозировать спрос на разные продукты и предсказывать изменение цен акций. Например, они помогают французской государственной энергетической компании EDF прогнозировать потребление энергии. С этими знаниями компания эффективнее управляет производительностью электростанций и распределяет ресурсы с минимальными потерями. В маркетинге нейросети используются для изучения интереса людей к тому или иному контенту:к примеру, подскажут, на какой рекламный баннер будут реагировать чаще.
С учителем
Нейросети , прошедшие обучение без учителя, не хуже предыдущих решают задачи кластеризации. Деление большого количества данных на группы способна совершить каждая обучающаяся модель, а далее с уже первично отсортированными сведениями могут работать люди или более тонко настроенные модели. Помимо задач группировки, нейронные сети умеют определять связи в данных. Этот механизм часто используется в маркетинге: анализируя историю покупок, искусственный интеллект предполагает, какие товары и услуги дополнительно предложить этому же человеку. Детектирование аномалий — еще одна профильная задача самостоятельного машинного обучения, решаемая автокодировщиком Autoencoder.
Понятие машинного обучения неразрывно связано с нейросетями. Нейронная сеть является методом в области искусственного интеллекта, который учит компьютеры работать с данными так же, как человеческий мозг. Важно понимать, что нейросети — это не мыслящие объекты, наделенные сознанием. Это сложнейшая база данных с огромным количеством формул.
Аналогично чтобы построить автомобиль, который может ездить самостоятельно, сначала нужно собрать данные от опытного водителя. Для этого каждую долю секунды надо записывают положение автомобиля на дороге и то, как водитель поворачивает руль, чтобы машина оставалась в пределах полосы. В результате за час наблюдений ученые получают 36 000 положений автомобиля и углов поворота руля. На этой информации нейросеть потом учится.
Искусственные нейронные сети окружают нас повсюду: Алиса расскажет погоду на день, навигатор построит быстрый маршрут до работы, а умная лента покажет подборку новостей по интересам. Благодаря нейросетям любой желающий может почувствовать себя большим художником или писателем, даже если не умеет рисовать и красиво выражать мысли. Тем не менее для многих они по-прежнему остаются загадкой. Как и словосочетание Big Data, о котором мы уже как-то рассказывали.
«Магия» обучения заключается в том, что обученная машина способна выйти за рамки того, что ей показывали. Она может правильно определить, что изображено на картинке, которую она видит впервые. Или принять верное решение на дороге, даже если сталкивается с новой помехой.
Нейронные сети используются в аппаратах для рентгена, магнитно-резонансной и компьютерной томографии (МРТ и КТ) для обнаружения опухолей, а еще в ревматологии и при протезировании. Они снижают стоимость диагностики и затраты времени на нее, помогая врачу не пропустить опухоль, сосредоточить внимание на сложных случаях.
Прохождение игр — часто встречающаяся задача, которую решает обучение с подкреплением. Так, например, алгоритм Q-обучения (Q-learning) часто используется в играх — например, для тренировки агента прохождению знакомой всем «Змейки » . Другой пример — нейросетевая модель AlphaGo, которая обучена играть в го на уровне мировых чемпионов.
Метод обучения с учителем ( supervised learning) аналогичен получению знаний в школе, где нейросеть выступает в качестве ученика, а человек — в роли преподавателя. Роль учителя заключается в том, чтобы подать на вход модели исходные данные и их «расшифровку » . По аналогии с математическими задачами это будет «вопрос » и «правильный «ответ » (метка). Например, при обучении задаче классификации изображений каждой отдельной картинке будет присвоена метка, означающая класс изображения (например, кошка или собака на фото). Так происходит настройка параметров для минимизации ошибок между собственными предположениями и « правильными ответами» (метками). Сопоставляя их из раза в раз, нейронная сеть б удет самос тоятельно обучаться отвечать и на последующие запросы правильно уже без помощи человека.
Какие ограничения есть у нейросетей
И самое важное: искусственные нейросети плохо предвидят последствия своих действий, в отличие от человека. Если мы видим фотографию, на которой перед маленькой девочкой стоит торт с зажженными свечами, мы с легкостью угадаем, что произойдет дальше. Машине это пока недоступно, потому что она не обладает человеческим опытом и здравым смыслом.
Вне зависимости от используемого принципа обучение нейросетей состоит из двух ключевых этапов. На первом происходит тренировка — нейронная сеть учится, выстраивает необходимые связи, регулирует веса узлов. Но как мы проверим, насколько эффективно она это делает? Как и в случае с обычными учениками, нейросеть должна пройти экзамен. Естественно, вопросы на этом экзамене должны отличаться от тех, которые были использованы при тренировке, чтобы исключить вариант, что сеть просто «запомнила» правильный ответ. Это и есть второй этап, который называется тестированием.
Только что мы рассмотрели архитектуру базовой нейросети. Глубокие нейронные сети (сети глубокого обучения) обычно имеют много скрытых слоев, состоящих из миллионов связанных между собой искусственных нейронов. Количество связей одного нейрона с другими называют весом. Вес является положительным, если данный узел возбуждает другой, или отрицательным, если, наоборот, происходит подавление узла. Узлы с большим весом оказывают более сильное влияние на другие. Веса нейросети настраиваются в процессе обучения. Они определяют, какие данные будут учитываться при получении итогового результата, и какой вклад внесет тот или иной узел на выводы.
Специалисты Института трансляционной аналитики данных (TDAI) в Университете штата Огайо разработали платформу Wildbook, которая помогает исследователям и защитникам природы находить и сохранять редкие виды животных. Чтобы это стало возможным, ученые обучили нейронные сети распознавать изображения тех, кому угрожает опасность. Машина видит фотографию кита, косатки или леопарда и узнает животное, опираясь на текстуру и окраску его шерсти, линию плавника или хвоста. Система обучается с помощью образцов, помеченных вручную.
Как и человек, нейросеть учится за счет изменения связей между нейронами. Проще всего отследить этот процесс на примере моллюска аплизии. У него очень простая нервная система, которая управляет внешними жабрами. Если прикоснуться к жабрам, то моллюск сначала их втянет, а потом спустя время выпустит. Если повторять касания жабр из раза в раз, постепенно моллюск начнет выпускать их быстрее, а потом и вовсе перестанет втягивать. Так нейронные связи адаптируются к внешним раздражителям, то есть обучаются.
У нейросетей другая логика работы. Им дают большой массив правильно решенных задач. В нашем примере — это, скажем, тысяча чертежей домов с уже прописанными площадями. После этого нейронной сети дают возможность самой решить подобную задачу. Она начинает угадывать, какой ответ от нее хотят получить. Отдельный алгоритм подсказывает ей, правильно она справилась с решением или нет. Со временем нейросеть учится угадывать все лучше и лучше, формирует некие связи внутри своей структуры, которые обеспечивают полезный результат.
Обучать нейронные сети выполнению задач можно по-разному: процесс развития навыков возможен с учителем или без него, а также с подкреплением. Каждый формат предназначен для решения конкретных задач: классификации, прогнозирования, распознавания изображения и так далее. Как выбрать оптимальный формат и чем между ними разница?
Машинное обучение без учителя (unsupervised learning) — менее популярный формат развития навыков нейросетей . Из названия понятно, что оно предполагает самостоятельное совершенствование модели. Как это работает? На вход модели подаются неразмеченные данные и система без чьей-либо помощи ищет в них закономерности. Этот формат отличается от предыдущего тем, что модели заранее не известен «правильный ответ» и его нужно найти. Для поиска следует проанализировать все данные и обнаружить в них общие скрытые структуры или паттерны для будущей классификации, которую она проводит без явного руководства. Модель, натренированная таким образом, легко справится с задачей распределения тысяч статей по тематике в зависимости, например, от упоминаемых ключевых слов.