теория цифровой экономики. вся теория3. Цифровое государство цифровое и электронное государство, электронное правительство
Скачать 7.61 Mb.
|
3.3. Наука о данных Наука о данных (англ. data science) – это многодисциплинарная область, которая использует научные методы, процессы, алгоритмы и системы для извлечения знаний и идей из структурированных и неструктурированных данных. Эта наука появилась в мире относительно недавно и только начинает набирать популярность в России. Как и любая другая наука, она имеет множество определений. Довольно точно и полно науку о данных определил в своей книге голландский учёный Вил ван дер Аалст. Наука о данных является междисциплинарной областью, направленной на превращение данных в реальную ценность. Данные могут быть структурированными или неструктурированными, большими или малыми, статическими или потоковыми. Ценность может быть обеспечена в виде прогнозов, автоматизированных решений, моделей, полученных из данных, или любого типа визуализации данных, предоставляющей информацию. Наука данных включает в себя извлечение данных, подготовку данных, исследование данных, преобразование, хранение данных, вычислительные инфраструктуры, различные виды майнинга и обучения, представление объяснений и прогнозов, а также использование результатов с учетом этических, социальных, юридических и деловых аспектов. Приведенное выше определение подразумевает, что наука о данных шире прикладной статистики и интеллектуального анализа данных. Люди, профессионально занимающиеся наукой о данных, называются специалистами по анализу данных или дата сайнтистами (data scientist). Специалисты по анализу данных помогают организациям превращать данные в ценную информацию, которая должна принести пользу компании. Эти специалисты могут ответить на множество вопросов, ответы на которые основаны на данных. Эти вопросы можно сгруппировать в следующие четыре основные категории: – (Отчётность) Что случилось? – (Диагностика) Почему это произошло? – (Предсказание) Что произойдет? – (Рекомендация) Что может быть лучше всего? Наука о данных представляет собой объединение различных частично перекрывающихся (под)дисциплин. На риc. 3.4 показаны основные составляющие науки о данных. Дисциплины пересекаются друг с другом и различаются по объёму. Более того, границы не являются четкими и меняются со временем. Риc.3.4.Составляющиенаукиоданных Сами данные, которые изучаются и анализируются, также играют огромную роль. Большие данные (англ. big data) – это область, в которой рассматриваются способы анализа и систематического извлечения информации из наборов данных, которые слишком велики или сложны для обработки традиционными прикладными программами обработки данных. Данные с большим количеством строк обеспечивают большую статистическую мощность, в то время как данные с большей сложностью (больше атрибутов или столбцов) могут в то же время привести к ошибкам и ложным выводам. Основные сложности в использовании больших данных – это захват данных, хранение данных, анализ данных, поиск, обмен, передача, визуализация, запрос, обновление, конфиденциальность информации и источник данных. Большие данные традиционно связаны с ключевыми характеристиками: объем, многообразие, скорость и достоверность. Большие данные можно описать следующими характеристиками: – Объем – количество генерируемых и хранимых данных. Размер данных определяет ценность и потенциальное понимание, а также могут ли эти данные считаться большими или нет. – Многообразие – тип и характер данных. Это помогает людям, которые анализируют данные, эффективно использовать информацию, которую они вывели из этих данных. Большие данные получают из текста, изображений, аудио, видео. – Скорость – в этом контексте, скорость, с которой данные генерируются и обрабатываются для удовлетворения потребностей и устранения проблем, которые лежат на пути роста и развития. Большие данные часто доступны в режиме реального времени. По сравнению с малыми данными, большие данные производятся с большим постоянством. Два вида скорости, связанные с большими данными – это частота генерации и частота обработки, записи и публикации. – Достоверность – это расширенное определение для больших данных, которое относится к качеству данных и значению данных. Качество полученных данных может сильно варьироваться, влияя на точный анализ. Данные должны быть обработаны с помощью передовых инструментов (аналитики и алгоритмов), чтобы выявлять действительно значимую информацию. Интеллектуальный анализ данных Интеллектуальный анализ данных можно охарактеризовать как процесс поиска особенностей и интересной структуры в данных. Структура может принимать множество форм, включая набор правил, графики или сеть, одно или несколько уравнений и многое другое. Структура может быть частью сложной визуальной панели инструментов или просто как список политических кандидатов и привязанный к ним номер, представляющий настроения избирателей на основе записей в Twitter. В процессе интеллектуального анализа данных используется один или несколько алгоритмов для выявления интересных тенденций и закономерностей в данных. Знания, полученные в ходе этапа интеллектуального анализа данных, представляют собой обобщенную модель данных. Конечная цель – применить то, что было обнаружено, к новым ситуациям. Существует несколько методов интеллектуального анализа данных. Однако все методы интеллектуального анализа данных используют индуктивное обучение. Индуктивное обучение – это процесс формирования общих определений понятий путем наблюдения конкретных примеров изучаемых понятий. Процесс интеллектуального анализа данных пред– стравляет собой конвейер, содержащий множество этапов – таких как очистка данных, извлечение функций и алгоритмическое проектирование. Рабочий процесс типичной процедуры интеллектуального анализа данных содержит следующие этапы: 1. Сбор данных. Сбор данных может потребовать использования: – специального оборудования – такого как сенсорная сеть; – ручного труда, такого как опросы пользователей; – программных средств, таких как приложение для сбора веб–документов. После этапа сбора данные часто хранятся в базе данных или в хранилище данных для обработки. 2. Извлечение признаков и очистка данных. Когда происходит сбор данных, они часто не подходят для последующей обработки. Например, данные могут быть закодированы в нераспознанные форматы. Во многих случаях различные типы данных могут произвольно смешиваться в документе свободной формы. Чтобы сделать данные пригодными для обработки, необходимо преобразовать их в формат, дружественный алгоритмам интеллектуального анализа данных. Наиболее распространенным является многомерный формат, в котором различные поля данных соответствуют различным измеряемым свойствам, которые называются признаками, атрибутами или измерениями. Крайне важно извлечь соответствующие характеристики для процесса добычи. Этап извлечения признаков часто выполняется параллельно с очисткой данных, где недостающие и ошибочные части данных оцениваются или корректируются. Во многих случаях данные могут быть извлечены из различных источников и должны быть интегрированы в единый формат для обработки. Конечным результатом этой процедуры является красиво структурированный набор данных, который может эффективно использоваться компьютерной программой. После фазы извлечения признаков данные могут снова храниться в базе данных для обработки. 3. Аналитическая обработка и алгоритмы. Заключи– тельной частью процесса анализа данных является разработка эффективных аналитических методов, на основе обработанных данных. Общий процесс интеллектуального анализа данных показан на риc. 3.5. На первом этапе происходит сбор данных. Затем они обрабатываются путём извлечения важных признаков и очистки. Во время аналитического процесса данные преобразуются в готовые блоки, сформированные в удобном виде для последующего анализа аналитиками. Риc. 3.5. Процесс интеллектуального анализа данных Этап предварительной обработки или подготовки данных является, пожалуй, самым важным в процессе интеллектуального анализа данных. Этот этап начинается после сбора данных и состоит из следующих шагов: 1. Извлечение признаков: аналитик может стукнуться с огромными объемами необработанных документов, системных журналов или коммерческих транзакций без каких–либо указаний о том, как эти необработанные данные должны быть преобразованы в значимые функции базы данных для обработки. Эта фаза сильно зависит от аналитика, так как нужно понять, что именно будет влиять на результат анализа. Например, в приложении для обнаружения мошенничества с кредитными картами сумма сбора, частота повторения и местоположение часто являются хорошими показателями мошенничества. Однако многие другие признаки могут практически не являться показателями мошенничества. 2. Очистка данных: извлеченные данные могут иметь ошибочные или отсутствующие записи. Поэтому некоторые записи, возможно, потребуется удалить, или отсутствующие записи можно предположить или подставить на основе доступных похожих данных. Возможно, потребуется устранить несоответствия. 3. Выбор и преобразование признаков: когда данные очень многомерны, многие алгоритмы интеллектуального анализа данных не работают эффективно. Кроме того, многие признаки являются ошибочными по той или иной причине и могут добавлять ошибки в процесс интеллектуального анализа данных. Поэтому для удаления не относящихся к делу объектов или преобразования текущего набора объектов в новое пространство данных, более пригодное для анализа, используются различные методы. Процесс очистки данных требует статистических методов, которые обычно используются для оценки недостающих данных. Кроме того, ошибочные записи данных часто удаляются для обеспечения более точных результатов интеллектуального анализа данных. Выбор и преобразование признаков не следует рассматривать как часть предварительной обработки данных, поскольку этап выбора признаков часто сильно зависит от конкретной решаемой аналитической задачи. В некоторых случаях процесс выбора признака может быть даже тесно интегрирован с используемым конкретным алгоритмом или методологией. Машинное обучение Машинное обучение – это обширная дисциплина, которая также входит в науку о данных. В разрезе машинного обучения изучается то, как системы учатся на данных. Системы могут быть обучены данными для принятия решений, и обучение является непрерывным процессом, в котором система постоянно поддерживает процесс обучения и улучшает свою способность принимать решения с большим количеством данных. Машинное обучение является разновидностью искусственного интеллекта, который позволяет изучать и прогнозировать результаты без использования глубокого программирования. Термин «машинное обучение» часто используется вместо «искусственного интеллекта», потому что является его методом, который оказал наибольшее влияние на развитие этой сферы информационных технологий. Крупные компании используют машинное обучение для принятия решений и автоматизации бизнес–процессов, изучая данные. Теперь простые в использовании инструменты, четко определенные алгоритмы и легкодоступные услуги представляют преимущества машинного обучения организациям любого размера. Компании, которые не используют машинное обучение для экономии на затратах, увеличения надежности и эффективности, вскоре будут вытеснены из конкурентной борьбы теми, кто внедряет эти технологии. Вместо того чтобы писать алгоритмы и правила, которые принимают решения напрямую, или пытаться запрограммировать компьютер, чтобы он выполнял поставленные задачи, используя наборы правил, исключений и фильтров, машинное обучение учит компьютерные системы принимать решения, изучая большие наборы данных. Машинное обучение может создавать модели, которые представляют и обобщают шаблоны в данных, которые используются для такого обучения, и использовать эти модели для интерпретации и анализа новой информации. В литературе существуют различные определения машинного обучения. Одно из них звучит так: «Область машинного обучения стремится ответить на вопрос “как мы можем построить компьютерные системы, которые автоматически улучшаются с опытом, и каковы фундаментальные законы, которые управляют всеми процессами обучения?» Спам–фильтр – хороший пример машинного обучения. По мере того, как ему передается больше данных, он продолжает подстраивать и адаптировать свои правила принятия решений под новые данные, используя методы машинного обучения, тем самым предотвращая получение спама в дальнейшем. Распознавание и подтверждение оплаты с помощью кредитных карт также основаны на нейронных сетях, еще одном популярном методе машинного обучения. Однако методы машинного обучения предпочитают данные суждениям, а наука о данных требует сбалансированного сочетания того и другого. Суждение необходимо для точной контекстуализации параметров анализа и построения эффективных моделей. Например, профессор статистики Винни Бразис, использует машинное обучение для прогнозирования доходов от кино. Он утверждает, что простого машинного обучения будет недостаточно для получения точных предсказаний. Он дополняет машинное обучение суждениями, полученными из интервью со сценаристами, опросов и т. д., чтобы в результате получить более точный прогноз. Машинный интеллект возрождается как новое воплощение искусственного интеллекта (область, которая, как многие считают, не оправдала ожиданий). Машинное обучение обещает и дает ответы на многие вопросы, представляющие интерес. Хилари Мейсон, основатель FastForwardLabs, специалист по Data Science в Accel, предлагает четыре характеристики машинного интеллекта, которые делают его интересным: 1. Машинное обучение обычно основано на теоретическом прорыве и поэтому хорошо обосновано в науке. 2. Оно изменяет существующую экономическую парадигму. 3. Результатом машинного обучения является процесс перехода продукта из марочной категории в категорию рядовых продуктов за счет совершенствования производственных технологий (например, Hadoop). 4. Машинное обучение предоставляет новые данные, которые ведут к дальнейшему развитию науки о данных. Машинное обучение отличается и теперь определяется отдельно от традиционной статистики. Машинное обучение больше касается обучения и сопоставления входных данных с выходными, в то время как в статистике всегда больше изучался анализ данных в рамках данной постановки проблемы или гипотезы. Машинное обучение, как правило, позволяет открывать что–то новое, в то время как эконометрика и статистический анализ, как правило, основаны на теории с жесткими предположениями. Машинное обучение имеет тенденцию фокусироваться больше на прогнозировании, которое даёт более полный результат, чем прогноз (или корреляция). Домингос, ученый–практик, один из ведущих исследователей в области машинного обучения, в своём исследовании рассматривает машинное обучение как сумму трёх компонентов: представления, оценки и оптимизации. Представление машинного обучения требует обозначения проблемы на формальном языке, который может обрабатываться с помощью компьютера. Эти представления будут отличаться для различных методов машинного обучения. Например, в задаче классификации может быть выбор многих классификаторов, каждый из которых будет формально представлен. Затем, чтобы завершить этап оценки, указывается функция подсчета очков или функция потерь. Наконец, наилучшая оценка достигается за счет оптимизации модели. После того, как шаги были выполнены и наилучший алгоритм машинного обучения выбран из данных обучения, мы можем проверить модель на данных из выборки или набора тестовых данных. Можно случайным образом отобрать часть выборки данных для проверки. Повторение этого процесса путем предоставления различных частей данных для тестирования, а также обучение по остальным частям, является процессом, известным как перекрестная проверка, и настоятельно рекомендуется, чтобы достичь точных и объективных результатов. Если окажется, что повторная перекрестная проверка приводит к плохим результатам, даже несмотря на то, что тестирование в образце работает очень хорошо, то это может свидетельствовать о чрезмерной подгонке. Чрезмерная подгонка обычно происходит, когда модель чрезмерно параметризована в выборке и подходит очень хорошо для конкретно данной выборки, но тогда она становится менее полезной для новых данных. Поэтому во многих случаях более простые и менее параметризованные модели, как правило, лучше работают при настройке параметров прогнозирования. Машинное обучение по способу обучения делится на два типа: обучение с учителем, которое обучает модель известными входными и выходными данными, чтобы она могла предсказывать будущие результаты, и обучение без учителя, которое находит скрытые шаблоны или внутренние структуры во входных данных. Общая классификация методов машинного обучения показана на рисунке 3.6. Риc. 3.6. Классификация методов машинного обучения Алгоритм обучения с учителем принимает известный набор входных данных и известных значений для этих данных (выход) и обучает модель генерировать разумные прогнозы (новые значения) для новых данных. Обучение с учителем используется, если известны данные для вывода, который необходимо предсказать. Контролируемое обучение использует методы классификации и регрессии для разработки прогностических моделей. Методы классификации предсказывают дискретные ответы – например, является ли электронное письмо подлинным или спамом, или опухоль раковой или доброкачественной. Модели классификации классифицируют входные данные по категориям. Общие алгоритмы для выполнения классификации включают в себя векторную машину поддержки, деревья решений, метод k–ближайших соседей, наивный байесовский классификатор, дискриминантный анализ, логистическую регрессию и нейронные сети. Методы регрессии предсказывают непрерывные реакции – например, изменения температуры или колебания спроса на электроэнергию. Обычно применяются в прогнозировании нагрузки электричества и алгоритмической торговле. Общие алгоритмы регрессии включают линейную модель, нелинейную модель, регуляризацию, ступенчатую регрессию, деревья решений, нейронные сети и адаптивную сеть на основе системы нечеткого вывода. Обучение без учителя находит скрытые шаблоны или внутренние структуры в данных. Машинное обучение используется для построения выводов из наборов данных, состоящих из неопределённых входных данных. Кластеризация является наиболее распространенным методом обучения без учителя. Она используется для исследовательского анализа данных для поиска скрытых шаблонов или групп в данных. Общие алгоритмы для выполнения кластеризации включают метод k–средних, иерархическую кластеризацию, Гауссову смесь распределений, скрытые модели Маркова, самоорганизующиеся карты, метод нечёткой кластеризации C–средних и вычитающую кластеризацию. Ансамбль моделей – это комбинации многих моделей машинного обучения. Существует много способов, с помощью которых модели могут быть объединены для создания лучших моделей. Но различные модели не всегда необходимы в решении одной определённой задачи. Вместо этого можно откалибровать одну и ту же модель для разных подмножеств данных обучения, предоставляя несколько похожих, но разных моделей. Каждая из этих моделей затем используется для классификации вне выборки, и решение принимается путем отбора наиболее эффективных моделей. Этот метод известен как бэггинг. Одним из наиболее популярных примеров алгоритмов бэггинга является модель случайного леса. В другом методе – бустинге, оптимизируемая функция потерь не взвешивает все примеры в наборе данных обучения одинаково. После одного прохода калибровки обучающие примеры взвешиваются таким образом, что случаи, когда алгоритм машинного обучения допустил ошибки (как в задаче классификации), получают более высокий вес в функции потерь. Подмечая эти наблюдения, алгоритм учится предотвращать эти ошибки, поскольку они являются более значимыми. Другой подход к ансамблю методов называется стакинг, когда модели прикованы друг к другу, так что выход данных низкоуровневых моделей становится входом другой модели более высокого уровня. Здесь модели интегрированы вертикально в отличие от бэгинга, где модели интегрированы горизонтально. Наука о данных состоит из предсказаний и прогнозов. Но между ними есть разница. Статистик–экономист Пол Саффо предположил, что предсказания направлены на определение одного результата, в то время как прогнозы охватывают целый ряд результатов. Сказать, что «завтра будет дождь», – это сделать прогноз, но сказать, что «вероятность дождя составляет 40%» (подразумевает, что вероятность отсутствия дождя составляет 60%), – это значит сделать прогноз, поскольку он излагает диапазон возможных результатов с вероятностями. Делаются прогнозы погоды, а не предсказания. Предсказания – это утверждения большой определенности, в то время как прогнозы иллюстрируют диапазон неопределенности. Глубокое обучение Традиционные методы машинного обучения были ограничены в своей способности обрабатывать естественные данные в их сырой, необработанной форме. В течение десятилетий построение системы распознавания образов или машинного обучения требовало тщательного проектирования и значительного опыта в области разработки экстрактора объектов, который преобразовывал необработанные данные (например, значения пикселей изображения) в подходящее внутреннее представление или вектор объектов, из которого подсистема обучения может обнаруживать или классифицировать шаблоны во входных данных. Обучение представлениям – это набор методов, в которых на вход подаются необработанные данные и затем автоматически обнаруживаются представления, необходимые для распознавания или классификации. Методы глубокого обучения – это методы представления–обучения с несколькими уровнями представления, полученные путем составления простых, но нелинейных модулей, каждый из которых преобразует представление на одном уровне (начиная с ввода сырых данных) в представление на более высоком, немного более абстрактном уровне. Благодаря такой структуре достаточно сложные функции могут быть извлечены. Для задач классификации более высокие уровни представления усиливают аспекты входных данных, которые важны для распознавания и подавляют нерелевантные вариации. Изображение, например, приходит в виде массива значений пикселей, и изученные объекты в первом слое представления обычно представляют наличие или отсутствие граней в системе координат изображения. Второй слой обычно обнаруживает рисунки, выделяя определенные расположения граней, независимо от небольших изменений в их положениях. Третий слой может собирать рисунки в более крупные комбинации, которые соответствуют частям знакомых объектов, а последующие слои будут обнаруживать объекты как комбинации этих частей. Ключевым аспектом глубокого обучения является то, что эти слои функций не разработаны инженерами–людьми: они извлекаются из данных с помощью процедуры обучения общего назначения. Для анализа данных в глубоком обучении используются искусственные нейронные сети. Искусственная нейронная сеть (ИНС) – математическая модель, а также её программное или аппаратное воплощение, построенная по принципу организации и функционирования биологических нейронных сетей – сетей нервных клеток живого организма. Это понятие возникло при изучении процессов, протекающих в мозге, и при попытке смоделировать эти процессы. ИНС основаны на наборе связанных единиц или узлов, называемых искусственными нейронами, которые свободно моделируют нейроны в биологическом мозге. Каждое соединение, подобно нейронам в биологическом мозге, может передавать сигнал от одного искусственного нейрона к другому. Искусственный нейрон, который получает сигнал, может обработать его, а затем сигнализировать дополнительным искусственным нейронам, связанным с ним. В практических разработках сигнал в ИНС при связи между искусственными нейронами является вещественным числом, а выход каждого искусственного нейрона вычисляется некоторой нелинейной функцией суммы его входов. Связи между искусственными нейронами называются «гранями». Искусственные нейроны и края обычно имеют вес, который регулируется по мере обучения. Вес увеличивает или уменьшает силу сигнала при подключении. Искусственные нейроны могут иметь такой порог, что сигнал отправляется только в том случае, если совокупный сигнал пересекает этот порог. Как правило, искусственные нейроны объединяются в слои. Различные слои могут выполнять различные виды преобразований на своих входах. Сигналы перемещаются от первого слоя (входного слоя) к последнему слою (выходному слою), иногда после многократного обхода слоев. Первоначальная цель подхода ИНС состояла в том, чтобы решать проблемы так же, как это сделал бы человеческий мозг. Однако со временем внимание переключилось на выполнение конкретных задач, что привело к отклонениям от биологии. Искусственные нейронные сети используются для решения различных задач, включая компьютерное зрение, распознавание речи, машинный перевод, фильтрацию социальных сетей, в настольных и видеоиграх и в медицинской диагностике. Глубокое обучение делает большие успехи в решении проблем, с которыми не справлялись методы искусственного интеллекта в течение многих лет. Оно оказалось очень хорошим инструментом для обнаружения сложных структур в многомерных данных и поэтому применимо ко многим областям науки, бизнеса и государства. В дополнение к тому, чтобы побить рекорды в распознавании изображений и распознавании речи, глубокое обучение превзошло другие методы машинного обучения во многих аспектах науки, например, при прогнозировании активности молекул в наркотиках, анализе данных ускорителя частиц, реконструирующих схемы мозга, и предсказании влияния мутаций в некодирующей ДНК на экспрессию генов и болезни. Глубокое обучение дало весьма многообещающие результаты для решения различных задач в понимании естественного языка, особенно классификации конкретных тем, анализа настроений, ответов на вопросы и перевода на другой язык. |