Методы интеллектуального анализа данных в экономике. Системы искусственного интеллекта и интеллектуального анализа данных

16.01.1998 Марина Шапот

Сегодня мы являемся свидетелями активного развития технологии интеллектуального анализа данных (ИАД или data mining), появление которой связано, в первую очередь, с необходимостью аналитической обработки сверхбольших объемов информации, накапливаемой в современных хранилищах данных. Возможность использования хорошо известных методов математической статистики и машинного обучения для решения задач подобного рода открыло новые возможности перед аналитиками, исследователями, а также теми, кто принимает решения - менеджерами и руководителями компаний. Сложность и разнообразие методов ИАД требуют создания специализированных средств конечного пользователя для решения типовых задач анализа информации в конкретных областях. Поскольку эти средства используются в составе сложных многофункциональных систем поддержки принятия решений, они должны легко интегрироваться в подобные системы. Одним из наиболее важных и перспективных направлений применения ИАД являются бизнес-приложения, поэтому опыт канадско-американской фирмы Cognos по реализации методов ИАД в составе интегрированных интеллектуальных систем поддержки принятия решений представляет интерес как для разработчиков, так и для пользователей. Средства создания интеллектуальных приложений Средства извлечения новой информации Конкретный пример Заключение Литература Сегодня мы являемся свидетелями активного развития технологии интеллектуального анализа данных (ИАД или data mining), появление которой связано

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

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

Таблица 1. Примеры использования методов интеллектуального анализа данных в финансовых приложениях и маркетинговом анализе
Приложение (организация) Описание
FALCON (HNC Software, Inc.) Инструментальное средство для оперативного выявления злоупотреблений с кредитными карточками; более 100 организаций-пользователей отмечают сокращение числа нарушений на 20-30%.
Классификатор дебиторских счетов (Internal Revenue Service) Выявление счетов потенциально платежеспособных дебиторов на основе анализа больших объемов архивных данных по уплате налогов.
Повышение качества архивной финансовой информации (Lockheed) Выявление закономерностей (в виде правил вывода) в архивных финансовых данных для использования в моделях прогнозирования, системах поддержки принятия решений по инвестированию и т.д.
Верификация данных по курсам валют (Reuters) Система выявления ошибок в оперативно поступающих данных по курсам валют. С помощью нейронных сетей и индуктивного вывода правил строятся приблизительные прогнозы, которые сравниваются с поступающими данными. Большие отклонения рассматриваются как возможные ошибки.
Прогнозирование невыплат в сделках с недвижимостью (Leeds) Анализ архивных данных по сделкам с недвижимостью и выявление паттернов, соответствующих проблемным сделкам, заканчивающимся невыплатами. Выявленные закономерности используются для оценки риска при заключении новых сделок.
Маркетинговые исследования (Dickinson Direct) Определение характеристик типичных покупателей продукции компании для выявления новых потенциальных клиентов (профилирование клиентов).
Маркетинговые исследования (Reader"s Digest Canada) Выявление основных сегментов рынка и наиболее благоприятных подмножеств, а также исследование зависимостей между основными показателями и характеристиками сегментов.
Установка лотерейных автоматов (Automated Wagering, Inc.) Объединение методов ИАД с географическим анализом для определения наилучших мест для установки лотерейных автоматов в штате Флорида.
Выявление потенциальных покупателей автомобильных стерео систем (Washington Auto Audio, Inc.) Анализ демографической базы данных, содержащей информацию о 14000 реальных и потенциальных клиентов, позволил за 90 секунд получить 3 довольно надежных индикатора для прогноза спроса на продукцию и услуги компании. Аналогичные результаты были получены в результате традиционного исследования, выполненного одной из консалтинговых компаний, причем это исследование обошлось фирме на порядок дороже, чем автоматизированная система интеллектуального анализа данных.

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

  • получение отчетности банка и проверка ее полноты и корректности;
  • проведение группировки статей баланса и расчет экономических нормативов и аналитических коэффициентов (например, по методу CAMEL);
  • проверка экономических нормативов по методике ЦБ РФ;
  • оценка состояния банка по системе аналитических коэффициентов;
  • определение рейтинга банка;
  • анализ динамики основных показателей, выявление тенденций и прогнозирование состояния банка;
  • анализ степени влияния тех или иных факторов на состояние банка;
  • выработка рекомендаций по оптимизации банковского баланса.

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

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

Таблица 2. Основные технологии интеллектуального анализа данных
Технология Достоинства Недостатки
Правила вывода Удобны в тех случаях, когда данные связаны отношениями, представимыми в виде правил "если то " При большом количестве правил теряется наглядность; не всегда удается выделить отношения "если то "
Нейронные сети Удобны при работе с нелинейными зависимостями, зашумленными и неполными данными "Черный ящик": модель не может объяснить выявленные знания; данные обязательно должны быть преобразованы к числовому виду
Нечеткая логика Ранжируют данные по степени близости к желаемым результатам; нечеткий поиск в базах данных Технология новая, поэтому сейчас известно ограниченное число специализированных приложений
Визуализация Многомерное графическое представление данных, по которому пользователь сам выявляет закономерности - образцы и отношения между данными Модели не исполняются, и их интерпретация полностью зависит от аналитика
Статистика Есть большое число алгоритмов и опыт их применения в научных и инженерных приложениях Больше подходят для проверки гипотез, чем для выявления новых закономерностей в данных
К-ближайший сосед Выявление кластеров, обработка целостных источников данных Большие затраты памяти, проблемы с чувствительностью
Интегрированные Можно выбирать подходы, адекватные задачам, или сравнивать Сложные средства поддержки; высокая стоимость;
технологии результаты применения разных подходов. для каждой отдельно взятой технологии не всегда реализуется наилучшее решение

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

Средства создания интеллектуальных приложений

Среди инструментальных средств создания интеллектуальных приложений для бизнеса определенный интерес представляет семейство программных продуктов Business Intelligence (BI) компании Cognos. Системы Impromptu, PowerPlay, Scenario и 4Thought представляют собой взаимосвязанные и дополняющие друг друга инструментальные средства, поддерживающие наиболее эффективные технологии обработки данных и обеспечивающие решение широкого круга задач в бизнес-приложениях, от доступа к информации в распределенных базах данных до вычислительной обработки и интеллектуального анализа (рис.1).

Рис. 1. Семейство инструментальных средств компании Cognos

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

По оценкам Gartner Group, META Group, Lehman Bros., Seybold, Forrester и Hurwitz, продукция Cognos пользуется сегодня повышенным спросом - среди покупателей программных продуктов семейства BI, установивших у себя свыше 2000 лицензий, такие компании как Procter & Gamble, Chrysler, Dutch Telecom, Swedish Telecom и др. Программные продукты семейства BI обеспечивают создание корпоративных приложений в архитектуре "клиент-сервер". К достоинствам этих продуктов можно отнести объектно-ориентированную архитектуру средств администрирования, возможности контроля доступа к информации, поддержку технологии OLE в среде Windows. Дополнительные возможности по интеграции систем предоставляются за счет использования встроенного макроязыка, позволяющего описывать взаимодействие между различными приложениями и обмен информацией между ними.

Система Impromptu обеспечивает доступ к базам данных и формирование отчетов. Она ориентирована на непрограммирующих пользователей и имеет графический интерфейс создания сложных отчетов и задания последовательностей вычислительной обработки, причем не требует знания SQL. Простота использования достигается за счет объектно-ориентированного подхода к построению отчетов, а также наличия библиотеки шаблонов стандартных отчетов и утилиты Report Wizard, направляющей пользователя в ходе работы. Отчеты могут быть табличными, графическими и гипертекстовыми (формат HTML). Impromptu поддерживает работу с распространенными СУБД - Oracle, MS SQL Server, Sybase SQL Server, Sybase NetGateway, OmniSQL Gateway, MDI DB2 Gateway, Informix, CA-Ingres, Gupta SQLBase, а также обеспечивает доступ через ODBC. Отчеты Impromptu могут использоваться в качестве источников данных для остальных систем семейства BI, выступая при этом в роли информационных витрин. По итогам опроса InfoWord, проведенного в 1995 г., система Impromptu была признана лучшей в своем классе.

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

PowerPlay обеспечивает многомерный просмотр данных с нисходящим и уровневым анализом, работу с различными видами дисплеев (таблицами, двумерными и трехмерными графиками, диаграммами). Система позволяет выявлять и отмечать в просматриваемых отчетах исключения и особые случаи, ранжировать данные и проводить вычисления над массивами данных. Гиперкубы строятся на основе информации, поступающей из различных источников (баз данных и отчетов системы Impromptu), причем возможна обработка более 10 млн. записей. Число размерностей в гиперкубах не ограничивается. По сравнению с известными средствами OLAP, PowerPlay обеспечивает самую высокую степень сжатия данных в гиперкубах. Гиперкубы могут создаваться и размещаться как на серверах, так и на клиентских компьютерах. Новая версия PowerPlay обеспечивает возможность работы с гиперкубами через Web-браузеры.

На основе обобщения опыта применения технологии OLAP была разработана методика ее использования в различных сферах бизнеса. Методика включает анализ 24 типовых приложений в таких областях как финансовая деятельность, работа с кадрами, продажи, маркетинг, закупки, производство, распределение продукции и обслуживание клиентов. Например, анализ объемов продаж и прибылей удобно проводить на основе гиперкубов с такими размерностями как даты, регионы, виды продукции, каналы сбыта, клиенты и др. Аналитик может самостоятельно получать ответы на вопросы вида: "В каких городах во II и III квартале прошлого года продажи витаминных препаратов обеспечили не менее 60% прибыли?" и др. В производстве OLAP-анализ может применяться для анализа причин появления брака и оценки использования ресурсов. Бухгалтерские балансы одного или нескольких предприятий, с привязкой ко времени, также могут быть представлены в виде гиперкуба. Действительно, баланс, по своей сути, является многомерным документом, и анализ десятков подобных документов за период в 24 месяца, представленных в традиционном табличном виде, произвести очень сложно. Агрегирование информации с возможностью нисходящего анализа в различных разрезах существенно упрощает работу аналитика.

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

Средства извлечения новой информации

Если первые две системы семейства BI предназначены для обеспечения доступа к информации, уже имеющейся в базе данных, то следующие программные продукты представляют собой собственно средства извлечения новой информации - ИАД и позволяют получать знания, явно не содержащиеся в исходных данных . Оба средства доступны на платформе Windows 95/NT и рассчитаны на использование непосредственно менеджерами и аналитиками как крупных организаций, так и относительно небольших компаний. Поскольку системы основаны на различных методах ИАД (простейшие статистические методы - в Scenario, нейронные сети - в 4Thought), в распоряжение пользователей предоставляется набор средств, для каждого из которых определена область эффективного применения.

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

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

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

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

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

Поскольку процесс ИАД почти всегда требует значительных затрат времени и вычислительных ресурсов, в Scenario реализованы три стратегии анализа.

  1. Для проведения быстрого начального анализа задачи, отсева незначащих факторов и фокусировки внимания на ключевых параметрах рекомендуется использовать режим исследования . Этот режим позволяет выигрывать во времени за счет некоторого снижения точности результатов. Поскольку в дальнейшем предполагается проведение более детального анализа, требования к надежности не выдвигаются. Размер выборки не ограничивается.
  2. Более точный анализ может быть проведен в режиме тестирования . Использование этого режима обеспечивает очень высокую точность и достаточную надежность результатов. Для его проведения требуется не менее 300 записей в базе данных.
  3. Наилучшие по точности и надежности результаты можно получить в режиме верификации . Этот режим, требующий не менее 1000 записей, рекомендуется использовать для проверки и уточнения результатов, полученных в ходе тестирования.

Результаты исследований могут представляться в виде графиков и деревьев решений.

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

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

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

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

Выбор данных для анализа осуществляется с помощью специальной подсистемы Import Wizard из файлов в формате dBase, электронных таблиц Excel, текстовых файлов, а также отчетов Impromptu.

Scenario дополняет и расширяет возможности PowerPlay. Во-первых, система позволяет фокусировать внимание пользователя, осуществляющего OLAP-анализ, на наиболее значимых факторах, предварительно выявляемых средствами ИАД. Во-вторых, результаты ИАД могут помочь в формировании гиперкубов, поскольку они определяют, какие размерности представляют интерес для исследования и как сегментируются данные.

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

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

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

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

Данные в таблице рассматриваются системой как примеры для обучения нейронной сети. Совокупность всех данных разбивается на два подмножества - модельное и тестовое. На каждом цикле обучения сначала сеть обучается на модельном подмножестве, а затем корректность ее работы проверяется на тестовых данных. Обучение продолжается до тех пор, пока не будет достигнуто предельно допустимое число итераций (5000) или пользователь не остановит процесс. Очевидно, что обучение сети целесообразно проводить до тех пор, пока точность результатов сети на модельном и на тестовом подмножествах растет. Убывание точности на тестовом подмножестве означает переобучение сети и снижение качества ее работы, даже при продолжающемся росте точности на модельных данных. Система запоминает состояние сети на момент последней итерации с максимальным значением точности на тестовом подмножестве, и использует именно его в рабочей модели (отметим, что здесь возможны локальные максимумы). Как правило, для обучения оказывается достаточно от 10 до 1000 итераций. При работе с небольшими объемами данных, когда выбор тестового подмножества существенно влияет на результаты обучения, пользователь может провести обучение в несколько циклов, выбирая для каждого цикла новое разбиение на тестовые и модельные данные. В процессе обучения пользователю выдается табло, на которое выводятся данные о текущем состоянии сети (точность на модельном и на тестовом подмножестве, количество итераций, скорость обучения, итерация с наилучшим показателем точности на тестовых данных) в числовом и графическом виде.

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

  1. Основная статистика с комментариями системы. Указываются: точность модельных и тестовых данных; среднеквадратичная ошибка, стандартное отклонение, границы 95% доверительного интервала, среднее абсолютной ошибки, количество записей, количество переменных, оценки влияния факторов на целевой атрибут (аналоги t-статистик) и заключение системы относительно качества полученной модели.
  2. Количественные зависимости целевого показателя от каждого фактора в графическом виде и приближенное описание модели с помощью уравнения линейной регрессии.
  3. Коэффициенты корреляции для любого выбранного фактора относительно других факторов.
  4. Результаты использования модели на любых задаваемых пользователем значениях факторов.
  5. Объяснение для любого значения моделируемой переменной, вычисленной системой - как она была получена и какой вклад внес каждый фактор в это значение.

Конкретный пример

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

***

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

Литература

  1. Валерий Аджиев. . Открытые системы, № 3,1997, с.73-77
  2. Михаил Киселев, Евгений Соломатин. Открытые системы, # 4, 1997, с.41-44

Марина Шапот , РосНИИ информационных технологий и систем автоматизированного проектирования (Москва).



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

Основные требования к аналитической подсистеме банка:

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

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

8.2. Архитектуры хранилища данных

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

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

Как известно, хранилища данных — это сравнительно новое технологическое решение, которое стало широко использоваться только в начале 1990-х гг. На сегодняшний день существуют два основных подхода к архитектуре хранилищ данных. Это так называемая корпоративная информационная фабрика (Corporate Information Factory, сокр. CIF, см. рис. 8.1) Билла Инмона и хранилище данных с архитектурой шины (Data Warehouse Bus, сокр. BUS см. рис. 8.2) Ральфа Кимболла (Ralph Kimball).

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

Рис. 8.1. Нормализованное хранилище данных с пространственными витринами итоговых данных (CIF)

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

Отличительными характеристиками архитектуры CIF хранилищ данных можно назвать следующие:

  1. Использование реляционной модели организации атомарных данных и пространственной — для организации суммарных данных.
  2. Использование итеративного, или «спирального», подхода при создании больших хранилищ данных, т. е. «строительство» хранилища не сразу, а по частям. Это позволяет при необходимости вносить изменения в небольшие блоки данных или программных кодов и избавляет от необходимости перепрограммировать значительные объемы данных в хранилище. То же самое можно сказать и о потенциальных ошибках: они также будут локализованы в пределах сравнительно небольшого массива без риска испортить все хранилище.
  3. Использование третьей нормальной формы для организации атомарных данных, что обеспечивает высокую степень детальности интегрированных данных и соответственно предоставляет корпорациям широкие возможности для манипулирования ими и изменения формата и способа представления данных по мере необходимости.
  4. Хранилище данных — это проект корпоративного масштаба, охватывающий все отделы и обслуживающий нужды всех пользователей корпорации.
  5. Хранилище данных — это не механическая коллекция витрин данных, а физически целостный объект.

Рис. 8.2. Пространственное хранилище данных

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

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

Типичные черты архитектуры с общей шиной:

  1. Использование пространственной модели организации данных с архитектурой «звезда» (star scheme).
  2. Использование двухуровневой архитектуры, которая включает стадию подготовки данных, недоступную для конечных пользователей, и хранилище данных с архитектурой шины как таковое. В состав последнего входят несколько витрин атомарных данных, несколько витрин агрегированных данных и персональная витрина данных, но оно не содержит одного физически целостного или централизованного хранилища данных.
  3. Хранилище данных с архитектурой шины обладает следующими характеристиками:
    • оно пространственное;
    • включает как данные о транзакциях, так и суммарные данные;
    • включает витрины данных, посвященные только одной предметной области или имеющие только одну таблицу фактов (fact table);
    • может содержать множество витрин данных в пределах одной базы данных.
  4. Хранилище данных не является единым физическим репозиторием (в отличие от подхода Билла Инмона). Это «виртуальное» хранилище. Это коллекция витрин данных, каждая из которых имеет архитектуру типа «звезда».

Как компромиссное рещение был предложен гибридный подход (см. рис. 8.3).

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

Рис. 8.3. Гибрид нормализованного и пространственного хранилищ данных

8.3. Принципы обработки данных в хранилищах

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

  1. Сфера детализированных данных . Это область действия большинства систем, нацеленных на поиск информации. В большинстве случаев реляционные СУБД отлично справляются с возникающими здесь задачами. Общепризнанным стандартом языка манипулирования реляционными данными является SQL. Информационно-поисковые системы, обеспечивающие интерфейс конечного пользователя в задачах поиска детализированной информации, могут использоваться в качестве надстроек как над отдельными базами данных, так и над общим хранилищем данных.
  2. Сфера агрегированных показателей . Комплексный взгляд на собранную в хранилище данных информацию, ее обобщение и агрегация, гиперкубическое представление и многомерный анализ являются задачами систем оперативной аналитической обработки данных (OLAP On-Line Analytical Processing). Здесь можно или ориентироваться на специальные многомерные СУБД, или оставаться в рамках реляционных технологий. Во втором случае заранее агрегированные данные могут собираться в БД звездообразного вида либо агрегация информации может производиться на лету в процессе сканирования детализированных таблиц реляционной БД.
  3. Сфера закономерностей . Интеллектуальная обработка производится методами интеллектуального анализа данных (ИАД, Data Mining), главными задачами которых являются поиск функциональных и логических закономерностей в накопленной информации, построение моделей и правил, которые объясняют найденные аномалии и/или прогнозируют развитие некоторых процессов.

В основе концепции OLAP лежит принцип многомерного представления данных. Эта концепция была предложена В 1993 г. Е.Ф. Коддом, который рассмотрел недостатки реляционной модели, в первую очередь указав на невозможность «объединять, просматривать и анализировать данные с точки зрения множественности измерений, то есть самым понятным для корпоративных аналитиков способом», и определил 12 общих требований к системам OLAP, расширяющим функциональность реляционных СУБД и включающим многомерный анализ как одну из своих характеристик. Позже его определение было переработано в так называемый тест FASMI (Fast Analysis Shared Multidimensional Information ), требующий, чтобы OLAP-приложение предоставляло возможности быстрого анализа разделяемой многомерной информации.

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

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

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

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

ROLAP . Реляционная (relational) OLAP. Как и подразумевается названием, многомерная структура в таких инструментах реализуется реляционными таблицами, а данные в процессе анализа соответственно выбираются из реляционной базы данных аналитическим инструментом.

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

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

8.5. Системы интеллектуального анализа данных

Системы OLAP, так же как и классические системы математической статистической обработки информации, в настоящий момент далеко не всегда могут удовлетворить потребности современных аналитиков. Прежде всего они построены на принципах существования гипотез у пользователя. Однако нередко именно формулировка гипотезы оказывается самой сложной задачей при реализации бизнес-анализа для последующего принятия решений, поскольку далеко не все закономерности в данных очевидны с первого взгляда. И в этом случае применяются системы интеллектуального анализа данных (ИАД), называемые в зарубежной литературе Data Mining. Термин Data Mining означает не столько конкретную технологию, сколько сам процесс поиска корреляций, тенденций, взаимосвязей и закономерностей посредством различных математических и статистических алгоритмов: кластеризации, создания субвыборок, регрессионного и корреляционного анализа. Цель этого поиска — представить данные в виде, четко отражающем бизнес-процессы, а также построить модель, при помощи которой можно прогнозировать процессы, критичные для планирования бизнеса (например, динамику спроса на те или иные услуги либо зависимость их приобретения от каких-то характеристик потребителя).

В общем случае процесс ИАД состоит из трех стадий:

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

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

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

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

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

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

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

Cегодня существует довольно большое количество разнообразных методов исследования данных, применяемых в системах ИАД:

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

Вопросы для самопроверки

  1. Как расшифровывается термин «OLAP»? Чем системы OLTP отличаются от систем OLAP?
  2. Каковы главные операции в системах OLAP и OLTP?
  3. Что такое хранилище данных, чем оно отличается от базы данных?
  4. Какие архитектуры создания хранилищ данных вы знаете?
  5. Как работает хранилище данных в архитектуре фабрики?
  6. Как работает хранилище данных в архитектуре «Общей шины»?
  7. Что такое гибридная архитектура хранилища данных и чем она отличается от двух других архитектур?
  8. Как расшифровывается термин FASMI, кем он был предложен и что означает?
  9. Что такое ROLAP ?
  10. Что такое MOLAP?
  11. Что такое HOLAP?
  12. Что означает термин «Data Mining» и чем он отличается от OLAP?
  13. Сколько закономерностей и каких позволяют выделить методы ИАД?
  14. Из каких стадий состоят методы ИАД?
  15. Что такое нейросетевые алгоритмы в ИАД?
  16. Что такое деревья решений в ИАД и к каким задачам в сфере анализа банковской деятельности Вы бы рекомендовали применять деревья решений?
  17. Аннотация

Введение

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

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

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

В данной работе мы исследуем интеллектуальный анализ данных.

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

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

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

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

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

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

· математических пакетов;

· электронных таблиц(и различного рода надстроек над ними);

· средств интегрированных в системы управления базами данных (СУБД);

· других программных продуктов.

В качестве примера можно привести СУБД MicrosoftSQLServer и входящие в ее состав службы AnalysisServices, обеспечивающие пользователей средствами аналитической обработки данных в режиме on-line (OLAP)и интеллектуального анализа данных, которые впервые появились в MSSQLServer 2000.

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

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

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

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

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

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

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

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

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

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

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

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

Кластеризация относится к задачам обучения без учителя (или "неуправляемым" задачам).

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

Данная задача также относится к классу "обучение без учителя".

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

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

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

Таблица 1.1. Примеры применения интеллектуального анализа данных

Информационные технологии

Торговля

Финансовая сфера

Классификация

Оценка кредитоспособности

Регрессия

Оценка допустимого кредитного лимита

Прогнозирование

Прогнозирование продаж

Прогнозирование цен акции

Кластеризации

Сегментация клиентов

Сегментация клиентов

Определения взаимосвязей

Анализ потребительской корзины

Анализ последовательностей

Анализ переходов по страницам web-сайта

Анализ отклонений

Обнаружение вторжений в информационные системы

Выявление мошенничества с банковскими картами

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

В системах ИАД применяется чрезвычайно широкий спектр математических, логических и статистических методов: от анализа деревьев решений (Business Objects) до нейронных сетей (NeoVista). Пока трудно говорить о перспективности или предпочтительности тех или иных методов. Технология ИАД сейчас находится в начале пути, и практического материала для каких-либо рекомендаций или обобщений явно недостаточно.

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

интеллектуальный анализ данные прогнозирование

Заключение

Интеллектуальный анализ данных (ИАД, data mining, KDD - knowledge discovery in databases) представляет собой новейшее направление в области информационных систем (ИС), ориентированное на решение задач поддержки принятия решений на основе количественных и качественных исследований сверхбольших массивов разнородных ретроспективных данных.

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

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

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

Список литературы

1. Тельнов Ю.Ф. Интеллектуальные информационные системы в экономике. М. СИНТЕГ 2002. 306 с.

2. Дюк В., Самойленко А. Data Mining. Издательский дом "Питер". СПб, 2001.

3. Васильев В.П. Информационно-аналитические системы. Практикум на ПК.МФ МЭСИ -2007.

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

Целью интеллектуального анализа данных (англ. Datamining, другие варианты перевода - "добыча данных", "раскопка данных") является обнаружение неявных закономерностей в наборах данных. Как научное направление он стал активно развиваться в 90-х годах XXвека, что было вызвано широким распространением технологий автоматизированной обработки информации и накоплением в компьютерных системах больших объемов данных [ , ]. И хотя существующие технологии позволяли, например, быстро найти в базе данных нужную информацию, этого во многих случаях было уже недостаточно. Возникла потребность поиска взаимосвязей между отдельными событиями среди больших объемов данных, для чего понадобились методы математической статистики, теории баз данных, теории искусственного интеллекта и ряда других областей.

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

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

  • специализированных "коробочных" программных продуктов для интеллектуального анализа;
  • математических пакетов;
  • электронных таблиц(и различного рода надстроек над ними);
  • средств интегрированных в системы управления базами данных (СУБД);
  • других программных продуктов.

В рамках данного курса нас в первую очередь будут интересовать средства, интегрированные с СУБД . В качестве примера можно привести СУБД MicrosoftSQLServer и входящие в ее состав службы AnalysisServices, обеспечивающие пользователей средствами аналитической обработки данных в режиме on-line ( OLAP )и интеллектуального анализа данных, которые впервые появились в MSSQLServer 2000.

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

Задачи интеллектуального анализа данных

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

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

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

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

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

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

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

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

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

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

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

Кластеризация относится к задачам обучения без учителя (или "неуправляемым" задачам).

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

Данная задача также относится к классу "обучение без учителя".

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

Интеллектуальный анализ данных (ИАД) ориентирован на поиск закономерностей в накопленной информации. При этом используются методы искусственного интеллекта, прикладной статистики, теории баз данных. Выделяются пять стандартных типов закономерностей, которые позволяют выявлять методы Data Mining: ассоциация, последовательность, классификация, кластеризация и прогнозирование.

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

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

Рис. 3.13. Фрагмент сформированного отчета по поставкам деталей

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

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



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

В общем случае процесс ИАД состоит из трёх стадий:

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

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

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

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

Традиционные методы прикладной статистики

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

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

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

В качестве примеров наиболее мощных и распространенных статистических пакетов, реализующих указанные методы, можно назвать SAS, SPSS, STATGRAPHICS, STATISTICA и др.

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

Искусственные нейронные сети (ИНС) представляют парадигму обработки информации, базирующуюся на той или иной упрощенной математической модели биологических нейронных систем. ИНС организует свою работу путем распределения процесса обработки информации между нейроэлементами, связанными между собой посредством синаптических связей. Выявление закономерностей в данных осуществляется путем обучения ИНС, в процессе которого происходит корректировка величин синаптических связей. Круг задач, решаемых при помощи данных методов, также довольно широк: распознавание образов, адаптивное управление, прогнозирование, построение экспертных систем и др. Основными недостатками нейросетевой парадигмы являются: необходимость большого объема обучающей выборки, отсутствие универсальных топологий и настроек сети. Другой существенный недостаток заключается в том, что ИНС представляет собой «черный ящик», не поддающийся интерпретации человеком. Примеры нейросетевых систем – BrainMAker, NeuroShell, OWL, Neural Analyzer в программном комплексе Deductor (BaseGroup).

Методы обнаружения логических закономерностей в данных

Данные методы апеллируют к информации, заключенной не только в отдельных признаках, но и в сочетаниях значений признаков. Они вычисляют частоты комбинаций простых логических событий в подгруппах данных. На основании анализа вычисленных частот делается заключение о полезности той или иной комбинации для установления ассоциаций в данных, для классификации, прогнозирования. Результаты работы данных методов оформляются в виде деревьев решений или правил типа «ЕСЛИ…, ТО…». Популярность данного подхода связана с наглядностью и понятностью полученных результатов анализа. Проблемой логических методов обнаружения закономерностей является необходимость перебора вариантов за приемлемое время и поиск оптимальной композиции предложенных правил. Представителями систем, реализующих данные методы, являются системы See5/C5.0, WizWhy, Tree Analyzer (BaseGroup).

Методы рассуждения на основе аналогичных случаев

Идея методов CBR (case based reasoning) довольно проста. Для того чтобы сделать прогноз на будущее или выбрать правильное решение, эти системы находят в прошлом близкие аналоги наличной ситуации и

выбирают тот же ответ, который был для них правильным. Главным минусом такого подхода считают то, что данные системы вообще не создают каких-либо моделей или правил, обобщающих предыдущий опыт. В выборе решения они основываются на всем массиве доступных исторических данных. Поэтому существует проблема выбора объема множества прецедентов, которые необходимо хранить для достижения удовлетворительной классификации или прогноза. Примеры систем, использующих CBR – KATE tools, Pattern Recognition Workbench.

Эволюционные и генетические алгоритмы

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

Методы визуализации многомерных данных

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

Следует отметить, что использование автономных инструментов Data mining менее предпочтительно по сравнению с их внедрением в среду OLAP или СУБД.

3.2.3. Геоинформационные системы

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

Функции ГИС:

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

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

Манипулирование и визуализация информации;

Пространственный анализ и моделирование;

Интеграция информации различных источников.

Существует два подхода к представлению пространственных объектов:

Растровый (ячейки или клетки на карте);

Векторный (точки, линии, полигоны).

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

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

Навигация включает в себя:

Изменение масштаба;

Перемещение по карте;

Выдачу необходимого набора слоев;

Задание атрибутов слоя;

Порядок прорисовки слоев.

Поиск информации включает:

Поиск конкретного объекта по карте по атрибутивным данным (например, поиск улицы по названию);

Поиск атрибутивной информации об объекте на карте;

Построение буферных зон, анализ близости;

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

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

Приведем примеры пространственных запросов. Сколько домов находится в 100 метрах от заданного водоема? (пример анализа близости); Сколько покупателей живет не далее 1 км от данного магазина?; Какие почвы встречаются в заданной охраняемой территории? (выполняется наложение почвенной карты на карту охраняемых объектов).

Наиболее распространенными представителями ГИС являются продукты MapInfo, ArcInfo.


3.3. МетодЫ анализа и проектирования
информационных систем

Характерными чертами корпоративных информационных систем являются длительность жизненного цикла, масштабность и сложность решаемых задач, пересечение множества предметных областей, ориентация на аналитическую обработку данных, территориальная распределенность, наличие нескольких уровней иерархического подчинения и др. Перечисленные свойства послужили стимулом к развитию и использованию инструментальных средств для анализа и проектирования автоматизированных систем – CASE-средств (Computer Aided Software Engineering). Обычно к CASE-средствам относят любое программное средство, автоматизирующее ту или иную совокупность процессов жизненного цикла автоматизированной системы и обладающее следующими основными характерными особенностями, такими как:

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

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

Использование специальным образом организованного хранилища проектных метаданных (репозитория).

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

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

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

Средства разработки приложений;

Средства конфигурационного управления;

Средства документирования;

Средства тестирования;

Средства управления проектом;

Средства реинжиниринга.

В основе CASE-средства лежит определенная методология анализа и проектирования автоматизированной системы. При этом имеют место два основных подхода – структурный и объектный.

Структурный подход основан на декомпозиции функций, реализуемых системой. В его основе лежит функциональная модель (Data Flow Diagrams – DFD), информационная модель (Entity Relationship Diagrams – ERD) и событийная модель состояний (State Translation Diagrams – STD). Процессу проектирования системы предшествует анализ бизнес-процессов, имеющих место в предметной области. При этом используется методология структурного анализа систем (Structured Analysis and Design – SADT), на основе которой принят стандарт моделирования бизнес-процессов IDEF0.

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

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

Наиболее распространенными CASE-средствами, основанными на структурном подходе, являются BPwin (поддерживает нотации IDEF0, DFD, IDEF3) для функционального моделирования и ERwin для информационного моделирования систем. Фирма ORACLE, в частности, поддерживает свой продукт Designer/2000. Представляет интерес продукт PowerDesigner (поддерживает нотации IDEF1X, DFD,UML).

Объектно-ориентированный подход основан на глубинном изучении предметной области с позиции объектов и их поведения. Ассоциация производителей программного обеспечения Object Managament Group утвердила в качестве стандартного средства моделирования для этого подхода язык UML (Unified Modeling Language – унифицированный язык моделирования). По сравнению со структурным подходом объектно-ориентированный подход в большей степени ориентирован на данные. Он соответствует итеративному процессу разработки с наращиванием возможностей. Единая модель конкретизируется на этапах анализа, проектирования и реализации.

Для объектного анализа и проектирования систем возможно использование продуктов Rational Rose (Rational Software), Paradigm Plus (Computer Associates) и др.

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

3.3.1. Моделирование бизнес-процессов (IFEF0)

С точки зрения менеджеров, наиболее подходящим языком моделирования бизнес-процессов на стадии создания моделей предметной области является IDEF0. Этот язык моделирования появился в результате применения методологии структурного анализа и проектирования систем (Structured Analysis and Design Technique - SADT). На основе этой методологии создан стандарт моделирования бизнес-процессов IDEF0. Его успеху в немалой степени способствовала фирма Logic Works (США), создав на основе IDEF0 свой популярный среди менеджеров программный продукт BPwin. В 2000 году в нашей стране введен в действие руководящий документ РД IDEF0-2000 «Методология функционального моделирования IDEF0».

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

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

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

Рассмотрим основные компоненты IDEF0 синтаксиса.


3.15. Изображение дуги

3.16. Варианты объединения дуг

Дуги изображают данные или объекты, связанные функциями. Дуга состоит из одного или нескольких сегментов линии со стрелкой, направленной в один конец. Как показано на рис. 3.15, сегмент дуги может быть прямым или изогнутым (на угол, кратный 90°). Дуги передают данные или объекты, связанные функциями, которые нужно выполнить (рис. 3.16).

Правила определяют, как используются вышеуказанные компоненты:

1) блок должен быть достаточного размера, чтобы в него убралось имя блока;

2) блок должен иметь прямоугольную форму и квадратные углы;

3) блок должен изображаться сплошными линиями;

4) угол изгиба дуг должен быть кратным 90°;

5) дуги должны изображаться сплошными линиями;

6) дуги должны изображаться вертикально или горизонтально, но не по диагонали.

7) концы дуги должны касаться внешнего периметра функционального блока;

8) дуги должны присоединяться к сторонам блока, а не к углам.

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


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

Рис. 3.17. Функциональный блок и интерфейсные дуги

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


3.18).

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

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


3.19. Одновременное выполнение функций

Рис. 3.20. Полное и непротиворечивое соответствие между диаграммами


Для того чтобы указать положение любой диаграммы или блока в иерархии, используются номера диаграмм (рис. 3.22). Например, А21 является диаграммой, которая детализирует блок 1 на диаграмме А2. Аналогично А2 детализирует блок 2 на диаграмме А0, которая является самой верхней диаграммой модели. Приведен пример анализа бизнес-процессов (рис. 3.23).

Рис. 3.22. Иерархия диаграмм

Рис.

3.23. Пример анализа бизнес-процессов

3.3.2. функциональное моделирование (DFD)

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

Рассмотрим основные компоненты DFD-синтаксиса.

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


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

Рис. 3.26. Изображение внешней сущности

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


Существует ряд нотаций представления DFD-диаграмм (рис. 3.28 – 3.30).

3.28. Диаграммы потоков данных в нотации Yourdon / De Marco

Рис. 3.29. Диаграммы потоков данных в нотации SSADM


3.30. Диаграммы потоков данных в нотации Gane/Sarson

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

Рис. 3.31. Контекстная DFD- диаграмма

DFD верхнего уровня (рис. 3.32) обеспечивает более детальное описание системы. Она определяет главные процессы системы (максимум 6 или 7), потоки данных между ними, внешние сущности и накопители данных. Каждый процесс имеет уникальное имя и номер, причем порядок обработки данных соответствует номерам процессов.

Рис. 3.32. DFD-диаграмма верхнего уровня

Для нумерации процессов используется десятичная система: в диаграмме второго уровня, детализирующей процесс 3 диаграммы верхнего уровня, процессы имеют номера 3.1, 3.2, 3.3 и т. д.; процессы DFD третьего уровня, описывающие процесс 3.3, имеют номера 3.3.1, 3.3.2 и т. д. Поток данных DFD нижнего уровня получает в точности тот же «входной» поток данных и передает такой же «выходной» поток, как и процесс верхнего уровня, который он описывает.

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


между процессами не может быть циклов и повторений (рис. 3.34);

Рис. 3.34. Ошибка, связанная с использованием циклов


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

Рис. 3.35. Ошибка, связанная активацией процессов входными сигналами

Чтобы сделать DFD читаемой, необходимо придерживаться следующих правил.

Процессы должны описываться коротким словосочетанием с глаголом, например «вычислить недельный оклад».

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

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

3.3.3. Унифицированный язык моделирования (UML)

В январе 1997 года три теоретика в области объектного моделирования Гради Буч, Джим Рамбо и Айвар Якобсон, объединившиеся под эгидой компании Rational Software, подготовили и выпустили версию 1.0 спецификации нового языка объектно–ориентированного моделирования UML, отразившего сильные стороны методологий Booch, OMT и OOSE.

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

В основе языка лежит совокупность диаграмм, посредством которых моделируется статика и динамика процессов, происходящих в системе. Сначала выполняется анализ требований к системе на основе выявления прецедентов − вариантов использования системы (use case ) с точки зрения внешнего окружения. Разрабатываемая модель видов деятельности (activity model ) отражает внутрисистемную точку зрения. Диаграмма видов деятельности показывает алгоритм вычисления в рамках каждого прецедента.

Внутреннее состояние системы задается в модели классов (class model ). Выделяются классы-сущности (entity class ), которые представляют постоянно хранимые объекты базы данных. Также выделяются пограничные классы (boundary class ) для определения интерфейсов системы и управляющие классы (control class ) для определения программной логики. На этапе анализа прецедентов, как правило, формируются классы-сущности. Моделирование классов других типов выполняется на этапе проектирования системы.

Далее проводится анализ поведения классов в определенных вариантах использования. При моделировании взаимодействий (interaction modeling ) между классами определяются наборы сообщений, свойственных поведению системы. Каждое сообщение обращается к операции в вызываемом объекте. Таким образом, исследование взаимодействий между классами приводит к выявлению операций. Если модель взаимодействий (interaction model) является источником детализированной спецификации прецедента, то разрабатываемая модель состояний (statechart model ) служит детализированным описанием класса (динамических изменений состояний класса). Диаграмма состояний, присоединенная к классу, определяет способ реагирования объектов класса на события.

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

Рассмотрим несколько подробнее структурный уровень моделирования в UML.

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

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

Объект (Object ) – это экземпляр сущности, представленной классом.

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

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

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

Атрибуты в UML могут характеризоваться одним или несколькими параметрами:

1. Видимость. В терминах объектно-ориентированного кода видимость имеет три уровня:

Public (+) – открытый для всех;

Protected (#) – защищенный, виден только для потомков данного класса;

Private (-) – закрытый для других классов.

2. Имя – обязательное свойство (не допускаются пробелы).

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

4. Тип данных атрибута (число, символ и т. д.).

5. Значение по умолчанию.



Просмотров