Как нейросети учатся за вас и где их используют

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

Что такое нейросеть    

Нейросеть — это космос. Примерно так пользователи отвечают на вопрос о нейросетях. В самом простом виде нейросеть можно описать как математическую модель, имитирующую нервные клетки живого организма. Ее можно реализовать на программном и аппаратном уровнях. Рассмотрим элементарную единицу сети — ячейку (синапс).

У каждой ячейки есть широкий входной слой, несколько скрытых слоев и один выходной. Многочисленные input-сигналы «перемешиваются» в скрытых нейронах и формируют output-сигнал. Искусственная нейронная сеть (ИНС) представляет собой сеть синапсов, как и нервная система человека. Каждый из синапсов имеет свой «вес», который оказывает прямое влияние на характеристики выходного сигнала. Проще всего описать принцип действия сети на примере палитры с красками.

Допустим, есть три цвета: синий, желтый и красный. Это три входных сигнала с разным весом, максимальный из которых у синего, а минимальный у красного. Они попадают в область скрытых слоев (на «палитру») и перемешиваются в разных пропорциях. На выходе получается один цвет — коричневый.

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

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

Может ли нейросеть ошибаться    

На первых этапах создания ИНС похожи на несмышленного ребенка. Они не видят взаимосвязей, не умеют выделять главное и нуждаются в учителе. Наставник начинает с простых задач и сверяет полученные результаты с правильными. Если нужно, он «поправляет» сеть. Чаще всего используют метод обратного распространения ошибки, при котором корректируется вес input-параметра.

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

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

Крупные компании, такие как Microsoft и Google, выложили скомпилированные наборы изображений для тех, кто хочет обучить свою нейросеть. Выяснилось, что для распознавания предметов нужна сеть примерно из 20 слоев. Чем больше используется слоев, тем больше нужна вычислительная мощность и тем «умнее» сеть.

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

Не стоит также забывать, что нейросеть — это не искусственный интеллект. Их, подобно служебным собакам на таможне, «натаскивают» на определенные задачи. Выйти за их пределы и «переключиться» нейросеть не способна.

Как развиваются нейросети    

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

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

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

Пока пользователи знакомы с нейросетями по простым функциям — поиску в Интернете, обработке изображений, в том числе в режиме реального времени, и переводу текстовой информации.

Будущее нейросетей за видеокартами?    

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

«Благодаря GPU, предварительно записанную речь или мультимедийный контент можно воспроизводить намного быстрее. В сравнении с работой на CPU мы можем выполнять распознавание до 33-х раз быстрее». - Профессор Иэн Лейн (Ian Lane), Университет Карнеги-Меллон

В конце августа компания Nvidia представила новое поколение графических ускорителей под общей маркировкой RTX 2000. Пока озвучены не все характеристики устройств, но точно известно, что флагман GeForce RTX 2080 Ti оснащен 4 352 ядрами CUDA, 11 ГБ видеопамяти GDDR6. TDP видеокарт последних лет выпуска приближается к 250Вт. Это практический потолок для современных систем охлаждения (воздушных). Дальнейшее наращивание и усложнение систем отведения тепла увеличит стоимость видеокарт и сократит срок службы.

Таким образом, при всех известных преимуществах видеокарт для нейросетей, следует учитывать два главных момента — энергопотребление и систему охлаждения. И если первый параметр закладывает производитель, то второй требует творческого подхода. В идеале требуется решение, которое позволяет отводить тепло от работающих в режиме 24/7 массивов видеокарт. Но производители видеокарт используют привычные наработки в системах охлаждения, не стремясь улучшить их. Однако решение по охлаждению и полезному использованию выделяемого тепла есть у компании BiXBiT.

Оборудование для охлаждения нейросетей BiXBiT

Компания BiXBiT использует уникальную масштабируемую модульную разработку для охлаждения оборудования и утилизации выделяемого тепла. Ее отличительная особенность в том, что она может расти вместе с вашей нейросетью. Начать можно с ячейки на 24 видеокарты, которая занимает всего 0,13 куб. метров. Для охлаждения используется иммерсионная жидкость, подобранная для использования с компьютерным оборудованием. Преимущества системы охлаждения заключаются в следующем:


От элементарной единицы можно перейти к стойке, рассчитанной на 96 видеокарт (включает 4 ячейки). Обладая таким устройством, можно получить дополнительный профит из нескольких источников:

Максимальный уровень наших установок — это оборудование, размещенное на базе ISO-контейнеров. Для этого используется стандартная логистическая тара размером 10, 20, 40 футов. В ней размещается соответственно 8, 16 или 32 стойки. В каждом из типов контейнера размещается 768, 1 536 или 3 072 видеокарт. Это огромный вычислительный массив, который позволит обучить сложную нейросеть. Дополнительно к перечисленным возможностям, вы сможете:

Остается ждать, что нейросети будут развиваться и обучаться в соответствии с поставленными задачами. И если забота о мозге нейросетей — видеокартах — лежит на крупнейших производителях (Nvidia и AMD), то охлаждение и получение дополнительной прибыли мы берем на себя.
 

1 месяц назад
Технологии