Алексей Толстиков, «Яндекс» — о больших данных на пальцах

4 марта 2015, 14:42

Любое современное устройство способно накапливать данные и вести логи, объёмы фиксируемой информации растут. Качественная и оперативная обработка этих данных позволяет анализировать ситуацию и принимать решения. Например, в режиме реального времени составлять прогноз заторов и выявлять участки с высокой вероятностью ДТП на ближайший час. Для работы с такими данными нужны не только мощные устройства, но и особые алгоритмы, а также специалисты с особой квалификацией. Как всё это работает? Откуда берутся такие эксперты? За ответами dev.by обратился к Алексею Толстикову, куратору Школы анализа данных «Яндекса» в Минске и преподавателю факультета прикладной математики и информатики БГУ.

Читать далее

Алексей Толстиков

«Обязательны две характеристики: количество и скорость»

— Как объяснить неспециалисту суть понятия «большие данные»?

— Феномен больших данных в том, что сейчас почти любое современное устройство способно накапливать информацию и вести логи — от автомобиля до холодильника, от мобильного телефона до самолёта. Чтобы правильно и оперативно проанализировать весь этот объём и на основе результатов принять решение, нужны очень сложные алгоритмы для изучения и анализа данных — data science.

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

— Выходит, уникальность заключается в первую очередь в способности работать с огромным количеством данных?

— Я бы уточнил: не столько с огромным, сколько с полным. То, что сведений много — это просто следствие явлений, которые их генерируют.

— Большие данные характеризуются тремя V — Variety, Velocity, Volume. Что ещё отличает их от остальных?

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

Например, в школьном курсе физики мы долго изучаем тему динамики без учёта всевозможных сил взаимодействия предмета с окружающей средой, потому что ученикам 7-8 классов так проще понять явление. Нам говорят, что силы трения практически нет, и только в старших классах объясняют: формулу нужно дополнить, потому что ещё существует сила трения. Дальше в формулу добавляется сопротивление воздуха, а оно, в свою очередь, зависит от формы тела — и так далее. Чем дальше мы идём в изучении физики, тем точнее получается формула. В результате, корректность формулы достигается максимальным количеством учитываемых параметров, а значит, модель становится более точной, но при этом она разрастается.

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

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

— С каких объёмов данные становятся большими?

— Конкретной цифры нет. Потому что этот феномен зависит не только от объёма. Это могут быть десятки, сотни терабайт логов, сотни миллиардов географических объектов, десятки миллионов транзакций пользователей, например, в социальных сетях.

«Кто-то придумывает машины без водителей, а мы помогаем бизнесу двигаться вперёд»

— Какие неочевидные сферы применения больших данных?

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

По сути, аналогичные приёмы используются и в медицине для поиска и распознавания различных симптомов у пациентов, что помогает ставить сложные диагнозы.

— Что изменилось в развитии больших данных за последние пять лет? И чего стоит ожидать в дальнейшем?

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

— Можете назвать конкретные программы, разработки?

— В рамках проекта Yandex Data Factory наша компания уже провела несколько пилотных проектов с компаниями-партнёрами и получила первые результаты. Например, для автодорожной компании в Yandex Data Factory обработали данные о загруженности дорог, качестве покрытия, средней скорости движения транспорта и аварийности. Это дало возможность в режиме реального времени составлять прогноз заторов и выявлять участки с высокой вероятностью ДТП на ближайший час. А для крупного банка проанализировали сведения о клиентах и их действиях, что позволило составить персонализированные предложения и повысить продажи банковских продуктов.

Где ещё применим анализ больших данных? Например, мы все слышали об «умных» автомобилях будущего. Чтобы такое авто стало «ещё умнее», а его ошибки — менее критичными, необходима работа с большими данными. Случись пара-тройка ДТП с участием такой машины — и создателям придётся свернуть программу, потому что общественный резонанс будет огромным.

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

Упомяну ещё «умные» фермы, которые практически без людей успешно выращивают овощи и фрукты. С ростом населения Земли инвестиции в эту отрасль наверняка будут расти, ведь «умные» фермы дешевле и эффективнее традиционных.

— Каковы задачи стартовавшего в декабре проекта Yandex Data Factory?

— Это новое направление нашей деятельности: кто-то придумывает очки, кто-то — машины без водителей, а мы помогаем бизнесу делать качественный шаг вперед, анализируя накопленную информацию и уже совершенные шаги. Насколько я знаю, у команды YDF сейчас десятки проектов в работе, потому что в такой аналитике заинтересована почти любая компания, есть уже реализованные проекты. Так что для «Яндекса» это ещё и бизнес-направление.

Мне кажется, он принесёт компании мировую известность в области машинного обучения, продемонстрирует, что «Яндекс» работает в этом направлении и вкладывает ресурсы.

Кейс в тему: YDF помогает предсказывать поведение игроков в World of Tanks

Разработчики и аналитики Yandex Data Factory научились предсказывать отток игроков World of Tanks для Wargaming.net. Это ещё одна история про применение технологий обработки больших данных в реальной жизни.

Задача, сформулированная Wargaming.net для YDF, — повысить лояльность и удовлетворённость клиентов с минимальными усилиями и затратами. Для решения задачи взяли данные о 100 тысячах случайных игроков, которые в прошлом году играли не меньше 20 раз. После этого определили тип игрока «churner» — это игрок, который не играл в течение месяца, а до этого играл на протяжении некоторого времени. К данным о таких игроках, включающим больше 100 параметров (информация о покупках, играх, количеству и типу боёв в играх, количество уничтоженных вражеских танков, опыт и других) — для поиска сходства в их поведении и профилях применили технологию машинного обучения «Яндекса» «Матрикснет». Как результат, технология предсказала вероятность оттока для каждого из пользователей по их данным.

Wargaming.net может применить модель прогноза оттока ко всему сообществу игроков, чтобы выделить топ потенциальных игроков группы оттока и придумать для их удержания специальные предложения, бонусы, спецпроекты. Предсказания оттока технологией «Матрикснет» на 20-30% точнее привычных инструментов анализа, используемых в игровой индустрии. Следующий вызов, который YDF мог бы взять на себя — это разработка формулы для персонализированных предложений по удержанию абонентов.

Дефицит специалистов растёт

— Расскажите о минской Школе анализа данных «Яндекса».

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

Когда «Яндекс» расширялся в середине 2000-х, появилась необходимость в подготовке тех, кто будет развивать отрасль больших данных. Важную роль сыграло и то, что многие школы машинного обучения зародились именно в СНГ. Профессоры и доценты активно откликнулись на призыв компании — и в Москве появились очные курсы. Сейчас там преподаётся порядка пятнадцати различных дисциплин, связанных с компьютерными науками.

В Минске мы запустили ШАД по следующей модели: учим тоже два года, но в каждом семестре из трёх курсов, которые студенту нужно сдавать, только один преподаётся очно (занятия проходят в вечернее время на факультете прикладной математики и информатики БГУ). А остальные курсы изучаются и сдаются заочно преподавателям московской ШАД.

— Вы довольны уровнем подготовки слушателей курсов из Беларуси?

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

— В БГУ с 2014 года открыта магистерская программа «Алгоритмы и системы обработки больших объёмов информации». Есть ли в Беларуси дефицит специалистов?

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

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

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

— Планируется ли открытие похожих программ подготовки в других вузах, например, в БГУИР?

— Теперешняя программа — шаг на опережение. Белорусский рынок ИT ещё не кричит вузам «Дайте нам вот этих людей!». Дефицит чувствуется, но пока его восполняют самоучки, которые работают в отрасли 5-10 лет и добрали знаний самостоятельно.

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

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

Подобная специализация наверняка появится и в других вузах, но не сейчас.

 

Фото: Андрей ДАВЫДЧИК

Обсуждение