19 октября 2019

Big Data: размер имеет значение

Пишу, перевожу и иллюстрирую IT-статьи. На proglib написал 140 материалов. Увлекаюсь Python, вебом и Data Science. Открыт к диалогу – ссылки на соцсети и мессенджеры: https://matyushkin.github.io/links/ Если понравился стиль изложения, упорядоченный список публикаций — https://github.com/matyushkin/lessons
Простыми словами рассказываем, что такое большие данные, где они используются, кто и как с ними работает.
Big Data: размер имеет значение

Термину Big Data более десяти лет, но вокруг него до сих пор много путаницы. Доступно рассказываем, что же такое «большие данные», откуда эти данные берутся и где используются, кто такие аналитики данных и чем они занимаются.

Три признака больших данных

Традиционно большие данные характеризуют тремя признаками (так называемым правилом VVV):

  1. Большой объем (Volume). Термин Big Data предполагает большой информационный объем (терабайты и петабайты информации). Важно понимать, что для решения определенного бизнес-кейса ценность обычно имеет не весь объем, а лишь незначительная часть. Однако заранее эту ценную составляющую без анализа определить невозможно.
  2. Большая скорость обновлений (Velocity). Данные регулярно обновляются и требуют постоянной обработки. Обновление чаще всего подразумевает рост объема.
  3. Многообразие (Variety). Данные могут иметь различные форматы и быть структурированы лишь частично или быть вовсе сырыми, неоднородными. Необходимо учитывать, что часть данных почти всегда недостоверна или неактуальна на момент проведения исследования.

В качестве простейшего примера можно представить таблицу с миллионами строк клиентов крупной компании. Столбцы – это характеристики пользователей (Ф.И.О., пол, дата, адрес, телефон и т.  д.), один клиент – одна строка. Информация обновляется постоянно: клиенты приходят и уходят, данные корректируются. 

Big Data: размер имеет значение

Но таблицы – это лишь одна из простейших форм отображения информации. Обычно представление больших данных имеет куда более витиеватый и менее структурированный характер. Так, ниже показана схема базы данных проекта MediaWiki:

Big Data: размер имеет значение

Большой объем предполагает особую инфраструктуру хранения данных – распределенные файловые системы. Для работы с ними используются реляционные системы управления базами данных. Это требует от аналитика уметь составлять соответствующие запросы к базам данных.

Где живут большие данные?

Инструменты Big Data используются во многих сферах жизни современного человека. Перечислим некоторые из наиболее популярных областей с примерами бизнес-задач:

  1. Поисковая выдача (оптимизация отображаемых ссылок с учетом сведений о пользователе, его местоположении, предыдущих поисковых запросах).
  2. Интернет-магазины (повышение конверсии).
  3. Рекомендательные системы (жанровая классификация фильмов и музыки).
  4. Голосовые помощники (распознавание голоса, реакция на запрос).
  5. Цифровые сервисы (фильтрация спама в электронной почте, индивидуальная новостная лента).
  6. Социальные сети (персонализированная реклама).
  7. Игры (внутриигровые покупки, игровое обучение).
  8. Финансы (принятие банком решений о кредитовании, трейдинг).
  9. Продажи (прогнозирование остатков на складе для снижения издержек).
  10. Системы безопасности (распознавание объектов с видеокамер).
  11. Автопилотируемый транспорт (машинное зрение).
  12. Медицина (диагностика заболеваний на ранних стадиях).
  13. Городская инфраструктура (предотвращение пробок на дорогах, предсказание пассажиропотока в общественном транспорте).
  14. Метеорология (прогнозирование погоды).
  15. Промышленное производство товаров (оптимизация конвейера, снижение рисков).
  16. Научные задачи (расшифровка геномов, обработка астрономических данных, космических снимков).
  17. Обработка информации с фискальных накопителей (прогнозирование стоимости товаров).

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

Чем занимаются люди в Big Data?

Анализ Big Data находится на стыке трех областей:

  1. Computer Science/IT
  2. Математика и статистика
  3. Специальные знания анализируемой области
Big Data: размер имеет значение

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

Очередность действий в проводимом исследовании примерно сводится к следующему:

  1. Работа с базами (структурирование, логика).
  2. Извлечение необходимой информации (написание SQL-запросов).
  3. Предобработка данных.
  4. Преобразование данных.
  5. Применение статистических методов.
  6. Поиск паттернов.
  7. Визуализация данных (выявление аномалий, наглядное представление для бизнеса).
  8. Поиск ответа, формулировка и проверка гипотезы.
  9. Внедрение в процесс.

Итог работы представляет сжатый отчет с визуализацией результата либо интерактивную панель (dashboard). На такой панели обновляемые данные после обработки предстают в удобной для восприятия форме. 

Ключевые навыки и инструменты аналитика

Навыки и соответствующие инструменты, применяемые аналитиками, обычно следующие:

  1. Извлечение данных из источников данных (MS SQL, MySQL, NoSQLHadoop, Spark).
  2. Обработка данных (Python, R, Scala, Java).
  3. Визуализация (Plotly, Tableau, Qlik).
  4. Исследование по критериям бизнес-задачи.
  5. Формулировка гипотез.

Выбор языка программирования диктуется имеющимися наработками и необходимой скоростью конечного решения. Язык определяет среду разработки и инструменты анализа данных.

Большинство аналитиков используют в качестве языка программирования Python. В этом случае для анализа больших обычно применяется Pandas. При работе в команде общепринятым стандартом документов для хранения и обмена гипотезами являются ipynb-блокноты, обычно обрабатываемые в Jupyter. Этот формат представления данных позволяет совмещать ячейки с программным кодом, текстовые описания, формулы и изображения.

Big Data: размер имеет значение

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

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

Big Data: размер имеет значение

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

Как разобраться в Big Data?

Как можно понять из приведенного обзора, большие данные предполагают от аналитика и большой объем знаний их различных областей. Разобраться с основами поможет наш учебный план. Если захочется углубиться и попытаться последовательно охватить все аспекты вопроса, изучите roadmap Data Science

Big Data: размер имеет значение

В упомянутом репозитории вы также найдете краткие описания и ссылки к некоторым из компонентов карты.

С чего начать, если хочется попробовать прямо сейчас, но нет данных?

Опытные аналитики советуют пораньше знакомиться с Kaggle. Это популярная платформа для организации конкурсов по анализу больших объемов данных. Здесь найдутся не только соревнования с денежными призами за первые места, но и ipynb-блокноты с идеями и решениями, а также интересные датасеты (наборы данных) различного объема.

Big Data: размер имеет значение

Понравилась статья? Что бы еще вы хотели узнать о Big Data?

Комментарии

ВАКАНСИИ

Добавить вакансию
Разработчик C++
Москва, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ