Big data
Содержание:
- 3 этапа работы с информацией
- Аналитик проекта
- Machine Learning. Курс от Яндекса для тех, кто хочет провести новогодние каникулы с пользой
- Кто использует большие данные
- Карта пешеходных маршрутов
- Как я научила свой компьютер играть в Доббль с помощью OpenCV и Deep Learning
- MapReduce
- Как собирают Big Data
- Некоторые сложности применения Big Data
- Как работает технология Big-Data?
- Как работают с большими данными
3 этапа работы с информацией
Немалый объём полезной информации, содержащийся в больших данных, позволяет компаниям на их основе созидать модели ведения бизнеса и открывать невиданные ранее возможности. При работе с большими данными выделяются три этапа: интеграция, управление и финальный анализ.
1 этап. Внедрение
Компания интегрирует в свою работу технологии и системы, позволяющие собирать большие объемы информации из разных источников. Внедряются механизмы обработки и форматирования данных для упрощения работы аналитиков с Big Data.
2 этап. Управление
Еще до того, как приступить к работе с данными, нужно определить места хранения полученной информации. При решении этого вопроса полагаются на ряд критериев, возглавляемый предпочтениями по формату и технологиям обработки данных. Обычно информация компаний хранится в локальных хранилищах либо в облачных сервисах публичного или частного порядка.
3 этап. Оценка
Полезный эффект от больших данных начинает ощущаться после анализа. Это финальный шаг в процессе взаимодействия с ними. Здесь применяются такие технологии, как машинное обучение, генетические алгоритмы, ассоциация правил обучения.
Аналитик проекта
Одна из важнейших составляющих в проекте больших данных – аналитика. От работы аналитиков зависит конечный результат. Можно собрать идеальные громадные массивы красиво структурированных данных и поместить их на великолепный суперсервер, но, если аналитик ничего не скажет полезного для бизнеса после того, как замучает хранилище запросами, – проект провалится. Аналитик в какой-то степени защищен от неудачи, если изначально разработана качественная модель потоков больших данных с выходными параметрами и показателями. Но от уровня профессионализма аналитика зависит очень многое, особенно – когда на строгий суд заказчика понадобится представить хоть что-нибудь впечатляющее и объяснить, куда потрачены дефицитные финансовые ресурсы.
По теме: Что такое демонстрация проекта и зачем она вам нужна?
Аналитики проекта больших данных должны обладать профессиональными знаниями и умениями в области сбора и обработки данных, в области анализа экономических, финансовых, статистических и производственных данных. Фактически вся ключевая смысловая работа с данными ложиться на аналитиков проекта.
Выделим несколько специализаций:
- Аналитик бизнес-модели. Зона ответственности: понимание бизнес-модели, анализ бизнес-модели на основе традиционных и больших данных, формулировка и обоснование изменений в бизнес-модель, подготовка решений по бизнес-модели, увязка бизнес-модели и больших данных, требования к данным;
- Аналитик структур данных. Зона ответственности: понимание структур данных и их связь с элементами бизнес-модели, контроль и корректировка смысловой целостности данных и метаданных, изменение структур и классификации данных, контроль качества данных, сервис данных;
- Аналитик рисков. Зона ответственности: оценка потенциальных угроз данным и контроль информационных рисков, контроль достоверности данных и их источников, контроль рисков принятия решений на основе больших данных, вероятностная оценка прогнозных моделей.
Аналитик – это уникальный специалист для каждого конкретного бизнеса. Он обладает исключительными компетенциями для понимания бизнес-модели. Уровень информации, к которой он имеет доступ – это фактически уровень топ-менеджмента соответствующего направления. По доступу к информации, осведомленности и пониманию особенностей бизнеса он ближе к руководству, чем к экспертной категории сотрудников. А иногда аналитик объективней и реалистичней, чем само руководство. От результатов его работы зависит общее понимание экономической, финансовой, производственной, маркетинговой ситуации, в которой оказался бизнес сегодня. Аналитик знает, что к этому привело и как бизнес поведет себя в будущем.
Опыт работы профессионального аналитика весьма ценен для любого бизнеса. Он уникален так же, как уникальна каждая отстроенная бизнес-модель.
Не следует путать аналитика со статистиком или математиком. Он обычно понимает и умеет формулировать математические модели определенного класса, умеет применять статистические инструменты для обработки данных. В большей же степени он должен разбираться в том, как данные увязаны с бизнес-процессами и бизнес-объектами. Аналитику необходимо уметь разбираться в том, что означают собранные и обработанные данные с точки зрения экономических, производственных и рыночных процессов. Математические исследования и статистические доказательства – это не зона ответственности аналитика, это его инструментарий.
Аналитик – это и эксперт, и исследователь, и исполнитель, и дизайнер данных. Но аналитик не в состоянии заменить, например, «классного» менеджера по продажам. Это значит, что никакой глубокий, традиционный или большой анализ данных не наладит производственный или логистический процесс, не улучшит привлекательность и качество продукта, не гарантирует устойчивое финансовое положение
Аналитика лишь в состоянии показать, что идет не так в бизнесе, что заменить в бизнес-модели, на что обратить внимание
Machine Learning. Курс от Яндекса для тех, кто хочет провести новогодние каникулы с пользой
Tutorial
Новогодние каникулы – хорошее время не только для отдыха, но и для самообразования. Можно отвлечься от повседневных задач и посвятить несколько дней тому, чтобы научиться чему-нибудь новому, что будет помогать вам весь год (а может и не один)
Поэтому мы решили в эти выходные опубликовать серию постов с лекциями курсов первого семестра Школы анализа данных.
Сегодня — о самом важном. Современный анализ данных без него представить невозможно
В рамках курса рассматриваются основные задачи обучения по прецедентам: классификация, кластеризация, регрессия, понижение размерности. Изучаются методы их решения, как классические, так и новые, созданные за последние 10–15 лет. Упор делается на глубокое понимание математических основ, взаимосвязей, достоинств и ограничений рассматриваемых методов. Отдельные теоремы приводятся с доказательствами.
Читает курс лекций Константин Вячеславович Воронцов, старший научный сотрудник Вычислительного центра РАН. Заместитель директора по науке ЗАО «Форексис». Заместитель заведующего кафедрой «Интеллектуальные системы» ФУПМ МФТИ. Доцент кафедры «Математические методы прогнозирования» ВМиК МГУ. Эксперт компании «Яндекс». Доктор физико-математических наук.
Кто использует большие данные
Наибольший прогресс отрасли наблюдается в США и Европе. Вот крупнейшие иностранные компании и ведомства, которые используют Big Data:
• HSBC повышает безопасность клиентов пластиковых карт. Компания утверждает, что в 10 раз улучшила распознавание мошеннических операций и в 3 раза – защиту от мошенничества в целом.
• Суперкомпьютер Watson, разработанный IBM, анализирует финансовые транзакции в режиме реального времени. Это позволяет сократить частоту ложных срабатываний системы безопасности на 50% и выявить на 15% больше мошеннических действий.
• Procter&Gamble проводит с использованием Big Data маркетинговые исследования, более точно прогнозируя желания клиентов и спрос новых продуктов.
• Министерство труда Германии добивается целевого расхода средств, анализируя большие данные при обработке заявок на пособия. Это помогает направить деньги тем, кто действительно в них нуждается (оказалось, что 20% пособий выплачивались нецелесообразно). Министерство утверждает, что инструменты Big Data сокращают затраты на €10 млрд.
Среди российских компаний стоит отметить следующие:
• Яндекс. Это корпорация, которая управляет одним из самых популярных поисковиков и делает цифровые продукты едва ли не для каждой сферы жизни. Для Яндекс Big Data – не инновация, а обязанность, продиктованная собственными нуждами. В компании работают алгоритмы таргетинга рекламы, прогноза пробок, оптимизации поисковой выдачи, музыкальных рекомендаций, фильтрации спама.
• Мегафон
Телекоммуникационный гигант обратил внимание на большие данные примерно пять лет назад. Работа над геоаналитикой привела к созданию готовых решений анализа пассажироперевозок
В этой области у Мегафон есть сотрудничество с РЖД.
• Билайн. Этот мобильный оператор анализирует массивы информации для борьбы со спамом и мошенничеством, оптимизации линейки продуктов, прогнозирования проблем у клиентов. Известно, что корпорация сотрудничает с банками – оператор помогает анонимно оценивать кредитоспособность абонентов.
• Сбербанк. В крупнейшем банке России супермассивы анализируются для оптимизации затрат, грамотного управления рисками, борьбы с мошенничеством, а также расчёта премий и бонусов для сотрудников. Похожие задачи с помощью Big Data решают конкуренты: Альфа-банк, ВТБ24, Тинькофф-банк, Газпромбанк.
И за границей, и в России организации в основном пользуются сторонними разработками, а не создают инструменты для Big Data сами. В этой сфере популярны технологии Oracle, Teradata, SAS, Impala, Apache, Zettaset, IBM, Vowpal.
Читайте: Что такое интернет вещей, как он работает и чем полезен
Карта пешеходных маршрутов
Магазин типа «Пятёрочки» надо открывать там, где ходят люди. Никто специально не поедет в соседний район ради продуктового магазина, поэтому для начала нужно ответить на такие вопросы:
Где в этом районе ходят люди?
По каким маршрутам?
Сколько их в разное время?
А где точно не ходят?
Чтобы это узнать, можно воспользоваться биг-датой: собрать её или заполучить. Примеры:
У сотового оператора. Можно получить информацию о геопозиции устройств и их примерном перемещении у оператора сотовой связи. Это обезличенные данные без привязки к фамилии или номеру: только информация о пути передвижения устройств в конкретном районе. Это дорого, но эффективно.
Данные собираются с сотовых базовых станций — это устройства, к которым подключаются ваши телефоны, чтобы быть на связи. В городах базовые станции стоят довольно плотно, и по уровню сигнала с них можно довольно точно определить положение всех ближайших абонентов.
Поставить Wi-Fi- и Bluetooth-точки в разных местах нужного района. Они соберут информацию о проходящих мимо людях через их же телефоны. Принцип такой: точка сканирует пространство и ищет мобильники с включённым вайфаем. Как только нашла — начинает его отслеживать до тех пор, пока человек не выйдет из зоны действия. При достаточном количестве таких точек можно получить довольно неплохую карту перемещений.
Поставить камеры с распознаванием лиц. Тут всё относительно просто — располагаем камеры в автомобилях или на зданиях, запоминаем лицо каждого проходящего и путь, по которому он прошёл. Потом накладываем это на карту местности и получаем пешеходные маршруты. Распознавание лиц уже настолько распространённая технология, что это может сделать кто угодно.
После того как мы получили карту перемещений, её нужно проанализировать и найти те точки, где получается максимальная проходимость. В идеале — найти такие места, где пешеходный поток не заходит в магазины конкурентов или где их вообще нет. Для этого просто собираем статистические данные, совмещаем их с картами и используем аналитические приёмы, чтобы сделать выводы.
Как я научила свой компьютер играть в Доббль с помощью OpenCV и Deep Learning
Перевод
Мое хобби – играть в настольные игры, и поскольку я немного знакома со сверточными нейронными сетями, я решила создать приложение, которое может выиграть у человека в карточной игре. Я хотела с нуля построить модель с помощью своего собственного датасета и посмотреть, насколько хорошо она будет работать с небольшим датасетом. Начать я решила с несложной игры Доббль (также известной как Spot it!).
Если вы не знаете, что такое Доббль, я напомню вкратце правила игры: Доббль — это простая игра на распознавание образов, в которой игроки пытаются найти картинку, изображенную одновременно на двух карточках. Каждая карточка в оригинальной игре Доббль содержит восемь различных символов, при этом на разных карточках они разного размера. У любых двух карточек всего один общий символ. Если вы найдете символ первым, то заберете себе карточку. Когда колода из 55 карточек закончится, выиграет тот, у кого больше всех карточек.Попробуйте сами: Какой символ общий для этих двух карточек?
MapReduce
MapReduce предполагает, что данные организованы в виде некоторых записей. Обработка данных происходит в 3 стадии:
1. Стадия Map. На этой стадии данные предобрабатываются при помощи функции map(), которую определяет пользователь. Работа этой стадии заключается в предобработке и фильтрации данных. Работа очень похожа на операцию map в функциональных языках программирования – пользовательская функция применяется к каждой входной записи. Функция map() примененная к одной входной записи и выдаёт множество пар ключ-значение. Множество – т.е. может выдать только одну запись, может не выдать ничего, а может выдать несколько пар ключ-значение. Что будет находится в ключе и в значении – решать пользователю, но ключ – очень важная вещь, так как данные с одним ключом в будущем попадут в один экземпляр функции reduce.
2. Стадия Shuffle. Проходит незаметно для пользователя. В этой стадии вывод функции map «разбирается по корзинам» – каждая корзина соответствует одному ключу вывода стадии map. В дальнейшем эти корзины послужат входом для reduce.
3. Стадия Reduce. Каждая «корзина» со значениями, сформированная на стадии shuffle, попадает на вход функции reduce(). Функция reduce задаётся пользователем и вычисляет финальный результат для отдельной «корзины». Множество всех значений, возвращённых функцией reduce(), является финальным результатом MapReduce-задачи.
Несколько дополнительных фактов про MapReduce:
1) Все запуски функции map работают независимо и могут работать параллельно, в том числе на разных машинах кластера.
2) Все запуски функции reduce работают независимо и могут работать параллельно, в том числе на разных машинах кластера.
3) Shuffle внутри себя представляет параллельную сортировку, поэтому также может работать на разных машинах кластера. Пункты 1-3 позволяют выполнить принцип горизонтальной масштабируемости.
4) Функция map, как правило, применяется на той же машине, на которой хранятся данные – это позволяет снизить передачу данных по сети (принцип локальности данных).
5) MapReduce – это всегда полное сканирование данных, никаких индексов нет. Это означает, что MapReduce плохо применим, когда ответ требуется очень быстро.
Как собирают Big Data
Источниками могут быть:
- интернет — от соцсетей и СМИ до интернета вещей (IoT);
- корпоративные данные: логи, транзакции, архивы;
- другие устройства, которые собирают информацию, например, «умные колонки».
Сбор. Технологии и сам процесс сбора данных называют дата майнингом (data mining).
Сервисы, с помощью которых проводят сбор — это, например, Vertica, Tableau, Power BI, Qlik. Собранные данные могут быть в разных форматах: текст, Excel-таблицы, SAS.
В процессе сбора система находит Петабайты информации, которая после будет обработана методами интеллектуального анализа, который выявляет закономерности. К ним относят нейронные сети, алгоритмы кластеризации, алгоритмы обнаружения ассоциативных связей между событиями, деревья решений, и некоторые методы machine learning.
Кратко процесс сбора и обработки информации выглядит так:
- аналитическая программа получает задачу;
- система собирает нужную информацию, одновременно подготавливая её: удаляет нерелевантную, очищает от мусора, декодирует;
- выбирается модель или алгоритм для анализа;
- программа учится алгоритму и анализирует найденные закономерности.
Некоторые сложности применения Big Data
Вопросы при использовании Big Data обозначаются следующими группами: объем, скорость обработки и отсутствие структурированности. Тройное V: Volume, Velocity и Variety.
Для того чтобы хранить значимые объемы информации, должны быть соблюдены специальные условия, это вопрос пространства и возможностей. На скорость влияют не только устаревшие методы обработки — этот показатель, помимо прочего, находится под влиянием такого фактора, как интерактивность. Отдача и продуктивность результатов будут выше в случае более быстрого процесса.
Вопросы по разнородности и отсутствию структурированности появляются вследствие несогласованности источников, разных уровней качества и форматов. Объединение и эффективная обработка данных возможны благодаря доведению их до пригодного вида и применению особых инструментов аналитического характера.
Кроме того, имеет место проблема верхней границы величины данных. Ее сложно определить и так же непросто спрогнозировать, какие технологии будут необходимы для следующих разработок и как дорого это будет стоить. Но для определенного объема данных, такого как терабайт, уже применимы работающие и активно развивающиеся средства обработки.
Следующая трудность связана с тем, что не существует четких принципов в работе с большими количествами данных. Осложняет вопрос ещё и отсутствие однородности в потоках. Возникает вопрос, какой же подход следует избрать к их применимости, чтобы в итоге получить какую-то ценность. Именно поэтому необходимо разрабатывать новую методологию для анализа больших данных — чтобы этот поток стал проводником полезной информации. Как утверждают в американской университетской среде (учебные заведения Нью-Йорка, Вашингтона и Калифорнии), вероятно, сейчас самый подходящий момент для введения и развития такого предмета, как наука о Big Data.
Надо отметить, что это и служит основной причиной отдаления во времени момента введения в компаниях проектов больших данных (если опустить такой момент, как высокая стоимость).
Трудности также может вызвать процесс подбора данных для обрабатывания и сам алгоритм анализа, потому как нет понимания, что именно из данных подлежит сбору и хранению, а какую их часть можно во внимание не брать. Особую роль сейчас играет обучение Big Data
На поверхность выходит ещё одна проблема отрасли — недостаток специалистов, которые справились бы с глубинным анализом, смогли бы профессионально создать отчеты, направленные на решение задач бизнеса и, как следствие, получение прибыли. Все более популярным становится запрос «Big Data курсы».
Следующий проблемный вопрос касается этической стороны. Неясно, как разграничить процесс сбора данных и нарушение личных границ, особенно при условии отсутствия уведомления пользователя. Компании «Яндекс» и «Гугл», сохраняя информацию из поисковых систем, могут улучшать свои сервисы, повышают их удобство и выпускают новые программы интерактивного характера.
Поисковые системы хранят информацию о каждом движении пользователя, о любом нажатии им кнопки мыши, запоминают его IP-адрес, позицию на карте, область интересов, покупки, совершенные онлайн, письма на почте и др., что несет пользу для формирования контекстной рекламы согласно портрету конкретного пользователя. При этом он не даёт своё согласие и не может выбрать, что именно предоставлять из данных. Таким образом, в Big Data аккумулируются все данные, которые после подлежат хранению на серверах компаний.
Как работает технология Big-Data?
Биг Дата работает по принципу: чем больше вы знаете о том или ином предмете или явлении, тем более достоверно вы сможете достичь нового понимания и предсказать, что произойдет в будущем. В ходе сравнения большего количества точек данных возникают взаимосвязи, которые ранее были скрыты, и эти взаимосвязи позволяют нам учиться и принимать более взвешенные решения. Чаще всего это делается с помощью процесса, который включает в себя построение моделей на основе данных, которые мы можем собрать, и дальнейший запуск имитации, в ходе которой каждый раз настраиваются значения точек данных и отслеживается то, как они влияют на наши результаты. Этот процесс автоматизирован — современные технологии аналитики будут запускать миллионы этих симуляций, настраивая все возможные переменные до тех пор, пока не найдут модель — или идею — которые помогут решить проблему, над которой они работают.
Бил Гейтс висит над бумажным содержимым одного компакт диска
До недавнего времени данные были ограничены электронными таблицами или базами данных — и все было очень упорядочено и аккуратно. Все то, что нельзя было легко организовать в строки и столбцы, расценивалось как слишком сложное для работы и игнорировалось. Однако прогресс в области хранения и аналитики означает, что мы можем фиксировать, хранить и обрабатывать большое количество данных различного типа. В результате «данные» на сегодняшний день могут означать что угодно, начиная базами данных, и заканчивая фотографиями, видео, звукозаписями, письменными текстами и данными датчиков.
Чтобы понять все эти беспорядочные данные, проекты, имеющие в основе Биг Дату, зачастую используют ультрасовременную аналитику с привлечением искусственного интеллекта и компьютерного обучения. Обучая вычислительные машины определять, что же представляют собой конкретные данные — например, посредством распознавания образов или обработки естественного языка – мы можем научить их определять модели гораздо быстрее и достовернее, чем мы сами.
Как работают с большими данными
Когда данные получены и сохранены, их нужно проанализировать и представить в понятном для клиента виде: графики, таблицы, изображения или готовые алгоритмы. Из-за объема и сложности в обработке традиционные способы не подходят. С большими данными необходимо:
- обрабатывать весь массив данных (а это Петабайты);
- искать корреляции по всему массиву (в том числе скрытые);
- обрабатывать и анализировать информацию в реальном времени.
Поэтому для работы с big data разработаны отдельные технологии.
Технологии
Изначально это средства обработки неопределенно структурированных данных: СУБД NoSQL, алгоритмы MapReduce, Hadoop.
MapReduce — фреймворк для параллельных вычислений очень больших наборов данных (до нескольких Петабайт). Разработан Google (2004 год).
NoSQL (от англ. Not Only SQL, не только SQL). Помогает работать с разрозненными данными, решает проблемы масштабируемости и доступности с помощью атомарности и согласованности данных.
Hadoop — проект фонда Apache Software Foundation. Это набор утилит, библиотек и фреймворков, который служит для разработки и выполнения распределенных программ, работающих на кластерах из сотен и тысяч узлов. О нём уже говорили, но это потому, что без Hadoop не обходится практически ни один проект связанный с большими данными.
Также к технологиям относят языки программирования R и Python, продукты Apache.
Методы и средства работы с большими данными
Это дата майнинг, машинное обучение, краудсорсинг, прогнозная аналитика, визуализация, имитационное моделирование. Методик десятки:
- смешение и интеграция разнородных данных, например, цифровая обработка сигналов;
- прогнозная аналитика — использует данные за прошлые периоды и прогнозирует события в будущем;
- имитационное моделирование — строит модели, которые описывают процессы, как если бы они происходили в действительности;
- пространственный и статистический анализ;
- визуализация аналитических данных: рисунки, графики, диаграммы, таблицы.
Например, machine learning — это метод ИИ, который учит компьютер самостоятельно «думать», анализировать информацию и принимать решения после обучения, а не по запрограммированной человеком команде.
Алгоритмам обучения нужны структурированные данные, на основе которых компьютер будет учиться. Например, если играть с машиной в шашки и выигрывать, то машина запоминает только правильные ходы, но не анализирует процесс игры. Если оставить компьютер играть с самим собой, то он поймет ход игры, разработает стратегию, и живой человек начнет проигрывать машине. В этом случае она не просто делает ходы, а «думает».
Deep learning – отдельный вид machine learning, в ходе которого создаются новые программы, способные самостоятельно обучаться. И здесь используются искусственные нейронные сети, которые имитируют нейронные сети человека. Компьютеры обрабатывают неструктурированные данные, анализируют, делают выводы, иногда совершают ошибки и учатся — почти, как люди.
Результат deep learning применяют в обработке изображений, алгоритмах распознавания речи, компьютерных переводах и других технологиях. Картины, нарисованные нейросетями Яндекса, и остроумные ответы Алисы на ваши вопросы — результат deep learning.
Data Engineer
Это уже «человеческая» часть работы с большими данными. Data Engineer или инженер данных — это специалист по обработке данных. Он готовит инфраструктуру для работы и данные для Data Scientist:
- разрабатывает, тестирует и поддерживает базы данных, хранилища и системы массовой обработки;
- очищает и подготавливает данные для использования — создает пайплайн обработки данных.
После Data Engineer в дело вступает Data Scientist: создает и обучает предиктивные (и не только) модели с помощью алгоритмов машинного обучения и нейросетей, помогая бизнесу находить скрытые закономерности, прогнозировать развитие событий и оптимизировать бизнес-процессы.