Книги онлайн » Книги » Разная литература » Зарубежная образовательная литература » Как учится машина. Революция в области нейронных сетей и глубокого обучения - Ян Лекун
1 ... 60 61 62 63 64 ... 82 ВПЕРЕД
Перейти на страницу:
оценку для «тостера» и уменьшить оценку для «кошки» с помощью градиентного спуска. Однако с человеком этот фокус не пройдет – для него кошка с измененными пикселями все равно останется кошкой.

Как можно так легко обмануть сеть? При обучении с учителем машина выдает хорошие результаты лишь для обучающих примеров. Но обучающие примеры охватывают крошечную часть входного пространства[117]. Вне этих примеров поведение функции не определено.

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

Поэтому обучение с учителем не позволяет создавать по-настоящему интеллектуальные машины. Это только часть решения. Нам не хватает многих кусочков реальной мозаики.

Обучение с подкреплением

Некоторые видят решение проблемы в другом виде машинного обучения.

Так называемое обучение с подкреплением позволяет обучать машину, не подсказывая ей ожидаемого ответа, а только сообщая, является ли конкретный ответ правильным или нет. Оно используется, когда мы можем оценить качество ответа системы без возможности предоставить ей этот правильный ответ. Допустим, вы хотите научить робота поднимать предметы. Трудно постоянно указывать машине, как приводить в действие ее двигатели для выполнения задачи. Но после теста легко оценить, был ли объект действительно поднят. Робот может опробовать стратегию, посмотреть, работает ли она, попробовать другую стратегию, если предыдущая не сработала, и повторять процесс до тех пор, пока стратегия не сработает надежно. Последнее может быть достигнуто с помощью нейронной сети, входными данными которой являются изображение сцены и датчики положения, силы и касания робота, а выходными данными – команды, отправляемые двигателям. Такое обучение методом проб и ошибок с оценкой результата без предоставления правильного ответа машине называется «обучением с подкреплением». Пройти или не пройти тест зачастую можно автоматически, что позволяет системе учиться «самостоятельно».

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

Суть обучения с подкреплением в том, что оно может обучать системы, производительность которых можно оценить, не предоставляя им правильный ответ. В основном оно используется, когда системе необходимо производить действия, например, для управления роботом или игры. Обучение с подкреплением оказалось чрезвычайно успешным в играх с AlphaGo и AlphaGo Zero компании DeepMind, а также Elf OpenGo, созданной Facebook.

Классический способ обучить машину игре в шахматы или шашки – запрограммировать ее на использование древовидного поиска[118]. Более новые методы используют глубокое обучение и обучение с подкреплением.

Мы пишем программу, которая учит машину играть по правилам, с системой обучения, определяющей, какие ходы, скорее всего, приведут к победе. Поначалу такая система не обучена и играет как-то не очень, … но мы заставляем копии этой машины играть против самих себя тысячи раз. В конце каждой игры «игрок» побеждает, скорее, случайно, но он обучает свою систему повторению или усилению успешной стратегии. Он как бы говорит ей: «В следующий раз, когда ты будешь играть в подобной ситуации, играй также, как ты и играл сейчас, потому что это привело к победе».

Таким образом, машина играет против себя миллионы, а иногда и миллиарды партий. При наличии достаточного количества новых компьютеров, работающих параллельно, система может играть в миллионы игр за считанные часы. В итоге система приобретает сверхчеловеческие способности, потому что она способна сыграть большую часть всех партий, возможных в той или иной игре. AlphaGo и AlphaGo Zero, последняя версия от Google DeepMind, работают именно таким образом. В Facebook у нас есть похожая система Elf OpenGo, которая, в отличие от систем DeepMind, имеет открытый исходный код и была подхвачена многими другими исследовательскими группами.

Обучение с подкреплением эффективно для игр, поскольку их можно запускать на многих машинах одновременно.

Как и в случае обучения с учителем, достижение сверхчеловеческих способностей требует огромных ресурсов и множества межсистемных взаимодействий. DeepMind обучил систему для игры в классические видеоигры Atari (их 80). Чтобы достичь приличного уровня, ему потребовалось не менее 80 часов тренировок за игру, в то время как человеку требовалось всего 15 минут, чтобы сделать то же самое. Но если вы позволите системе учиться дальше и дальше, она достигнет высот, превосходящих человеческие возможности. На самом деле 80 часов – это время, которое потребовалось бы машине, если бы она играла в игру в реальном времени. Но она может играть в игру намного быстрее и даже играть в несколько игр одновременно. Но работает этот прием только с играми. Вы не сможете заставить часы бежать быстрее, когда обучаете машину вождению!

Пределы обучения с подкреплением

Обучение с подкреплением, столь эффективное в играх, в реальном мире бессмысленно. Да-да, именно так! Если бы вы захотели использовать его, чтобы научить машину вождению, ей пришлось бы проехать миллионы часов и попасть в десятки тысяч аварий, прежде чем она научилась бы их избегать[119].

Машина упадет с обрыва, а система скажет: «А, должно быть, я ошибалась» и немного скорректирует стратегию. Во второй раз машина упадет с обрыва, может быть, немного по-другому, а система снова немного поправит стратегию и т. д. Автомобиль должен был бы упасть таким образом тысячи раз, прежде чем система поймет, как избежать падения.

Так что же позволяет большинству людей научиться водить машину примерно за 20 часов практики и при незначительном контроле, не попадая при этом в аварии (для большинства из нас)? Обучения с учителем и обучения с подкреплением в таком случае недостаточно. Нужно изобрести новую парадигму, чтобы машина могла быть встать на один уровень с обучением человека или животных.

Конечно, мы могли бы использовать моделирование, но тогда возникает другая проблема: симуляторы должны быть достаточно мощными и точными, то есть достаточно точно отражать то, что происходит в реальности, чтобы после того, как система была обучена моделированием, мы могли перенести ее возможности в реальный мир. Это возможно далеко не всегда. Описанная проблема, сокращенно называемая sim2real

1 ... 60 61 62 63 64 ... 82 ВПЕРЕД
Перейти на страницу:
В нашей электронной библиотеке 📖 можно онлайн читать бесплатно книгу Как учится машина. Революция в области нейронных сетей и глубокого обучения - Ян Лекун. Жанр: Зарубежная образовательная литература / Науки: разное. Электронная библиотека онлайн дает возможность читать всю книгу целиком без регистрации и СМС на нашем литературном сайте kniga-online.com. Так же в разделе жанры Вы найдете для себя любимую 👍 книгу, которую сможете читать бесплатно с телефона📱 или ПК💻 онлайн. Все книги представлены в полном размере. Каждый день в нашей электронной библиотеке Кniga-online.com появляются новые книги в полном объеме без сокращений. На данный момент на сайте доступно более 100000 книг, которые Вы сможете читать онлайн и без регистрации.
Комментариев (0)