Дмитрий Коробченко, NVIDIA: Нейросети как «черный ящик», они очень прожорливы

Нейросети — это частный случай искусственного интеллекта. Сейчас их используют ученые, банкиры и разработчики автопилотов. Дмитрий Коробченко, инженер по глубокому обучению NVIDIA и популяризатор нейронных сетей рассказал на AI Conference о том, как устроены нейросети, чему их можно научить и почему они стали популярны только сейчас. «Хайтек» записал самое интересное.  

Нейросеть как «черный ящик», который переводит одни данные в другие. Промежуточное представление в этом «черном ящике» — это признаки. Мы раскладываем задачу на две более простых. Сначала мы извлекаем признаки, а потом конвертируем в финальный ответ.

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

Нейросеть получает признаки и их иерархию, и так создает их классификацию. Например, для распознавания лиц, определения возраста и так далее. Очень перспективное направление — работа с медицинскими изображениями. Чаще всего рентгеновские снимки, МРТ или КТ достаточно стандартизированы, поэтому искать в них признаки болезней достаточно легко.

В отличие от программирования, основанного на правилах, нейросеть подстраивается в процессе обучения. Например, есть метод обучения нейросети с учителем. В нем используются пары: входной объект и правильный ответ — то, что мы желаем получить на выходе. На обучающей выборке мы настраиваем параметры нашей модели и надеемся, что когда нейросеть будет работать с настоящими объектами, то наша модель будет все точно предсказывать правильные ответы.


С какими данными работает нейросеть

Характеристики объекта. Это рост, вес, пол, город и другие простые данные. При классификации, например, пользователей, мы присваиваем им какую-нибудь метку о том, что пользователь принадлежит какой-то группе.

Картинки. Нейросеть может переводить картинки в абстрактную информацию, классифицировать их.

Тексты и звуки. Нейросети могут переводить их, классифицировать.


Как нейросети учат друг друга

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

Рекурретные сети — это сети с дополнительной связью, которые соединяют предыдущий момент времени с будущим. Это применяется везде, где есть последовательность. Например, предсказание слов на клавиатуре: вы написали какой-то текст, а клавиатура предсказывает следующее слово.

Нейросети как бы играют в антагонистическую игру. Состязательные сети используют генератор, который синтезирует лица и дискриминатор — нейросеть, которая классифицирует изображения на настоящие и синтезированные. И мы обучаем две эти сети параллельно: генератор мы обучаем обманывать дискриминатор, а дискриминатор мы обучаем все лучше и лучше различать картинки. Например, синтез фотореалистичных изображений. У нас есть нейронная сеть, которая будет синтезировать лица. Мы ее уже обучили и она работает, но мы хотим, чтобы она работала лучше. В конце мы получим идеальный дискриминатор и идеальный генератор. То есть генератор, который будет генерировать очень классные картинки.

Как делать нейросети

Сейчас нет инструментов создания нейросетей, которые ориентированы на пользователей: все технологии ориентированы на разработчиков.

Нейросети не могут без «железа». Как только мы научились распараллеливать расчеты, обучение ускорилось на дни и даже часы. В плюс сыграло появление программного обеспечения для ускорения обучения. Если раньше мы обучали каждую новую модель месяцами, то сейчас можем заимствовать предварительно обученные части нейросети.

Нейронные сети очень прожорливы, они хотят очень много наборов данных. В 2012 году нейронная сеть начала работать лучше, чем другие алгоритмы и вот с тех пор все больше данных у нас накапливается, и мы можем все более сложные модели обучать. Больше данных — лучше нейросеть. Все просто.


Чаще всего нейросети используют для анализа данных или автоматического принятия решений. Они анализируют голосовые команды и переводят текст в речь. Google и Apple используют их для своих языковых сервисов.

Нейросети научились обыгрывать людей в интеллектуальные игры. Нейросеть DeepBlue обыграла в 1997 году гроссмейстера Гарри Каспарова, а Alpha Go в 2016 — чемпиона игры в Го Ли Седоля. В мобильном приложении Prisma тоже используется нейросеть: она стилизует фотографии под произведения известных художников. Нейросети — это также компоненты беспилотных автомобилей, компьютерных переводчиков, банковских аналитических системах


Для высокоуровневой разработки есть фреймворки, например TensorFlow, PyTorch или Caffe. Они понижают порог входа: опытный программист может изучить руководство какого-нибудь фреймворка и собрать нейросеть. Для низкоуровневой разработки можно использовать, например, библиотеку cuDNN. Ее компоненты используются почти во всех фреймворках. Чтобы лучше разобраться в том, как устроены нейросети, в интернете есть много информации: можно посмотреть лекции на YouTube или Deep Learning Institute на сайте NVIDIA.

Подписывайтесь
на наши каналы в Telegram

«Хайтек»новостионлайн

«Хайтек»Dailyновости 3 раза в день

Первая полоса
Эту звезду искали 40 лет: она состоит из очень необычной материи
Новости
Найдена связь между взрывом сверхновой и эволюции жизни на Земле
Новости
«Случайность маловероятна»: в Балтике поврежден интернет-кабель
Новости
SpaceX запустит телескоп для защиты Земли: как он будет работать
Новости
Ученые создают датчики, похожие на усики комаров, для обнаружения землетрясений
Наука
ИИ диагностирует диабет, ВИЧ и COVID по одному образцу крови
Наука
Китайские генетики создали «рис для укрепления здоровья сердечной системы»
Наука
Тяжелое генетическое заболевание вылечили до рождения в утробе матери
Наука
Высокоскоростная съемка показала, что происходит с каплей при падении в бассейн
Наука
В России создали ИИ-платформу для ускоренной разработки лекарств
Иннополис
Физики побили рекорд Китая по удержанию плазмы в искусственном Солнце
Наука
Мертвая галактика посылает мощные радиовсплески: ученые не могут это объяснить  
Космос
«Невозможная» пара звезд-вампиров странно ведет себя в космосе
Космос
В iPhone 16e стоят чипы, которые оказались недостаточно хороши для iPhone 16
Новости
Выяснилось, как темная тема на сайтах влияет на гаджеты
Новости
Ученые впервые создали «пластичный» инопланетный лед
Наука
В каких странах больше боятся замены людей на ИИ, показало исследование
Наука
Мини-землетрясения под ледяным щитом Гренландии могут изменить уровень моря
Наука
Посмотрите, как Blue Ghost летит над обратной стороной Луны
Космос
Польский стартап представил робота с искусственными мышцами и костями
Новости