16 мая 2017 года в московском Digital October Centre на Барсенёвской набережной состоялось мероприятие со сложным названием Intel®Nervana™ AI Summit Moscow 2017. Аббревиатура AI расшифровывается как Artificial Intelligence – искусственный интеллект (ИИ).
Мне кажется, что слова «искусственный интеллект» я слышу столько, сколько себя помню. Проверил по Википедии: действительно, термин появился в 1956 году и означает «свойство интеллектуальных систем выполнять творческие функции, которые традиционно считаются прерогативой человека». В этом определении уже содержится подвох: как только мы привыкаем к тому, что машина выполняет те функции, которые ранее умел выполнять только человек, они перестают считаться искусственным интеллектом и горизонт отодвигается. Из этого можно сделать, как вывод о том, что задача создания ИИ уже давно успешно решается, так и вывод о том, что ИИ недостижим так же, как и горизонт.
К термину ИИ непосредственно примыкает термин «робот», который, согласно той же Вики – «автоматическое устройство, созданное по принципу живого организма, предназначенное для осуществления производственных и других операций…», то есть если оно действует по принципу живого организма, то должно не только двигаться, но и соображать по этому принципу.
Полагаю, что определения являются той печкой, от которой надо плясать в любых материалах и особенно дискуссиях, чтобы в финале спора с удивлением не обнаружить, что мы думаем одинаково, только выражаем мысли разными словами.
Помню, как ещё в середине 70-х на занятии по организации производства в КуАИ наш либеральный преподаватель остановил дискуссию о том, может ли машина мыслить, очень простым замечанием. Он сказал, что, поскольку у нас официальной идеологией является марксизм, то мы можем использовать только определение Маркса, данное им для паровой и прочих машин его времени. Определение мышления дано примерно тогда же и на таком же уровне. Поэтому, если мы попробуем приспособить марксово определение мышления к паровой машине, то у нас просто ничего не получится.
На самом деле, несмотря на такое название, мероприятие корпорации Intel было посвящено практическим вопросам реализации неких мыслительных процедур, а вот каким именно, я и попытаюсь здесь изложить.
Прежде всего хочу сказать, что оно меньше всего напоминало журналистскую тусовку, посвящённую выпуску на рынок очередного гаджета – здесь собрались серьёзные исследователи, и мне, честно говоря, было очень приятно находится в таком окружении. Посмотрите на лица участников, которые задавали вопросы – чудо же просто! Доклады также были весьма строгими и академичными, с точными формулировками и убедительными аргументами.
Мероприятие открыл директор по продажам и маркетингу ПО компании Intel EMEA Ральф де Варгни.
Он представил Амира Хосровшахи (Amir Khosrowshahi) – главного технического директор подразделения Artificial Intelligence Products Group, корпорация Intel, сооснователя и главного технического директора Nervana Systems. Амир совсем не похож на стереотипный образ «ботаника» – нечасто можно встретить столь накачанных мужиков.
Здесь требуются объяснения. В 2016 году корпорация Intel купила Nervana Systems – молодую компанию, созданную в 2014 году и специализировавшуюся на разработках в области ИИ, а конкретнее – на так называемом глубинном или глубоком обучении (англ. Deep learning). Тут кое-что начинает проясняться: под искусственным интеллектом понимается создание таких продуктов, которые способны к совершенствованию. И само доведение до ума функций продукта теперь означает не доработку его самого, а обучение на манер человеческого. Но на самом деле всё очень сложно. Внутри множества «машинное обучение» находится подмножество «нейронные сети», внутри нейронных сетей – «глубокое обучение», и с ними частично пересекается «искусственный интеллект» – по крайней мере так видит ситуацию Амир.
Если говорить совсем упрощённо, то традиционный способ обучения распознаванию, это совершенствование кода, который написан вручную или с некоторыми элементами автоматизации. ИИ – это когда системе дают картинки съедобного и несъедобного, и говорят ей, где она определила правильно, а где ошиблась. Но это если совсем примитивно, а на самом деле в информационных технологиях появилось новое направление – глубинное обучение, которое требует не меньшей квалификации, чем традиционное программирование. Результаты обучения фиксируются в топологии нейронных сетей, которые и обеспечивают реализацию технологии.
По словам Амира, эти технологии всё шире распространяются в различных сферах деятельности, потому что показывают результат лучше, чем при традиционном подходе. Однако такой подход требует большего объёма дискового пространства под образцы (учебные пособия) и в целом более значительных ресурсов, чем системы, у которых весь функционал находится в оптимизированном программном коде.
Таким образом, корпорация Intel сегодня понимает ИИ как технологию, находящуюся на стыке нейронных сетей и глубинного обучения. Intel видит свою задачу в том, чтобы в том числе создать аппаратные платформы, максимально отвечающие новым задачам. В этих платформах корпорация хочет скрестить традиционные процессоры с программируемыми вентильными матрицами (FPGA).
В конце 2015 года была куплена специализирующаяся на этой технологии компания Altera, и, похоже, скоро мы увидим плоды интеграции под кодовым именем Canyon Vista.
Строго говоря, нейронная сеть представляет собой математическую абстракцию и может быть реализована программно на любом железе, однако мы знаем, что адекватная аппаратная реализация всегда эффективнее, и Intel сейчас к этому стремится. Ещё 5 лет назад такое скрещивание казалось невозможным, но сегодня уже имеются лабораторные прототипы.
Директор по компьютерному зрению Алексей Мяков рассказал о некоторых практических аспектах реализации ИИ.
Например, если традиционно для распознавания пешехода требовалось не более десяти тысяч изображений, то для ИИ нужны уже сотни тысяч. Соответственно, отличается и результат: если «обычное» компьютерное зрение давало 80% правильных распознаваний, то ИИ после глубинного обучения даёт 97%, причём распознаёт уже не целого пешехода, а фрагменты его изображения, когда остальное скрыто, например, автомобилем. Было продемонстрировано, как такая система играет в DOOM – она распознаёт на экране врагов, реагирует быстрее человека и уже сейчас выигрывает соревнования.
Кроме обучения Алексей говорил и о тренировке. Например, о натренированных нейронных сетях. Тренировки можно проводить на мощных суперкомпьютерах с процессорами Intel Xeon, а потом результаты тренировок переносить на маломощные устройства, используемые в интернете вещей.
Также Алексей отметил, что цена входа для исследователей – персональный компьютер, а заработать можно миллионы долларов.
По мнению Игоря Фаломкина из компании Axxon Soft практическая ценность ИИ может быть в уменьшении хранимых данных с камер видеонаблюдения. Хранить только то, что может иметь какое-то значение: люди в зоне видимости, люди, которых можно узнать, люди, которые пересекли некую черту и т.д.
Вообще любая современная камера наблюдения, это компьютер с объективом, и чем меньше ненужной информации эта камера будет отправлять на сервер, тем эффективнее будет работать система. Вопрос именно в интеллектуальной аналитике видео, которая производится непосредственно на борту камер.
Благолепие конференции неожиданно прервал доклад Senior Information Engineer Intel Software Елены Федотовой под названием Women in Big Data, в котором речь шла о равноправии женщин в профессиональной среде.
С цифрами в руках, она доказала, что существует гендерный разрыв, исправлять который надо со школьной скамьи, что женщин в области больших данных работает недопустимо мало, и что к 2020 году надо добиться того, чтобы их там было не менее 25%.
В перерыве я не удержался и задал ей вопрос: какую долю в этом разрыве она отводит естественным причинам, и какую – дискриминации женщин работодателями. Для ответа на этот вопрос данных у неё не оказалось, ни больших, ни обычных.
После перерыва слово опять взял Амир Хосровшахи с докладом Intel® Nervana™ Deep Learning Platform Neon.
Это глубокая обучающая платформа Intel, которая упрощает работу с данными. По идее её разработчиков ученые начнут с итеративной, исследовательской фазы и полностью возьмут модели к развертыванию. Платформа предназначена для ускорения разработок и их масштабирования, служит в качестве катализатора для всех типов организаций, чтобы они смогли воспользоваться полным потенциалом глубокого обучения. Это могут быть, к примеру, автомобильные речевые интерфейсы, поиск изображений, перевод языка, геномика, финансовые услуги и обнаружение аномалий в данных IoT.
Разницу между машинным и глубоким обучением Амир продемонстрировал на этих слайдах.
При технологии глубокого обучения система анализирует около 60 миллионов параметров.
По словам Амира, математические основы Siri и прочих помощников весьма близки. Фреймворк глубокого обучения Neon, разработанный компанией Nervana и интегрированный Intel в свои продукты представляет собой видимую часть айсберга технологий.
Важно, что решение реализовано на широком спектре вычислительных ресурсов, от специализированных процессоров до облаков.
В настоящее время работа по глубокому обучению – это, скорее, тёмная магия, основанная на интуиции с большим объёмом ручной работы. Естественно, возникает вопрос проверки полученных системой знаний. Этот вопрос настолько сложен, что требуется развитие особого направления - разработка экзаменов, которые бы объективно оценивали результаты учёбы. Появляется и потребность в сравнении: сколько нужно вложить ресурсов в человека и сколько в систему, чтобы получить сходный результат. Хотя насчёт перспективы никто, конечно, не сомневается: всё, что вложено в одну систему, может быть скопировано в другую, и в этом смысле результаты обучения вечны и тиражируемы. А человека надо учить каждого индивидуально, и живёт человек не так уж и долго.
Я задал вопрос Амиру: имеют все эти исследования в области ИИ отношение к традиционной педагогике, можно ли их использовать для обучения людей? К сожалению, ответ был отрицательным: он много думал на эту тему, но пока разрыв между созданием ИИ и настоящим человеческим мышлением столь велик, что точек соприкосновения не находится.
Ведущий программный инженер подразделения программных продуктов Intel Виктория Федотова рассказала о машинном обучении с помощью пакета Intel Distribution for Python, созданного на базе Anaconda.
Python – очень выразительный язык. При его использовании для создания продуктов требуется меньше кода и меньше времени. Сам исходный текст легко читается, поэтому его легче редактировать, снижается количество ошибок.
Ещё одно преимущество пакета от Intel – использование инструкций современных процессоров, что позволяет резко поднять производительность системы.
Важно также, что этот пакет можно использовать в комплексе с другими продуктами Intel – это повышает как эффективность программирования, так и готового продукта.
Ведущий программный инженер подразделения программных продуктов Intel – Илья Бурылов, сделал доклад, который освещает проблему с другой стороны – анализ больших данных на платформе Spark.
Константин Добросолец из подразделения Intel PSG (бывшая Altera) подробно объяснил, как происходит машинное обучение с на матрицах FPGA.
Начал он с иллюстрации того, с какой скоростью эволюционируют технологии, насколько дешевле становится обработка и хранение данных, и что всё это позволяет ставить перед ИТ принципиально новые задачи.
А новые задачи требуют и новых способов их решения, поэтому на смену традиционному машинному обучению пришло глубокое обучение.
В свою очередь другая идеология, другие программные способы решения потянули за собой потребность в новых аппаратных средствах.
Это и обусловило покупку в 2015 году корпорацией Intel компании Altera, владеющей необходимыми продуктами и умением их создавать.
FPGA (field-programmable gate array, программируемая пользователем вентильная матрица (ППВМ) предоставляет для глубокого обучения возможности, которые не могли предоставить традиционные процессоры. Её энергоэффективность в сильно распараллеленных вычислениях намного выше, чем у многоядерных GPU.
При этом надо отдавать себе отчёт в том, что FPGA, только что извлечённая из коробки и установленная в компьютер, умеет примерно столько же, что новорожденный младенец. То есть в основном умеет учиться, если будет кому учить.
На сегодняшний день FPGA стала полноправным членом экосистемы Intel.
Завершил официальную часть конференции доклад проректора Казанского Федерального Университета Даниса Нургалиева.
Он рассказывал об использовании интеллектуального анализа больших данных для прогнозирования нефтегазоносности территорий и оптимизации разработки залежей, а я радовался тому, что мои родители были нефтяниками (и не простыми, а кандидатами наук) и потому я хорошо понимаю, о чём идёт речь. Оказалось, что понимал не я один, к тому же в зале оказались люди, имевшие противоположную точку зрения на освещаемые Данисом проблемы, и я даже не помню, когда ещё мне удавалось наблюдать столь жаркую дискуссию.
Собственно, сам градус этой дискуссии говорил о том, что тема конференции, несмотря на казавшуюся поначалу абстрактность и оторванность от реальных задач, на самом деле весьма актуальна и имеет практические применения. А нам остаётся только внимательно наблюдать за новым направлением в ИТ, столь активно разрабатываемым корпорацией Intel и ждать результатов. Всё же искусственный интеллект – это безумно интересная область!