Samara Portal Technology, Computers

Самарский портал "Технологии, компьютеры"

Вот это стул –
На нём сидят.
Вот это стол –
За ним едят.
С.Я.Маршак «Кошкн дом»

Начать отчёт о мероприятии The True Positive Conference, которое проходило в Самаре в медиацентре (15 корпусе) СГАУ 31 марта 2016 года, мне хотелось бы издалека: с посещения в феврале этого года московского офиса корпорации Intel на Крылатских Холмах.

На мои вопросы о перспективах ИТ-отрасли, сотрудник пиар-службы корпорации Михаил Рыбаков говорил главным образом не о новых архитектурах процессоров, гигагерцах и нанометрах, а об объединении всего сущего в цифровой континуум. В основе всего этого должна быть информация об объектах, содержащая некие смыслы, делающие возможной её последующую обработку. Например, что в будущем, возможно, отпадёт нужда в специальных агрегаторах типа booking.com, поскольку из самого сайта гостиницы роботу будет понятно, что это гостиница, равно как будет понятна и вся информация о ней. Скорее всего, это потребует некоторого упорядочения данных на сайтах, но главное – что универсальный робот (бот), наделённый разумом, сможет проводить интеллектуальный поиск того, что сегодня доступно только человеку. И даже, если гостиница не присутствует в агрегаторе, он всё равно сможет её найти и предложить клиенту. Здесь мы видим два необходимых компонента: собственный интеллект робота и его способность работать с тем, что сегодня называется Big Data (Большие Данные). Плюс, конечно, сами эти данные, распределённые по множеству серверов и облаков.

На самой конференции меня больше всего заинтересовал доклад Александра Нотченко «Deep Learning for 3D Shapes Analisys».

The True Positive Conference проводилась на английском языке. Это прекрасная подготовка к международным конференциям, где у русского нет никаких шансов стать доминирующим языком в какой-либо области. Однако дискуссии велись всё же на русском smile.

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

Первый этап – получение изображения с помощью камер объёмного зрения.

Например, Intel RealSense, ASUS Xtion PRO (Live) или Microsoft Kinect. Все эти камеры не просто снимают видео, но и имеют в своём составе алгоритмы преобразования плоского изображения в трёхмерные объекты. Собственно, это и не совсем камеры в классическом понимании. Они содержат различные по принципу действия дальномеры, позволяющие определять расстояние до каждого пикселя сформированного изображения, эта информация записывается в специальный формат. Кроме того, при съёмке объекта с разных точек полученные снимки «соединяются», графической информации становится больше, и объект может быть построен более точно. На этом этапе распознавания всё делается с помощью встроенных драйверов и локального ПО.

Но как структурировать полученный трёхмерный образ, как узнать, какие объекты он содержит? Как понять, что это именно стул, а не ломберный столик?

Даже малосведущий в технике человек поймёт, что шпилька с накрученной на неё гайкой – это разные детали и гайку можно скрутить со шпильки, а вот

внешне похожий на шпилечное соединение болт – это одна деталь, и открутить с болта его головку не получится.

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

Но и это ещё не всё. В далёкие 70-е (возможно, начало 80-х) годы в журнале «Знание-Сила» мне попалась статья о распознавании образов. Автор начал с весьма смелого утверждения о том, что значительную часть того что мы якобы видим, на самом деле мы не видим, а додумываем на основе опыта. И тут же был приведён фрагмент картины – всего несколько мазков, совершенно непонятного назначения. На второй странице (статья была довольно длинная и изобилующая аргументами) фрагмент этой же картины побольше, на третьей ещё больше… И только когда была показана картина целиком, всё встало на места: вне всякого сомнения на предпоследней картинке была повозка с лошадью, потом лошадь и на первой – голова лошади. А сомнения исчезли потому, что на картине была дорога в горах, а что же ещё может двигаться по дороге, не похожее на автомобиль?

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

Мы с сыном иногда дискутируем по поводу автомобилей без водителей: он оптимист, а я скептик. Мои аргументы сводятся к тому, что водитель понимает, когда соседний автомобиль ведёт новичок, чем отличается поведение подростка (когда он один, с девочкой, в компании) на переходе от поведения пожилого человека (и ещё неизвестно, кто опаснее), отличит пьяного пешехода от трезвого – а что сделает автомобиль, оборудованный камерой? Будет видеть только контуры и оценивать расстояние до них? Но как только автопилот начнёт понимать смыслы, тут он сможет конкурировать с живым водителем.

Отсюда следует, что эффективное распознавание и последующая работа с объектами может состояться только тогда, когда система научится работать с Большими Данными – пусть это условие недостаточное, но уж точно необходимое.

Теперь, сказав о главном (как я его увидел), можно вернуться к хронологии конференции.

В своём вступительном слове заведующий кафедрой суперкомпьютеров и общей информатики, профессор Владимир Алексеевич Фурсов посетовал на то, что ещё в советское время был взят курс на копирование зарубежной техники. По его мнению, надо было идти своим путём и тогда бы мы сегодня имели отечественную импортонезависимую ИТ-индустрию.

Доклад «100 Billion DNS Transactions Per Day» («100 миллиардов DNS-транзакций ежедневно») технический директор американской компании Nominum Юрий Юзифович уже делал на семинаре-совещании по вопросам интеллектуального анализа и обработки данных сверхбольшого объёма Big Data, который два дня назад состоялся в 1 корпусе СГАУ.

Доклад исследователя из Сан Франциско Николая Маркова «Data engineering boost: how to make Python crawl faster» («Как заставить «Питона» ползти быстрее») наверняка был интересен тем, кто хорошо знает язык Python и использует его для обработки Больших Данных. Большое внимание было уделено распараллеливанию процессов: собственно, с тех пор, как упёрлись в невозможность дальше повышать тактовую частоту процессоров распараллеливание стало главным трендом.

В докладе с.н.с. СГАУ Артёма Никанорова «Deep Learning and Convolutional Networks» («Глубокое обучение свёрточных сетей») содержалась интересная мысль о том, что язык классической математики был разработан для ручных вычислений, поскольку других тогда просто не было.

На ум сразу приходит бухгалтерская двойная запись, изобретённая Лукой Пачоли в XV веке. Для тех, кто не в курсе: каждая операция записывается дважды в разных книгах, как правило, разными людьми. Например, перемещение товара со склада 1 на склад 2 записывается как расход в книге учёта склада 1 и как приход в книге учёта склада 2. Таким образом, при сведении баланса любая ошибка приводит к результату, отличному от нуля (со склада 1 товар ушёл, а на склад 2 не пришёл или пришёл не в том количестве). При компьютерном учёте двойная запись потеряла смысл: оказалось достаточно того, чтобы кладовщик склада 1 сделал запись о перемещении, а кладовщик склада 2 только подтвердил приход (сделал отметку).

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

Что касается самих свёрточных сетей (Convolutional Networks), то это в какой-то мере попытка имитировать работу органов чувств и мозга с одновременной попыткой понимания того, как это всё работает. Ведь можно сколько угодно говорить о знаниях и смыслах – но ведь всё равно на чём-то это всё придётся реализовать.

Михаил Паткин в докладе «Deep learning for video classification» рассказал о распознавании видео. Насколько я понимаю, отличие распознавание видео от распознавания статических изображений должно заключаться в нахождении зависимостей между кадрами, но это как-то не прозвучало: были только примеры распознавания рукописного текста, текста с ошибками и этих самых статических картинок.

Завершилась конференция видеомостом с США. На той стороне были сотрудники компании EPAM Валентин Цитлик (Valentin Tsitlik) и Дмитрий Ларко (Dmitry Larko) и они говорили по-русски! Всё было реализовано на общедоступном Skype.

Была высказана очевидная для меня (но очень редко продвигаемая в России) мысль о том, что предложить нечто клиенту можно только тогда, когда ты понимаешь его бизнес-процессы, а значит, понимаешь и то, как твоё решение может эти процессы усовершенствовать и принести прибыль.

Также сотрудники EPAM объясняли, что создаваемые ими на основе технологий работы с Большими Данными продукты – это совсем не чёрная магия, а обычный коммерческий софт, используемый для принятия бизнес-решений.

Большие Данные (Big Data) являются реальной возможностью создания систем нового класса, обладающих принципиально иными возможностями, чем существовавшие до них. Эта конференция – возможность заглянуть за горизонт. Хочу отметить и обстановку конференции: заинтересованную, доброжелательную, свободную. Спасибо организаторам, а студентам очень рекомендую не пропустить следующую.

Смартфон Vivo V9: где-то я его уже видел…

Vivo V9. Youth – это молодость!

Vivo V9. Youth – это молодость! Статья Владислава Боярова.

Неубиваемый DECT: в Самаре состоялось мероприятие Gigaset и АйПиМатика

Неубиваемый DECT: в Самаре состоялось мероприятие Gigaset и АйПиМатика. Статья Владислава Боярова.