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

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

Запрос производится конечным пользователем, возможно на естественном языке. Запрос преобразуется в SQL – формат. SQL запрос по сети поступает в СУБД, которая управляет БД или хранилищем данных. СУБД находит ответ на запрос и доставляет его назад. Пользователь может затем разрабатывать презентацию или отчет в соответствии со своими требованиями.

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

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

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

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

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


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

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

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

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

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

Рис.3.2. Структура корпоративной информационно – аналитической системы.

Интеллектуальный анализ данных (ИАД) ориентирован на поиск закономерностей в накопленной информации. При этом используются методы искусственного интеллекта, прикладной статистики, теории баз данных. Выделяются пять стандартных типов закономерностей, которые позволяют выявлять методы 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. Значение по умолчанию.

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

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

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

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

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. Аннотация

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

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

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

Рисунок 1. Схема процесса

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

Инструменты интеллектуального анализа данных

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

Например, IBM SPSS®, который уходит корнями в статистический анализ и опросы, позволяет строить эффективные прогностические модели по прошлым тенденциям и давать точные прогнозы. IBM InfoSphere® Warehouse обеспечивает в одном пакете поиск источников данных, предварительную обработку и интеллектуальный анализ, позволяя извлекать информацию из исходной базы прямо в итоговый отчет.

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

Можно анализировать самые разные наборы данных, включая традиционные базы данных SQL, необработанные текстовые данные, наборы "ключ/значение" и документальные базы. Кластерные базы данных, такие как Hadoop, Cassandra, CouchDB и Couchbase Server, хранят и предоставляют доступ к данным такими способами, которые не соответствуют традиционной табличной структуре.

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

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

Основные методы

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

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

Ассоциация

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

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

Рисунок 2. Информационный поток, используемый при подходе ассоциации

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

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

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

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

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

Рисунок 3. Кластеризация

В этом примере видны два кластера, один в районе $2000/20-30 лет и другой в районе $7000-8000/50-65 лет. В данном случае мы выдвинули гипотезу и проверили ее на простом графике, который можно построить с помощью любого подходящего ПО для построения графиков. Для более сложных комбинаций требуется полный аналитический пакет, особенно если нужно автоматически основывать решения на информации о ближайшем соседе .

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

Метод кластеризации можно применить и в обратную сторону: учитывая определенные входные атрибуты, выявлять различные артефакты. Например, недавнее исследование четырехзначных PIN-кодов выявили кластеры чисел в диапазонах 1-12 и 1-31 для первой и второй пар. Изобразив эти пары на графике, можно увидеть кластеры, связанные с датами (дни рождения, юбилеи).

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

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

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

Последовательные модели

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

Деревья решений

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

Рисунок 5. Подготовка данных

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

Опора на SQL

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

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

Рисунок 6. Специальный формат анализа данных

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

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

Рисунок 7. Структура MapReduce

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

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

Рисунок 8. Последовательная цепочка вывода результатов обработки MapReduce

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

Независимо от исходных данных, многие инструменты могут использовать неструктурированные файлы, CSV или другие источники данных. Например, InfoSphere Warehouse в дополнение к прямой связи с хранилищем данных DB2 может анализировать неструктурированные файлы.

Заключение

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

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

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

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

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



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

В рамках теории ИИ можно выделить два мощных направления: логическое направление и направление нейронных и нейроподобных сетей.

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

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

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

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

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

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

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

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

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

В последнее время наблюдается оживление рынка программного обеспечения, предназначенного для ведения интеллектуального анализа данных (в англоязычных источниках - Data Mining, т. е. «раскопка данных»). Для этого класса систем ИИ характерно комплексное использование методов, используемых в логических системах ИИ и нейрокомпьютинге, в сочетании с инструментарием статистического анализа данных и компьютерной лингвистики. Только по состоянию на начало 1999 года на американском рынке интеллектуального программного обеспечения было представлено свыше пятнадцати программных и программно-аппаратных комплексов, относящихся к этому классу. Безусловно, все эти системы нуждаются в обучении, профессиональной настройке и адаптации к предметной области, в которой предполагается их дальнейшее использование. В большинстве своем, они представляют собой системы искусственного интеллекта, ориентированные на решение задач анализа «абстрактных» типов данных (т. е. безотносительно к их семантике), интегрированные со сконфигурированными под потребности заказчика базами данных. Иным вариантом поставки систем data mining является вариант, предполагающий настройку и адаптацию системы искусственного интеллекта (собственно, инструмента Data Mining) под уже существующую подсистему хранения данных заказчика.

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

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

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

Еще раз заметим: системы data mining не работают напрямую с текстами произвольного формата и данными, которые не могут быть непосредственно сопоставлены . Максимум, что они «могут», если не располагают тезаурусом, характерным для данной предметной области - это работа со структурно-статистическими признаками и временными распределениями.

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

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

Доступным примером, на котором можно испытать возможности такого рода систем, может служить распространяемая на основе лицензии Shareware «облегченная» версия программного обеспечения PolicyMaker Lite (PoliMap, США, http://www.polimap.com). Данный программный продукт специально разработан для ведения политического анализа и позволяет оценивать расстановку действующих политических сил при осуществлении политической активности (например, при продвижении законодательных инициатив, ведении внутрипартийной борьбы или в ходе выборов). И хотя в этой системе (по крайней мере, в той демонстрационной версии, которая предлагается на пробу заинтересованным лицам) явно перевешивает блок экспертных знаний, ознакомление с ней может оказаться весьма поучительным.

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

Поделиться: