Big Data is dead. Во всяком случае, так утверждает генеральный директор MotherDuck в статье, перевод которой собрал 140 плюсов на Хабре. Обработку и использование больших данных обсуждали в течение последнего десятилетия, но они потеряли актуальность как драйвер развития компаний. Означает ли это их окончательную смерть?
Есть и другое мнение: концепция не умерла, а эволюционирует. Фокус смещается от количества собираемой информации к ее качеству. Этот сдвиг парадигмы привел к появлению понятия Smart Data — «умных» данных, которые являются продуктом интеллектуальной обработки и эволюции Big Data.
Давайте рассмотрим концепцию Smart Data и выясним, действительно ли Big Data превращаются во что-то более интеллектуальное.
Определение Smart Data
Smart Data — это концепция перехода от простого накопления больших объемов данных к извлечению из них действительно ценной и применимой информации. Если Big Data фокусируются на объеме, то Smart Data — это про качество и пользу для решения конкретных задач. Другими словами, это обработанные и проанализированные данные, из которых извлекли полезные знания и инсайты. Такие данные можно сразу применять для решения бизнес-задач.
Smart Data получают с помощью машинного обучения, предиктивной аналитики и других современных методов. Эти технологии автоматизируют процесс работы с данными:
очищают от шума;
структурируют;
находят скрытые закономерности и корреляции;
извлекают ценную информацию.
Переход к Smart Data обусловлен несколькими факторами. Прежде всего, это взрывной рост объемов данных. Причем это касается не только интернет-сервисов, но и, например, усеянного датчиками промышленного оборудования, всевозможных IoT-систем. Извлекать ценность из таких систем становится все сложнее.
Одновременно с этим растут вычислительные мощности и совершенствуются алгоритмы обработки данных, особенно в машинном обучении и глубоких нейронных сетях. Это помогает находить сложные закономерности в больших массивах неструктурированной информации и проводить их обработку в режиме реального времени.
Эти факторы делают возможным и необходимым извлечение ценных инсайтов из больших данных. Если большие данные — это «сырье», то умные данные — «готовый продукт» для решения практических задач.
Чтобы данные считались «умными», они должны соответствовать четырем метрикам: качество, практическая применимость, экономическая эффективность и адаптивность. Качественные данные не содержат ошибок и противоречий. Практически применимые данные достаточны, репрезентативны и релевантны для решения поставленных задач. Экономически эффективные данные имеют приемлемую стоимость получения и обработки. Адаптивные данные способны учитывать постоянно меняющиеся условия. Оптимизация этих параметров необходима для преобразования Big Data в Smart Data.
Большие данные часто характеризуют моделью «4V»: объем, разнообразие, скорость и достоверность (Volume, Variety, Velocity, Veracity). Для умных данных больше подходит модель «5V», где пятым «V» становится ценность (Value). Эта модель подчеркивает, что в умных данных важнее качественные характеристики, а не количественные.
Процесс извлечения Smart Data
Преобразование больших данных в умные — это полноценный цикл исследования и анализа информации, а не просто набор технических методов. Процесс начинается с определения бизнес-целей и формулирования задач. Затем следуют этапы сбора, очистки и анализа данных, разработки и тестирования моделей. Завершается цикл внедрением моделей в рабочую среду и оценкой эффективности.
Каждый этап дает новые знания, которые могут потребовать пересмотра или уточнения предыдущих или последующих шагов. Получается не линейный, а итеративный процесс. Давайте рассмотрим каждый из его этапов более подробно.
Сбор и интеграция данных
Все начинается со сбора и интеграции данных из всех источников, полезных для решения поставленной задачи. Это могут быть структурированные данные из баз данных и таблиц, неструктурированные данные из текстов, изображений, видео, потоковые данные от IoT-датчиков и т. д.
Собранные данные загружаются в единое хранилище данных, такое как озеро данных (Data Lake) или витрина данных (Data Warehouse).
Предварительная обработка данных
Следующий этап — предварительная обработка данных (data preprocessing) — пожалуй, один из самых трудоемких и затратных по времени, но вместе с тем критически важный для успеха всего проекта.
Предварительная обработка включает:
очистку данных от шумов и выбросов;
заполнение пропущенных значений;
нормализацию и стандартизацию данных;
дискретизацию непрерывных переменных.
На этапе предварительной обработки часто применяют метод главных компонент (PCA). Он ищет такое линейное преобразование данных, которое проецирует их на новое пространство меньшей размерности, сохраняя при этом максимум информации. Математически это сводится к поиску собственных векторов и собственных значений ковариационной матрицы данных. В исследовании Амель Суифи и ее коллег «От Big Data к Smart Data: Применение в управлении производительностью» PCA позволил сжать 74 производственные переменные всего до двух главных компонентов, объясняющих 78% вариации данных.
Исследовательский анализ данных
После предобработки следует этап исследовательского анализа данных (Exploratory Data Analysis, EDA). Это своего рода «разведка боем», где мы используем статистические методы и визуализации, чтобы лучше понять структуру и особенности данных, выявить интересные закономерности, тренды, аномалии.
EDA использует различные методы:
анализ распределений;
корреляционный анализ;
кластерный анализ;
поиск ассоциативных правил.
Современные инструменты интерактивной визуализации данных, такие как Tableau, PowerBI или D3.js, позволяют быстро исследовать данные и добывать инсайты в режиме реального времени.
Снижение размерности и отбор признаков
Цель этого этапа — уменьшить количество анализируемых параметров, сохранив наиболее информативные. В реальных задачах мы часто имеем дело с высокоразмерными данными, где число признаков может достигать сотен и тысяч. Работа с ними требует огромных вычислительных ресурсов и может приводить к проблеме «проклятия размерности». Ее суть в том, что с ростом числа признаков экспоненциально растет объем пространства данных, и датасет становится все более разреженным. Это затрудняет поиск закономерностей и требует экспоненциально большей выборки для обучения моделей.
Для снижения размерности данных и отбора наиболее информативных признаков применяют различные методы. Один из популярных — t-SNE (t-Distributed Stochastic Neighbor Embedding). t-SNE выполняет нелинейное преобразование для сохранения локальной структуры данных в низкоразмерном пространстве.
Сначала строится вероятностное распределение над парами точек данных в исходном пространстве таким образом, что похожие точки имеют высокую вероятность быть выбранными в качестве соседей. Затем в низкоразмерном пространстве ищется такое представление точек данных, которое минимизирует расхождение Кульбака-Лейблера между двумя вероятностными распределениями. Это приводит к тому, что t-SNE особенно хорошо подходит для визуализации кластерной структуры данных.
Другой интересный подход — автоэнкодеры. Это специальный класс нейронных сетей, которые обучают воспроизводить входные данные на выходе. Казалось бы, тривиальная задача, но фокус в том, что между входным и выходным слоями находится скрытый слой меньшей размерности — так называемое «бутылочное горлышко». Для успешного восстановления входных данных на выходе сеть вынуждена научиться выделять наиболее значимые признаки и эффективно кодировать информацию в пространстве сниженной размерности. По сути, обученный автоэнкодер можно рассматривать как нелинейное обобщение метода главных компонент (PCA).
Построение ML-моделей
На этом этапе работы в зависимости от типа задачи (классификация, регрессия, прогнозирование, кластеризация и т. д.) и специфики данных мы выбираем подходящие алгоритмы и архитектуры моделей. Это могут быть как классические модели, такие как деревья решений, случайный лес, SVM, так и более продвинутые подходы, основанные на нейросетях и глубоком обучении. Особенно эффективны deep-learning модели для работы с неструктурированными данными, такими как тексты, изображения, видео.
Построив модели, мы оцениваем их эффективность на тестовых данных и анализируем результаты. Для оценки используем различные метрики качества: точность (accuracy), полноту (recall), F1-меру и площадь под ROC-кривой (ROC-AUC). Чтобы понять логику принятия решений моделью, применяем методы интерпретируемого искусственного интеллекта (Explainable AI), такие как SHAP и LIME. Эти техники помогают выявить ключевые признаки, влияющие на решения модели.
Развертывание моделей
Завершающий этап — внедрение интеграция моделей в бизнес-процессы и системы поддержки принятия решений. Здесь важно обеспечить бесшовную работу моделей в реальном времени, их регулярное обновление и переобучение по мере поступления новых данных, а также мониторинг качества их работы. Для автоматизации и стандартизации этих процессов используются специальные платформы, например Kubeflow или MLflow.
Практическое применение Smart Data
Преобразование сырых Big Data в ценные Smart Data — сложный, итеративный процесс, требующий глубокой экспертизы на стыке статистики, информатики и программной инженерии. Но игра стоит свеч: компании, освоившие эффективное извлечение знаний из данных, получают значительное конкурентное преимущество. Рассмотрим реальные примеры.
Извлечение Smart Data из производственных Big Data
Предприятия получают огромные объемы информации от множества подключенных устройств и систем, но мало их собрать — необходимо извлечь из них пользу. Рассмотрим пример использования умных данных для повышения эффективности производства. Он описан в ранее упомянутом исследовании Амель Суифи.
В этом кейсе исследователи экспериментировали с производственной линией по розливу парфюмерии. Линия состояла из 9 рабочих станций, соединенных конвейером, и имела целевую производительность 1500 бутылок в час. Каждую минуту датчики линии фиксировали 74 параметра: время наладки, число поломок каждой машины, количество произведенных бутылок на каждой станции, уровень заполнения конвейеров и другие. За месяц непрерывной работы накопился массив из 43200 наблюдений — типичный пример производственных больших данных.
Для преобразования сырых данных в умные ученые использовали несколько аналитических методов. Сначала они применили метод главных компонент (PCA), сократив 74 переменные до двух основных. Эти компоненты сохранили 78% исходной информации. Исследователи интерпретировали их как «замедление производства» (связано с простоями и поломками) и «производительность» (отражает скорость работы).
Затем кластеризация переменных подтвердила эту интерпретацию: переменные, связанные с простоями, образовали один кластер, а переменные производительности — другой. Наконец, сегментация временных рядов главных компонентов выявила, что поведение линии меняется примерно каждые 5 часов. Значит, нет нужды собирать данные каждую минуту — достаточно делать это раз в 5 часов.
Полученные Smart Data — сжатые до двух компонентов и измеряемые каждые 5 часов — подаются в систему управления производительностью линии. На их основе рассчитываются KPI, такие как общая эффективность оборудования (OEE), выработка за час, уровень брака и т. д. Менеджеры используют эти KPI для принятия решений по оптимизации процесса — например, для выявления слабых мест, профилактического обслуживания машин, оперативного реагирования на проблемы.
Smart Data в системе управления клиентским путем
Другой яркий пример — процесс трансформации клиентской информации (Smart Data Transformation Process, SDT), описанный в исследовании «От данных о клиентах к “умным” данным о клиентах: Процесс трансформации Smart Data». Авторы показывают его реализацию в системе управления клиентским путем (Customer Journey Master, CJMA).
Процесс начинается с обработки данных — интеграции клиентских данных из различных источников: CRM-систем, веб-сайтов, мобильных приложений. Разрозненные данные экспортируют, структурируют и загружают в единое хранилище, например, MySQL, с помощью ETL-инструментов или специализированных API.
За Information Processing отвечают методы интеллектуального анализа и машинного обучения. С их помощью данные о поведении клиентов трансформируются в упорядоченные последовательности событий.
И вот мы подходим к самому «вкусному» — этапу обработки знаний (Knowledge Processing). На основе инсайтов, полученных из данных, строятся продвинутые аналитические компоненты. С их помощью визуализируют путь клиента, группируют клиентов по схожему поведению, находят ключевые точки принятия решений.
Компонент Knowledge Reasoning в CJMA предназначен для выявления и кластеризации клиентских путей. Анализируя последовательности действий и поведение клиентов, система определяет основные потоки взаимодействия через различные точки контакта (сайт, мобильное приложение). Визуализация путей клиентов в виде графов позволяет строить рекомендательные системы и улучшать клиентский опыт.
Компонент Insight Generating отвечает за извлечение знаний о решениях клиентов. Он строит предсказательные модели клиентских путей, включая будущие действия на основе привычек клиентов (категории устройств, операционной системы и т. д.). Такие инсайты позволяют оптимизировать клиентские пути: распознавать потребности, предлагать релевантные продукты/услуги и улучшать процесс доставки.
В результате применения SDT-процесса бизнес получает практически применимые знания о поведении клиентов. Их используют для персонализации коммуникаций, повышения удовлетворенности и лояльности клиентов, улучшения клиентского опыта на каждом этапе — от предпокупки до постпокупки.
Smart Data для интеграции и анализа корпоративных данных
Превращение обычных данных в «умные» важно не только для клиентской аналитики. На рынке есть решения, которые анализируют корпоративную информацию из разных источников: от устаревших систем до облачных сервисов и современных баз данных. Пример такого решения — архитектура управления данными от InterSystems.
Главная особенность таких решений — возможность объединять данные в единый источник знаний в реальном времени. Это особенно важно для финансов и здравоохранения. В этих отраслях скорость и точность информации напрямую влияют на принимаемые решения.
Зачастую в подобные решения уже встроены инструменты очистки и обогащения данных, позволяющие повысить качество и пригодность для анализа. Кроме того, современные методы, в том числе продвинутая аналитика и машинное обучение, помогают глубже изучать данные и находить скрытые закономерности.
Каким должен быть data scientist для работы со Smart Data?
Закономерный вопрос: какой специалист сможет эффективно работать с «умными данными»? Data scientist и так находится на стыке нескольких сфер, но теперь он должен свободно лавировать между статистикой, программированием и спецификой бизнес-процессов, связывая воедино эти разные области знаний. Ключевым становится междисциплинарный подход: уже недостаточно быть просто технарем или просто экспертом в предметной области.
Технические навыки — лишь фундамент. Не менее важно уметь интерпретировать результаты анализа и эффективно доносить их до руководства. Специалист по Smart Data становится своего рода переводчиком с языка данных на язык бизнеса. И, что критично, он должен обладать развитым этическим мышлением. В мире, где алгоритмы все чаще влияют на жизни людей, умение предвидеть и минимизировать негативные социальные последствия применения технологий становится не просто желательным, а необходимым навыком.
Это наше мнение, а каким вы видите современного Data Scientist? Верите ли вы вообще в эволюцию Big Data? Расскажите в комментариях :)
Комментарии (11)
Ninil
14.11.2024 09:34Очередной виток спирали развития мысли и технологий. Идеи, приведшие к появлению Хранилищ Данных, просто теперь поверх BigData (назовем это Big Data Warehouse)
PS ну а ради хайпа и марктинга это можно и Smart Data назвать)
adeshere
14.11.2024 09:34Изображение демонстрирует результаты сегментации временных рядов на основе двух главных компонент, полученных методом PCA. Данные разделены на 5 однородных сегментов разного цвета, границы которых находятся в точках 1, 263, 512, 878 и 1222 по оси времени, что указывает на изменение поведения системы примерно каждые 5 часов. Сегментация позволяет сжать исходные наблюдения до небольшого числа информативных отрезков, упрощая анализ данных и выделяя ключевые паттерны изменения системы во времени, что является примером преобразования больших данных в Smart Data
Конечно, пусть цветут все цветы... но разбиение на фрагменты выглядит очень странным. Я много лет занимаюсь анализом временных рядов, и пришел к твердому убеждению, что выбор конкретного метода - это второе или даже десятое по важности дело. Причина в том, что вся классическая теория (которая предлагает нам немеряное множество оптимальных в том или ином отношении процедур) на практике разбивается о прозу жизни: оптимальность и строгость подавляющего числа алгоритмов и методов обусловлена весьма жесткими требованиями к статистическим свойствам сигналов. Которые на практике удовлетворяются чуть реже, чем никогда (специально выделил жирным, чтоб Вы не подумали, будто я опечатался ;-)
Поэтому 90% задачек по анализу реальных временных рядов (резко нестационарных, с выбросами, аномалиями и пропусками) формализовать невозможно. У них просто нет объективно правильного решения. Потому что, как сказано выше, строгость любого формального метода почти всегда упирается в невыполнение условий его применимости. В частности, судя по Вашим графикам, сигналы очевидно не стационарны. А тогда какие случайные величины, какой PCA? Ведь если мы выходим за рамки постулированных условий, то прощай, математическая модель. Любой самый распрекрасный, оптимальный и строгий метод в этом случае по сути превращается в более или менее полезный эмпирический трюк. Как сказал один классик, все модели неверны, но некоторые полезны. Это и про Ваш случай тоже. То есть, нельзя исключить, что и для ваших рядов разложение на главные компоненты будет полезно... только вот в ошибочности этой модели нет никаких сомнений. Вот и живите теперь с этим ;-)
Поэтому лично для меня не бывает "хороших", "продвинутых", "современных" и т.п. методов. В конечном счете у нас нет никакого иного способа сравнить эти методы между собой, кроме "парадигмы прищуренного взгляда". Когда эксперт сначала разглядывает данные в разных разрезах, постоянно при этом имея в виду конечную цель анализа, потом его осеняет мысль "я так вижу!", и лишь после этого можно выбрать или разработать статистический инструмент, который формализует его видение в формате некоторых алгебраических процедур. Позволяющих уже чуть формальнее проверять: верна ли гипотеза? Значимы ли коэффициенты? И т.д. и т.п. Однако все эти формальности абсолютно ничего не скажут нам о массе альтернативных гипотез/моделей, которые эксперт не смог или не захотел проверить (или просто о них не знал). В самом лучшем случае можно лишь убедиться, что наша гипотеза пока что не противоречит имеющимся эмпирическим данным.
Конечно, во многих предметных областях уже есть такие готовые "шаблоны прищуренных глаз", то есть наработанные алгоритмы, которые часто позволяют приблизиться к полезному результату. Только вот новомодное слово SmartData ничего к ним имхо не добавляет. Так как концепции очистки и нормализации данных, сжатия и преобразования информации известны еще со времен ЦГ. Главная (и чаще всего единственная) цель всех этих подготовительных процедур - это обеспечить максимально комфортные условия для эксперта, который затем бросит на все это великолепие свой "прищуренный взгляд". Если чуть-чуть формальнее, это называется визуально-ориентированная среда анализа данных. Необходимость перехода к которой в нашей предметной области (геофизический мониторинг) мы осознали лет 40 назад, а спустя небольшое время и реализовали в своей программе. Которая с тех пор живет, развивается и успешно
применяется в своей области
несмотря на постепенно устаревающий интерфейс в стиле Norton Commander ;-)
Кому интересно чуть-чуть подробнее, вот описание заложенных в программу идей. А если у Вас поэтический склад ума, то оду визуально-ориентированному подходу к анализу данных можно найти в преамбуле к ее help-у (раздел 3.2).
Короче говоря: в вопросе:
"Каким должен быть data scientist
для работы со Smart Data?"вторая часть совершенно излишняя. Он должен быть точно таким же, как и "data scientist просто". Ибо никакие магические силы не превратят его бесчисленные таблицы в "Smart Data". Наоборот, с этого "превращения" (часто весьма трудо- и интеллектоемкого) как раз и начинается обычно любая работа с данными. И только если она сделана хорошо (и сами данные неплохие), то все остальное уже вполне может стать "делом техники".
Cordekk
14.11.2024 09:34Я то представил, что пособирали данные, обрабатывали всё, потом поняли какие данные представляют интерес и начали собирать только их, экономя ресурсы.
А тут просто цепочка обработки всех данныхCrazyElf
14.11.2024 09:34Так не делают. Потому что завтра появится новая задачка, для которой внезапно отброшенные ранее данные окажутся полезными. Или кто-то придумает метод, как эти данные приспособить для старых задач. И что - собирать данные заново? А если их вообще не сохранилось, на чём тренировать модели, на какой истории? Поэтому обычно собирают и хранят всё, что только могут. Потом когда-нибудь может пригодиться. Хранилища стоят дешевле, чем сбор и обработка данных.
Cordekk
14.11.2024 09:341) бигдата в основном это не про задачи. Если у вас есть задача, то это просто статистика. Анализ больших данных приводит к появлению новой информации и новых задач. И под эти задачи и можно и нужно модифицировать сбор данных.
А у вас вся та же бигдата.
ayteayoga
В статье концепция преобразования сырых данных в ценные подаётся как нечто новое, хотя это просто один из этапов ETL. Наука о данных и весь процесс задуман ради получения этих данных. Может, я не так понял понятие SmartData, но для меня это просто продукт ETL.
Т.е. мы собираем условные BigData и получаем ценные для бизнеса SmartData - так всегда и было, разве нет?