Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум на базе системы Галактик...doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
11.85 Mб
Скачать

1.4.2. Аналитическая обработка данных для поддержки принятия решений

В базе данных интегрированной корпоративной информаци­онной системы накапливается огромный объем информации. Перед менеджерами предприятия встает вопрос: как и для каких целей использовать это море информации?

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

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

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

Выделяют три основные технологии поддержки принятия уп­равленческих решений на основе накопленной информации [23]:

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

• технологии OLAP (On-line Analytical Processing - интерак­тивная аналитическая обработка данных), ориентированные на область агрегированных показателей;

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

Рассмотрим подробнее перечисленные технологии.

Технологии OLAP

Технологии OLAP основаны на понятии хранилище данных, которое определено родоначальником этого направления Бил­лом Инмоном (W. Inmon) как «предметно-ориентированное, ин­тегрированное, поддерживающее хронологию собрание данных для поддержки процесса принятия управленческих решений».

Данные в хранилище поступают из оперативных систем (OLTP-систем), из внешних источников, например статистичес­ких отчетов, «скачанных» из Интернета прайс-листов других ком­паний и т.п.

Зачем создавать хранилища данных, ведь информация и так находится в файлах оперативных систем? Еще несколько лет на­зад в качестве главных причин назывались различие форматов хранящихся данных, их разрозненность, локализация в разных местах корпоративной сети. Действительно, до 1998-2000 гг. хра­нение всех данных на центральном сервере БД было редким яв­лением. Сейчас в связи с интенсивным внедрением ИКИС поло­жение меняется. Однако принципиальны такие причины необхо­димости создания хранилищ данных:

• сложные аналитические запросы к оперативным данным «забирают» ресурсы сервера и тормозят работу информацион­ной системы;

• оперативные данные мало пригодны для непосредственно­го сложного анализа;

• системы OLTP предназначены для оперативной обработ­ки данных, поэтому они не приспособлены для хранения инфор­мации за длительный (более нескольких месяцев) период, в то время как для OLAP интересен анализ объекта «в исторической ретроспективе».

На рис. 1.13* в качестве мер в трехмерном кубе использованы суммы продаж, в качестве измерений - Время, Товар и Магазин.

Оперативные корпоративные данные, а также данные из раз­личных внешних источников «очищаются», интегрируются, «складываются» в хранилище, затем готовятся для OLAP-анали-за и ИАД(рис. 1.12).

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

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

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

На рис. 1.14 приведен двумерный срез куба для одной меры -Unit Sales {Продано штук) и двух «неразрезанных» измерений -Магазин и Время

.

На рис. 1.15 показано одно «неразрезанное» измерение - Ма­газин, но зато отображаются значения трех мер: Unit Sales {Про­дано штук), Store Sales {Сумма продалс) и Store Cost {Расходы магазина).

Возможны и более сложные варианты. Так, на рис. 1.16 отра­жен случай, когда на осях среза (строках и столбцах) будут раз­мешены два (или более) измерения.

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

Может возникнуть вопрос: а разве представленные на рис. 1.13-1.16 результаты нельзя получить с помощью обычного ап­парата создания запросов и отчетов к реляционным базам дан­ных? Конечно, можно. Но тогда пользователю-аналитику при­дется каждый раз вызывать программиста для подготовки соот­ветствующих отчетов. Количество всевозможных «срезов» и «разрезов» данных, как видно из приведенного примера, огром­но. Очевидно, что пользователю-аналитику, не обладающему на­выками в программировании, необходим инструмент, который бы позволил «сворачивать», «разворачивать», «разрезать» дан­ные быстро и удобно. Именно таким инструментом и является технология OLAP.

Заметим, что с самого начала появления ERP-систем их сла­бость в плане возможностей анализа и составления отчетов была заметна. В англоязычной литературе даже появился термин «data (in) jail» - «данные в тюрьме» или «тюрьма для данных», кото­рый характеризовал трудности получения нетривиальной инфор­мации из баз данных ERP-систем.

Однако вернемся к рассматриваемому примеру OLAP-анали-за. Значения, откладываемые вдоль измерений, основоположни­ки OLAP называют members (одни российские авторы переводят этот термин как метки, другие - как члены). С помощью меток можно «разрезать» кубы либо фильтровать данные. Значения меток отображаются в двумерном представлении куба как заго­ловки строк и столбцов.

Метки можно объединять в иерархии, состоящие из несколь­ких уровней. Так, в рассматриваемом примере метки измерения Магазин (Store) объединяются в иерархию с уровнями:

All (Мир)

Country (Страна) State (Регион) City (Город)

Store (Магазин)

По каждому уровню иерархии можно вычислить агрегатные значения, например объем продаж для Франции (уровень Country), для Тамбовской области (уровень State) или для мага­зина «Южный мост» в Саратове по ул. им. Кутякова, 41 (уровень Store).

Пользователь может устанавливать в одном измерении не­сколько иерархий, например, для товаров: {Товары, Продукты питания, Детские продукты питания, Соки, Сок яблочный) и {То­вары, Продукты питания, Продукты производства компании «Вимм-Билль-Данн», Детские продукты питания, Соки, Сок яблоч­ный}. Разумеется, второй иерархией надо воспользоваться, ког­да осуществляется сравнительный анализ продаж товаров раз­личных производителей.

Наиболее простые OLAP-продукты - средства многомерно­го представления данных, или OLAP-клиенты (например, «Pivot Tables» в Excel 2000 фирмы Microsoft, «ProClarity» фирмы Knosys). Значительно большими возможностями обладают многомерные серверные СУБД (например, «Oracle Express Server») и OLAP-cep-веры (например, «Microsoft OLAP Services»).

В России разработкой технологий OLAP занимаются несколь­ко компаний. Наиболее известный программный продукт - ана­литическая платформа Контур фирмы «InterSoft Lab» [30]. Все большую известность приобретает модуль Галактика Zoom сис­темы «Галактика» [38], о котором будем подробнее говорить в разд. 3.2. Отметим, что эти программные продукты получили международное признание и благодаря привлекательному соче­танию цена/качество заняли свою нишу на западном рынке OLAP-продуктов.

Наличие в ERP-системе «встроенной OLAP-аналитики» ста­нет в ближайшие годы важным конкурентным преимуществом ИКИС.

Технологии интеллектуальной обработки данных (ИАД)

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

«Сырьем» для ИАД могут быть плоские таблицы реляцион­ных СУБД. Именно с них и начиналась история ИАД. Во многих случаях более эффективным является применение ИАД к данным, полученным после обработки с помощью OLAP-технологий.

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

1. Классификация - позволяет выявить признаки, характери­зующие однотипные группы объектов (классы), для того чтобы по известным значениям этих характеристик можно было отнес­ти новый объект к тому или иному классу. Предполагается, что характеристики классов заранее (до анализа) известны. В каче­стве методов решения задачи классификации применяют алго­ритм ближайшего соседа (Nearest Neighbor), индукцию деревьев решений, «обучаемые учителем» нейронные сети [10, 23, 24].

2. Кластеризация - распространение идеи классификации на более сложный случай, когда сами классы не предопределены. В результате выполнения процедуры кластеризации исходные дан­ные разбиваются на однородные группы (кластеры). Это позво­ляет предприятию выработать по отношению к каждой из групп (например, к группам покупателей) определенную политику. За­дача кластеризации значительно сложнее задачи классификации. В настоящее время наиболее часто задачи кластеризации решаются методом «обучения без учителя» специального вида нейрон- I ных сетей - сетей Кохонена [10, 24].

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

4. Выявление последовательностей. Последовательность - за­кономерность в данных, фиксирующая наступление событий не одновременно, а с некоторым определенным разрывом во време­ни. Таким образом, ассоциация есть частный случай последова­тельности с нулевым временным лагом. Так, например, если ви­деомагнитофон не был куплен вместе с телевизором, то в течение месяца после покупки нового телевизора покупка видеомагнито­фона производится в 51% случаев [23].

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

Из всего многообразия методов, применяемых для решения задач ИАД, вкратце рассмотрим два наиболее часто применяе­мых: нейронные сети (более правильно говорить об искусствен- I ных нейронных сетях (ИНС)), моделируемые на ПК, и системы поиска логических правил в данных.

Нейронные сети. Формально нейрон представляет собой ма­тематическую модель процесса, имеющего несколько входов и один выход (рис. 1.17). Вектор входных сигналов xfi=\,...,ri) пре­образуется нейроном в выходной сигнал с использованием бло­ка суммирования и блока нелинейного преобразования.

Работа блока суммирования описывается соотношением

Работа блока нелинейного преобразования описывается со­отношением

Обычно используются многослойные сети с числом нейронов 102-104.

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

Первый этап решения задачи классификации с помощью ИНС состоит в «обучении сети учителем». Этот процесс заключается в минимизации целевой функции ошибки Ј(w):

Обучение начинается с некоторого начального вектора w0 . Вектор весов, обеспечивающий глобальный минимум (1.5), бу­дем обозначать через wmin . Этот вектор является искомым реше­нием задачи (1.5).

Для решения задачи классификации нового объекта необхо­димо ввести в формулы (1.3) и (1.4), т.е. в «обученную ИНС», его параметры xi, и вычислить соответствующее значение у, по кото­рому и можно отнести объект к определенному классу.

Методика применения ИНС при использовании «обучения без учителя» (здесь наиболее известен алгоритм Кохонена) значитель­но сложнее. Не останавливаясь на ее описании, отметим, что ИНС посвящены многие учебники и монографии (см., например, [10] и [24]*). Имеются многочисленные бесплатные пакеты программ, вполне удовлетворительно реализующие основные нейронно-се-тевые алгоритмы.

По мнению исследователей, ИНС занимают уникальное мес­то среди методов обработки данных, превосходя их в универсаль­ности и малой чувствительности к форме данных. Недаром ИНС посвящен известный афоризм: «Если ничего не помогает, попро­буйте нейронные сети». Однако ИАД на основе ИНС не лишен определенных недостатков:

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

• ИНС могут обрабатывать только числовые переменные. Кодирование переменных других типов с помощью чисел не все­гда позволяет получить удовлетворительные результаты;

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

Всего лишь несколько лет назад к недостаткам ИНС относи­ли также трудности решения задачи минимизации (1.5). Дело здесь в том, что при решении такого типа задач существует опасность «попадания» в локальный минимум. Однако развитие эффектив-

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

Системы поиска логических правил в данных. Они основываются на алгоритмах ограниченного перебора, предложенных в 1960-х гг. российским ученым М. Бонгардом [10]. Эти алгоритмы вычисля­ют частоты комбинаций простых логических событий в подгруп­пах (классах) данных. Примеры простых логических событий: X - С,; X < С2; Х> С3; С4 < X < С5 и др., где X - какой-либо параметр (поле), С- - константы. Ограничением служит длина комбинации простых логических событий. На основании срав­нения вычисленных частот в различных подгруппах данных де­лается заключение о полезности той или иной комбинации для установления ассоциации в данных, для классификации, прогно­зирования и т.д.

По описанному принципу работает система «WizWhy» аме­риканской фирмы WizSoft (www.wizsoft.com). Количество пользо­вателей этой системы достигло 30 000 при стоимости инсталля­ции 4 тыс. долл. Демонстрационная версия «WizWhy» полнофун­кциональна и ограничена только числом анализируемых записей - 1000.

Возможности системы «WizWhy» продемонстрируем на при­мере задачи классификации объектов, характеризуемых двумя числовыми параметрами - К и Z. Предполагалось, что эксперты заранее распределили некоторое число объектов на три класса. Введя эту обучающую выборку в систему «WizWhy», можно по­лучить определенное число правил следующего вида.

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

Система «WizWhy» в отличие от ИНС не является «черным ящиком» - мы получаем в явном виде правила, по которым мож­но отнести объект к определенному классу. Все это обусловило популярность «WizWhy» на рынке продуктов Data Mining.

Действительно, система демонстрирует хорошие показатели при решении ряда практических задач и применяется, в частно­сти, во многих медицинских учреждениях западных стран. Это позволило авторам «WizWhy» противопоставить свою систему нейросетевому подходу и даже утверждать, что со временем она займет монопольное положение на рынке Data Mining.

Однако при попытке авторов применить систему «WizWhy» к решению задач классификации с достаточно сложной структу­рой данных выяснились ее недостатки. В частности, некоторые правила противоречат друг другу. Для отдельных объектов вы­даются правила, вообще отрицающие их принадлежность к ка­кому-либо классу! Заметим, что от перечисленных недостатков методика ИНС свободна*.

Для проверки возможностей методов Data Mining группой российских ученых под руководством В.А. Дюка разработаны простые тесты, имеющие очевидные решения [10]. На рис. 1.18 приведен один из подобных тестов.

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

Решение представленной тестовой задачи очевидно. Каждый класс описывается двумя логическими правилами (всего четыре правила):

ЕСЛИ (XI > 4) И (Х2 < 5) ТОГДА Класс 1 - крестики

ЕСЛИ (XI < 5) И (Х2 > 4) ТОГДА Класс 1 – крестики

ЕСЛИ (XI < 5) И (Х2 < 5) ТОГДА Класс 2 - нолики

ЕСЛИ (XI > 4) И (Х2 > 4) ТОГДА Класс 2 - нолики

Система «WizWhy» «отказывается» находить какое-либо ло­гическое правило в тесте, приведенном на рис. 1.18. В то же вре­мя ИНС при том же самом объеме обучающей выборки (20 из 100) правильно проводит классификацию представленных на рис. 1.18 объектов (при расчетах авторами использовалась функ­ция newlvq из пакета программ Matlab 5.3.1, с помощью которой можно сконструировать так называемую многослойную ней­ронную сеть «встречного распространения»). К аналогичным выводам пришли и авторы монографии [10] (см. также http:// datadiver.nw.ru/ Articles/Problems.htm).

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

Недавно группой В. А. Дюка была разработана система «Deep Data Diver», использующая новые принципы поиска логических закономерностей в данных (http://datadiver.nw.ru/Articles/ Problems.htm).

«Deep Data Diver» «справилась» с тестом, представленным на рис. 1.18, а также еще с несколькими тестами, которые оказались не по силам системе «WizWhy». Однако делать окончательные выводы о достоинствах «Deep Data Diver» рано. Новая система должна пройти серьезную апробацию многими независимыми исследователями.

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

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

Специалисты российской компании «Intersoft Lab» [30] про­анализировали причины сомнений относительно целесообразно­сти создания в компании современной аналитической системы, которые называют сами руководители предприятий.

Первая из называемых причин - отсутствие необходимых дан­ных. Действительно, многие компании не собирают либо не хранят необходимое время данные, которые важны для приня­тия решений. По данным агентства «РосБизнесКонсалтинг» (www.rbc.ru), в России 55% компаний не ведет собственную кли­ентскую базу. Ориентация таких фирм на нужды клиентов носит самый приблизительный характер. В результате компании выпол­няют заказы клиентов на «вольготных» для себя условиях. Объяс­нение такой ситуации лежит на поверхности - это характерная для нашей страны слабая конкуренция во многих секторах эко­номики. Но это положение меняется, а с вступлением России в ВТО изменится кардинально.

Вторая причина состоит в том, что очень часто данные в под­разделениях компании собираются в разных форматах и даже в разных системах. Например, нередки случаи, когда параллельно существуют базы данных систем «1 С:Предприятие», «MS Access», таблицы «MS Excel». Однако для ИАД необходимо анализиро­вать все эти данные вместе. Чтобы привести данные к одному формату, можно разработать соответствующий интерфейс. Кар­динальное же решение состоит во внедрении интегрированной информационной системы с единой базой данных.

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

Четвертая причина, на которую указали топ-менеджеры ком­паний, - очень большой, по их мнению, объем данных. Причем так говорят, даже не попробовав провести анализ данных. Ведь прогресс персональных компьютеров впечатляющ. Расчеты, ка­завшиеся «неподъемными» 3-4 года назад, сегодня становятся вполне реальными. При этом нет необходимости опираться цели­ком на серверные решения. Весьма объемные расчеты теперь мож­но реализовать на базе клиентского ПК, не перегружая сервер.

В качестве пятой причины называют дороговизну систем ИАД. Действительно, зарубежные системы такого класса очень дороги. Российские поставщики аналитических технологий пред­лагают собственные решения, не уступающие (а иногда и превос­ходящие) зарубежным аналогам по возможностям, но за значи­тельно меньшие суммы [30, 38].

Некоторые руководители не понимают необходимости ИАД: «А зачем нам это нужно? Все и так понятно». Это, быть может, справедливо для малых предприятий. Но когда объем данных большой (например, прайс-лист компании содержит тысячи по­зиций), то для того, чтобы владеть ситуацией, менеджеру необ­ходимы отчеты, созданные системами ИАД.

Убедившись в необходимости применения ИАД, некоторые руководители предприятий прибегают к разработке систем «сво­ими силами». Однако такой подход очень редко оказывается успешным - ведь в основе ИАД лежит слишком сложный и специ­фический математический аппарат. Как показывает опыт, гораз­до выгоднее внедрить систему, которая разрабатывалась специ­ально для анализа данных. Как вариант это может быть разра­ботка силами ИТ-подразделения компании аналитических приложений, которые бы учитывали специфику конкретного предприятия, на основе готового аналитического инструмента­рия. В качестве примера такого инструментария можно привес­ти аналитическую платформу «Контур» [30].