Эндрю Нг: прогресс в области ИИ, возможности синтетических данных и будущее глубокого обучения

Эндрю Нг обладает серьёзным авторитетом в области искусственного интеллекта. В конце 2000-х годов он вместе со своими студентами в Стэнфордском университете первым применил графические процессоры (GPU) для обучения моделей глубокого обучения, в 2011 году стал соучредителем Google Brain, а затем три года проработал главным научным сотрудником в Baidu, где помог создать группу искусственного интеллекта этого китайского технологического гиганта. Поэтому, когда он говорит, что определил следующий крупный сдвиг в области искусственного интеллекта, люди прислушиваются. Именно об этом он рассказал IEEE Spectrum в эксклюзивном интервью.
В настоящее время усилия Нга сосредоточены на его компании Landing AI, которая разработала платформу LandingLens, помогающую производителям улучшить визуальный контроль с помощью компьютерного зрения. Он также стал своего рода евангелистом того, что он называет движением искусственного интеллекта, ориентированного на данные, которое, по его словам, может дать решения больших проблем в области ИИ на основе «малых данных», включая эффективность моделей, точность и предвзятость.
Эндрю Нг о…
- Что ждет в будущем действительно большие модели?
- Советы по карьере, которым он не последовал.
- Определение движения за искусственный интеллект, ориентированного на данные.
- Синтетические данные
- Почему Landing AI просит своих клиентов выполнять эту работу?
Значительный прогресс в области глубокого обучения за последнее десятилетие был обусловлен постоянно растущими моделями, обрабатывающими все большие объемы данных. Некоторые утверждают, что это неустойчивая тенденция. Согласны ли вы с тем, что так продолжаться не может?
Эндрю Нг: Это очень важный вопрос. Мы уже видели базовые модели в обработке естественного языка (NLP). Меня радует перспектива дальнейшего развития моделей NLP, а также потенциал создания базовых моделей в компьютерном зрении. Думаю, в видеоиндустрии еще много нераскрытого потенциала: мы пока не можем создать базовые модели для видео из-за пропускной способности вычислительных ресурсов и стоимости обработки видео по сравнению с токенизированным текстом. Поэтому я считаю, что этот механизм масштабирования алгоритмов глубокого обучения, который работает уже около 15 лет, все еще полон сил. Однако, это применимо только к определенным задачам, и существует ряд других задач, требующих решений на основе небольших объемов данных.
Когда вы говорите, что вам нужна базовая модель для компьютерного зрения, что вы имеете в виду?
Нг: Этот термин был придуман Перси Лянгом и некоторыми моими друзьями из Стэнфорда для обозначения очень больших моделей, обученных на очень больших наборах данных, которые можно настроить для конкретных приложений. Например, GPT-3 — это пример базовой модели [для обработки естественного языка]. Базовые модели открывают большие перспективы как новая парадигма в разработке приложений машинного обучения, но также создают проблемы с точки зрения обеспечения их разумной справедливости и отсутствия предвзятости, особенно если многие из нас будут строить на их основе новые модели.
Что должно произойти, чтобы кто-то смог создать базовую модель для видео?
Нг: Я думаю, здесь есть проблема масштабируемости. Вычислительная мощность, необходимая для обработки большого объема изображений для видео, значительна, и я думаю, именно поэтому базовые модели впервые появились в области обработки естественного языка. Многие исследователи работают над этим, и я думаю, мы видим первые признаки разработки таких моделей в компьютерном зрении. Но я уверен, что если бы производитель полупроводников предоставил нам в 10 раз большую вычислительную мощность, мы легко смогли бы найти в 10 раз больше видеоматериалов для создания таких моделей для компьютерного зрения.
Тем не менее, многое из того, что произошло за последнее десятилетие, связано с тем, что глубокое обучение стало применяться в компаниях, ориентированных на потребителей, которые имеют большие пользовательские базы, иногда миллиарды пользователей, и, следовательно, очень большие массивы данных. Хотя эта парадигма машинного обучения принесла значительную экономическую выгоду в сфере потребительского программного обеспечения, я считаю, что такой рецепт масштабирования не работает для других отраслей.
Вернуться наверх
Забавно слышать это от вас, ведь вы начинали свою карьеру в компании, ориентированной на потребителей и имеющей миллионы пользователей.
Нг: Более десяти лет назад, когда я предложил запустить проект Google Brain, чтобы использовать вычислительную инфраструктуру Google для создания очень больших нейронных сетей, это был спорный шаг. Один очень высокопоставленный сотрудник отвел меня в сторону и предупредил, что запуск Google Brain плохо скажется на моей карьере. Думаю, он считал, что дело не может ограничиваться только масштабированием, и что вместо этого мне следует сосредоточиться на инновациях в архитектуре.
«Во многих отраслях, где гигантских массивов данных просто не существует, я думаю, что акцент должен сместиться с больших данных на качественные данные. 50 тщательно разработанных примеров могут быть достаточными, чтобы объяснить нейронной сети, чему вы хотите ее научить».
— Эндрю Нг, генеральный директор и основатель Landing AI
Помню, как мы с моими студентами опубликовали первую статью на семинаре NeurIPS, в которой выступали за использование CUDA, платформы для обработки данных на графических процессорах, для глубокого обучения. Другой высокопоставленный специалист в области ИИ посадил меня и сказал: «CUDA очень сложна в программировании. Как парадигма программирования, это кажется слишком трудоемким». Мне удалось его убедить; другого человека — нет.
Полагаю, теперь они оба убеждены.
Нг: Думаю, да.
В течение последнего года, обсуждая с людьми движение за искусственный интеллект, ориентированный на данные, я часто вспоминаю, как 10 или 15 лет назад говорил с ними о глубоком обучении и масштабируемости. В этом году я слышу одно и то же: «Здесь нет ничего нового» и «Кажется, это неправильное направление».
Вернуться наверх
Как вы определяете искусственный интеллект, ориентированный на данные, и почему вы считаете его отдельным движением?
Нг: Искусственный интеллект, ориентированный на данные, — это дисциплина систематического проектирования данных, необходимых для успешного создания системы ИИ. Для системы ИИ необходимо реализовать некоторый алгоритм, например, нейронную сеть, в коде, а затем обучить его на наборе данных. Доминирующей парадигмой в течение последнего десятилетия было скачивание набора данных, в то время как основное внимание уделялось улучшению кода. Благодаря этой парадигме за последнее десятилетие сети глубокого обучения значительно улучшились, до такой степени, что для многих приложений код — архитектура нейронной сети — по сути, является решенной проблемой. Поэтому для многих практических приложений теперь более продуктивно сохранять архитектуру нейронной сети неизменной и вместо этого искать способы улучшения данных.
Когда я начал говорить об этом, многие специалисты, совершенно справедливо, подняли руки и сказали: «Да, мы этим занимаемся уже 20 лет». Сейчас самое время взять то, что некоторые люди делали интуитивно, и превратить это в систематическую инженерную дисциплину.
Движение за ИИ, ориентированный на данные, гораздо масштабнее, чем одна компания или группа исследователей. Мы с коллегами организовали семинар по ИИ, ориентированному на данные, на конференции NeurIPS, и я был очень рад количеству авторов и докладчиков, которые на него пришли.
Вы часто говорите о компаниях или организациях, которые располагают лишь небольшим объемом данных. Как может помочь им искусственный интеллект, ориентированный на данные?
Нг: Много говорят о системах машинного зрения, построенных на миллионах изображений — я однажды создал систему распознавания лиц, используя 350 миллионов изображений. Архитектуры, созданные для сотен миллионов изображений, не работают всего лишь с 50 изображениями. Но оказывается, если у вас есть 50 действительно хороших примеров, вы можете создать что-то ценное, например, систему контроля дефектов. Во многих отраслях, где просто не существует огромных наборов данных, я думаю, что фокус должен сместиться с больших данных на качественные данные. 50 тщательно разработанных примеров могут быть достаточными, чтобы объяснить нейронной сети, чему вы хотите ее научить.
Когда вы говорите об обучении модели всего на 50 изображениях, действительно ли это означает, что вы берете существующую модель, обученную на очень большом наборе данных, и дорабатываете ее? Или вы имеете в виду совершенно новую модель, предназначенную для обучения только на этом небольшом наборе данных?
Нг: Позвольте мне описать, что делает Landing AI. При визуальном контроле для производителей мы часто используем собственную версию RetinaNet. Это предварительно обученная модель. Однако предварительное обучение — это лишь малая часть головоломки. Более важная часть — это предоставление инструментов, позволяющих производителю выбирать правильный набор изображений [для тонкой настройки] и маркировать их согласованным образом. Существует очень практическая проблема, с которой мы сталкиваемся в области компьютерного зрения, обработки естественного языка и речи, когда даже люди-аннотаторы не приходят к согласию относительно подходящей метки. Для приложений, работающих с большими данными, распространенный ответ был таким: если данные зашумлены, давайте просто возьмем много данных, и алгоритм будет усреднять их. Но если вы можете разработать инструменты, которые указывают на несогласованность данных и предоставляют целенаправленный способ повышения согласованности данных, это оказывается более эффективным способом создания высокопроизводительной системы.
«Сбор большего количества данных часто помогает, но если вы попытаетесь собрать больше данных по всему, это может оказаться очень дорогостоящим мероприятием».
—Эндрю Нг
Например, если у вас есть 10 000 изображений, из которых 30 относятся к одному классу, и эти 30 изображений помечены непоследовательно, мы, в частности, создаём инструменты, которые привлекут ваше внимание к подмножеству данных с несоответствиями. Таким образом, вы сможете очень быстро перемаркировать эти изображения, сделав их более согласованными, что приведёт к улучшению производительности.
Может ли такой подход, ориентированный на высококачественные данные, помочь уменьшить предвзятость в наборах данных? Если удастся лучше подготовить данные перед обучением?
Нг: Совершенно верно. Многие исследователи указывали на то, что предвзятые данные — это лишь один из многих факторов, приводящих к предвзятости систем. Было предпринято множество продуманных попыток оптимизировать данные. На семинаре NeurIPS Ольга Руссаковская выступила с очень интересным докладом на эту тему. На основной конференции NeurIPS мне также очень понравилась презентация Мэри Грей, в которой она затронула вопрос о том, что ориентированный на данные ИИ — это лишь часть решения, но не всё решение целиком. Новые инструменты, такие как таблицы данных для наборов данных, также кажутся важной частью головоломки.
Одним из мощных инструментов, которые предоставляет нам ориентированный на данные ИИ, является возможность управлять подмножеством данных. Представьте, что вы обучаете систему машинного обучения и обнаруживаете, что её производительность приемлема для большей части набора данных, но она искажена только для подмножества данных. Если вы попытаетесь изменить всю архитектуру нейронной сети, чтобы улучшить производительность только на этом подмножестве, это будет довольно сложно. Но если вы можете управлять подмножеством данных, вы можете решить проблему гораздо более целенаправленно.
Когда вы говорите об обработке данных, что именно вы имеете в виду?
Нг: В ИИ очистка данных важна, но зачастую она осуществляется вручную. В компьютерном зрении кто-то может визуализировать изображения в блокноте Jupyter и, возможно, обнаружить проблему, а может быть, и исправить её. Но меня вдохновляют инструменты, позволяющие работать с очень большими наборами данных, инструменты, которые быстро и эффективно привлекают внимание к подмножеству данных, где, скажем, метки содержат шумы. Или быстро указывают на один класс из 100, где было бы полезно собрать больше данных. Сбор большего количества данных часто помогает, но если пытаться собрать больше данных для всего, это может оказаться очень дорогостоящим процессом.
Например, однажды я обнаружил, что система распознавания речи плохо работает при наличии шума от автомобилей на заднем плане. Это знание позволило мне собрать больше данных при наличии шума от автомобилей, вместо того чтобы пытаться собрать больше данных для всего процесса, что было бы дорого и медленно.
Вернуться наверх
А как насчет использования синтетических данных? Часто ли это является хорошим решением?
Нг: Я думаю, что синтетические данные — важный инструмент в арсенале искусственного интеллекта, ориентированного на данные. На семинаре NeurIPS Анима Анандкумар выступила с замечательным докладом, в котором затронула тему синтетических данных. Я считаю, что синтетические данные находят важное применение, выходящее за рамки простого этапа предварительной обработки для увеличения набора данных для алгоритма обучения. Мне бы хотелось видеть больше инструментов, позволяющих разработчикам использовать генерацию синтетических данных как часть замкнутого цикла итеративной разработки машинного обучения.
Вы имеете в виду, что синтетические данные позволят вам протестировать модель на большем количестве наборов данных?
Нг: Не совсем. Вот пример. Допустим, вы пытаетесь обнаружить дефекты в корпусе смартфона. Существует множество различных типов дефектов на смартфонах. Это могут быть царапины, вмятины, точечные повреждения, изменение цвета материала, другие виды дефектов. Если вы обучите модель, а затем с помощью анализа ошибок обнаружите, что в целом она работает хорошо, но плохо справляется с точечными повреждениями, то генерация синтетических данных позволит вам решить проблему более целенаправленно. Вы можете сгенерировать больше данных только для категории точечных повреждений.
«В сфере потребительского программного обеспечения в интернете мы могли бы обучить несколько моделей машинного обучения для обслуживания миллиарда пользователей. В производственной сфере может быть 10 000 производителей, создающих 10 000 собственных моделей искусственного интеллекта».
—Эндрю Нг
Генерация синтетических данных — очень мощный инструмент, но есть множество более простых инструментов, которые я часто пробую в первую очередь. Например, расширение данных, повышение согласованности меток или просто просьба к фабрике собрать больше данных.
Вернуться наверх
Чтобы сделать эти вопросы более конкретными, не могли бы вы привести пример? Когда компания обращается в Landing AI и говорит, что у нее проблема с визуальным контролем, как вы проводите с ней адаптацию и подготовку к внедрению?
Нг: Когда к нам обращается клиент, мы обычно обсуждаем его проблему с проверкой и просматриваем несколько изображений, чтобы убедиться, что ее можно решить с помощью компьютерного зрения. Если это так, мы просим его загрузить данные на платформу LandingLens. Мы часто консультируем их по методологии искусственного интеллекта, ориентированного на данные, и помогаем им разметить данные.
Одна из задач Landing AI — дать производственным компаниям возможность самостоятельно выполнять работу по машинному обучению. Значительная часть нашей работы направлена на обеспечение быстроты и простоты использования программного обеспечения. В рамках итеративного процесса разработки машинного обучения мы консультируем клиентов по таким вопросам, как обучение моделей на платформе, когда и как улучшить разметку данных для повышения производительности модели. Наше обучение и программное обеспечение поддерживают их на всех этапах, вплоть до развертывания обученной модели на периферийном устройстве на заводе.
Как вы справляетесь с меняющимися потребностями? Если меняются продукты или условия освещения на заводе, может ли модель соответствовать этим изменениям?
Нг: Это зависит от производителя. Во многих случаях наблюдается дрейф данных. Но есть производители, которые работают на одной и той же производственной линии уже 20 лет с небольшими изменениями, поэтому они не ожидают изменений в ближайшие пять лет. Такие стабильные условия упрощают работу. Другим производителям мы предоставляем инструменты для выявления существенных проблем, связанных с дрейфом данных. Я считаю очень важным дать возможность клиентам из производственной отрасли исправлять данные, переобучать и обновлять модель. Потому что если что-то изменится, а в США уже 3 часа ночи, я хочу, чтобы они могли немедленно адаптировать свой алгоритм обучения для поддержания работоспособности.
В сфере потребительского программного обеспечения в интернете мы могли бы обучить несколько моделей машинного обучения для обслуживания миллиарда пользователей. В производственной сфере у вас может быть 10 000 производителей, создающих 10 000 собственных моделей ИИ. Задача состоит в том, как это сделать, не нанимая для Landing AI 10 000 специалистов по машинному обучению?
То есть вы утверждаете, что для масштабирования необходимо предоставить клиентам возможность самостоятельно выполнять большую часть обучения и другой работы?
Нг: Да, именно так! Это проблема, затрагивающая всю отрасль ИИ, а не только производство. Посмотрите на здравоохранение. В каждой больнице используется свой, немного отличающийся формат электронных медицинских карт. Как каждая больница может обучить свою собственную модель ИИ? Ожидать, что ИТ-персонал каждой больницы изобретет новые архитектуры нейронных сетей, нереалистично. Единственный выход из этой дилеммы — создание инструментов, которые позволят клиентам создавать собственные модели, предоставляя им инструменты для обработки данных и выражения своих знаний в предметной области. Именно этим занимается Landing AI в области компьютерного зрения, и для реализации этого в других областях ИИ необходимы другие команды.
Есть ли еще что-нибудь, что, по вашему мнению, важно донести до людей о вашей работе или о движении за искусственный интеллект, ориентированный на данные?
Нг: В последнее десятилетие самым значительным сдвигом в области ИИ стал переход к глубокому обучению. Я думаю, вполне возможно, что в этом десятилетии самым значительным сдвигом станет переход к ИИ, ориентированному на данные. Учитывая зрелость современных архитектур нейронных сетей, я думаю, что для многих практических приложений узким местом станет вопрос эффективного получения необходимых данных для разработки хорошо работающих систем. Движение за ИИ, ориентированный на данные, обладает огромной энергией и импульсом во всем сообществе. Я надеюсь, что больше исследователей и разработчиков присоединятся к работе над этим направлением.
Вернуться наверх
Эта статья опубликована в печатном номере за апрель 2022 года под заголовком «Эндрю Нг, минималист в области ИИ».

Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.