Еще более непонятный термин – градиентный спуск (gradient descent) – относится к математической технике, которую алгоритм обратного распространения использует для уменьшения ошибки в процессе обучения сети.

Встречаются в книге и термины, относящиеся к типам или конфигурациям нейронных сетей: рекуррентные (recurrent) и сверточные (convolutional) сети, а также машины Больцмана (Boltzmann machines). Различия обычно сводятся к способам связи нейронов. Детальное рассмотрение этих понятий выходит за рамки книги. Тем не менее я попросил объяснить их Яна Лекуна – изобретателя сверточной архитектуры, которая широко используется в распознавании объектов на изображениях.

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

Способы обучения ИИ-систем

Существуют разные типы машинного обучения. Решающую роль в развитии искусственного интеллекта играют инновации, то есть новые способы обучения систем ИИ.

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

Обучение с учителем – наиболее распространенный метод, применяемый в современных системах ИИ. На его долю приходится около 95 % практических приложений. Именно оно послужило основой машинного перевода (после обучения на миллионах предварительно переведенных документов) и ИИ-систем диагностики (после обучения на снимках с пометками «рак» и «нет рака»). К сожалению, для такого обучения требуются огромные объемы маркированных данных. Именно поэтому лидирующее положение в технологии глубокого обучения занимают такие компании, как Google, Amazon и Facebook.

Обучение с подкреплением (reinforcement learning), по сути, представляет собой обучение на практике или методом проб и ошибок. Система учится не на правильных размеченных данных, а самостоятельно ищет решение, получая подкрепление в случае успеха. Это напоминает дрессировку животных, которым в случае правильных действий дается кусочек вкусной еды. Именно обучение с подкреплением применялось для построения систем ИИ, играющих в игры. Из интервью с Демисом Хассабисом вы узнаете, что компания DeepMind использовала этот тип обучения для разработки компьютерной системы AlphaGo.

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