Аналитическая обработка данных для поддержки принятия решений. Аналитическая обработка данных. Обзор и анализ программных технологий разработки WEB-приложений для аналитической обработки данных

Аналитическая обработка данных - это анализ данных, требующий соответствующего методического обеспечения и определенного уровня подготовки специалистов.

Современные информационные технологии дают возможность автоматизировать процессы анализа накопленной первичной информации, строить аналитические модели, получать готовые решения и использовать их на практике. Основными требованиями , которые предъявляются к методам анализа, являются эффективность, простота, автоматизм. Эта концепция лежит в основе двух современных технологий: Data Mining и Knowledge Discovery in Databases (KDD).

Data Mining - это процесс обнаружения в сырых данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности (определение Г. Пятецкого-Шапиро - одного из основателей этого направления).

Технология Data Mining направлена на поиск неочевидных закономерностей. Этапами анализа данных являются:

  • 1) классификация (classification ) - обнаружение признаков, характеризующих группы объектов исследуемого набора данных - классы. Методы решения, используемые для задачи классификации: методы ближайшего соседа (nearest neighbor) и ^’-ближайшего соседа (k-nearest neighbor)-, байесовские сети {Bayesian networks)-, индукция деревьев решений; нейронные сети {neural networks)-,
  • 2) кластеризация {clustering) - разбиение объектов на группы, так как классы объектов изначально не определены. Пример метода решения задачи кластеризации: самоорганизующиеся карты Кохонена - нейронная сеть с обучением без учителя. Важной особенностью этих карт является их способность отображать многомерные пространства признаков на плоскость, представив данные в виде двумерной карты;
  • 3) ассоциация {associations) - выявление закономерностей между свя- занными событиями в наборе данных. Эти закономерности выявляются не на основе свойств анализируемого объекта, а между несколькими событиями, которые происходят одновременно, например, алгоритм Apriori;
  • 4) последовательность {sequence), или последовательная ассоциация {sequential association), - поиск временных закономерностей между транзакциями, т.е. устанавливаются закономерности не между одновременно наступающими событиями, а между событиями, связанными во времени. Ассоциация - это последовательности с временным лагом, равным нулю. Правило последовательности: после события X через определенное время произойдет событие У;
  • 5) прогнозирование {forecasting ) - строится на основе особенностей исторических данных, т.е. происходит оценивание опущенных или же будущих значений целевых численных показателей. Для решения задач прогнозирования используются методы математической статистики, нейронные сети и др.;
  • 6) определение отклонений или выбросов {deviation detection), анализ отклонений или выбросов - обнаружение и анализ данных, наиболее отличающихся от общего множества данных;
  • 7) оценивание {estimation) - предсказание непрерывных значений признака;
  • 8) анализ связей {link analysis) - задача нахождения зависимостей в наборе данных;
  • 9) визуализация {visualization, graph mining) - создание графического образа анализируемых данных. Используются графические методы, показывающие наличие закономерностей в данных, например, представление данных в 2D и 3D измерениях;
  • 10) подведение итогов (summarization ) - описание конкретных групп объектов из анализируемого набора данных.

KDD - это процесс выявления полезных знаний из коллекции данных. Эта технология включает в себя вопросы: подготовки данных, выбора информативных признаков, очистки данных, применения методов Data Mining (DM), постобработки данных и интерпретации полученных результатов.

Процесс Knowledge Discovery in Databases состоит из следующих шагов:

  • 1) постановка задачи - анализ задач пользователя и особенности области приложения, выбор набора входных и выходных параметров;
  • 2) подготовка исходного набора данных - создание хранилища данных и организация схемы сбора и обновления данных;
  • 3) предобработка данных - основана на применении методов Data Mining, с точки зрения этого метода данные должны быть качественны и корректны;
  • 4) трансформация, нормализация данных - приведение информации к пригодному для последующего анализа виду;
  • 5) Data Mining - автоматический анализ данных, основанный на применении различных алгоритмов для нахождения знаний (нейронные сети, деревья решений, алгоритмы кластеризации, установления ассоциаций и т.д.);
  • 6) постобработка данных - интерпретация результатов и применение полученных знаний в бизнес приложениях.

(СУБД. - 1998. - № 4-5)

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

В последние годы в мире оформился ряд новых концепций хранения и анализа корпоративных данных:

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

1. Хранилища (склады) данных

В области информационных технологий всегда сосуществовали два класса систем [ , С. 49]:

На первых стадиях информатизации всегда требуется навести порядок именно в процессах повседневной рутинной обработки данных, на что и ориентированы традиционные СОД, поэтому опережающее развитие этого класса систем вполне объяснимо.

Системы второго класса - СППР - являются вторичными по отношению к ним. Часто возникает ситуация, когда данные в организации накапливаются с ряде несвязанных СОД, во многом дублируя друг друга, но не будучи никак согласованы. В таком случае достоверную комплексную информацию получить практически невозможно, несмотря на ее кажущийся избыток.

Целью построения корпоративного хранилища данных является интеграция, актуализация и согласование оперативных данных из разнородных источников для формирования единого непротиворечивого взгляда на объект управления в целом. При этом в основе концепции хранилищ данных лежит признание необходимости разделения наборов данных, используемых для транзакционной обработки, и наборов данных, применяемых в системах поддержки принятия решений. Такое разделение возможно путем интеграции разъединенных в СОД и внешних источниках детализированных данных в едином хранилище, их согласования и, возможно, агрегации. W. Inmon, автор концепции хранилищ данных , определяет такие хранилища как:

  • "предметно-ориентированные,
  • интегрированные,
  • неизменчивые,
  • поддерживающие хронологию

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

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

  1. Время обработки запросов к распределенному хранилищу значительно превышает соответствующие показатели для централизованного хранилища. Кроме того, структуры баз данных СОД, рассчитанные на интенсивное обновление одиночных записей, в высокой степени нормализованы, поэтому в аналитическом запросе к ним требуется объединение большого числа таблиц, что также приводит к снижению быстродействия.
  2. Интегрированный взгляд на распределенное корпоративное хранилище возможен только при выполнении требования постоянной связи всех источников данных в сети. Таким образом, временная недоступность хотя бы одного из источников может либо сделать работу информационно-аналитической системы (ИАС) невозможной, либо привести к ошибочным результатам.
  3. Выполнение сложных аналитических запросов над таблицами СОД потребляет большой объем ресурсов сервера БД и приводит к снижению быстродействия СОД, что недопустимо, так как время выполнения операций в СОД часто весьма критично.
  4. Различные СОД могут поддерживать разные форматы и кодировки данных, данные в них могут быть несогласованы. Очень часто на один и тот же вопрос может быть получено несколько вариантов ответа, что может быть связано с несинхронностью моментов обновления данных, отличиями в трактовке отдельных событий, понятий и данных, изменением семантики данных в процессе развития предметной области, ошибками при вводе, утерей фрагментов архивов и т. д. В таком случае цель - формирование единого непротиворечивого взгляда на объект управления - может не быть достигнута.
  5. Главным же недостатком следует признать практическую невозможность обзора длительных исторических последовательностей, ибо при физическом отсутствии центрального хранилища доступны только те данные, которые на момент запроса есть в реальных БД связанных СОД. Основное назначение СОД - оперативная обработка данных, поэтому они не могут позволить себе роскошь хранить данные за длительный (более нескольких месяцев) период; по мере устаревания данные выгружаются в архив и удаляются из транзакционной БД. Что касается аналитической обработки, для нее как раз наиболее интересен взгляд на объект управления в исторической ретроспективе.

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

Облегченным вариантом корпоративного хранилища данных могут быть витрины данных (Data Mart), то есть тематические БД, содержащие информацию, относящуюся к отдельным аспектам деятельности организации. Концепция витрин данных была предложена Forrester Research в 1991 году . При этом главная идея заключалась в том, что витрины данных содержат тематические подмножества заранее агрегированных данных, по размерам гораздо меньшие, чем общекорпоративное хранилище данных, и, следовательно, требующие менее производительной техники для поддержания. В 1994 году M. Demarest предложил объединить две концепции и использовать хранилище данных в качестве единого интегрированного источника для многочисленных витрин данных. В таком варианте корпоративная информационно-аналитическая система имеет трехуровневую структуру:

  • общекорпоративное централизованное хранилище данных;
  • тематические витрины данных на уровне подразделений;
  • рабочие места конечных пользователей, снабженные аналитическим инструментарием.

Рассмотренная концепция ориентирована исключительно на хранение, а не на обработку корпоративных данных. Она не предопределяет архитектуру целевых аналитических систем, а только создает поле деятельности для их функционирования, концентрируясь на требованиях к данным. Таким образом, она оставляет свободу выбора во всем, что касается:

  • способов представления данных в целевом хранилище (например, реляционный, многомерный);
  • режимов анализа данных хранилища.

2. Способы аналитической обработки данных

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

По критерию режима анализа данных информационно-аналитические системы подразделяются на две категории [ , ]:

  • статические (включающие предопределенный набор сценариев обработки данных и составления отчетов); в эту категорию входят так называемые информационные системы руководителя (ИСР);
  • динамические (поддерживающие построение и выполнение нерегламентированных запросов и формирование отчетов произвольной формы).

Очень часто ИАС, создаваемые в расчете на непосредственное использование лицами, принимающими решения, оказываются чрезвычайно просты в применении, но жестко ограничены в функциональности. Такие статические СППР [ , С. 55], или Информационные системы руководителя (ИСР) [ , С. 73] - (Executive Information Systems, EIS) [ , С. 4] - содержат в себе предопределенные множества запросов и, будучи достаточными для повседневного обзора, неспособны ответить на все вопросы к имеющимся данным, которые могут возникнуть при принятии решений (ПРИМЕЧАНИЕ. По определению В. Пржиялковского [ , С. 81], ИСР - это "компьютерная система, позволяющая... предоставлять информацию в распоряжение старшего управляющего персонала с ограниченным опытом обращения с ЭВМ".). Результатом работы такой системы, как правило, являются многостраничные отчеты, после тщательного изучения которых у аналитика появляется новая серия вопросов; однако, каждый новый, непредусмотренный при проектировании такой системы, запрос должен быть сначала формально описан, передан программисту, закодирован и только затем выполнен. Время ожидания в таком случае может составлять часы и дни, что не всегда приемлемо. Таким образом, внешняя простота статических СППР, за которую активно борется большинство заказчиков информационно-аналитических систем, оборачивается катастрофической потерей гибкости.

Динамические СППР, напротив, ориентированы на обработку нерегламентированных, неожиданных (ad hoc) запросов аналитиков к данным. Наиболее глубоко требования к таким системам рассмотрел E. F. Codd в статье , положившей начало концепции OLAP. Работа аналитиков с этими системами заключается в интерактивной последовательности формирования запросов и изучения их результатов, каждый из которых может породить потребность новой серии запросов.

Но динамические СППР могут действовать не только в области оперативной аналитической обработки (OLAP); поддержка принятия управленческих решений на основе накопленных данных может выполняться в трех базовых сферах .

По Кодду, многомерное концептуальное представление (multi-dimensional conceptual view) является наиболее естественным взглядом управляющего персонала на объект управления. Оно представляет собой множественную перспективу, состоящую из нескольких независимых измерений, вдоль которых могут быть проанализированы определенные совокупности данных. Одновременный анализ по нескольким измерениям данных определяется как многомерный анализ. Каждое измерение включает направления консолидации данных, состоящие из серии последовательных уровней обобщения, где каждый вышестоящий уровень соответствует большей степени агрегации данных по соответствующему измерению. Так, измерение Исполнитель может определяться направлением консолидации, состоящим из уровней обобщения "предприятие - подразделение - отдел - служащий". Измерение Время может даже включать два направления консолидации - "год - квартал - месяц - день" и "неделя - день", поскольку счет времени по месяцам и по неделям несовместим. В этом случае становится возможным произвольный выбор желаемого уровня детализации информации по каждому из измерений. Операция спуска (drilling down) соответствует движению от высших ступеней консолидации к низшим; напротив, операция подъема (rolling up) означает движение от низших уровней к высшим (рис. 2).


Рис. 2. Измерения и направления консолидации данных.

3.1. Требования к средствам оперативной аналитической обработки

Кодд определил 12 правил, которым должен удовлетворять программный продукт класса OLAP (табл. 1).

Таблица 1. Правила оценки программных продуктов класса OLAP.

1. Многомерное концептуальное представление данных (Multi-Dimensional Conceptual View) Концептуальное представление модели данных в продукте OLAP должно быть многомерным по своей природе, то есть позволять аналитикам выполнять интуитивные операции "анализа вдоль и поперек" ("slice and dice" - перевод С. Д. Кузнецова, выступление на 3-й ежегодной конференции "Корпоративные базы данных "98"), вращения (rotate) и размещения (pivot) направлений консолидации.
2. Прозрачность (Transparency) Пользователь не должен знать о том, какие конкретные средства используются для хранения и обработки данных, как данные организованы и откуда берутся.
3. Доступность (Accessibility) Аналитик должен иметь возможность выполнять анализ в рамках общей концептуальной схемы, но при этом данные могут оставаться под управлением оставшихся от старого наследства СУБД, будучи при этом привязанными к общей аналитической модели. То есть инструментарий OLAP должен накладывать свою логическую схему на физические массивы данных, выполняя все преобразования, требующиеся для обеспечения единого, согласованного и целостного взгляда пользователя на информацию.
4. Устойчивая производительность (Consistent Reporting Performance) С увеличением числа измерений и размеров базы данных аналитики не должны столкнуться с каким бы то ни было уменьшением производительности. Устойчивая производительность необходима для поддержания простоты использования и свободы от усложнений, которые требуются для доведения OLAP до конечного пользователя.
5. Клиент - серверная архитектура (Client-Server Architecture) Большая часть данных, требующих оперативной аналитической обработки, хранится в мэйнфреймовых системах, а извлекается с персональных компьютеров. Поэтому одним из требований является способность продуктов OLAP работать в среде клиент-сервер. Главной идеей здесь является то, что серверный компонент инструмента OLAP должен быть достаточно интеллектуальным и обладать способностью строить общую концептуальную схему на основе обобщения и консолидации различных логических и физических схем корпоративных баз данных для обеспечения эффекта прозрачности.
6. Равноправие измерений (Generic Dimensionality) Все измерения данных должны быть равноправны. Дополнительные характеристики могут быть предоставлены отдельным измерениям, но поскольку все они симметричны, данная дополнительная функциональность может быть предоставлена любому измерению. Базовая структура данных, формулы и форматы отчетов не должны опираться на какое-то одно измерение.
7. Динамическая обработка разреженных матриц (Dynamic Sparse Matrix Handling) Инструмент OLAP должен обеспечивать оптимальную обработку разреженных матриц. Скорость доступа должна сохраняться вне зависимости от расположения ячеек данных и быть постоянной величиной для моделей, имеющих разное число измерений и различную разреженность данных.
8. Поддержка многопользовательского режима (Multi-User Support) Зачастую несколько аналитиков имеют необходимость работать одновременно с одной аналитической моделью или создавать различные модели на основе одних корпоративных данных. Инструмент OLAP должен предоставлять им конкурентный доступ, обеспечивать целостность и защиту данных.
9. Неограниченная поддержка кроссмерных операций (Unrestricted Cross-dimensional Operations) Вычисления и манипуляция данными по любому числу измерений не должны запрещать или ограничивать любые отношения между ячейками данных. Преобразования, требующие произвольного определения, должны задаваться на функционально полном формульном языке.
10. Интуитивное манипулирование данными (Intuitive Data Manipulation) Переориентация направлений консолидации, детализация данных в колонках и строках, агрегация и другие манипуляции, свойственные структуре иерархии направлений консолидации, должны выполняться в максимально удобном, естественном и комфортном пользовательском интерфейсе.
11. Гибкий механизм генерации отчетов (Flexible Reporting) Должны поддерживаться различные способы визуализации данных, то есть отчеты должны представляться в любой возможной ориентации.
12. Неограниченное количество измерений и уровней агрегации (Unlimited Dimensions and Aggregation Levels) Настоятельно рекомендуется допущение в каждом серьезном OLAP инструменте как минимум пятнадцати, а лучше двадцати, измерений в аналитической модели. Более того, каждое из этих измерений должно допускать практически неограниченное количество определенных пользователем уровней агрегации по любому направлению консолидации.

Набор этих требований, послуживших фактическим определением OLAP, достаточно часто критиковался. Так, в говорится, что в рамках 12 требований смешаны:

  • собственно требования к функциональности (1, 2, 3, 6, 9, 12);
  • неформализованные пожелания (4, 7, 10, 11);
  • требования к архитектуре информационной системы, имеющие к функциональности весьма приблизительное отношение (5, 8); например, согласно требованию 5, система, реализованная на основе UNIX-сервера с терминалами, не может быть продуктом OLAP, так как не работает в клиент-серверной архитектуре; так же, OLAP продукт не может являться настольной однопользовательской системой, так как в этом случае нарушается требование 8.

С другой стороны, по утверждению самого Кодда, ни один из имеющихся в настоящее время на рынке продуктов оперативного анализа данных не удовлетворяет полностью всем выдвинутым им требованиям. Поэтому 12 правил следует рассматривать как рекомендательные, а конкретные продукты оценивать по степени приближения к идеально полному соответствию всем требованиям.

3.2. Классификация продуктов OLAP по способу представления данных

В настоящее время на рынке присутствует около 30 продуктов, которые в той или иной степени обеспечивают функциональность OLAP (по данным обзорного Web-сервера http://www.olapreport.com на февраль 1998 года). Обеспечивая многомерное концептуальное представление со стороны пользовательского интерфейса к исходной базе данных, все продукты OLAP делятся на три класса по типу исходной БД.

Помимо перечисленных средств существует еще один класс - инструменты генерации запросов и отчетов для настольных ПК, дополненные функциями OLAP и/или интегрированные с внешними средствами, выполняющими такие функции. Эти довольно развитые системы осуществляют выборку данных из исходных источников, преобразуют их и помещают в динамическую многомерную БД, функционирующую на клиентской станции конечного пользователя. Для работы с небольшими, просто организованными базами эти средства подходят наилучшим образом. Основными представителями этого класса являются BusinessObjects одноименной компании , BrioQuery компании Brio Technology [ , С. 34] и PowerPlay компании Cognos [ , С. 34-35].

3.2.1. Многомерный OLAP (MOLAP)

В специализированных СУБД, основанных на многомерном представлении данных, данные организованы не в форме реляционных таблиц, а в виде упорядоченных многомерных массивов:

  • гиперкубов (все хранимые в БД ячейки должны иметь одинаковую мерность, то есть находиться в максимально полном базисе измерений) или
  • поликубов (каждая переменная хранится с собственным набором измерений, и все связанные с этим сложности обработки перекладываются на внутренние механизмы системы).

Использование многомерных БД в системах оперативной аналитической обработки имеет следующие достоинства.

С другой стороны, имеются существенные ограничения.

Следовательно, использование многомерных СУБД оправдано только при следующих условиях.

  1. Объем исходных данных для анализа не слишком велик (не более нескольких гигабайт), то есть уровень агрегации данных достаточно высок.
  2. Набор информационных измерений стабилен (поскольку любое изменение в их структуре почти всегда требует полной перестройки гиперкуба).
  3. Время ответа системы на нерегламентированные запросы является наиболее критичным параметром.
  4. Требуется широкое использование сложных встроенных функций для выполнения кроссмерных вычислений над ячейками гиперкуба, в том числе возможность написания пользовательских функций.
3.2.2. Реляционный OLAP (ROLAP)

Непосредственное использование реляционных БД в качестве исходных данных в системах оперативной аналитической обработки имеет следующие достоинства.

  1. При оперативной аналитической обработке содержимого хранилищ данных инструменты ROLAP позволяют производить анализ непосредственно над хранилищем (потому что в подавляющем большинстве случаев корпоративные хранилища данных реализуются средствами реляционных СУБД).
  2. В случае переменной размерности задачи, когда изменения в структуру измерений приходится вносить достаточно часто, ROLAP системы с динамическим представлением размерности являются оптимальным решением, так как в них такие модификации не требуют физической реорганизации БД.
  3. Системы ROLAP могут функционировать на гораздо менее мощных клиентских станциях, чем системы MOLAP, поскольку основная вычислительная нагрузка в них ложится на сервер, где выполняются сложные аналитические SQL-запросы, формируемые системой.
  4. Реляционные СУБД обеспечивают значительно более высокий уровень защиты данных и разграничения прав доступа.
  5. Реляционные СУБД имеют реальный опыт работы с очень большими базами данных и развитые средства администрирования.

О недостатках ROLAP-систем уже говорилось при перечислении преимуществ использования многомерных баз данных. Это, во-первых, ограниченные возможности с точки зрения расчета значений функционального типа, а во-вторых - меньшая производительность. Для обеспечения сравнимой с MOLAP производительности реляционные системы требуют тщательной проработки схемы БД и специальной настройки индексов. Но в результате этих операций производительность хорошо настроенных реляционных систем при использовании схемы "звезда" вполне сравнима с производительностью систем на основе многомерных баз данных.

Описанию схемы звезды (star schema) и рекомендациям по ее применению полностью посвящены работы [ , , ]. Ее идея заключается в том, что имеются таблицы для каждого измерения, а все факты помещаются в одну таблицу, индексируемую множественным ключом, составленным из ключей отдельных измерений. Каждый луч схемы звезды задает, в терминологии Кодда, направление консолидации данных по соответствующему измерению (например, Магазин - Город/район - Регион).

В общем случае факты имеют разные множества измерений, и тогда их удобно хранить не в одной, а в нескольких таблицах; кроме того, в различных запросах пользователей может интересовать только часть возможных измерений. Но при таком подходе при большом числе независимых измерений необходимо поддерживать множество таблиц фактов, соответствующих каждому возможному сочетанию выбранных в запросе измерений, что приводит к неэкономному использованию внешней памяти, увеличению времени загрузки данных в БД схемы звезды из внешних источников и сложностям администрирования. Для решения этой проблемы авторы работы предлагают специальное расширение для языка SQL (оператор "GROUP BY CUBE" и ключевое слово "ALL") (ПРИМЕЧАНИЕ. В настоящее время это расширение еще не принято, поэтому данное предложение представляет пока чисто академический интерес.), а авторы [ , ] рекомендуют создавать таблицы фактов не для всех возможных сочетаний измерений, а только для наиболее полных (тех, значения ячеек которых не могут быть получены с помощью последующей агрегации ячеек других таблиц фактов базы данных).

В сложных задачах с многоуровневыми измерениями имеет смысл обратиться к расширениям схемы звезды - схеме созвездия (fact constellation schema) [ , С. 10-11] и схеме снежинки (snowflake schema) [ , С. 13-15]. В этих случаях отдельные таблицы фактов создаются для возможных сочетаний уровней обобщения различных измерений. Это позволяет добиться наилучшей производительности, но часто приводит к избыточности данных.

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

Ориентация на представление многомерной информации с помощью звездообразных реляционных моделей позволяет избавиться от проблемы оптимизации хранения разреженных матриц, остро стоящей перед многомерными СУБД (где проблема разреженности решается специальным выбором схемы). Хотя для хранения каждой ячейки в таблице фактов используется целая запись (которая помимо самих значений включает вторичные ключи - ссылки на таблицы измерений), несуществующие значения могут просто не быть включены в таблицу фактов, то есть наличие в базе пустых ячеек исключается. Индексирование обеспечивает приемлемую скорость доступа к данным в таблицах фактов.

4. Интеллектуальный анализ данных

Сфера закономерностей отличается от двух предыдущих тем, что в ней накопленные сведения автоматически обобщаются до информации, которая может быть охарактеризована как знания. Этот процесс чрезвычайно актуален для пользователей сейчас, и важность его будет со временем только расти, так как, согласно закону, приведенному в , "количество информации в мире удваивается каждые 20 месяцев", в то время как "компьютерные технологии, обещавшие фонтан мудрости, пока что только регулируют потоки данных".

Интеллектуальный анализ данных определяется в большинстве публикаций афористически - "извлечение зерен знаний из гор данных" , "разработка данных - по аналогии с разработкой полезных ископаемых" . При этом в английском языке существует два термина, переводимые как ИАД, - Knowledge Discovery in Databases (KDD) и Data Mining (DM). В большинстве работ они используются как синонимы [см., например, , ], хотя некоторые авторы [ , ] рассматривают KDD как более широкое понятие - научное направление, образовавшееся "на пересечении искусственного интеллекта, статистики и теории баз данных" и обеспечивающее процесс извлечения информации из данных и ее использования , а DM - как совокупность индуктивных методов этого процесса, то есть то, что ниже будет определено как стадия свободного поиска ИАД.

Остановимся на следующем определении: ИАД - это процесс поддержки принятия решений, основанный на поиске в данных скрытых закономерностей (шаблонов информации) [ , ]. Следует отметить, что большинство методов ИАД было первоначально разработано в рамках теории искусственного интеллекта (ИИ) в 70-80-х годах, но получили распространение только в последние годы, когда проблема интеллектуализации обработки больших и быстро растущих объемов корпоративных данных потребовала их использования в качестве надстройки над хранилищами данных .

4.2.2. Прогностическое моделирование (Predictive Modeling)

Здесь, на второй стадии ИАД, используются плоды работы первой, то есть найденные в БД закономерности применяются для предсказания неизвестных значений:

  • при классификации нового объекта мы можем с известной уверенностью отнести его к определенной группе результатов рассмотрения известных значений его атрибутов;
  • при прогнозировании динамического процесса результаты определения тренда и периодических колебаний могут быть использованы для вынесения предположений о вероятном развитии некоторого динамического процесса в будущем.

Возвращаясь к рассмотренным примерам, продолжим их на данную стадию. Зная, что некто Иванов - программист, можно быть на 61% уверенным, что его возраст

Следует отметить, что свободный поиск раскрывает общие закономерности, т. е. индуктивен, тогда как любой прогноз выполняет догадки о значениях конкретных неизвестных величин, следовательно, дедуктивен. Кроме того, результирующие конструкции могут быть как прозрачными, т. е. допускающими разумное толкование (как в примере с произведенными логическими правилами), так и нетрактуемыми - "черными ящиками" (например, про построенную и обученную нейронную сеть никто точно не знает, как именно она работает).

4.2.3. Анализ исключений (Forensic Analysis)

Предметом данного анализа являются аномалии в раскрытых закономерностях, то есть необъясненные исключения. Чтобы найти их, следует сначала определить норму (стадия свободного поиска), вслед за чем выделить ее нарушения. Так, определив, что 84% общеобразовательных школ отнесены к муниципальной форме собственности, можно задаться вопросом - что же входит в 16%, составляющих исключение из этого правила? Возможно, им найдется логическое объяснение, которое также может быть оформлено в виде закономерности. Но может также статься, что мы имеем дело с ошибками в исходных данных, и тогда анализ исключений может использоваться в качестве инструмента очистки сведений в хранилище данных .

4.3. Классификация технологических методов ИАД

Все методы ИАД подразделяются на две большие группы по принципу работы с исходными обучающими данными.

  1. В первом случае исходные данные могут храниться в явном детализированном виде и непосредственно использоваться для прогностического моделирования и/или анализа исключений; это так называемые методы рассуждений на основе анализа прецедентов. Главной проблемой этой группы методов является затрудненность их использования на больших объемах данных, хотя именно при анализе больших хранилищ данных методы ИАД приносят наибольшую пользу.
  2. Во втором случае информация вначале извлекается из первичных данных и преобразуется в некоторые формальные конструкции (их вид зависит от конкретного метода). Согласно предыдущей классификации, этот этап выполняется на стадии свободного поиска, которая у методов первой группы в принципе отсутствует. Таким образом, для прогностического моделирования и анализа исключений используются результаты этой стадии, которые гораздо более компактны, чем сами массивы исходных данных. При этом полученные конструкции могут быть либо "прозрачными" (интерпретируемыми), либо "черными ящиками" (нетрактуемыми).

Две эти группы и входящие в них методы представлены на рис. 4.


Рис. 4. Классификация технологических методов ИАД.

4.3.1. Непосредственное использование обучающих данных

Обобщенный алгоритм Lazy-Learning, относящийся к рассматриваемой группе, выглядит так (описание алгоритма взято из ). На вход классификатора подается пример , на выходе ожидается предсказание включающего его класса. Каждый пример представляется точкой в многомерном пространстве свойств (атрибутов) , принадлежащей некоторому классу . Каждый атрибут принимает непрерывные значения либо дискретные значения из фиксированного набора. Для примера возвращается его наиболее вероятный класс.

Индивидуальной особенностью алгоритма k-ближайшего соседа является метод определения в нем апостериорной вероятности принадлежности примера классу:

где возвращает 1, когда аргументы равны, или 0 в противном случае, - функция близости, определяемая как

а - множество k ближайших соседей во множестве известных обучающих примеров, близость которых к классифицируемому примеру определяется функцией расстояния . Метод k-ближайшего соседа рассчитывает расстояние от до каждого по формуле:

причем чаще всего принимается r=2 (эвклидово пространство), а функция в зависимости от типа атрибута определяется следующими способами:

w(f) является функцией веса атрибута f. В чистом алгоритме k-ближайшего соседа:

то есть эта функция считается константой.

Метод ближайшего соседа является частным случаем метода k-ближайшего соседа при k=1. Более сложные алгоритмы типа Lazy-Learning основываются на том же обобщенном алгоритме [ , , ], но или иначе определяют апостериорные вероятности принадлежности примеров классам, или (как, например, Nested Generalized Exemplars Algoritm ) усложняют расчет функции w(f).

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

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

4.3.2. Выявление и использование формализованных закономерностей

Методы этой группы извлекают общие зависимости из множества данных и позволяют затем применять их на практике. Они отличаются друг от друга:

  • по типам извлекаемой информации (которые определяются решаемой задачей - см. классификацию задач ИАД выше);
  • по способу представления найденных закономерностей.

Формализм, выбранный для выражения закономерностей, позволяет выделить три различных подхода, каждый из которых уходит своими корнями в соответствующие разделы математики:

  • методы кросс-табуляции;
  • методы логической индукции;
  • методы вывода уравнений.

Логические методы наиболее универсальны в том смысле, что могут работать как с численными, так и с другими типами атрибутов. Построение уравнений требует приведения всех атрибутов к численному виду, тогда как кросс-табуляция, напротив, требует преобразования каждого численного атрибута в дискретное множество интервалов.

Методы кросс-табуляции

Кросс-табуляция является простой формой анализа, широко используемой в генерации отчетов средствами систем оперативной аналитической обработки (OLAP). Двумерная кросс-таблица представляет собой матрицу значений, каждая ячейка которой лежит на пересечении значений атрибутов. Расширение идеи кросс-табличного представления на случай гиперкубической информационной модели является, как уже говорилось, основой многомерного анализа данных, поэтому эта группа методов может рассматриваться как симбиоз многомерного оперативного анализа и интеллектуального анализа данных.

Кросс-табличная визуализация является наиболее простым воплощением идеи поиска информации в данных методом кросс-табуляции. Строго говоря, этот метод не совсем подходит под отмеченное свойство ИАД - переход инициативы к системе в стадии свободного поиска. На самом деле кросс-табличная визуализация является частью функциональности OLAP. Здесь система только предоставляет матрицу показателей, в которой аналитик может увидеть закономерность. Но само предоставление такой кросс-таблицы имеет целью поиск "шаблонов информации" в данных для поддержки принятия решений, то есть удовлетворяет приведенному определению ИАД. Поэтому неслучайно, что множество авторов [ , , ] все же относит кросс-табличную визуализацию к методам ИАД.

К методам ИАД группы кросс-табуляции относится также использование байесовских сетей (Bayesian Networks) , в основе которых лежит теорема Байеса теории вероятностей для определения апостериорных вероятностей составляющих полную группу попарно несовместных событий по их априорным вероятностям:

Байесовские сети активно использовались для формализации знаний экспертов в экспертных системах , но с недавних пор стали применяться в ИАД для извлечения знаний из данных.

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

Стратегия, применяемая в алгоритмах индукции деревьев решений, называется стратегией разделения и захвата (divide-and-conquer), в противовес стратегии отделения и захвата (separate-and-conquer), на которой построено большое количество алгоритмов индукции правил. Quinlan описал следующий алгоритм разделения и захвата.

Множество атрибутов ;
- множество возможных значений атрибута (таким образом, области определения непрерывных атрибутов для построения деревьев решений также должны быть разбиты на конечное множество интервалов).

Quinlan предложил вычислять E-оценку следующим образом. Пусть для текущего узла:

Число положительных примеров;
- число отрицательных примеров;
- число положительных примеров со значением для ;
- число отрицательных примеров со значением для .

E-оценка - это теоретико-информационная мера, основанная на энтропии. Она показывает меру неопределенности в классификации, возникающей при использовании рассматриваемого атрибута в узле решения. Поэтому считается, что наибольшую классифицирующую силу имеет атрибут с наименьшей E-оценкой. Однако, определенная рассмотренным образом E-оценка имеет и недостатки: она, в частности, предоставляет при построении дерева преимущество атрибутам с большим количеством значений. Поэтому в некоторых работах [ , ] предложены модификации E-оценки, устраняющие эти недостатки.

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

Индукция правил

Популярность деревьев решений проистекает из быстроты их построения и легкости использования при классификации. Более того, деревья решений могут быть легко преобразованы в наборы символьных правил - генерацией одного правила из каждого пути от корня к терминальной вершине. Однако, правила в таком наборе будут неперекрывающимися, потому что в дереве решений каждый пример может быть отнесен к одному и только к одному терминальному узлу. Более общим (и более реальным) является случай существования теории, состоящей из набора неиерархических перекрывающихся символьных правил. Значительная часть алгоритмов, выполняющих индукцию таких наборов правил, объединяются стратегией отделения и захвата (separate-and-conquer), или покрывания (covering) , начало которой положили работы R. Michalski [ , ]. Термин "отделение и захват" сформулировали Pagallo и Haussler , охарактеризовав эту стратегию индукции следующим образом:

  • произвести правило, покрывающее часть обучающего множества;
  • удалить покрытые правилом примеры из обучающего множества (отделение);
  • последовательно обучиться другим правилам, покрывающим группы оставшихся примеров (захват), пока все примеры не будут объяснены.

Рис. 5 показывает общий алгоритм индукции правил методом отделения и захвата . Разные варианты реализации вызываемых в общем алгоритме подпрограмм определяют разнообразие известных методов отделения и захвата.


Рис. 5. Общий алгоритм отделения и захвата для индукции правил.

Алгоритм SEPARATEANDCONQUER начинается с пустой теории. Если в обучающем множестве есть положительные примеры, вызывается подпрограмма FINDBESTRULE для извлечения правила, покрывающего часть положительных примеров. Все покрытые примеры отделяются затем от обучающего множества, произведенное правило включается в теорию, и следующее правило ищется на оставшихся примерах. Правила извлекаются до тех пор, пока не останется положительных примеров или пока не сработает критерий остановки RULESTOPPINGCRITERION. Зачастую полученная теория подвергается постобработке POSTPROCESS.

Процедура FINDBESTRULE ищет в пространстве гипотез правило, которое оптимизирует выбранный критерий качества, описанный в EVALUATERULE. Значение этой эвристической функции, как правило, тем выше, чем больше положительных и меньше отрицательных примеров покрыто правилом-соискателем (candidate rule). FINDBESTRULE обрабатывает Rules, упорядоченный список правил-соискателей, порожденных процедурой INITIALIZERULE.

Новые правила всегда вставляются в нужные места (INSERTSORT), так что Rules постоянно остается списком, упорядоченным по убыванию эвристических оценок правил. В каждом цикле SELECTCANDIDATES отбирает подмножество правил-соискателей, которое затем очищается в REFINERULE. Каждый результат очистки оценивается и вставляется в отсортированный список Rules, если только STOPPINGCRITERION не предотвращает это. Если оценка NewRule лучше, чем у лучшего из ранее найденных правил, значение NewRule присваивается переменной BestRule. FILTERRULES отбирает подмножество упорядоченного списка правил, предназначенное для использования в дальнейших итерациях. Когда все правила-соискатели обработаны, наилучшее правило возвращается.

Основной проблемой, стоящей перед алгоритмами индукции правил, остается избежание переподгонки при использовании зашумленных данных. Средства избежания переподгонки в алгоритмах отделения и захвата могут обрабатывать шум:

Сравнение возможностей деревьев решений и индукции правил

Индукция правил и деревья решений, будучи способами решения одной задачи, значительно отличаются по своим возможностям. Несмотря на широкую распространенность деревьев решений, индукция правил по ряду причин, отмеченных в [ , , ], представляется более предпочтительным подходом.

С другой стороны, индукция правил осуществляется значительно более сложными (и медленными) алгоритмами, чем индукция деревьев решений. Особенно большие трудности возникают с поступрощением построенной теории, в отличие от простоты подрезания деревьев решений, на что обратил внимание Furnkranz : отсечение ветвей в дереве решений никогда не затронет соседние ветви, тогда как отсечение условий правила оказывает влияние на все перекрывающиеся с ним правила (рис. 6).


Рис. 6. Поступрощение в обучающих алгоритмах
(a) разделения и захвата и (b) отделения и захвата.

Рис. 6(a) иллюстрирует работу поступрощения в индукции деревьев решений. Правая половина переусложненного дерева покрывается множествами C и D обучающих примеров. Когда упрощающий алгоритм решает отсечь эти две терминальные вершины, порождающий их узел становится терминальным, который теперь покрывается примерами . Левая ветвь дерева решений не затронута данной операцией.

С другой стороны, отсечение условий от правила означает его обобщение, то есть в новом виде оно будет покрывать больше положительных и больше отрицательных примеров. Следовательно, эти дополнительные положительные и отрицательные примеры должны быть исключены из обучающего множества, дабы не воздействовать на индукцию последующих правил. В случае на рис. 6(b) первое из трех правил упрощается и начинает покрывать не только примеры, покрываемые оригинальной версией, но и все примеры, которые покрывает третье правило, а также часть примеров, которые покрывает второе правило. Если третье правило после этого может быть просто удалено алгоритмом поступрощения, то ситуация с оставшимся множеством примеров B2 не такая простая. Второе правило, естественно, покрывает все примеры множества B2, потому что оно было произведено для покрытия примеров включающего его множества B. Однако вполне может статься, что другое правило окажется более подходящим для отделения положительных примеров B2 от оставшихся отрицательных примеров. Корректная обработка таких ситуаций требует тесной интеграции процессов предупрощения и поступрощения, значительно усложняющей алгоритм индукции правил и ухудшающей его производительность .

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

Методы вывода уравнений

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

Статистика

Классические методы статистического анализа применяются в средствах ИАД чаще всего для решения задачи прогнозирования.

  1. Выявление тенденций динамических рядов. Тенденцию среднего уровня можно представить в виде графика или аналитической функции, вокруг значения которой варьируют фактические значения уровней исследуемого процесса. Часто тенденции среднего уровня называют детерминированной компонентой процесса, и соответствующий динамический pяд выражается уравнением , где - уровень pяда в момент времени t, - детеpминиpованная компонента pяда, - случайная компонента. Детерминированная компонента обычно представляется достаточно простой аналитической функцией - линейной, параболической, гиперболической, экспоненциальной, - параметры которой подбираются согласно историческим данным для лучшей аппроксимации исторических данных.
  2. Гармонический анализ. Во многих случаях сглаживание рядов динамики с помощью определения тренда не дает удовлетворительных результатов, так как в остатках наблюдается автокоppеляция. Причиной автокоppелиpованности остатков могут быть нередко встречающиеся в pядах динамики заметные периодические колебания относительно выделенной тенденции. В таких случаях следует прибегать к гармоническому анализу, то есть к выделению из динамического ряда периодической составляющей. По результатам выделения из динамического ряда тренда и периодической составляющей может выполняться статистический прогноз процесса по принципу экстраполяции, по предположению, что параметры тренда и колебаний сохранятся для прогнозируемого периода [ , С. 304].
  3. Корреляционно-регрессионный анализ. В отличие от функциональной (жестко детерминированной) связи, статистическая (стохастически детерминированная) связь между переменными имеет место тогда, когда с изменением значения одной из них вторая может в определенных пределах принимать любые значения с некоторыми вероятностями, но ее среднее значение или иные статистические характеристики изменяются по определенному закону [ , С. 191-192]. Частным случаем статистической связи, когда различным значениям одной переменной соответствуют различные средние значения другой, является корреляционная связь. В соответствии с сущностью корреляционной связи ее изучение имеет две цели:
    1) измерение параметров уравнения, выражающего связь средних значений зависимых переменных со значениями независимой переменной (зависимость средних значений результативного признака от значений факторных признаков);
    2) измерение тесноты связи признаков между собой [ , С. 195-196].
    Метод корреляционно-регрессионного анализа хорошо изучен [ , 19, 29] и широко применяется на практике. Однако, он имеет ряд ограничений:
    1) для обеспечения достаточной точности и надежности число наблюдений должно быть в десятки или сотни раз больше числа факторов, чтобы закон больших чисел, действуя в полную силу, обеспечил эффективное взаимопогашение случайных отклонений от закономерного характера связи признаков;
    2) для надежного выражения закономерности по средней величине требуется достаточно качественная однородность совокупности, чтобы параметры корреляции не были извращены; кроме того, иногда в качестве условия корреляционного анализа выдвигают необходимость подчинения распределения совокупности по результативному и факторным признакам нормальному закону распределения вероятностей (это условие связано с применением метода наименьших квадратов при расчете параметров корреляции - только при нормальном распределении он дает оценку параметров, отвечающую принципам максимального правдоподобия), хотя на практике даже при приближенном выполнении этой предпосылки метод наименьших квадратов дает неплохие результаты [ , С. 14];
    3) метод корреляционно-регрессионного анализа не может объяснить роли факторных признаков в создании результативного признака [ , С. 198];
    4) интерпретировать корреляционные показатели следует лишь в терминах вариаций результативного и факторного признаков; если же задача состоит в измерении связи между изменениями признаков объекта во времени, то метод корреляционно-регрессионного анализа требует значительных изменений (требуется исследование корреляции рядов динамики) [ ; , С. 307-313].
    Получаемые в результате применения анализа корреляционно-регрессионные модели (КРМ) обычно достаточно хорошо интерпретируемы и могут использоваться в прогностическом моделировании. Но, как отмечается в , невозможно применять этот вид анализа, не имея глубоких знаний в области статистики. Теоретическая подготовка аналитика играет здесь особенно важную роль, поэтому немногие существующие средства ИАД предлагают метод корреляционно-регрессионного анализа в качестве одного из инструментов обработки данных.
  4. Корреляция рядов динамики. Проблема изучения причинных связей во времени очень сложна, и полное решение всех задач такого изучения до сих пор не разработано [ , С. 307]. Основная сложность состоит в том, что при наличии тренда за достаточно длительный промежуток времени большая часть суммы квадратов отклонений связана с трендом; при этом, если два признака имеют тренды с одинаковым направлением изменения уровней, то это вовсе не будет означать причинной зависимости. Следовательно, чтобы получить реальные показатели корреляции, необходимо абстрагироваться от искажающего влияния трендов - вычислить отклонения от трендов и измерить корреляцию колебаний (подробному рассмотрению этого подхода посвящена полностью работа ). Однако, не всегда допустимо переносить выводы о тесноте связи между колебаниями на связь рядов динамики в целом (согласно приведенному в [ , С. 312] примеру, правомерно рассматривать связь между колебаниями урожайности и колебаниями суммы выпавших за лето осадков, но связь между урожайностью и дозой удобрений нельзя свести только к корреляции колебаний).

Нейронные сети

Искусственные нейронные сети как средство обработки информации моделировались по аналогии с известными принципами функционирования биологических нейронных сетей. Их структура базируется на следующих допущениях [ , С. 3]:

  • обработка информации осуществляется во множестве простых элементов - нейронов;
  • сигналы между нейронами передаются по связям от выходов ко входам;
  • каждая связь характеризуется весом, на который умножается передаваемый по ней сигнал;
  • каждый нейрон имеет активационную функцию (как правило, нелинейную), аргумент которой рассчитывается как сумма взвешенных входных сигналов, а результат считается выходным сигналом.

Таким образом, нейронные сети представляют собой наборы соединенных узлов, каждый из которых имеет вход, выход и активационную функцию (как правило, нелинейную) (рис. 7). Они обладают способностью обучаться на известном наборе примеров обучающего множества. Обученная нейронная сеть представляет собой "черный ящик" (нетрактуемую или очень сложно трактуемую прогностическую модель), которая может быть применена в задачах классификации, кластеризации и прогнозирования .


Рис. 7. Нейрон с активационной функцией F; .

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

Чаще всего средства ИАД используют специальный тип нейронных сетей, обучаемых "с учителем", - многослойные персептроны [ , С. 54-55]. На рис. 8 изображена такая нейронная сеть с двумя слоями нейронов, имеющая три входных и три выходных переменных (в общем случае количество входов, количество выходов, число слоев и число нейронов в каждом внутреннем слое могут быть какими угодно). Выход каждого нейрона предыдущего слоя соединен со входом каждого нейрона последующего слоя.


Рис. 8. Многослойный персептрон, обучаемый процедурой обратного распространения ошибки.

Настройка весов многослойного персептрона осуществляется алгоритмом обратного распространения ошибки [ , С. 56-69]. При обучении предполагается, что для каждого входного вектора (множества входов) существует парный ему целевой вектор (множество выходов), и вместе они образуют обучающую пару (пример). Перед началом обучения всем весам должны быть присвоены небольшие начальные значения, выбранные случайным образом, для преодтвращения патологических случаев невозможности обучения. Все множество обучающих пар составляет обучающее множество. Обучение сети требует выполнения следующих операций:

  1. выбрать обучающую пару из обучающего множества;
  2. подать входной вектор обучающей пары на вход сети;
  3. вычислить выход сети;
  4. вычислить разность между выходом сети и целевым вектором обучающей пары;
  5. скорректировать веса сети, чтобы минимизировать ошибку;
  6. повторять шаги 1-5 для каждой пары обучающего множества до тех пор, пока ошибка на всем множестве не достигнет допустимого уровня.

Обучение методом обратного распространения ошибки ведется послойно, начиная от выходного слоя, шагами 4 и 5.

Являясь "универсальными аппроксиматорами", персептроны могут обучиться достаточно сложным закономерностям в отличие от регрессионных моделей, в которых вид аппроксимирующей функции подбирается из ограниченного возможного набора. Но эта гибкость имеет и оборотную сторону - количество степеней свободы создаваемой прогностической модели часто превышает число использовавшихся для обучения примеров. Это означает, что нейросеть может "научиться" даже на массиве сгенерированных случайных чисел. И действительно, как показывает применение нейросети для решения тестовой задачи по анализу рынка акций, приведенной в , она прекрасно объясняет все колебания рынка в прошлом, но не дает обоснованного прогноза на будущее. Улучшение прогностической точности обученной сети может быть достигнуто при использовании для обучения нейронной сети только некоторой части обучающего множества, тогда как оставшаяся часть примеров используется для проверки адекватности созданной модели на неизвестных данных; одновременно следует стараться обучить сеть как можно менее сложной конфигурации для уменьшения числа степеней свободы.

Имеется и ряд других недостатков, ограничивающих использование нейронных сетей в качестве инструмента ИАД.

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

Таким образом, нейронные сети - довольно мощный и гибкий инструмент ИАД - должны применяться с известной осторожностью и подходят не для всех проблем, требующих интеллектуального анализа корпоративных данных.

4.3.3. Выводы

Как видно из сделанного обзора, ни один из рассмотренных методов не способен покрыть все задачи, обеспечивающие поддержку принятия управленческих решений на основе интеллектуального анализа содержимого хранилищ данных. Но большинство существующих на рынке систем интеллектуального анализа реализуют один-три метода (например, Pilot Discovery Server фирмы Pilot Software Inc. и Information Harvester фирмы Information Harvester Corp. - только деревья решений, Idis фирмы Information Discovery Inc. - деревья решений и индукцию правил, Darwin фирмы Thinking Machines - нейронные сети, деревья решений и визуализацию данных , MineSet фирмы Silicon Graphics - деревья решений, индукцию ассоциативных правил и визуализацию данных ), поэтому в реальных приложениях для того, чтобы не потерять большое количество значимых закономерностей, приходится, как правило, пользоваться несколькими разнородными инструментами. Кроме того, многие инструменты не позволяют напрямую работать с хранилищами данных, требуя предварительной подготовки исходных данных для анализа в виде плоских файлов фиксированной структуры, что также затрудняет их практическое использование.

5. Взаимодополняемость OLAP и ИАД

Оперативная аналитическая обработка и интеллектуалный анализ данных - две составные части процесса поддержки принятия решений. Но сегодня большинство систем OLAP заостряет внимание только на обеспечении доступа к многомерным данным, а большинство средств ИАД, работающих в сфере закономерностей, имеют дело с одномерными перспективами данных. Эти два вида анализа должны быть тесно объединены, то есть системы OLAP должны фокусироваться не только на доступе, но и на поиске закономерностей.


Рис. 9. Архитектура системы многомерного интеллектуального анализа данных.

Идеальной целью построения корпоративной информационно-аналитической системы является создание СППР замкнутого цикла. Как заметил N. Raden, "многие компании создали... прекрасные хранилища данных, идеально разложив по полочкам горы неиспользуемой информации, которая сама по себе не обеспечивает ни быстрой, ни достаточно грамотной реакции на рыночные события" [ , С. 39]. В особенно динамичных сферах (например, в розничной торговле), где ситуация меняется ежедневно, своевременное принятие грамотных решений не обеспечивается даже при использовании обычных средств OLAP и ИАД. Они должны быть объединены друг с другом и иметь обратную связь к исходным системам обработки данных, с тем чтобы результаты работы СППР немедленно передавались в виде управляющих воздействий в оперативные системы. Так, крупнейшая американская компания в сфере розничной торговли Wal-Mart занимается разработкой СППР замкнутого цикла ;

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

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

8.3.1. Средства On-Line Analytical Processing (OLAP)

On-Line Analytical Processing - средства оперативной (в реальном масштабе времени) аналитической обработки информации, направленные на поддержку принятия решений и помогающие аналитикам отвечать на вопрос «Почему объекты, среды и результаты их взаимодействия такие, а не другие?». При этом аналитик сам формирует версии отношений между множеством информации и проверяет их на основе имеющихся данных в соответствующих базах структурированной информации.

Для ERP-систем характерно наличие аналитических компонент в составе функциональных подсистем. Они обеспечивают формирование аналитической информации в режиме реального времени. Эта информация является основой большинства управленческих решений.

Технологии OLAP используют гиперкубы - специально структурированные данные (иначе называемые OLAP-кубами). В структуре данных гиперкуба различают:

Меры - количественные показатели (реквизиты-основания), используемые для формирования сводных статистических итогов;

Измерения - описательные категории (реквизиты-признаки), в разрезе которых анализируются меры.

Размерность гиперкуба определяется числом измерений для одной меры. Например, гиперкуб СБЫТ содержит данные:

Измерения: потребители, даты операций, группы товаров, номенклатура, модификации, упаковки, склады, виды оплаты, виды отгрузки, тарифы, валюта, организации, подразделения, ответственные, каналы распределения, регионы, города;

Меры: количество плановое, количество фактическое, сумма плановая, сумма фактическая, платежи плановые, платежи фактические, сальдо плановое, сальдо фактическое, цена реализации, срок исполнения заказа, сумма возврата.

Такой гиперкуб предназначен для аналитических отчетов:

Классификация потребителей по объемам покупок;

Классификация продаваемых товаров по методу ABC;

Анализ сроков исполнения заказов различных потребителей;

Анализ объемов продаж по периодам, товарам и группам товаров, регионам и потребителям, внутренним подразделениям, менеджерам и каналам сбыта;

Прогноз взаиморасчетов с потребителями;

Анализ возврата товаров от потребителей; и т.д.

Аналитические отчеты могут иметь произвольное сочетание измерений и мер, они используются для анализа принимаемых управленческих решений. Аналитическая обработка обеспечивается инструментальными и языковыми средствами. В общедоступной электронной таблице MS Excel представлена информационная технология «Сводные таблицы», исходными данными для их создания являются:

Список (база данных) MS Excel - реляционная таблица;

Другая сводная таблица MS Excel;

Консолидированный диапазон ячеек MS Excel, расположенных в одной и той же или различных рабочих книгах;

Внешняя реляционная БД или OLAP-куб, источник данных (файлы формата.dsn, .ode).

Для построения сводных таблиц на основе внешних БД используют драйверы ODBC, а также программу MS Query. Сводная таблица для исходной БД MS Excel имеет следующую структуру (рис. 8.3).

Макет сводной таблицы имеет следующую структуру данных (рис. 8.4): измерения - код подразделения, должность; меры - стаж работы, оклад и премия. Ниже представлена сводная табл. 8.2, которая позволяет проанализировать связь среднего стажа работы и оклада, среднего стажа работы и премии, оклада и премии.

Таблица 8.2

Сводная таблица для анализа связей

Окончание табл. 8.2

Для продолжения анализа средствами сводной таблицы можно:

Добавить новые итоговые показатели (например, средний оклад, средняя сумма премии и т.п.);

Использовать фильтрации записей и итогов сводной таблицы (например, по признаку «Пол», который помещается в макете в область * Страница»);

Вычислить структурные показатели (например, распределение фондов оплаты труда и фонда премии по подразделениям - с помощью средств дополнительной обработки сводных таблиц, доли от суммы по столбцу); и т.д.

Совокупность программ MS Office позволяет публиковать данные электронных таблиц, включая сводные таблицы и диаграммы в формате XTML.

Компонент Microsoft Office Web Components поддерживает работу с опубликованными данными в среде Internet Explorer, обеспечивая продолжение анализа (изменения структуры данных сводной таблицы, вычисление новых сводных итогов).

8.3.2. Средства Data Mining (DM)

Средства DM подразумевают извлечение («раскопку», «добычу») данных и направлены на выявление отношений между информацией, хранящейся в цифровых базах данных предприятия, которые аналитик может использовать для Построения моделей, позволяющих количественно оценить степень влияния интересующих его факторов. Кроме этого, такие средства могут быть полезны для построения гипотез о возможном характере отношений информации в цифровых базах данных предприятия.

Технология добычи текстовых данных (Text Mining - ТМ) представляет собой набор инструментов, позволяющий анализировать большие наборы информации в поисках тенденций, шаблонов и взаимосвязей, способные помочь в принятии стратегических решений.

Технология Image Mining (IM), содержит средства для распознавания и классификации различных визуальных образов, хранящихся в базах данных предприятия или полученных в результате оперативного поиска из внешних информационных источников.

Для решения проблем по обработке и хранению всех данных используют следующие подходы:

1) создание нескольких систем резервного копирования или одной системы распределенного документооборота, которые позволяют сохранять данные, но обладают медленным доступом к сохраненной информации по запросу пользователя;

2) построение Интернет-систем, обладающих высокой гибкостью, но не приспособленных для реализации поиска и хранения текстовых документов;

3) внедрение Интернет-порталов, которые хорошо ориентированны на запросы пользователей, но не обладают описательной информацией относительно загружаемых в них текстовых данных.

Системы обработки текстовой информации, свободные от перечисленных выше проблем, можно разделить на две категории: системы лингвистического анализа и системы анализа текстовых данных.

Основными элементами технологии Text Mining являются:

Суммаризация (summarization);

Тематический поиск (feature extraction);

Кластеризация (clustering);

Классификация (classification);

Ответ на запросы (question answering);

Тематическое индексирование (thematic indexing);

Поиск по ключевым словам (keyword searching);

Создание и поддержка офтаксономии (oftaxonomies) и тезаурусов (thesauri).

К программным продуктам, реализующим технологию Text Mining, относятся:

IBM Intelligent Miner for Text - набор отдельных утилит, запускаемых из командной строки, или скиптов; независимых друг от друга (основной упор делается на механизмы добычи данных - information retrieval);

Oracle InterMedia Text - набор, интегрированный в СУБД, позволяющий наиболее эффективно работать с запросами пользователей (позволяет работать с современными реляционными СУБД в контексте сложного многоцелевого поиска и анализа текстовых данных);

Megaputer Text Analyst - набор встраиваемых в программу COM - объектов, предназначенных для решения задач Text Mining.

8.3.3. Интеллектуальные информационные технологии

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

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

Под интеллектуальными информационными технологиями (ИТТ) обычно понимают такие информационные технологии, в которых предусмотрены следующие возможности:

Наличие баз знаний, отражающих опыт конкретных людей, групп, обществ, человечества в целом, при решении творческих задач в определенных сферах деятельности, традиционно считавшихся прерогативой интеллекта человека (например, такие плохо формализуемые задачи, как принятие решений, проектирование, извлечение смысла, объяснение, обучение и т.п.);

Наличие моделей мышления на основе баз знаний: правил и логических выводов, аргументации и рассуждения, распознавания и классификации ситуаций, обобщения и понимания и т.п.;

Способность формировать вполне четкие решения на основе нечетких, нестрогих, неполных, недоопределенных данных;

Способность объяснять выводы и решения, т.е. наличие механизма объяснений;

Способность к обучению, переобучению и, следовательно, к развитию.

Технологии неформализованного поиска скрытых закономерностей в данных и информации Knowledge Discovery (KD) базируются на новейших технологиях формирования и структурирования информационных образов объектов, что ближе всего лежит к принципам обработки информации интеллектуальными системами.

Информационные технологии поддержки процесса принятия решений Decision Support (DS) представляют собой оболочки эксперт-

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

Тенденции развития ИИТ. Системы связи и коммуникаций. Глобальные информационные сети и ИИТ могут в корне поменять наши представления о компаниях и самом умственном труде. Присутствие сотрудников на рабочем месте станет практически не нужным. Люди могут работать дома и взаимодействовать друг с другом при необходимости через сети. Известен, например, успешный опыт создания новой модификации самолета «Боинг-747» распределенным коллективом специалистов, взаимодействующих по Интернет. Местонахождение участников каких-либо разработок будет играть все меньшую роль, зато возрастает значение уровня квалификации участников. Другая причина, определившая бурное развитие ИИТ, связана с усложнением систем коммуникации и решаемых на их основе задач. Потребовался качественно новый уровень «интеллектуализации» таких программных продуктов, как системы анализа разнородных и нестрогих данных, обеспечения информационной безопасности, выработки решений в распределенных системах и т.п.

Образование . Уже сегодня дистанционное обучение начинает играть важную роль в образовании, а внедрение ИИТ позволит существенно индивидуализировать этот процесс сообразно с потребностями и способностями каждого обучаемого.

Быт . Информатизация быта уже началась, но с развитием ИИТ появятся принципиально новые возможности. Постепенно компьютеру будут передаваться все новые функции: контроль над состоянием здоровья пользователя, управление бытовыми приборами, такими как увлажнители, освежители воздуха, обогреватели, ионизаторы, музыкальные центры, средства медицинской диагностики и т.п. Другими словами, системы станут еще и диагностами состояния человека и его жилища. Будет обеспечено комфортное информационное пространство в помещениях, где информационная среда станет частью окружающей человека среды.

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

вых теорий и представлений. Узловыми точками в развитии ИИТ считаются:

Переход от логического вывода к моделям аргументации и рассуждения;

Поиск релевантных знаний и порождение объяснений;

Понимание и синтез текстов;

Когнитивная графика, т.е. графическое и образное представление знаний;

Мультиагентные системы;

Интеллектуальные сетевые модели;

Вычисления, основанные на нечеткой логике, нейронных сетях, генетических алгоритмах, вероятностных вычислениях (реализуемых в различных комбинациях друг с другом и с экспертными системами);

Проблема метазнаний.

Новой парадигмой создания перспективных ИИТ стали мультиагентные системы. Здесь предполагается, что агент - это самостоятельная интеллектуальная система, имеющая свою систему целеполагания и мотивации, свою область действий и ответственности. Взаимодействие между агентами обеспечивается системой более высокого уровня - метаинтеллектом. В мультиагентных системах моделируется виртуальное сообщество интеллектуальных агентов - объектов, которые автономны, активны, вступают в различные социальные отношения - кооперации и сотрудничества (дружбы), конкуренции, соревнования, вражды и т.п. Социальный аспект решения современных задач и есть фундаментальная особенность концептуальной новизны передовых интеллектуальных технологий - виртуальных организаций, виртуального общества.

(?) Контрольные вопросы и задания

1. Дайте характеристику предприятия как объекта информатизации. Назовите основные показатели, характеризующие развитие системы управления предприятием.

2. Перечислите ведущие информационные технологии управления промышленным предприятием.

3. Назовите основные информационные технологии организационного и стратегического развития предприятий (корпорации).

4. Каковы основы стандартов стратегического управления, направленного на улучшение бизнес-процессов? Каково соотношение информационных технологий ВРМ и BPI?

5. Дайте определение философии всеобщего управления качеством (TQM). Как связаны фазы развития качества и информационные технологии?

6. Назовите основные положения организационного развития предприятия, охарактеризуйте этапы стратегического управления. Назовите групповые стратегии.

7. Как создается бизнес-модель предприятия? Назовите основные подходы к оценке эффективности бизнес-модели.

8. Что такое система сбалансированных показателей? Назовите основные составляющие ССП. Каковы взаимосвязи групп показателей ССП?

9. Перечислите методические основы создания информационных систем. Что такое системный подход?

10. Что такое информационный подход к формированию информационных систем и технологий?

11. Что такое стратегический подход к формированию информационных систем и технологий?

12. Каково содержание объектно-ориентированного подхода к описанию поведения агентов на рынке? Дайте определение объекта, укажите аналоги агентных систем.

13. Каковы методические принципы совершенствования управления предприятием на основе информационно-коммуникационных технологий? Каково целевое назначение ИКТ?

14. Дайте определения документа, документопотока, документооборота, системы документационного управления.

15. Как проектируется макет формы документа? Назовите зоны документа, состав их реквизитов.

16. Назовите базовые информационные технологии системы документационного управления.

17. Что такое унифицированная система документации? Каковы общие принципы унификации?

18. Дайте характеристику организационно-распорядительной документации, приведите примеры документов.

19. Каким требованиям должна удовлетворять электронная система управления документооборотом?

20. Что такое корпоративная информационная система? Назовите основные контуры управления, состав функциональных модулей.

21. Назовите известные вам программные продукты для КИС. Дайте их сравнительную характеристику.

Ш Литература

1. Вернет Дж., Мориарти С. Маркетинговые коммуникации. Интегрированный подход. СПб.; Харьков: Питер, 2001.

2. Брукинг Э. Интеллектуальный капитал. Ключ к успеху в новом тысячелетии. СПб.: Питер, 2001.

3. Годин В.В., Корпев И.К. Управление информационными ресурсами. М.: ИНФРА-М, 1999.

4. Информационные системы и технологии в экономике: Учебник. 2-е изд., доп. и перераб. / М.И. Семенов, И.Т. Трубилин, В.И. Лойко, Т.П. Барановская; Под ред. В.И. Лойко. М.: Финансы и статистика, 2003.

5. Информационные технологии в бизнесе / Под ред. М. Желены. СПб.: Питер, 2002.

6. Каплан Роберт С., Нортон Дейвид П. Сбалансированная система показателей. От стратегии к действию / Пер. с англ. М.: ЗАО «Олимп-Бизнес», 2003.

7. Карагодин В.И., Карагодина BJI. Информация как основа жизни. Дубна: Феникс, 2000.

8. Карминский AM., Нестеров ПЗ. Информатизация бизнеса. М.: Финансы и статистика, 1997.

9. Лихачева Т.Н. Информационные технологии на службе информационного общества // Новые информационные технологии в экономических системах. М., 1999.

10. Острейковский В.А. Теория систем. М.: Высшая школа, 1997.

11. Питеркин С.В., Оладов Н.А., Исаев Д.В. Точно вовремя для России. Практика применения ERP-систем. 2-е изд. М.: Альпина Паблишер, 2003.

12. Соколов Д.В. Введение в теорию социальной коммуникации: Учеб. пособие. СПб.: Изд-во СП6ГУП, 1996.

13. Трофимов В.З., Томилов В.З. Информационно-коммуникационные технологии в менеджменте: Учеб. пособие. СПб.: Изд-во СПбГУЭФ, 2002.

Можно выделить два класса систем, обеспечивающих аналитическую обработку данных. Исторически первыми возникли системы, реализующие статистический анализ. Результаты работы этих систем - построенные графики, диаграммы, регламентированные отчеты, обладающие фиксированной формой и лишенные гибкости. В таких отчетах нельзя изменить представление данных: поменять столбцы со строками, укрупнить, детализировать и т.п. Как показывает опыт, при просмотре таких отчетов у менеджеров возникают не решения, а вопросы, влекущие за собой построение дополнительных отчетов, что требует времени и ресурсов и снижает оперативность принимаемого решения. Необходимость достаточно быстрого получения ответов на нерегламенгированные запросы, которые возникают в ходе анализа данных, привела к появлению систем оперативной аналитической обработки данных.

OLAP - это класс программного обеспечения, обеспечивающий пользователю возможность в режиме реального времени получать ответы на произвольные аналитические запросы.

OLAP предоставляет аналитику гибкие механизмы манипулирования данными и их визуального отображения, с помощью которых он имеет возможность сопоставить различные показатели бизнеса между собой, выявить скрытые взаимосвязи. Фактически, с точки зрения ЛИР, OLAP является удобной графической оболочкой для навигации, визуализации и анализа в различных разрезах огромного количества взаимосвязанной информации о деятельности организации, поступающей из ИС организации.

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

В простейшем случае куб содержит два измерения и может быть представлен в виде двумерной таблицы, например, включает в себя данные о продажах разных товаров за разные периоды времени. В случае трех измерений куб можно представить графически, как это изображено на рис. 3.4. Строго говоря, с точки зрения математики такой массив будет кубом далеко не всегда, гак как количество элементов у разных измерений, которые являются «сторонами» куба, может быть неодинаковым - у OLAP-куба таких ограничений нет.

Рис. 3.4.

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

Если трехмерный куб можно представить графически, то куб с количеством измерений более трех визуализировать уже невозможно. Поэтому в реальности для анализа используют срезы куба. - это результат выборки данных куба по выбранным пользователем значениям измерений, которые называются метками (members). Например, аналитик хочет сравнить продажи трех групп товаров в Москве и Санкт-Петербурге за январь и февраль. В этом случае он должен расположить значения измерения «Товар» по строкам, значения измерений «Город» и «Время» - по столбцам и выбрать в измерениях интересующие его позиции. Срез куба будет иметь вид, представленный на рис. 3.5.


Рис. 3.5.

Возможен вариант, когда аналитику нужно получить данные, соответствующие одному значению измерения или по всем значениям измерения в целом. В этом случае такое измерение называют фиксированным, оно не располагается по строкам или столбцам, а выступает в качестве параметра отчета (рис. 3.6).


Рис. 3.6.

Некоторые измерения могут иметь несколько уровней. Например, год делится на кварталы, кварталы на месяцы, месяцы на недели, недели на дни; страна состоит из регионов, регионы - из населенных пунктов, в городах можно выделить районы и конкретные торговые точки; товары можно объединять в товарные группы. В терминах OLAP такие многоуровневые объединения называются иерархиями. Иерархические измерения позволяют анализировать информацию на разных уровнях агрегации. Например, аналитик может сравнивать общие годовые продажи, а затем «спуститься» на уровень кварталов, чтобы увидеть динамику продаж по кварталам.

OLAP предоставляет удобную и красивую оболочку для навигации по многомерным данным. В рамках предлагаемого интерфейса вводятся следующие базовые операции:

  • поворот - транспонирование, в результате которого меняются местами строки и столбцы таблицы;
  • проекция - агрегирование значений в ячейках, лежащих на оси проекции, по определенному закону (суммирование, нахождение среднего, определение количества непустых ячеек и др.);
  • раскрытие, или детализация (drill-down), - замена одного из значений измерения совокупностью значений из следующего уровня иерархии измерения;
  • свертка, или консолидация (roll-up/drill-up), - операция, обратная раскрытию;
  • сечение (slice-and-dice) - получение «среза» данных путем задания параметров их выборки из куба.

В общем случае алгоритм работы OLAP включает в себя выполнение следующих действий:

  • получение данных в виде плоской таблицы или результата выполнения SQL-запроса;
  • сохранение данных в оперативной памяти и преобразование их к многомерному кубу;
  • отображение построенного куба с помощью кросс-таблицы или диаграммы. В общем случае к одному кубу может быть подключено произвольное количество отображений.

Впервые определение OLAP-технологии было дано Е. Коддом в 1993 г . Коддом были описаны возможности многомерного анализа и сформулированы 12 правил OLAP, к которым чуть позже (в 1995 г.) были добавлены еще несколько. Рассмотрим их подробнее.

  • 1. Многомерное концептуальное представление данных (Multi- Dimensional Conceptual View). В продукте OLAP используется многомерная модель представления данных, при которой категориальные атрибуты данных рассматриваются как измерения, а количественные - как факты.
  • 2. Прозрачность (Transparency). От пользователя должно быть скрыто, как реализована многомерная модель, какие конкретные средства используются для хранения и обработки данных, как данные организованы и откуда берутся.
  • 3. Доступность (Accessibility). Инструментарий OLAP должен обеспечивать пользователю доступ к данным независимо от их места и способа хранения. При этом должна поддерживаться единая, согласованная и целостная модель данных.
  • 4. Устойчивая производительность (Consistent Reporting Performance). Должна быть обеспечена высокая производительность OLAP независимо от количества измерений многомерной модели и размеров базы данных.
  • 5. Клиент-серверная архитектура (Client-Server Architecture). Для обеспечения оперативной аналитической обработки распределенных данных OLAP-продукт должен работать на основе клиент-серверной архитектуры. Для обобщения и консолидации данных из различных физически разделенных корпоративных баз данных инструмент должен поддерживать построение общей концептуальной схемы данных.
  • 6. Равноправие измерений (Generic Dimensionality). Для всех измерений в многомерном кубе должен быть доступен одинаковый набор функций. При необходимости любому измерению могут быть добавлены дополнительные характеристики. Базовая структура данных, формулы расчета и форматы отчетов не должны быть привязаны к какому-то одному измерению.
  • 7. Динамическая обработка разреженных матриц (Dynamic Sparse Matrix Handling). Поскольку кросс-таблицы, формируемые инструментом OLAP, часто бывают разреженными, должна обеспечиваться их оптимальная обработка. Инструмент должен обеспечивать высокую скорость обработки вне зависимости от расположения ячеек данных, от количества измерений в кубе и разреженности данных.
  • 8. Поддержка многопользовательского режима (Multi-User Support). Инструмент OLAP должен позволять работать с одними и теми же данными одновременно нескольким пользователям и обеспечивать при этом целостность и защиту данных.
  • 9. Неограниченная поддержка кроссмерных операций (Unrestricted Crossdimensional Operations). При выполнении манипуляций данными (операций среза, поворота, консолидации, детализации) должно обеспечиваться сохранение функциональных отношений между ячейками многомерного куба, описанных с помощью формул. Преобразования установленных отношений должны выполняться системой самостоятельно, без необходимости их переопределения пользователем.
  • 10. Интуитивное манипулирование данными (Intuitive Data Manipulation). Пользовательский интерфейс для выполнения манипуляций данными должен быть максимально удобным, естественным и комфортным.

И. Гибкий механизм формирования отчетов (Flexible Reporting). Инструментом OLAP должны поддерживаться различные способы визуализации данных (таблицы, графики, карты) в любой возможной ориентации.

12. Неограниченное количество измерений и уровней агрегации (Unlimited Dimensions and Aggregation Levels). OLAP-инструмент должен поддерживать аналитическую модель данных, в которой может содержаться до 20 измерений. При этом инструмент должен позволять пользователю определять для каждого измерения неограниченное количество уровней агрегации по любому направлению консолидации.

Для определения OLAP как аналитического инструмента в качестве универсального критерия используется тест FASMI (Fast Analysis of Shared Multidimensional Information - быстрый анализ разделяемой многомерной информации). Рассмотрим детально каждую из составляющих этой аббревиатуры.

Fast (быстрый). Запросы пользователей должны обрабатываться OLAP- системой с высокой скоростью, при этом среднее время обработки запроса не должно превышать 5 с, большинство запросов должно обрабатываться в пределах 1 с, самые сложные запросы, требующие больших вычислений, должны обрабатываться не более 20 с.

Analysis (анализ). OLAP-инструмент должен предоставлять пользователю средства статистического анализа и обеспечивать сохранение результатов в виде, доступном для конечного пользователя. Средства анализа могут включать в себя процедуры анализа временных рядов, дисперсионного анализа, расчета темпов роста и прироста, расчета структурных показателей, перевода в различные единицы измерений и др.

Shared (разделяемый доступ). OLAP-инструмент должен обеспечивать работу в многопользовательском режиме.

Multidimensional (многомерный). OLAP-приложение должно обеспечивать многомерное представление данных с поддержкой иерархических измерений.

Information (информация). OLAP-инструмент должен предоставлять доступ пользователю к информации независимо от того, в каком электронном хранилище данных она находится.

В зависимости от ответа на вопрос, существует ли многомерный куб как отдельная физическая структура или лишь как виртуальная модель данных, различают системы MOLAP (Multidimensional OLAP) и ROLAP (Relational OLAP). В MOLAP реализуется многомерное представление данных на физическом уровне в виде многомерных кубов. Системы ROLAP используют классическую реляционную модель, характерную для OLTP-систем. При этом данные хранятся в реляционных таблицах, но специальные структуры эмулируют их многомерное представление. Также выделяют гибридные OLAP (HOLAP - Hybrid OLAP), в которых детализированные данные хранятся в реляционных таблицах, а агрегированные данные - в многомерных кубах. Такая комбинация реляционной и многомерной моделей позволяет сочетать высокую производительность, характерную для многомерной модели, и возможность хранить сколь угодно большие массивы данных, присущую реляционной модели.

  • Codd Е. Providing OLAP to User-Analysts: An IT Mandate // Computerworld. 1993. T. 27.№30.