Как учится машина. Революция в области нейронных сетей и глубокого обучения - Ян Лекун

Лидар (Light Detection and Ranging, устройство светового обнаружения препятствий и определения дальности) создает подробную трехмерную карту окружения автомобиля. Он работает по принципу радара, который измеряет время, требующееся лучу, испускаемому устройством, чтобы вернуться к нему после отражения от препятствия. Но в отличие от радара, который использует широкий луч микроволн, лидар использует тонкую сетку инфракрасных лазерных лучей. Таким образом он создает карту расстояния, то есть 360-градусное изображение, которое для каждого направления дает расстояние до ближайшего объекта по этой точной оси. Это облегчает работу системы обнаружения препятствий. Но высокопроизводительные лидары по-прежнему дороги, хрупки, сложны в обслуживании и чувствительны к погодным условиям. Можно оборудовать лидарами целый таксопарк, но нельзя снабдить ими всех и каждого.
В хороших условиях беспилотный автомобиль вполне надежен. В период с 2014 по 2018 г. в Калифорнии произошло всего 59 столкновений, притом что производители беспилотных автомобилей обязаны были сообщать обо всех происшествиях, даже незначительных, которые произошли на дороге[100].
Пример: 18 марта 2018 г. в Темпе в пригороде Феникса, штат Аризона, беспилотный автомобиль, испытываемый Uber, сбил женщину, которая переходила ночью неосвещенную дорогу, по-видимому, находясь под действием метамфетамина, бросив свой велосипед в 120 метрах от пешеходного перехода. Во время пресс-конференции в Лас-Вегасе Джон Крафчик, генеральный директор Waymo, косвенно задал Uber вопрос на эту тему: «В Waymo мы уверены, что наша технология могла бы справиться с такой ситуацией» (человек, бросающий велосипед и проходящий не по пешеходному переходу). Причины дисфункции системы, вызвавшей эту трагедию, неизвестны. Джон Крафчик также напомнил, что с 2009 г. автономные транспортные средства Google проехали более 8 млн км по дорогам, пересекаемых пешеходами, не попав ни в одну аварию со смертельным исходом. Пока еще слишком рано делать какие-либо выводы, но эти показатели все же можно оценить в перспективе: частота ДТП со смертельным исходом для автомобилей, управляемых человеком, составляет в среднем одно на каждые 160 млн км в США.
Полная автономия? Сквозное обучение
Перейдем к сквозному обучению, когда система учится, имитируя водителя-человека. К 2019 г. такого метода еще не появилось. Автомобиль может спокойно ездить по проселочной дороге в течение получаса, но рано или поздно начинает ошибаться, и водитель-человек должен брать управление на себя.
Поэтому необходимо сделать подстраховку, то есть создать резервные системы, которые будут контролируют те, которые созданы специально для обнаружения пешеходов, препятствий и разметки на дороге. Если резервная система определяет, что машина едет плохо, она корректирует траекторию. Для создания таких машин нужно выполнить еще много инженерных работ. Если бы у нас были модели, которые могли бы предсказать, что будет происходить с машиной и последствия ее действий, автопилот мог бы обучаться быстрее. Но у нас таких моделей пока нет.
В общем, помощь автопилота водителю уже существует, и она действительно спасает человеческие жизни, но технология полностью автономных автомобилей еще по сути не изобретена. Следует различать полуавтономное вождение, когда водитель-человек продолжает нести ответственность за управление, даже если на практике он ничего не делает, и автономное вождение, когда автопилот работает совсем без внешнего контроля. Эра автономного вождения без участия человека начнется с того, что парк транспортных средств с сенсорным экраном будет курсировать по спокойным пригородам. Прогресс будет медленным, пока не появятся беспилотные легковые автомобили в Париже, Риме или Мумбаи.
Архитектура «больших» приложений: виртуальный помощник
Виртуальные помощники используют несколько приложений одновременно. Например, Алекса – небольшая энергосберегающая программа удерживает динамик подключенным в режиме ожидания и для включения использует специальной словесный пароль. После включения мы сможем «поговорить» с ассистентом. Пройдя через микрофоны, звуковой сигнал, который помощник получает, оцифровывается[101].
У Алексы есть система распознавания речи в дальней зоне. Как и мобильный телефон, Алекса оснащена несколькими микрофонами, чтобы сосредоточить внимание на говорящем человеке и нейтрализовать окружающий шум в соответствии с принципом формирования направленного луча. Некоторые микрофоны являются разнонаправленными, другие – направленными, ориентированными на основной источник звука. Система принимает сигнал с направленного микрофона и вычитает сигнал из окружающего шума, оставляя только голос человека. То же самое мы делаем, когда концентрируемся на том, чтобы следить за словами собеседника в шумном ресторане.
Система распознавания речи должна иметь дело с разными акцентами и тембрами голосов. Такие системы существуют с 1980-х годов, но только после использования сверточных сетей они научились правильно распознавать детей, акценты, необычные голоса и т. д. Например, у детей часто возникают проблемы с произношением, и у них высокий голос. Раньше сеть должна была сначала определить, был ли это ребенок, мужчина или женщина, а затем использовала разные системы распознавания для каждого из них. Сегодня достаточно одной сети, обычно сверточной.
Речь, преобразованная в числа, передается на серверы Amazon. Именно они распознают речь, то есть транслируют ее в текст. Это делает обученная нейронная сеть, разная для каждого языка. Она активируется при настройке системы. Затем вторая нейронная сеть определяет намерение. Итак, существуют две последовательные сети.
Промахи возможны на уровне первой сети. Вопрос: «Вы умеете распознавать речь?» (англ. «Can you recognize speech?») может быть интерпретирован обученной сетью двумя способами – либо так, как написано выше, либо: «Сможете ли вы разгромить красивый пляж?» (англ. «Can you wreck a nice beach?», что звучит довольно сходно с предыдущей английской фразой). Вы можете запутать систему распознавания речи, произнеся слово нечетко или быстрее, чем нужно. Система также может заменить одно слово другим, похожим на него, что может привести к неверному толкованию. Нужны языковые модели, которые предсказывают слова, следующие за определенным фрагментом текста.
Они есть во всех системах распознавания. Они вступают в дело сразу за нейронной сетью распознавания речи и пытаются, если есть какие-то двусмысленные слова, найти лучшую интерпретацию. Если последовательность слов, предложенная системой распознавания, не имеет смысла с грамматической или семантической точки зрения, языковая модель даст ей низкую оценку. Машина запрограммирована на поиск другой интерпретации с более высокой оценкой, с тем же алгоритмом, который используется для поиска маршрута: лучшая интерпретация произнесенной фразы – это путь с более высокой оценкой в матрице возможных последовательностей слов. Матрица – это своего рода граф, в котором каждая вершина – это слово, а путь (т. е. последовательность вершин, в которой каждая вершина соединена со следующим ребром) – это последовательность слов.
После завершения данных операций система может запросить разъяснения или