WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!

Pages:     | 1 || 3 |

«Московская финансово-промышленная академия Алексеева Т.В., Лужецкий М.Г., Курганова Е.В. ...»

-- [ Страница 2 ] --

Исключение можно сделать, пожалуй, только для клиентских OLAP средств, поскольку в силу ряда ограничений они не могут манипулировать большими объемами данных.

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

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

Каждая таблица измерений должна находиться в отношении «один ко многим» с таблицей фактов.

Отметим, что скорость роста таблиц измерений должна быть незначительной по сравнению со скоростью роста таблицы фактов;

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

Рис. 4. Таблица измерений Одно измерение куба может содержаться как в одной таблице (в том числе и при наличии нескольких уровней иерархии), так и в нескольких связанных таблицах, соответствующих различным уровням иерархии в измерении. Если каждое измерение содержится в одной таблице, такая схема хранилища данных носит название «звезда» (star schema). Пример такой схемы приведен на рис. 5.

Таблица измерений Сотрудник Таблица Таблица Таблица измерений измерений фактов Клиент Продукт Таблица Таблица измерений измерений Время Грузоотправитель Рис. 5. Пример схемы «звезда» Если же хотя бы одно измерение содержится в нескольких связанных таблицах, такая схема хранилища данных носит название «снежинка» (snowflake schema). Дополнительные таблицы измерений в такой схеме, обычно соответствующие верхним уровням иерархии измерения, находятся в соотношении «один ко многим» с главной таблицей измерений, соответствующей нижнему уровню иерархии.

Пример схемы «снежинка» приведен на рис. 6.

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

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

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

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

США Россия Франция Нью-Йорк Москва Воронеж Париж Лион Фирма Фирма Фирма Фирма Фирма Фирма Фирма Фирма А В С К N D L M Рис. 7. Иерархия в измерении, связанная с географическим положением клиентов Отметим, что иерархии могут быть сбалансированными (balanced), как, например, иерархия, представленная на рис. 3, а также иерархии, основанные на данных типа "дата—время", и несбалансированными (unbalanced). Типичный пример несбалансированной иерархии — иерархия типа "начальник—подчиненный" (рис. 8).

Генеральный директор Финансовый директор Директор по кадрам Начальник производства Начальник 1 цеха Начальник 2 цеха Рис. 8. Несбалансированная иерархия Существуют также иерархии, занимающие промежуточное положение между сбалансированными и несбалансированными (они обозначаются термином ragged — "неровный"). Обычно они содержат такие члены, логические "родители" которых находятся не на непосредственно вышестоящем уровне. Например, в географической иерархии есть уровни Страна, Города и Штаты, но при этом в наборе данных имеются страны, не имеющие штатов или регионов между уровнями Страна и Города.

4. Вопросы реализации Хранилищ Данных Аналитические системы предъявляют высокие требования к аппаратному и программному обеспечению. И, приступая к построению аналитической системы, следует понимать, что её реализация практически невозможна без разрешения таких вопросов как:

• Неоднородность программной среды.

• Распределенность.

• Защиты данных от несанкционированного доступа.

• Построения и ведения многоуровневых справочников метаданных.

• Эффективное хранение и обработка очень больших объемов данных.

Неоднородность программной среды.

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

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

Распределенность.

Хранилища Данных уже по своей природе являются распределенным решением.

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

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

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

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

Причем, эта модель должна содержать описания не только целевых структур данных в БД Хранилища, но и структур данных в источниках их получения (различных информационных системах, архивах, электронных справочниках и т.д.), правила, процедуры и периодичность их выборки и выгрузки, процедуры и места согласования и агрегации.

Здесь следует сделать несколько замечаний относительно выбора конкретных средств проектирования. Как уже было сказано выше, характерными свойствами аналитической системы, является:

o Разнородность компонент.

o Ориентированность на нерегламентированную работу с данными.

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

Роль метаданных в системах Хранилищ Данных В случае информационных систем ориентированных на аналитическую работу с данными (таблица 4) наличие метаданных и средств их представления конечным пользователям является одним из основополагающих факторов успешной реализации системы. Для конечного пользователя, база метаданных является тем же самым, что и путеводитель для туриста, попавшего в незнакомый город. Прежде чем сформулировать свой вопрос к системе, менеджер должен понять, какая информация в ней есть, её актуальность, насколько ей можно доверять и даже, сколько времени может занять формирование ответа. Поэтому, для конечного пользователя крайне важно и желательно, чтобы в системе содержались не только описания собственно структур данных, их взаимосвязей, предвычисленных уровней агрегации, но, и:

• Источников получения данных. Аналитику желательно не просто знать о том, какие данные есть в системе, но и источники их получения, и степень их достоверности. Например, одна и та же информация может попасть в Хранилище Данных из различных источников. В этом случае, пользователь должен иметь возможность узнать какой источник выбран в качестве основного и каким образом выполнялась согласование и очистка исходных данных.

• Периодичности обновления. Пользователю желательно не просто знать, какому моменту времени соответствуют те или иные данные, но и когда они будут обновлены.

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

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

Таблица 4.

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

Уровень конечного Описывает структуры данных в пользователя Хранилище Данных в терминах предметной области конечного пользователя.

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

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

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

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

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

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

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

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

Для реализации этой цели Хранилище данных должно выполнять ряд задач:

1. Консолидация данных 2. Интеграция данных 3. Агрегация данных 4. Расчеты производных показателей 5. Предоставление данных для поддержки принятия решений (DSS) Консолидация данных Консолидация данных – это сбор в единую базу данных из удаленных филиалов многофилиального предприятия, или предприятий, входящих в холдинг (рис. 9). Консолидированные данные необходимы центральному руководству, чтобы осуществлять глобальное управление бизнесом, внедрять единую политику в филиалах и осуществлять контроль над их деятельностью.

Центральный офис Дочернее предприятие Филиал Филиал Обособленное Филиал Филиал подразделение филиала Рис. 9. Консолидация данных многоуровневого предприятия Задача консолидации осложняется тем, что часто распределенные структуры создаются путем слияния предприятий, уже имеющих некоторый уровень автоматизации, обученный определенным системам персонал. Поэтому во многих случаях в филиалах работают различные системы автоматизации. Единственным способом консолидации данных в этих условиях является применение разрозненных программ сбора показателей отчетности или единого Хранилища данных.

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

Бухгалтерский Маркетинговые учет исследования Хранилище данных Оперативный учет Информация о конкурентах Налоговый учет Дочернее предприятие Филиал Филиал Рис. 10. Интеграция данных из разнородных источников Кроме того, существуют задачи, например, маркетингового анализа, привлечения клиентов, анализа конкурентной среды, которые по своей природе требуют получения (покупки) информации от разных поставщиков. Эта информация поставляется в виде разнообразных баз данных или электронных таблиц и требует загрузки в общую базу данных для совместного анализа.

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

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

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

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

Предоставление данных для поддержки принятия решений (DSS) Как уже указывалось выше, изначально концепция Хранилища данных была разработана с единственной целью – для информационной поддержки принятия решений. Поэтому предполагалось, что данные Хранилища должны быть неизменяемы. Пользовательский интерфейс обеспечивает всего две основные функции – выпуск отчетов для печати и интерактивный анализ данных. В связи с этим в качестве front-end можно применять универсальные системы выполнения запросов, анализа данных и выпуска отчетов. Эти инструменты позволяют свести к минимуму затраты на разработку отчетов, во многих случаях сводя создание новых форм отчетов к настройке, выполняемой самим пользователем.

Тема 5. Оперативный анализ данных Содержание 1. Место OLAP в информационной структуре предприятия 2. Оперативная аналитическая обработка данных 3. Требования к средствам оперативной аналитической обработки 4. Классификация OLAP-продуктов 5. Принципы работы OLAP-клиентов 6. Выбор архитектуры OLAP-приложения 7. Сферы применения OLAP-технологий 8. Пример использования OLAP-технологий для анализа в сфере продаж 1. Место OLAP в информационной структуре предприятия Термин "OLAP" неразрывно связан с термином "хранилище данных" (Data Warehouse).

Данные в хранилище попадают из оперативных систем (OLTP систем), которые предназначены для автоматизации бизнес-процессов.

Кроме того, хранилище может пополняться за счет внешних источников, например статистических отчетов.

Задача хранилища - предоставить "сырье" для анализа в одном месте и в простой, понятной структуре.

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

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

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

Их нельзя "покрутить", "развернуть" или "свернуть", чтобы получить желаемое представление данных. Вот бы ему такой инструмент, который позволил бы разворачивать и сворачивать данные просто и удобно! В качестве такого инструмента и выступает OLAP.

Хотя OLAP и не представляет собой необходимый атрибут хранилища данных, он все чаще и чаще применяется для анализа накопленных в этом хранилище сведений.

Место OLAP в информационной структуре предприятия (рис. 1).

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

При этом они уже доступны для анализа при помощи различных средств построения отчетов. Затем данные (полностью или частично) подготавливаются для OLAP-анализа. Они могут быть загружены в специальную БД OLAP или оставлены в реляционном хранилище.

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

Подытоживая, можно определить OLAP как совокупность средств многомерного анализа данных, накопленных в хранилище.

2. Оперативная аналитическая обработка данных В основе концепции OLAP лежит принцип многомерного представления данных. В 1993 году E. F. Codd рассмотрел недостатки реляционной модели, в первую очередь, указав на невозможность "объединять, просматривать и анализировать данные с точки зрения множественности измерений, то есть самым понятным для корпоративных аналитиков способом", и определил общие требования к системам OLAP, расширяющим функциональность реляционных СУБД и включающим многомерный анализ как одну из своих характеристик.

По Кодду, многомерное концептуальное представление данных (multi-dimensional conceptual view) представляет собой множественную перспективу, состоящую из нескольких независимых измерений, вдоль которых могут быть проанализированы определенные совокупности данных.

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

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

Операция спуска (drilling down) соответствует движению от высших ступеней консолидации к низшим;

напротив, операция подъема (rolling up) означает движение от низших уровней к высшим (рис. 2).

Исполнитель Время Спуск (drilling Предприятие Год Неделя down) Подразделение Квартал Подъем Отдел Месяц (rolling Служащий День up) Рис. 2. Измерения и направления консолидации данных 3. Требования к средствам оперативной аналитической обработки Многомерный подход возник практически одновременно и параллельно с реляционным. Однако, только начиная с середины девяностых годов, а точнее с 1993 г., интерес к МСУБД начал приобретать всеобщий характер. Именно в этом году появилась новая программная статья одного из основоположников реляционного подхода Э. Кодда, в которой он сформулировал 12 основных требований к средствам реализации OLAP (табл. 1).

Таблица 1.

Правила оценки программных продуктов класса OLAP 1 Многомерное Средства должны поддерживать представление данных многомерный на концептуальном уровне взгляд на данные.

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

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

4 Согласованная Производительность практически не должна производительность зависеть от количества Измерений в запросе.

5 Поддержка архитектуры Средства должны работать в архитектуре клиент-сервер клиент-сервер.

6 Равноправность всех Ни одно из измерений не должно быть измерений базовым, все они должны быть равноправными (симметричными).

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

8 Поддержка Средства должны обеспечивать возможность многопользовательского работать более чем одному пользователю.

режима работы с данными 9 Поддержка операций на Все многомерные операции (например основе различных Агрегация) должны единообразно и измерений согласованно применяться к любому числу любых измерений.

10 Простота Средства должны иметь максимально манипулирования удобный, естественный и комфортный данными пользовательский интерфейс.

11 Развитые средства Средства должны поддерживать различные представления данных способы визуализации (представления) данных.

12 Неограниченное число Не должно быть ограничений на число измерений и уровней поддерживаемых Измерений.

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

Позже определение Кодда было переработано в так называемый тест FASMI, требующий, чтобы OLAP-приложение предоставляло возможности быстрого анализа разделяемой многомерной информации.

Тест FASMI Помнить 12 правил Кодда слишком обременительно для большинства людей. Оказались, что можно резюмировать OLAP определение только пятью ключевыми словами: Быстрый Анализ Разделяемой Многомерной Информации - или, кратко - FASMI (в переводе с английского: Fast Analysis of Shared Multidimensional Information).

Это определение впервые было сформулировано в начале года и с тех пор не нуждалось в пересмотре.

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

Исследования показали, что конечные пользователи воспринимают процесс неудачным, если результаты не получены по истечении секунд.

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

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

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

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

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

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

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

Тест FASMI - разумное и понятное определение целей, на достижение которых ориентированы OLAP.

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

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

Рассмотрим подробнее каждую категорию OLAP-продуктов.

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

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

1. В случае MOLAP, исходные и агрегатные данные хранятся в многомерной БД или в многомерном локальном кубе.

2. В ROLAP-продуктах исходные данные хранятся в реляционных БД или в плоских локальных таблицах на файл-сервере.

Агрегатные данные могут помещаться в служебные таблицы в той же БД. Преобразование данных из реляционной БД в многомерные кубы происходит по запросу OLAP-средства.

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

Классификация по месту размещения OLAP-машины.

По этому признаку OLAP-продукты делятся на OLAP-серверы и OLAP-клиенты:

• В серверных OLAP-средствах вычисления и хранение агрегатных данных выполняются отдельным процессом - сервером.

Клиентское приложение получает только результаты запросов к многомерным кубам, которые хранятся на сервере. Некоторые OLAP серверы поддерживают хранение данных только в реляционных базах, некоторые - только в многомерных. Многие современные OLAP серверы поддерживают все три способа хранения данных: MOLAP, ROLAP и HOLAP.

MOLAP MOLAP - это Multidimensional On-Line Analytical Processing, то есть Многомерный OLAP. Это означает, что сервер для хранения данных использует многомерную базу данных (МБД). Смысл использования МБД очевиден. Она может эффективно хранить многомерные по своей природе данные, обеспечивая средства быстрого обслуживания запросов к базе данных. Данные передаются от источника данных в многомерную базу данных, а затем база данных подвергается агрегации. Предварительный расчет - это то, что ускоряет OLAP запросы, поскольку расчет сводных данных уже произведен. Время запроса становится функцией исключительно времени, необходимого для доступа к отдельному фрагменту данных и выполнения расчета.

Этот метод поддерживает концепцию, согласно которой работа производится единожды, а результаты затем используются снова и снова. Многомерные базы данных являются относительно новой технологией. Использование МБД имеет те же недостатки, что и большинство новых технологий. А именно - они не так устойчивы, как реляционные базы данных (РБД), и в той же мере не оптимизированы.

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

ROLAP ROLAP - это Relational On-Line Analytical Processing, то есть Реляционный OLAP. Термин ROLAP обозначает, что OLAP-сервер базируется на реляционной базе данных. Исходные данные вводятся в реляционную базу данных, обычно по схеме "звезда" или схеме "снежинка", что способствует сокращению времени извлечения. Сервер обеспечивает многомерную модель данных с помощью оптимизированных SQL-запросов.

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

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

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

Агрегированные/Предварительно агрегированные данные Быстрая реализация запросов является императивом для OLAP.

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

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

• OLAP-клиент устроен по-другому. Построение многомерного куба и OLAP-вычисления выполняются в памяти клиентского компьютера. OLAP-клиенты также делятся на ROLAP и MOLAP. А некоторые могут поддерживать оба варианта доступа к данным.

У каждого из этих подходов, есть свои "плюсы" и "минусы".

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

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

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

OLAP-клиент предоставляет единый визуальный интерфейс для описания кубов и настройки к ним пользовательских интерфейсов.

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

• Экономическая целесообразность применения OLAP-сервера возникает, когда объемы данных очень велики и непосильны для OLAP клиента, иначе более оправдано применение последнего. В этом случае OLAP-клиент сочетает в себе высокие характеристики производительности и низкую стоимость.

• Мощные ПК аналитиков – еще один довод в пользу OLAP клиентов. При применении OLAP-сервера эти мощности не используются.

Среди преимуществ OLAP-клиентов можно также назвать следующее:

• Затраты на внедрение и сопровождение OLAP-клиента существенно ниже, чем затраты на OLAP-сервер.

• При использовании OLAP-клиента со встроенной машиной передача данных по сети производится один раз. При выполнении OLAP-операций новых потоков данных не порождается.

5. Принципы работы OLAP-клиентов Рассмотрим процесс создания OLAP-приложения с помощью клиентского инструментального средства (рис. 1).

Физическая схема Аналитические Источники данных Бизнес-объекты данных интерфейсы Sales Продажи Отчет о продажах Месяц Product Deal Продукты Сделки Товар Янв Фев ID Product ID Код Код пр-та Товарtext Груши 100 Name Date Товар Дата Дата Amount Сумма Сумма Бананы 200 Итого 300 Семантический слой Репозиторий метаданных (OLAP-приложение) Рис. 1. Создание OLAP-приложения с помощью клиентского ROLAP средства Принцип работы ROLAP-клиентов – предварительное описание семантического слоя, за которым скрывается физическая структура исходных данных. При этом источниками данных могут быть:

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

Принцип работы клиента OLAP-сервера иной. В OLAP-сервере при создании кубов пользователь манипулирует физическими описаниями БД. При этом в самом кубе создаются пользовательские описания. Клиент OLAP-сервера настраивается только на куб.

При создании семантического слоя источники данных – таблицы Sales и Deal – описываются понятными конечному пользователю терминами и превращаются в «Продукты» и «Сделки». Поле «ID» из таблицы «Продукты» переименовывается в «Код», а «Name» - в «Товар» и т.д.

Затем создается бизнес-объект «Продажи». Бизнес-объект – это плоская таблица, на основе которой формируется многомерный куб. При создании бизнес-объекта таблицы «Продукты» и «Сделки» объединяются по полю «Код» товара. Поскольку для отображения в отчете не потребуются все поля таблиц – бизнес-объект использует только поля «Товар», «Дата» и «Сумма».

Далее на базе бизнес-объекта создается OLAP-отчет. Пользователь выбирает бизнес-объект и перетаскивает его атрибуты в области колонок или строк таблицы отчета.

В нашем примере на базе бизнес-объекта «Продажи» создан отчет по продажам товаров по месяцам.

При работе с интерактивным отчетом пользователь может задавать условия фильтрации и группировки такими же простыми движениями «мышью». В этот момент ROLAP-клиент обращается к данным в кэше.

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

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

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

Интернет является новой формой клиента. Кроме того, он несет на себе печать новых технологий;

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

6. Выбор архитектуры OLAP-приложения При реализации информационно-аналитической системы важно не ошибиться в выборе архитектуры OLAP-приложения. Дословный перевод термина On-Line Analytical Process — «оперативная аналитическая обработка» — часто воспринимается буквально в том смысле, что поступающие в систему данные оперативно анализируются.

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

В этом контексте более точен перевод OLAP как «интерактивная аналитическая обработка». Именно возможность анализа данных в интерактивном режиме отличает OLAP-системы от систем подготовки регламентированных отчетов.

Другой особенностью интерактивной обработки в формулировке родоначальника OLAP Э. Кодда является возможность «объединять, просматривать и анализировать данные с точки зрения множественности измерений, т. е. самым понятным для корпоративных аналитиков способом». У самого Кодда термин OLAP обозначает исключительно конкретный способ представления данных на концептуальном уровне — многомерный. На физическом уровне данные могут храниться в реляционных базах данных, однако на деле OLAP-инструменты, как правило, работают с многомерными базами данных, в которых данные упорядочены в виде гиперкуба (рис. 1).

Рис. 1. OLAP – куб (гиперкуб, метакуб) При этом актуальность этих данных определяется моментом наполнения гиперкуба новыми данными.

Очевидно, что время формирования многомерной базы данных существенно зависит от объема загружаемых в нее данных, поэтому разумно ограничить этот объем. Но как при этом не сузить возможности анализа и не лишить пользователя доступа ко всей интересующей информации? Существует два альтернативных пути: Analyze then query («Сначала проанализируй — затем запроси дополнительную информацию») и Query then analyze («Сначала запроси данные — затем анализируй»).

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

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

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

Работа с микрокубом осуществляется в интерактивном режиме — получение срезов информации и ее детализация в рамках микрокуба осуществляется моментально. Другим положительным моментом является то, что проектирование структуры и наполнение микрокуба осуществляется пользователем «на лету», без участия администратора баз данных. Однако подход страдает и серьезными недостатками.

Пользователь, не видит общей картины и должен заранее определяться с направлением своего исследования. В противном случае запрошенный микрокуб может оказаться слишком мал и не содержать всех интересующих данных, а пользователю придется запрашивать новый микрокуб, затем новый, затем еще и еще. Подход Query then analyze реализует инструментальное средство BusinessObjects одноименной компании и инструментальные средства платформы Контур компании Intersoft Lab.

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

На работе единой многомерной базы данных практически не сказывается количество обращающихся к ней пользователей. Они лишь читают имеющиеся там данные в отличие от подхода Query then analyze, при котором количество микрокубов в предельном случае может расти с той же скоростью, что и количество пользователей.

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

Наиболее яркими представителями подхода «Analyze then query» являются инструментальные средства PowerPlay и Impromptu компании Cognos.

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

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

Рассмотрим некоторые сферы применения OLAP-технологий, взятые из реальной жизни.

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

2. Закупки Задача обратно противоположная анализу продаж. Многие предприятия закупают комплектующие и материалы у поставщиков.

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

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

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

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

5. Склад Анализ структуры остатков на складе в разрезе видов товаров, складов, анализ сроков хранения товаров, анализ отгрузки по получателям и многие другие важные для предприятия виды анализа возможны при наличии в организации складского учета.

6. Движение денежных средств Это целая область анализа, имеющая множество школ и методик.

OLAP-технология может служить инструментом реализации или усовершенствования этих методик, но никак не их заменой.

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

7. Бюджет Одна из самых благодатных областей применения OLAP технологий. Не даром ни одна современная система бюджетирования не считается завершенной без наличия в ее составе OLAP-инструментария для анализа бюджета. Большинство бюджетных отчетов легко строятся на основе OLAP-систем. При этом отчеты отвечают на очень широкую гамму вопросов: анализ структуры расходов и доходов, сравнение расходов по определенным статьям у разных подразделений, анализ динамики и тенденций расходов на определенные статьи, анализ себестоимости и прибыли.

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

9. Финансовая отчетность Технологично построенная система отчетности есть ни что иное, как набор именованных показателей со значениями на дату, которые требуется сгруппировать и просуммировать в различных разрезах для получения конкретных отчетов. Когда это так, то отображение и печать отчетов наиболее просто и дешево реализуются в OLAP-системах. В любом случае система внутренней отчетности предприятия не так консервативна и может быть перестроена в целях экономии средств на технические работы по созданию отчетов и получения возможностей многомерного оперативного анализа.

10. Посещаемость сайта Лог-файл Интернет-сервера многомерен по природе, а значит подходит для OLAP-анализа. Фактами являются: количество посещений, количество хитов, время проведенное на странице и другая информация, имеющаяся в логе.

11. Объемы производства Это еще один пример статистического анализа. Таким образом, можно анализировать объемы выращенного картофеля, выплавленной стали, произведенного товара.

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

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

14. Текучесть кадров на предприятии Анализ текучести кадров на предприятии в разрезе филиалов, отделов, профессий, уровня образования, пола, возраста, времени.

15. Пассажирские перевозки Анализ количества проданных билетов и сумм в разрезе сезонов, направлений, видов вагонов (классов), типов поездов (самолетов).

Этим списком не ограничиваются сферы применения OLAP - технологий. Для примера рассмотрим технологию OLAP-анализа в сфере продаж.

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

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

может обуславливаться также периодичностью востребования информации.

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

Измерение «Клиенты» отражает структуру продаж по территориально-географическому признаку. В каждом измерении могут существовать свои иерархии, например, в данном измерении это может быть структура: Страны – Регионы – Города – Клиенты.

Для анализа эффективности деятельности подразделений следует создать свое измерение. Например, можно выделить два уровня иерархии: департаменты и входящие в них отделы, что и должно найти отражение в измерении «Подразделения».

По сути, измерения «Время», «Товары», «Заказчики» достаточно полно определяют пространство предметной области.

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

OLAP – куб для анализа будет иметь вид (рис. 2):

Объем продаж товара клиенту 4 во 2 квартале Товар Товар Товар Товар Кл.1 Кл.2 Кл.3 Кл. Рис. 2. OLAP – куб для анализа объема продаж Вот именно такой трехмерный массив в терминах OLAP и называется кубом. На самом деле, с точки зрения строгой математики кубом такой массив будет далеко не всегда: у настоящего куба количество элементов во всех измерениях должно быть одинаковым, а у кубов OLAP такого ограничения нет. Куб OLAP совсем не обязательно должен быть трехмерным. Он может быть и двух-, и многомерным - в зависимости от решаемой задачи. Серьезные OLAP-продукты рассчитаны на количество измерений порядка 20. Более простые настольные приложения поддерживают где-то 6 измерений.

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

Однако куб сам по себе для анализа не пригоден. Если еще можно адекватно представить или изобразить трехмерный куб, то с шести- или девятнадцатимерным дело обстоит значительно хуже. Поэтому перед употреблением из многомерного куба извлекают обычные двумерные таблицы. Эта операция называется "разрезанием" куба. Аналитик как бы берет и "разрезает" измерения куба по интересующим его меткам. Этим способом аналитик получает двумерный срез куба (отчет) и с ним работает. Структура отчета представлена на рисунке 3.

Рис. 3. Структура аналитического отчета Разрежем наш OLAP – куб и получим отчет о продажах за третий квартал, он будет иметь следующий вид (рис.4).

3 квартал Фильтр - Время Кл. 1 Кл. 2 Кл. Кл. Клиенты Товар 23800 2345 450 Товар 4500 5430 Объем продаж Товар 65400 570 Товары Товар 560 8880 1200 Рис. 4. Отчет о продажах за третий квартал Можно разрезать куб вдоль другой оси и получить отчет о продажах группы товаров 2 в течение года (рис. 5).

Фильтр - Товары Товар Кл. 1 Кл. 2 Кл. 3 Кл. Клиенты Кв. 3800 23450 1450 Кв. 3 65400 5970 Объем продаж Кв. 5400 1570 7700 Время Кв. 1 5560 1880 10200 Рис. 5. Поквартальный отчет о продажах товара 2.

Аналогично можно проанализировать отношения с клиентом 4, разрезав куб по метке Клиенты (рис. 6) Фильтр - Клиенты Клиент Товар 1 Товар 2 Товар 3 Товар Товары Кв. 4 30800 2450 10450 Кв. 3 6400 5970 7870 Объем продаж Кв. 2 15400 1570 7700 Время 1560 180 10200 Кв. Рис. 6. Отчет о поставках товаров клиенту 4.

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

Тема 6. Интеллектуальный анализ данных Содержание 1. Интеллектуальный анализ данных 2. Стадии ИАД 3. Методы АИД 4. Типы закономерностей 5. Типовые задачи для методов ИАД 6. Области применения Data mining 7. Классы систем Data Mining 8. Интеграция OLAP и ИАД 1. Интеллектуальный анализ данных Мы живем в веке информации. Трудно переоценить значение данных, которые мы непрерывно собираем в процессе нашей деятельности, в управлении бизнесом или производством, в банковском деле, в решении научных, инженерных и медицинских задач.

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

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

В этом и состоит основное предназначение технологий Data mining.

Data Mining переводится как "добыча" или "раскопка данных".

Нередко рядом с Data Mining встречаются слова "обнаружение знаний в базах данных" (knowledge discovery in databases) и "интеллектуальный анализ данных". Их можно считать синонимами Data Mining.

Возникновение всех указанных терминов связано с новым витком в развитии средств и методов обработки данных.

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

Специфика современных требований к такой переработке следующая:

• Данные имеют неограниченный объем;

• Данные являются разнородными (количественными, качественными, текстовыми);

• Результаты должны быть конкретны и понятны;

• Инструменты для обработки сырых данных должны быть просты в использовании.

Традиционная математическая статистика, долгое время претендовавшая на роль основного инструмента анализа данных, откровенно спасовала перед лицом возникших проблем. Методы математической статистики оказались полезными главным образом для проверки заранее сформулированных гипотез (verification-driven data mining) и для “грубого” разведочного анализа, составляющего основу оперативной аналитической обработки данных (on-line analytical processing, OLAP).

В основу современной технологии Data Mining (discovery-driven data mining) положена концепция шаблонов (паттернов), отражающих фрагменты многоаспектных взаимоотношений в данных. Эти шаблоны представляют собой закономерности, свойственные подвыборкам данных, которые могут быть компактно выражены в понятной человеку форме. Поиск шаблонов производится методами, не ограниченными рамками априорных предположений о структуре выборки и виде распределений значений анализируемых показателей.

Примерами заданий на такой поиск при использовании Data Mining могут служить следующие вопросы:

1. Встречаются ли точные шаблоны в описаниях людей, подверженных повышенному травматизму?

2. Имеются ли характерные портреты клиентов, которые, по всей вероятности, собираются отказаться от услуг телефонной компании?

3. Существуют ли стереотипные схемы покупок для случаев мошенничества с кредитными карточками?

Важное положение Data Mining — нетривиальность разыскиваемых шаблонов. Это означает, что найденные шаблоны должны отражать неочевидные, неожиданные регулярности в данных, составляющие так называемые скрытые знания (hidden knowledge). К обществу пришло понимание, что сырые данные содержат глубинный пласт знаний, при грамотной раскопке которого могут быть обнаружены настоящие самородки.

На рисунке 1 показаны уровни знаний и инструменты для их извлечения.

Уровни знаний Инструменты извлечения знаний Поверхностный Язык простых запросов Скрытый OLAP Глубинный Data Mining Рис. 1. Уровни знаний, извлекаемых из данных.

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

2. Стадии ИАД В общем случае процесс интеллектуального анализа данных (ИАД) состоит из трёх стадий (рис. 2):

1) выявление закономерностей (свободный поиск);

2) использование выявленных закономерностей для предсказания неизвестных значений (прогностическое моделирование);

3) анализ исключений, предназначенный для выявления и толкования аномалий в найденных закономерностях.

Стадии ИАД Прогностическое Анализ Свободный поиск моделирование исключений Выявление Прогнозирование Выявление закономерностей развития отклонений условной логики процессов Выявление Предсказание закономерностей неизвестных ассоциативной значений логики Выявление трендов и колебаний Рис. 2. Стадии процесса интеллектуального анализа данных 1. Свободный поиск (Discovery) Свободный поиск определяется как процесс исследования исходной БД на предмет поиска скрытых закономерностей без предварительного определения гипотез относительно вида этих закономерностей. Другими словами, сама программа берет на себя инициативу в деле поиска интересных аномалий, или шаблонов, в данных, освобождая аналитика от необходимости обдумывания и задания соответствующих запросов. Этот подход особенно ценен при исследовании больших баз данных, имеющих значительное количество скрытых закономерностей, большинство из которых было бы упущено при непосредственном поиске путем прямых запросов пользователя к исходным данным.

В качестве примера свободного поиска по инициативе системы рассмотрим исследование реестра физических лиц. Если инициатива принадлежит пользователю, он может построить запрос типа "Каков средний возраст директоров предприятий отрасли промышленности строительных материалов, расположенных в Иванове и находящихся в собственности субъекта Федерации?" и получить ответ - 48. В системе, обеспечивающей стадию свободного поиска, пользователь может поступить иначе и запросить у системы найти что-нибудь интересное относительно того, что влияет на атрибут Возраст. Система начнет действовать так же, как и аналитик-человек, т. е. искать аномалии в распределении значений атрибутов, в результате чего будет произведен список логических правил типа "ЕСЛИ..., ТО...", в том числе, например:

• ЕСЛИ Профессия="Программист", ТО Возраст<=30 в 61% случаев;

• ЕСЛИ Профессия="Программист", ТО Возраст<=60 в 98% случаев.

Аналогично, при исследовании реестра юридических лиц аналитика может заинтересовать атрибут Форма_собственности. В результате свободного поиска могут быть получены правила:

• ЕСЛИ Основной_вид_деятельности="Общеобразовательные детские школы", ТО Форма_собственности="Муниципальная собственность" в 84% случаев;

• ЕСЛИ Вид_деятельности="Наука и научное обслуживание", ТО Форма_собственности="Частная собственность" в 73% случаев.

Стадия свободного поиска может выполняться посредством:

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

• индукции правил ассоциативной логики - то есть того, что было определено в рамках классификации задач ИАД по типам извлекаемой информации как выявление ассоциаций и последовательностей;

• определения трендов и колебаний в динамических процессах, то есть исходного этапа задачи прогнозирования.

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

2. Прогностическое моделирование (Predictive Modeling) Здесь, на второй стадии ИАД, используются плоды работы первой, то есть найденные в БД закономерности применяются для предсказания неизвестных значений:

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

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

Возвращаясь к рассмотренным примерам, продолжим их на данную стадию. Зная, что некто Иванов - программист, можно быть на 61% уверенным, что его возраст <=30 годам, и на 98% - что он <= годам. Аналогично, можно сделать заключение о 84% вероятности того, что некоторое новое юридическое лицо будет находиться в муниципальной собственности, если его основной вид деятельности - "Общеобразовательные детские школы".

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

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

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

В первом случае исходные данные могут храниться в явном детализированном виде и непосредственно использоваться для прогностического моделирования и/или анализа исключений;

это так называемые методы рассуждений на основе анализа прецедентов.

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

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

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

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

1) Метод Lazy-Learning табличная 1) Деревья a) Ряды динамики 2) Метод ближайшего визуализация решений b) Корреляционно соседа (NN) 2) Байесовские 2) Индукция регрессионный 3) Метод k-ближайшего анализ сети правил соседа (k-NN) c) Нелинейная регрессия 4) Метод NGE и пр.

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

Каждый атрибут принимает непрерывные значения либо дискретные значения из фиксированного набора. Для примера возвращается его наиболее вероятный класс.

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

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

Метод ближайшего соседа является частным случаем метода k ближайшего соседа при k=1.

Более сложные алгоритмы типа Lazy-Learning основываются на том же обобщенном алгоритме, но или иначе определяют апостериорные вероятности принадлежности примеров классам, или (как, например, Nested Generalized Exemplars Algoritm(NGE)) усложняют расчет функции.

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

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

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

• по типам извлекаемой информации (которые определяются решаемой задачей);

• по способу представления найденных закономерностей.

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

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

• методы логической индукции;

• методы вывода уравнений.

Логические методы наиболее универсальны в том смысле, что могут работать как с численными, так и с другими типами атрибутов.

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

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

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

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

Можно отметить четыре достоинства байесовских сетей как средства ИАД:

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

• построенные байесовские сети просто интерпретируются и позволяют на этапе прогностического моделирования легко производить анализ по сценарию "что - если";

• подход позволяет естественным образом совмещать закономерности, выведенные из данных, и фоновые знания, полученные в явном виде (например, от экспертов);

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

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

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

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

• терминальные узлы (узлы ответа), задающие имена классов;

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

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

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

Более общим (и более реальным) является случай существования теории, состоящей из набора неиерархических перекрывающихся символьных правил. Значительная часть алгоритмов, выполняющих индукцию таких наборов правил, объединяются стратегией отделения и захвата (separate-and-conquer), или покрывания (covering). Эта стратегия индукции характеризуется следующим образом:

• произвести правило, покрывающее часть обучающего множества;

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

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

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

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

1. Деревья решений часто довольно сложны и тяжелы для понимания.

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

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

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

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

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

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

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

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

2. Гармонический анализ. Во многих случаях сглаживание рядов динамики с помощью определения тренда не дает удовлетворительных результатов, так как в остатках наблюдается автокоppеляция. Причиной автокоppелиpованности остатков могут быть нередко встречающиеся в pядах динамики заметные периодические колебания относительно выделенной тенденции. В таких случаях следует прибегать к гармоническому анализу, то есть к выделению из динамического ряда периодической составляющей. По результатам выделения из динамического ряда тренда и периодической составляющей может выполняться статистический прогноз процесса по принципу экстраполяции, по предположению, что параметры тренда и колебаний сохранятся для прогнозируемого периода.

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

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

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

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

• обработка информации осуществляется во множестве простых элементов - нейронов;

• сигналы между нейронами передаются по связям от выходов ко входам;

• каждая связь характеризуется весом, на который умножается передаваемый по ней сигнал;

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

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

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

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

такой способ обучения применяется в задачах классификации и прогнозирования;

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

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

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

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

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

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

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

4. Типы закономерностей Выделяют пять стандартных типов закономерностей, которые позволяют выявлять методы Data Mining: ассоциация, последовательность, классификация, кластеризация и прогнозирование.

Ассоциация имеет место в том случае, если несколько событий связаны друг с другом. Например, исследование, проведенное в супермаркете, может показать, что 65% купивших кукурузные чипсы берут также и "кока-колу", а при наличии скидки за такой комплект "колу" приобретают в 85% случаев. Располагая сведениями о подобной ассоциации, менеджерам легко оценить, насколько действенна предоставляемая скидка.

Если существует цепочка связанных во времени событий, то говорят о последовательности. Так, например, после покупки дома в 45% случаев в течение месяца приобретается и новая кухонная плита, а в пределах двух недель 60% новоселов обзаводятся холодильником.

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

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

Кластеризация отличается от классификации тем, что сами группы заранее не заданы. С помощью кластеризации средства Data Mining самостоятельно выделяют различные однородные группы данных.

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

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

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

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

5. Типовые задачи для методов ИАД Прогнозирование – одна из самых распространенных задач ИАД.

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

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

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

Анализ эффективности продажи товаров по почте. Если компания занимается рассылкой рекламы и образцов продукции по почте, то имеет смысл оценить эффективность подобной деятельности.

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

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

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

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

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

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

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

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

Почему растет популярность Data mining?

Необходимость автоматизированного интеллектуального анализа данных стала очевидной:

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

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

2. Другой причиной роста популярности data mining является объективность получаемых результатов. Человеку-аналитику, в отличие от машины, всегда присущ субъективизм, он в той или иной степени является заложником уже сложившихся представлений. Иногда это полезно, но чаще приносит большой вред.

3. И, наконец, data mining дешевле. Оказывается, что выгоднее инвестировать деньги в решения data mining, чем постоянно содержать целую армию высокоподготовленных и дорогих профессиональных статистиков.

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

6. Области применения Data mining Рыночная сегментация, идентификация 1. Маркетинг целевых групп, построение профиля клиента Анализ кредитных рисков, привлечение и 2. Банковское дело: удержание клиентов, управление ресурсами Детекция подлогов, формирование "типичного поведения" обладателя 3. Кредитные компании кредитки, анализ достоверности клиентских счетов, cross-selling программы Привлечение и удержание клиентов, 4. Страховые компании прогнозирование финансовых показателей Анализ деятельности торговых точек, 5. Розничная торговля построение профиля покупателя, управление ресурсами Выработка оптимальной торговой 6. Биржевые трейдеры стратегии, контроль рисков Привлечение клиентов, ценовая политика, Телекоммуникация и анализ отказов, предсказание пиковых 7.

энергетика нагрузок, прогнозирование поступления средств Налоговые службы и Детекция подлогов, прогнозирование 8.

аудиторы поступлений в бюджет Предсказание результатов будущего Фармацевтические 9. тестирования препаратов, программы компании испытания Диагностика, выбор лечебных 10. Медицина воздействий, прогнозирование исхода хирургического вмешательства Контроль качества, материально Управление 11. техническое обеспечение, оптимизация производством технологического процесса Построение эмпирических моделей, 12. Ученые и инженеры основанных на анализе данных, решение научно-технических задач Рассмотрим некоторые бизнес-приложения Data Mining.

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

Вот типичные задачи, которые можно решать с помощью Data Mining в сфере розничной торговли:

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

• исследование временных шаблонов помогает торговым предприятиям принимать решения о создании товарных запасов. Оно дает ответы на вопросы типа "Если сегодня покупатель приобрел видеокамеру, то через какое время он вероятнее всего купит новые батарейки и пленку?" • создание прогнозирующих моделей дает возможность торговым предприятиям узнавать характер потребностей различных категорий клиентов с определенным поведением, например, покупающих товары известных дизайнеров или посещающих распродажи. Эти знания нужны для разработки точно направленных, экономичных мероприятий по продвижению товаров.

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

• выявление мошенничества с кредитными карточками.

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

• сегментация клиентов. Разбивая клиентов на различные категории, банки делают свою маркетинговую политику более целенаправленной и результативной, предлагая различные виды услуг разным группам клиентов.

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

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

• анализ записей о подробных характеристиках вызовов.

Назначение такого анализа — выявление категорий клиентов с похожими стереотипами пользования их услугами и разработка привлекательных наборов цен и услуг;

• выявление лояльности клиентов. Data Mining можно использовать для определения характеристик клиентов, которые, один раз воспользовавшись услугами данной компании, с большой долей вероятности останутся ей верными. В итоге средства, выделяемые на маркетинг, можно тратить там, где отдача больше всего.

Страхование Страховые компании в течение ряда лет накапливают большие объемы данных. Здесь обширное поле деятельности для методов Data Mining:

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

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

Другие приложения в бизнесе Data Mining может применяться во множестве других областей:

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

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

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

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

Многие из таких систем интегрируют в себе сразу несколько подходов.

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

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

PolyAnalyst (Мегапьютер Интеллидженс) Intelligent Miner (IBM) Interprise Miner (SAS) Clementine (Integral Solutions) MineSet (Silicon Graphics) Knowledge Studio (Angoss Software) Предметно-ориентированные аналитические системы Предметно-ориентированные аналитические системы очень разнообразны. Эти системы решают узкий класс специализированных задач. Наиболее широкий подкласс таких систем, получивший распространение в области исследования финансовых рынков, носит название "технический анализ". Он представляет собой совокупность нескольких десятков методов прогноза динамики цен и выбора оптимальной структуры инвестиционного портфеля, основанных на различных эмпирических моделях динамики рынка. Эти методы часто используют несложный статистический аппарат, но максимально учитывают сложившуюся в своей области специфику (профессиональный язык, системы различных индексов и пр.).

На рынке имеется множество программ этого класса. Как правило, они довольно дешевы (обычно $300–1000).

Хорошим примером являются программы технического анализа финансовых рынков:

MetaStock (Equis International, USA) SuperCharts (Omega Research, USA) Candlestick Forecaster (IPTC, USA) Wall Street Money (Market Arts, USA) Статистические пакеты Это мощные математические системы, предназначенные для статистической обработки данных любой природы. Они включают многочисленные инструменты статистического анализа, имеют развитые графические средства. Главный недостаток систем этого класса - их невозможно эффективно применять для анализа данных, не имея глубоких знаний в области статистики. Неподготовленный пользователь должен пройти специальный курс обучения.

Примеры систем:

SAS (SAS Institute, USA) SPSS (SPSS, USA) Statgraphics (Statistical Graphics, USA) Нейроннoсетевые пакеты Это широкий класс разнообразных систем, представляющих собой иерархические сетевые структуры, в узлах которых находятся так называемые нейроны. Сети тренируются на примерах, и во многих случаях дают хорошие результаты предсказаний. Основными недостатками нейронных сетей являются необходимость иметь очень большой объем обучающей выборки, а также трудности в интерпретации результатов. Тренированная нейронная сеть представляет собой "умный черный ящик", работу которого невозможно понять и контролировать.

Примеры нейронно-сетевых пакетов:

BrainMaker (CSS, USA) NeuroShell (Ward Systems Group, USA) OWL (Hyperlogic, USA) Пакеты, реализующие алгоритмы "Decision trees" Деревья решения являются одним из наиболее популярных подходов к решению задач Data Mining. Этот метод используется только для решения задач классификации. Это является его серьезным ограничением. Результатом работы метода является иерархическая древовидная структура классификационных правил типа "IF...THEN...".

Для принятия решения, к какому классу отнести некоторый объект или ситуацию, требуется ответить на вопросы, стоящие в узлах этого дерева, начиная с его корня. Вопросы имеют вид "значение параметра A больше x?". Если ответ положительный, осуществляется переход к правому узлу следующего уровня, если отрицательный — то к левому узлу;

затем снова следует вопрос, связанный с соответствующим узлом.

Достоинством метода является естественная способность классификации на множество классов.

Примеры систем:

C5.0 (Rule Quest, Australia) SIPINA (University of Lyon, France) IDIS (Information Discovery, USA) Системы рассуждений на основе аналогичных случаев (case based reasoning - CBR) Идея систем case based reasoning - CBR - крайне проста. Для того чтобы сделать прогноз на будущее или выбрать правильное решение, эти системы находят в прошлом близкие аналоги наличной ситуации и выбирают тот же ответ, который был для них правильным. Поэтому этот метод еще называется методом "ближайшего соседа" (nearest neighbour).

Системы CBR показывают очень хорошие результаты в самых разнообразных задачах.

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

Примеры систем:

KATE tools (Acknosoft, Франция), Pattern Recognition Workbench (Unica, США).

Генетические алгоритмы Строго говоря, интеллектуальный анализ данных - далеко не основная область применения генетических алгоритмов, которые, скорее, нужно рассматривать как мощное средство решения разнообразных комбинаторных задач и задач оптимизации. Тем не менее, генетические алгоритмы вошли сейчас в стандартный инструментарий методов data mining. Этот метод назван так потому, что в какой-то степени имитирует процесс естественного отбора в природе.

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

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

Пример системы:

GeneHunter фирмы Ward Systems Group.

Эволюционное программирование Проиллюстрируем современное состояние данного подхода на примере системы PolyAnalyst — отечественной разработке, получившей сегодня общее признание на рынке Data Mining. В данной системе гипотезы о виде зависимости целевой переменной от других переменных формулируются в виде программ на некотором внутреннем языке программирования. Процесс построения программ строится как эволюция в мире программ (этим подход немного похож на генетические алгоритмы). Когда система находит программу, более или менее удовлетворительно выражающую искомую зависимость, она начинает вносить в нее небольшие модификации и отбирает среди построенных дочерних программ те, которые повышают точность.

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

Другое направление эволюционного программирования связано с поиском зависимости целевых переменных от остальных в форме функций какого-то определенного вида. Например, в одном из наиболее удачных алгоритмов этого типа — методе группового учета аргументов (МГУА) зависимость ищут в форме полиномов. В настоящее время из продающихся в России систем МГУА реализован в системе NeuroShell компании Ward Systems Group.

8. Интеграция OLAP и ИАД Оперативная аналитическая обработка и интеллектуальный анализ данных - две составные части процесса поддержки принятия решений.

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

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

K. Parsaye вводит составной термин "OLAP Data Mining" (многомерный интеллектуальный анализ) для обозначения такого объединения (рис. 4). J. Han предлагает еще более простое название - "OLAP Mining", и предлагает несколько вариантов интеграции двух технологий.

1. "Cubing then mining". Возможность выполнения интеллектуального анализа должна обеспечиваться над любым результатом запроса к многомерному концептуальному представлению, то есть над любым фрагментом любой проекции гиперкуба показателей.

2. "Mining then cubing". Подобно данным, извлечённым из хранилища, результаты интеллектуального анализа должны представляться в гиперкубической форме для последующего многомерного анализа.

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

К сожалению, очень немногие производители предоставляют сегодня достаточно мощные средства интеллектуального анализа многомерных данных в рамках систем OLAP. Проблема также заключается в том, что некоторые методы ИАД (байесовские сети, метод k-ближайшего соседа) неприменимы для задач многомерного интеллектуального анализа, так как основаны на определении сходства детализированных примеров и не способны работать с агрегированными данными.

Рис. 4. Архитектура системы многомерного интеллектуального анализа данных Рынок систем Data Mining экспоненциально развивается. В этом развитии принимают участие практически все крупнейшие корпорации.

Системы Data Mining применяются по двум основным направлениям:

1) как массовый продукт для бизнес-приложений;

2) как инструменты для проведения уникальных исследований (генетика, химия, медицина и пр.).

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

Несмотря на обилие методов Data Mining, приоритет постепенно все более смещается в сторону логических алгоритмов поиска в данных if-then правил. С их помощью решаются задачи прогнозирования, классификации, распознавания образов, сегментации БД, извлечения из данных “скрытых” знаний, интерпретации данных, установления ассоциаций в БД и др. Результаты таких алгоритмов эффективны и легко интерпретируются.

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

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

Удачное решение указанных проблем может составить предмет новых конкурентоспособных разработок.

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

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

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

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

С этим очевидным обстоятельством связана главная трудность продвижения технологии data mining в России: отличительная черта большинства российских предприятий - сравнительно небольшой срок их существования. Характерный "возраст" накопленных ими баз данных составляет 2-3 года, и, как показывает опыт, информации, содержащейся в этих базах данных, часто оказывается недостаточно для выработки на ее основе эффективной стратегии принятия решений с помощью систем data mining.

Другой отличительной чертой российской экономики, как на макро-уровне, так и на уровне отдельных предприятий является ее нестабильность;

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

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

Тема 7. Инструментальные средства автоматизации аналитической работы и планирования.

Содержание 1. Инструментальные средства поддержки аналитической работы и их классификация.

2. Аналитические инструментальные средства пакетов прикладных программ широкого применения.

3. Специализированные информационно-аналитические системы.

1. Инструментальные средства поддержки аналитической работы и их классификация В реальности, аналитическая работа на современных предприятиях пока ещё носит частично автоматизированный характер ввиду ряда причин:

• отсутствия опыта у IT специалистов и знания рынка средств автоматизации поддержки аналитической деятельности и возможностей этих средств;

• дороговизна профессиональных средств поддержки аналитической деятельности;

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

• сильная децентрализация собираемой первичной информации по отдельным системам;

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

• и др.

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

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

• универсальные программные продукты, которые могут производить групповые действия с произвольными наборами данных (Excel, Statistica, Mathcad) – отсутствие мета-моделей предметной области и заранее подготовленного набора отчётов;

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

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

• полноценные профессиональные ИАС, автоматизирующие большинство аспектов и задач аналитической деятельности на предприятии.

Остановимся более детально на некоторых системах.

2. Аналитические инструментальные средства пакетов прикладных программ широкого применения Скорее всего, никто не будет возражать против того, что пакет программ Microsoft Office является самым распространённым среди большинства пользователей ПК – все пользуются текстовым редактором Word для составления бланков, рефератов, дипломов, договоров, отчётов и других документов. Все также пользуются электронной таблице Excel для создания таблиц, отчётов, диаграмм и проведения расчётов. Но, умея пользовать базовой функциональностью Excel, лишь немногие знают, что в их руках находится гибкий аналитический инструментарий.

Остановимся более подробно на его аналитических возможностях.

Основным инструментом анализа внутри Excel являются сводные таблицы. Сводная таблица Excel (PivotTable) представляет собой интерактивную таблицу, применяемую для суммирования или статистического анализа большого количества исходных данных, обычно содержащихся в одном из диапазонов ячеек Excel, либо являющихся результатом запроса к какой–либо базе данных. Строки и столбцы подобной интерактивной таблицы базируются на данных из нескольких столбцов исходной таблицы. Ячейки сводной таблицы представляют собой суммы значений одного из числовых полей исходной таблицы. При этом суммирование производиться для тех строк исходной таблицы, в которых значения столбцов, образовавших столбцы и строки сводной таблицы, совпадают с именами строк и столбцов сводной таблицы, на пересечении которых находится данная ячейка. В некоторых источниках сводные таблицы называют перекрестными таблицами или кросс-таблицами.

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

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

Следует заметить, что сводная таблица Excel может быть построена на основании данных любого ODBC- или OLE DB-источника данных, а том числе данных OLAP – кубов, доступных с помощью соответствующих OLE DB-провайдеров. Помимо того Excel допускает использование более одного поля исходной таблицы для формирования строк, столбцов и фильтров, что позволяет создавать сводные таблицы с иерархическими метаданными.

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

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

Поля строк Рис. 2. Данные на листе Excel Первое, что требуется рассчитать – это количество проданных компьютеров каждым из менеджеров. Вы наверняка скажите: «что тут считать». Всего лишь 30 строк – легко вручную пересчитать. А если строк будет не 30, а 30000 – что тогда делать? Для решения этой простейшей задачи можно воспользоваться функцией расчёта итогов (пункт меню Данные-> Итоги):

• выделяем все столбцы с данными;

• выполняем сортировку данных по полю менеджер:

o пункт меню Данные-> Сортировка;

o в выпадающем списке «сортировать по» выбираем «менеджер» o нажимаем кнопку «ОК» • снимаем выделение, установив курсор на любую ячейку с данными;

• выбираем пункт Данные -> Итоги;

o выбираем в списке «При каждом изменении в:» поле «менеджер». (данная опция необходима для того, чтобы при построчном анализе исходных данных счётчик обнулялся при каждом изменении значения выбранного поля);

o в поле «операция» выбираем «количество», т.к. цель – посчитать количество проданных каждым менеджером компьютеров.

Помимо количества возможно также использование операций сумма, среднее, максимум, минимум, произведение, количество чисел, смещённое отклонение, несмещённое отклонение, смещённая дисперсия, несмещённая дисперсия;

o нажимаем кнопку «ОК» В результате выполнения описанных действий на листе посчитаются итоги (рис. 3).

Рис. 3. Количественные итоги продаж компьютеров по менеджерам Так можно решить простейшую задачу подсчёта итогов. Немного усложним задачу и попытаемся рассчитать на какую сумму каждый из менеджеров продал компьютеров различных производителей. Её решение использованием базовой функциональности итогов крайне сложно и будет требовать от пользователя помимо расчёта итогов выполнения ручных операций. Здесь на помощь приходит такой инструмент как «сводная таблица». Итак, возвращаем данные в исходное состояние и выполняем следующую последовательность действий:

• выбираем пункт меню Данные -> Сводная таблица;

• из первого списка выбираем «в списке или базе данных Microsoft Excel», а из второго «сводная таблица» и нажимаем кнопку «Далее>»;

• выделяем диапазон, в котором находятся данные для анализа. Диапазон должен включать и стоку заголовка с названиями колонок. Нажимаем кнопку «Далее>»;

• выбираем поместить таблицу в «новый лист» и нажимаем кнопку «Готово».

Результат представлен на рисунке 4.

Рис. 4. Результат работы мастера сводных таблиц.

Теперь можно заняться построением отчётов. Для этого необходимо перенести требуемые поля из списка полей сводной таблицы (правая часть) в соответствующие зоны сводной таблицы (левая часть). Узнаем, на какую сумму каждый из менеджеров продал ПК с процессором Intel в зависимости от объёма жёсткого диска. Для этого выполним следующие действия:

• перенесём поле «менеджер» в зону поля столбцов;

• перенесём поле «объём жёсткого диска» в зону поля строк;

• перенесём поле «сумма» в зону элементов данных.

В результате выполнения данных действий получится общая информация по продажам в разрезе менеджеров и объёма жёсткого диска ПК (рис. 5).

Рис. 5. Продажи ПК Теперь добавим условие на процессоры Intel:

• перенесём поле «тип процессора» в поля страниц;

• выберем тип процессоров Intel, нажав на выпадающий список рядом с полем и выбрав соответствующее значение Результат представлен на рисунке 6.

Pages:     | 1 || 3 |



© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.