‹13›. Lewis, Michael. 2004.
‹14›. Дабнер Стивен, Левитт Стивен. Фрикономика. Экономист-хулиган и журналист-сорвиголова исследуют скрытые причины всего. — М.: Альпина Паблишер, 2019.
‹15›. Few, Stephen. 2012.
Глава 2. Что такое данные и что такое набор данных?
Как следует из названия, наука о данных фундаментально зависит от самих данных. По существу данные являются абстракцией реальной сущности (человека, объекта или события). Термины «
Набор данных состоит из данных, относящихся к совокупности объектов, причем каждый объект описан в терминах набора атрибутов. В своей наиболее простой форме[10] набор данных организован в виде матрицы размером
Построение аналитической записи — необходимое условие работы с данными. Фактически в большинстве проектов по обработке данных бо́льшая часть времени и усилий уходит на создание, очистку и обновление аналитической записи. Аналитическая запись часто создается путем объединения информации из множества различных источников: может потребоваться извлечение данных из нескольких баз, хранилищ или компьютерных файлов в разных форматах (например, в виде электронных таблиц и CSV-файлов) или скрапинг[11] в интернете или социальных сетях.
В таблице 1 перечислены четыре книги. Если не считать атрибут ID, который представляет собой простую метку строки и, следовательно, бесполезен для анализа, каждая книга описана с помощью шести атрибутов: название, автор, год, обложка, издание и цена. Мы могли бы включить их намного больше для каждой книги, но, как это обычно и бывает в подобных проектах, нам нужно ограничить набор данных. В нашем случае мы должны просто уместить атрибуты в размер страницы. Однако в большинстве проектов ограничения касаются того, какие атрибуты доступны, а также какие из них имеют отношение к проблеме, которую мы пытаемся решить в конкретной предметной области. Включение дополнительных атрибутов в набор данных никогда не обходится без затрат. Во-первых, вам потребуются дополнительные время и усилия для сбора и проверки качества данных в атрибутах для каждого объекта и их интеграции в аналитическую запись. Во-вторых, включение нерелевантных или избыточных атрибутов может отрицательно сказаться на производительности многих алгоритмов, используемых для анализа данных. Включение большого количества атрибутов в набор данных увеличивает вероятность того, что алгоритм найдет не относящиеся к делу или ложные закономерности, которые только кажутся статистически значимыми в рамках выборки объектов. С проблемой правильных атрибутов сталкиваются все проекты науки о данных, и иногда ее решение сводится к итеративному процессу проведения экспериментов методом проб и ошибок, где каждая итерация проверяет результаты, полученные с использованием различных подмножеств атрибутов.
Существуют разные типы атрибутов, и для каждого из них подходят разные виды анализа. Их понимание и распознавание является фундаментальным навыком для специалиста по данным. К стандартным типам относятся числовые (включая интервальные и относительные), номинальные и порядковые. Числовые атрибуты описывают измеримые величины, представленные целыми числами или действительными величинами. Числовые атрибуты могут быть измерены как по шкале интервалов, так и по шкале отношений. Интервальные атрибуты измеряются по шкале с фиксированными, но произвольными единицами измерений и произвольным началом отсчета. Примерами интервальных атрибутов могут быть измерения даты и времени. К ним применяют упорядочивание и вычитание. Умножение, деление и прочие операции в этом случае не подходят. Шкала отношений аналогична шкале интервалов с единственным отличием: ее нулевая точка — истинный нуль. Он указывает на то, что количество, которое могло бы быть измерено, отсутствует. Особенность шкалы отношений состоит в том, что мы можем описать любое значение как кратное другому значению. Температура — прекрасный пример для понимания разницы между шкалой интервалов и шкалой отношений{1}. По шкале Цельсия и по шкале Фаренгейта температура измеряется интервально, поскольку значение 0 на любой из этих шкал не указывает на отсутствие тепла. Таким образом, хотя мы и можем вычислить разницу между температурами на этих шкалах и сравнить различия, мы не можем сказать, что 20 °C — это в два раза теплее, чем 10 °C. В отличие от этого, измерение температуры в кельвинах ведется по шкале отношений, поскольку 0 K (абсолютный нуль) — это температура, при которой прекращается всякое тепловое движение. Другие распространенные примеры измерений по шкале отношений: количество денег, вес, рост и экзаменационные отметки (шкала 0–100). В таблице 1 атрибут года является примером атрибута шкалы интервалов, а атрибут цены — примером атрибута шкалы отношений.
Номинальные (также известные как категориальные) атрибуты принимают значения из ограниченного набора. Эти значения являются именами (поэтому они и называются номинальными) для категорий, классов или обстоятельств. Примеры номинальных атрибутов включают семейное положение (холост, женат, разведен) или тип пива (эль, светлый эль, пильзнер, портер, стаут и т. д.). Бинарный атрибут — это особый случай номинального атрибута, у которого набор возможных значений ограничен только двумя. Примером может служить бинарный атрибут «спам», который описывает, является электронная почта спамом (да) или не является (нет). К номинальным атрибутам не могут быть применены упорядочивание или арифметические операции. Обратите внимание, что номинальный атрибут может быть отсортирован в алфавитном порядке, но эта операция не тождественна упорядочиванию. В таблице 1 автор и название являются примерами номинальных атрибутов.
Порядковые атрибуты аналогичны номинальным, но с той разницей, что можно ранжировать значения переменных. Например, атрибут, описывающий ответ на вопрос анкетирования, может принимать значения из области определения: «очень не нравится», «не нравится», «нейтрально», «нравится» и «очень нравится». Существует естественное упорядочивание этих значений — от сильной неприязни к сильной симпатии (или, наоборот, в зависимости от условия). Тем не менее важной особенностью порядковых атрибутов является отсутствие понятия равного расстояния между этими значениями. Например, когнитивное расстояние между неприязнью и нейтральным отношением может быть отличным от расстояния между симпатией и сильной симпатией. В результате неуместно применять арифметические операции (такие, как усреднение) к порядковым атрибутам. В таблице 1 атрибут «издание» является примером порядкового атрибута. Граница между номинальными и порядковыми данными не всегда четкая. Для примера возьмем атрибут, который описывает погоду и может принимать значения «солнечно», «дождливо», «пасмурно». Один человек может сказать, что этот атрибут номинальный, значения которого не упорядочены, в то время как другой будет утверждать, что атрибут является порядковым, при этом рассматривая облачность как промежуточное значение между «солнечно» и «дождливо»{2}.
Тип атрибута (числовой, порядковый, номинальный) влияет на методы анализа и понимания данных. Эти методы включают в себя как основную статистику, которую мы можем использовать для описания распределения значений атрибута, так и более сложные алгоритмы, которые мы применяем для выявления закономерностей отношений между атрибутами. На базовом уровне анализа числовые атрибуты допускают арифметические операции, а типичный статистический анализ, применяемый к числовым атрибутам, заключается в измерении центральной тенденции (с использованием среднего значения атрибута) и разброса значений атрибутов (с использованием дисперсии или стандартного отклонения). Однако не имеет смысла применять арифметические операции к номинальным или порядковым атрибутам. Базовый анализ этих типов атрибутов включает в себя подсчет того, сколько раз значение встречается в наборе данных, и/или вычисление процента вхождения этого значения.
Данные генерируются в процессе абстракции, поэтому они всегда являются результатом принятых человеком решений и сделанного им выбора. В основе каждой абстракции конкретный человек или группа людей решают, от чего абстрагироваться и какие категории или измерения использовать в полученном отображении. Поэтому данные никогда не являются объективным описанием мира. Данные всегда частичны и предвзяты. Как заметил Альфред Коржибски: «Карта не является отображаемой ею территорией, но если она верная, то имеет структуру, подобную территории, которая содержит информацию о ее полезности{3}».
Другими словами, данные не являются идеальным отображением сущностей и процессов реального мира, которые мы пытаемся постичь, но если быть аккуратным при моделировании и сборе данных, то результаты анализа могут дать полезную информацию для решения наших реальных проблем. Сюжет фильма «Человек, который изменил все» (Moneyball), о котором упоминалось в главе 1, служит примером того, что определяющим фактором успеха во многих проектах науки о данных являются абстракции (атрибуты), подходящие для использования в данной конкретной области. Напомним, что ключом в этой истории было осознание клубом «Окленд Атлетикс» того, что процентное соотношение попадания игрока на базу и упущенных возможностей является более информативным показателем его успешности, чем традиционно принятые в бейсболе статистические данные, такие как средний уровень достижений. Использование различных атрибутов для описания игроков дало «Окленд Атлетикс» лучшую, нежели у других команд, модель, которая позволила им выявлять недооцененных игроков и конкурировать с крупными клубами при меньшем бюджете.
Эта история иллюстрирует применимость старой поговорки «Что посеешь — то и пожнешь» к науке о данных: если входные данные вычислительного процесса неверны, то выходные данные также будут неправильны. Действительно, наука о данных имеет две особенности, которые всегда необходимо учитывать: а) для успешности проектов необходимо уделять много внимания созданию самих данных (как с точки зрения выбора, который мы делаем при моделировании абстракции, так и с точки зрения качества данных, полученных в процессе) и б) необходимо проверять результаты процесса, хотя бы потому, что выявленная компьютером закономерность может оказаться основанной на отклонениях модели и увести нас в сторону от реального понимания анализируемых процессов.
Перспективы данных
Помимо типов (числовые, номинальные и порядковые), существуют и другие полезные способы классификации данных. Один из них различает
Иногда атрибутами являются
Существует два основных типа
Одним из наиболее распространенных типов выхлопных данных являются
«Участник А общался с несколькими местными группами поддержки людей, страдающих неврологическими заболеваниями, специализированной аптекой, службой лечения редких состояний и горячей линией лекарственного средства, применяемого исключительно для лечения рассеянного склероза… В течение трех недель участник B связывался с магазином товаров для ремонта, слесарем, продавцом оборудования для гидропоники и торговцем марихуаной{7}».
Традиционно наука о данных была сосредоточена на получении собранных данных. Однако, как показывает исследование MetaPhone, выхлопные данные также могут быть использованы для выявления скрытого смысла. В последние годы выхлопные данные становятся все более и более полезными, особенно в области взаимодействия с клиентами, где связывание между собой различных наборов выхлопных данных может создать более широкий клиентский профиль, тем самым позволяя бизнесу точнее ориентировать свои услуги и маркетинг. Сегодня одним из факторов, стимулирующих развитие науки о данных, является признание современным бизнесом ценности выхлопных данных и их потенциала.
Данные накапливаются, мудрость — нет!
Цель науки о данных — использовать их, чтобы получить прозрение и понимание. Библия призывает нас к пониманию через мудрость: «Главное — мудрость: приобретай мудрость, и всем имением твоим приобретай разум» (Притч. 4:7). Этот совет разумен, но он ставит вопрос о том, как именно нужно искать мудрости. Следующие строки из стихотворения Т. С. Элиота «Камень» описывают иерархию мудрости, знаний и информации:
Иерархия Элиота отражает стандартную модель структурных отношений между мудростью, знаниями, информацией и данными, известную как пирамида DIKW (см. рис. 2). В пирамиде DIKW данные предшествуют информации, которая предшествует знаниям, которые, в свою очередь, предшествуют мудрости. Хотя порядок уровней в иерархии, как правило, не вызывает споров, различия между этими уровнями и процессы, необходимые для перехода от одного к другому, часто оспариваются. Но если посмотреть в широком смысле, то можно утверждать следующее:
• данные создаются с помощью абстракции или измерения мира;
• информация — это данные, которые были обработаны, структурированы или встроены в контекст таким образом, что стали значимы для людей;
• знание — это информация, которая была истолкована и понята таким образом, что появилась возможность действовать в соответствии с ней по необходимости;
• мудрость — это умение найти надлежащее применение знанию.
Последовательные операции в процессе обработки данных могут быть представлены аналогичной пирамидальной иерархией, где ширина пирамиды отображает объем данных, обрабатываемых на каждом уровне, и чем выше уровень, тем результаты действий более информативны для принятия решения. Рис. 3 иллюстрирует иерархию операций науки о данных, начиная с их сбора и генерации посредством предварительной обработки и агрегирования и заканчивая пониманием результатов, обнаружением закономерностей и созданием моделей с использованием машинного обучения для принятия решений в бизнес-контексте.
Процесс CRISP-DM
В научной среде регулярно выдвигаются новые идеи о том, каким способом лучше всего взбираться на вершину пирамиды науки о данных. Наиболее часто используется межотраслевой стандартный процесс исследования данных CRISP-DM. Этот процесс в течение целого ряда лет занимает первые места всевозможных отраслевых опросов. Одно из преимуществ CRISP-DM и причина, по которой он так широко используется, заключается в том, что процесс спроектирован как независимый от программного обеспечения, поставщика или метода анализа данных.
CRISP-DM разрабатывался консорциумом организаций, в который входили ведущие поставщики данных, конечные пользователи, консалтинговые компании и исследователи. Первоначальный проект CRISP-DM был частично спонсирован Европейской комиссией в рамках программы ESPRIT и представлен на семинаре в 1999 г. С тех пор было предпринято несколько попыток обновить процесс, но оригинальная версия все еще остается наиболее востребованной. В течение многих лет существовал отдельный сайт CRISP-DM, но сейчас он закрыт, и в большинстве случаев вы будете перенаправлены на сайт SPSS компании IBM, которая участвовала в проекте с самого начала. Консорциум участников опубликовал детальную (76 страниц), но вполне понятную пошаговую инструкцию для процесса, которая находится в свободном доступе в интернете{9}. Далее мы кратко изложим основную структуру и задачи процесса.
Жизненный цикл CRISP-DM состоит из шести этапов —
На первых двух этапах — понимания бизнес-целей и начального изучения данных — специалист пытается сформулировать цели проекта с точки зрения бизнеса и знакомится с данными, которые тот имеет в своем распоряжении. На ранних стадиях проекта придется часто переключаться между фокусировкой на бизнесе и изучением доступных данных. Это связано с тем, что специалист по данным должен идентифицировать бизнес-проблему, а затем понять, доступны ли соответствующие данные для поиска ее решения. Если они доступны, то проект может продолжаться, в противном случае специалисту придется искать альтернативную проблему. В течение этого периода специалист по данным плотно работает с коллегами из бизнес-отделов организации (продаж, маркетинга, операций), пытаясь вникнуть в их проблемы, а также с администраторами баз данных, чтобы изучить доступный материал.
Как только бизнес-проблема была четко сформулирована, а специалист убедился в том, что соответствующие данные доступны, происходит переход к очередному этапу CRISP-DM — подготовке данных. Целью этого этапа является создание набора данных, который можно использовать для анализа. Обычно это подразумевает интеграцию источников из нескольких баз данных. Когда в организации существует хранилище данных, эта интеграция значительно упрощается. После создания набора данных необходимо проверить и исправить их качество. Типичные проблемы качества включают выбросы и пропущенные значения. Проверка качества крайне важна, поскольку ошибки в данных могут серьезно повлиять на производительность алгоритмов анализа.
Следующим этапом CRISP-DM является моделирование. На этой стадии используются автоматические алгоритмы для выявления полезных закономерностей в данных и создаются модели, которые кодируют эти закономерности. Алгоритмы для выявления закономерностей также называются алгоритмами машинного обучения. На этапе моделирования специалист по данным обычно использует несколько алгоритмов машинного обучения для подготовки разных моделей в каждом наборе данных. Необходимость в нескольких моделях вызвана тем, что разные типы алгоритмов машинного обучения ищут разные типы закономерностей в данных, и на этапе моделирования специалист, как правило, не знает, какие именно закономерности нужно искать. Таким образом, имеет смысл поэкспериментировать с различными алгоритмами и посмотреть, какой из них работает лучше всего.
В большинстве проектов тестовые результаты испытания моделей позволят выявить проблемы с данными. Иногда эти ошибки обнаруживаются, когда специалист выясняет, что производительность модели ниже ожидаемой или, наоборот, она подозрительно хороша. Бывает, что, изучая структуру моделей, специалист по данным неожиданно выясняет ее зависимость от каких-либо атрибутов и возвращается к данным, чтобы проверить, правильно ли они кодированы. В результате некоторые этапы в проекте повторяются: за моделированием следует подготовка данных, затем снова моделирование, снова подготовка данных и т. д. Например, Дэн Стейнберг и его команда сообщили, что в ходе одного своего проекта они перестраивали набор данных 10 раз в течение шести недель, причем на пятой неделе этого процесса после ряда итераций по очистке данных и подготовке в них была обнаружена существенная ошибка{10}. Если бы она не была выявлена и исправлена, проект не стал бы успешным.
На двух последних этапах (при оценке и внедрении) вы сосредотачиваетесь на том, каким образом модели будут приспособлены к бизнесу и его процессам. Тесты, выполняемые на этапе моделирования, ориентированы исключительно на точность модели в наборе данных. Этап оценки включает оценку моделей в более широком контексте, определяемом потребностями бизнеса. Соответствует ли модель целям процесса? Адекватна ли она с точки зрения бизнеса? На этом этапе специалист по данным должен провести анализ для обеспечения качества проекта: не было ли что-то упущено, можно ли было сделать лучше и т. д. На основании общей оценки моделей принимается основное решение этого этапа — можно ли внедрять какую-то из них в бизнес или требуется еще одна итерация процесса CRISP-DM для создания моделей более адекватных. Если модели одобрены, проект переходит к финальной стадии процесса — внедрению. На этапе внедрения изучается то, каким образом можно развернуть выбранные модели в бизнес-среде, как интегрировать их в техническую инфраструктуру и бизнес-процессы организации. Лучшие из моделей — те, которые плавно вписываются в существующую практику. Такие модели ориентированы на конкретных пользователей, столкнувшихся с четко обозначенной проблемой, которую эта модель и призвана решить. Кроме того, на этапе внедрения создается план периодической проверки эффективности модели.
Внешняя окружность диаграммы CRISP-DM подчеркивает тот факт, что весь процесс имеет итеративный характер. При обсуждении проектов науки о данных об их итеративности часто забывают. После разработки и внедрения модель должна регулярно пересматриваться, чтобы удовлетворять задачам бизнеса и оставаться актуальной. Существует масса причин, по которым модель может устареть: изменяются потребности бизнеса, процессы, которые модель имитирует или поясняет (например, поведение клиентов, типы спама и т. д.), или потоки данных, используемые моделью (скажем, новый датчик дает несколько другие показатели, что снижает точность модели). Частота пересмотра зависит от того, как быстро развиваются экосистема бизнеса и данные, используемые моделью. Постоянный мониторинг необходим, чтобы определить наилучшее время для повторного запуска процесса. Это как раз то, что представляет собой внешний круг CRISP-DM. Например, в зависимости от данных, поставленной задачи и сферы деятельности вы можете проходить этот итеративный процесс еженедельно, ежемесячно, ежеквартально, ежегодно или даже ежедневно. На рис. 5 приведена сводная информация об этапах процесса и основных задачах, связанных с ними.
Неопытные специалисты по данным часто допускают ошибку: сосредотачивая усилия на этапе моделирования CRISP-DM, они чересчур поспешно проходят другие этапы. Их логика заключается в том, что наиболее важным результатом проекта должна стать модель, поэтому бо́льшую часть своего времени необходимо посвятить именно ее разработке. Однако маститые специалисты по данным тратят больше времени на то, чтобы задать проекту четкий вектор и обеспечить его правильными данными. Успех в науке о данных достигается ясностью бизнес-задач для специалиста, ведущего проект. Поэтому этап понимания бизнес-целей крайне важен. Что касается получения правильных данных для проекта, то опрос специалистов, проведенный в 2016 г., показал, что 79 % своего времени они уделяют именно подготовке данных{11}. Тот же опрос выявил, что распределение времени между основными задачами в проектах выглядит следующим образом:
• сбор данных — 19 %;
• очистка и организация данных — 60 %;
• построение обучающих моделей — 3 %;
• анализ данных для выявления закономерностей — 9 %;
• уточнение алгоритмов — 4 %;
• другие задачи — 5 %.
Показатель 79 % для подготовки суммирует время, затраченное на сбор, очистку и организацию данных. Этот показатель — около 80 % времени проекта — присутствует в разных отраслевых опросах уже в течение ряда лет. Такой вывод может удивить, поскольку принято считать, что специалист по данным тратит свое время на создание сложных моделей, помогающих получить новые знания. Но простая истина состоит в том, что, как бы ни был хорош ваш анализ, он не найдет полезных закономерностей в неправильных данных.
Источники
‹1›. Han, Jiawei, Micheline Kamber, and Jian Pei. 2011. Data Mining: Concepts and Techniques, Third Edition. Haryana, India; Burlington, MA: Morgan Kaufmann.
‹2›. Hall, Mark, Ian Witten, and Eibe Frank. 2011.
‹3›. Korzybski, Alfred. 1996. «On Structure.» In
‹4›. Kitchin, Rob. 2014.
‹5›. Pomerantz, Jeffrey. 2015.
‹6›. Mayer, Jonathan, and Patrick Mutchler. 2014. «MetaPhone: The Sensitivity of Telephone Metadata.»
‹7›. Mayer, Jonathan, and Patrick Mutchler. 2014. «MetaPhone: The Sensitivity of Telephone Metadata.»
‹8›.
‹9›. Chapman, Pete, Julian Clinton, Randy Kerber, Thomas Khabaza, Thomas Reinartz, Colin Shearer, and Rudiger Wirth. 1999. «CRISP-DM 1.0: Step-by-Step Data Mining Guide.» ftp://ftp.software.ibm.com/software/analytics/spss/support/Modeler/Documentation/14/UserManual/CRISP-DM.pdf.
‹10›. Steinberg, Dan. 2013. «How Much Time Needs to Be Spent Preparing Data for Analysis?» http://info.salford-systems.com/blog/bid/299181/How-Much-Time-Needs-to-be-SpentPreparing-Data-for-Analysis.
‹11›. CrowdFlower. 2016. «Отчет о науке данных за 2016 год». http://visit.crowdflower.com/rs/416-ZBE142/images/CrowdFlower_DataScienceReport_2016.pdf.
Глава 3. Экосистема науки о данных
Набор технологий, используемых для обработки данных, варьируется в зависимости от организации. Чем больше организация и/или объем обрабатываемых данных, тем сложнее технологическая экосистема науки о данных. Обычно эта экосистема содержит инструменты и узлы от нескольких поставщиков программного обеспечения, которые обрабатывают данные в разных форматах. Существует ряд подходов, которые организация может использовать для разработки собственной экосистемы науки о данных. На одном конце этого ряда организация принимает решение инвестировать в готовую систему интегрированных инструментов. На другом — самостоятельно создавать экосистему путем интеграции инструментов и языков с открытым исходным кодом. Между этими двумя крайностями есть несколько поставщиков программного обеспечения, которые предоставляют решения, являющие собой смесь коммерческих продуктов и продуктов с открытым исходным кодом. Однако, хотя конкретный набор инструментов в каждой организации будет свой, наука о данных предусматривает общие компоненты для большинства архитектур.
Рис. 6 дает обзор типичной архитектуры данных. Эта архитектура предназначена не только для больших данных, но и для данных любого размера. Диаграмма состоит из трех основных частей: уровня источников данных, на котором генерируются все данные в организации; уровня хранения данных, на котором данные хранятся и обрабатываются, и уровня приложений, на котором данные передаются потребителям этих данных и информации, а также различным приложениям.
У каждой организации есть приложения, которые генерируют и собирают данные о клиентах, транзакциях и обо всем, что связано с работой организации (операционные данные). Это источники и приложения следующих типов: управление клиентами, заказы, производство, доставка, выставление счетов, банкинг, финансы, управление взаимодействием с клиентами (CRM), кол-центр, ERP и т. д. Приложения такого типа обычно называют системами обработки транзакций в реальном времени, или OLTP. Во многих проектах науки о данных именно эти приложения используются как источник входного набора данных для алгоритмов машинного обучения. Со временем объем данных, собираемых различными приложениями по всей организации, становится все больше и начинает включать данные, которые ранее были проигнорированы, недоступны или не были собраны по иным причинам. Эти новые источники, как правило, относятся уже к большим данным, поскольку их объем значительно выше, чем объем данных основных операционных приложений организации. Распространенные источники — это сетевой трафик, регистрационные данные различных приложений, данные датчиков, веб-журналов, социальных сетей, веб-сайтов и т. д. В традиционных источниках данные обычно хранятся в базе. Новые источники больших данных часто не предназначены для длительного их хранения, как в случае с потоковыми данными, поэтому форматы и структуры хранения будут варьироваться от приложения к приложению.
По мере увеличения количества источников возрастает проблема использования данных в аналитике и обмена ими между удаленными частями организации. Из истории (см. главу 1) нам известно, что хранение данных стало ключевым компонентом аналитики. В хранилище данные, поступающие со всей организации, интегрируются и становятся доступными для приложений (OLAP) и дальнейшего анализа.
Слой хранения данных, представленный на рис. 6, предназначен для обмена данными и их анализа. При этом он разделен на две части. Первая охватывает программное обеспечение для обмена данными, используемое большинством организаций. Наиболее популярным типом традиционного ПО для интеграции и хранения данных остаются реляционные базы данных (RDBMS). Это ПО часто служит основой для систем бизнес-аналитики (BI) в организациях. BI-системы призваны облегчить процесс принятия решений для бизнеса. Они предоставляют функции агрегирования, интеграции, отчетности и анализа. В основе BI-систем лежат базы данных, которые содержат интегрированные, очищенные, стандартизированные и структурированные данные, поступающие из различных источников. В зависимости от уровня зрелости архитектура BI-систем может состоять из очень разных компонентов — от базовой копии рабочего приложения и оперативного склада данных (ODS) до массивно-параллельных (MPP) решений баз данных BI и хранилищ данных. Аналитику, сгенерированную BI-системой, можно использовать в качестве входных данных для ряда потребителей на уровне приложений (рис. 6).
Вторая часть слоя хранения данных занимается управлением большими данными организации. Архитектура для их хранения и анализа включает платформу с открытым исходным кодом Hadoop, разработанную Apache Software Foundation для обработки больших данных. Эта платформа осуществляет распределенное хранение и обработку данных прямо в кластерах стандартных серверов. Для ускорения обработки запросов в наборах больших данных используется модель программирования MapReduce, которая реализует стратегию
Анализ данных затрагивает и ту и другую части слоя хранения, представленного на рис. 6. Он может выполняться как на основе данных, взятых непосредственно из BI-систем или Hadoop, так и на результатах их анализа, повторенного множество раз. Часто данные из традиционных источников бывают заметно чище и плотнее полученных из источников больших данных. Тем не менее гигантский объем и режим реального времени, свойственные большим данным, означают, что усилия, приложенные для подготовки и анализа их источников, могут окупиться с точки зрения важной информации, недоступной из традиционных источников. Разнообразные методы анализа данных для тех или иных областей исследования (включая обработку естественного языка, компьютерное зрение и машинное обучение), используются для преобразования неструктурированных больших данных низкой плотности в ценные данные высокой плотности. Такие данные уже могут быть интегрированы с другими ценными данными из традиционных источников для дальнейшего анализа. Описанная структура, проиллюстрированная на рис. 3.1, представляет собой типичную архитектуру экосистемы науки о данных. Она подойдет для большинства организаций независимо от размера, однако по мере масштабирования организации увеличивается и сложность экосистемы науки о данных. Например, для небольших организаций может и не требоваться компонент Hadoop, но для крупных он становится незаменим.
Перемещение алгоритмов в данные
Традиционный подход к анализу данных включает их извлечение из различных баз, интеграцию, очистку, размещение, построение прогнозной модели, а затем загрузку окончательных результатов анализа в базу данных, чтобы их можно было использовать как часть рабочего процесса, отображать в виде отчетности и т. д. На рис. 7 показано, что большая часть процесса обработки данных, включающего их подготовку и анализ, протекает на отдельном сервере, вне баз и хранилища. При этом значительное количество времени может быть затрачено только на перемещение данных из базы и загрузку в нее результатов.
Для примера: в эксперименте по построению модели линейной регрессии около 70–80 % времени ушло на извлечение и подготовку данных. На создание моделей было потрачено лишь оставшееся время. В процессе скоринга данных примерно 90 % времени было затрачено на их извлечение и сохранение готового набора обратно в базу. Только 10 % времени пришлось на сам скоринг. Эти результаты основаны на наборах данных от 50 000 до 1,5 млн записей. Большинство поставщиков корпоративных баз данных уже осознали, сколько времени экономится, если отказаться от их перемещения, и отреагировали на это включением функции анализа и алгоритмов машинного обучения непосредственно в механизмы базы данных. В последующих разделах мы рассмотрим, каким образом алгоритмы машинного обучения были интегрированы в современные базы данных, как хранятся большие данные в Hadoop и как комбинации этих двух подходов позволяют легко работать со всеми данными в организации, используя SQL как общий язык доступа, анализа, машинного обучения и прогнозной аналитики в режиме реального времени.