Анализируй это
АрхивОб анализе информации в приложении к бизнес-процессам в последнее время говорят много. Плохо лишь, что под этим термином каждый понимает свое. Фрагментарность в подходе, к сожалению, напоминает другое распространенное явление - "лоскутную автоматизацию", когда на рабочие места устанавливаются разрозненные, слабо взаимосвязанные программные средства.
Об анализе информации в приложении к бизнес-процессам в последнее время говорят много. Плохо лишь, что под этим термином каждый понимает свое. Фрагментарность в подходе, к сожалению, напоминает другое распространенное явление - «лоскутную автоматизацию», когда на рабочие места устанавливаются разрозненные, слабо взаимосвязанные программные средства.
С анализом информации ситуация аналогична: зачастую в качестве «полнофункционального решения» предлагаются разрозненные механизмы, охватывающие только незначительную часть задач.
Как человек принимает решения?
Объяснить, как рождается мысль, мы, конечно, не в состоянии. Поэтому сконцентрируемся на том, как использовать в этом процессе информационные технологии. Первый вариант: лицо, принимающее решение (далее буду называть его ЛПР), видит в компьютере только средство извлечения данных, а выводы делает самостоятельно. Для решения такого рода задач служат системы отчетности, многомерный анализ данных, диаграммы. Второй вариант: программа не только извлекает данные, но и проводит их предобработку, например очистку, сглаживание и пр., а к обработанным данным применяет математические методы анализа - кластеризацию, классификацию, регрессию и т. д. В этом случае человек работает уже с моделями, подготовленными компьютером.
В первом случае практически всё, что связано с принятием решений, возлагается на человека, а потому подбор адекватной модели и выбор методов обработки выносится за пределы механизмов анализа. Базой для принятия решения является либо инструкция (например, каким образом реализовать механизмы реагирования на отклонения), либо интуиция. Иногда этого достаточно, но если ЛПР интересуют более глубокие знания, простое извлечение данных тут не поможет. Это и есть тот самый второй случай, когда лишь надежные механизмы предобработки и анализа позволят ЛПР действовать на более высоком уровне. И если первый вариант хорошо подходит для решения тактических и оперативных задач, то второй - для тиражирования знаний и решения стратегических проблем.
В идеале человеку нужна возможность применять оба подхода к анализу, выбирая методики в зависимости от задач. Вместе они позволяют удовлетворить почти все потребности организации при работе с бизнес-информацией.
Элементы анализа
Часто при описании того или иного продукта, анализирующего бизнес-информацию, применяют такие термины, как «риск-менеджмент», «прогнозирование», «сегментация рынка»… Но в действительности решение каждой из этих практических задач сводится к применению одного из описанного ниже методов анализа. Например, прогнозирование - это задача регрессии, сегментация рынка - это кластеризация, управление рисками - это комбинация кластеризации, классификации и, возможно, других методов. Фактически, они являются атомарными (базовыми) элементами, из которых собирается решение той или иной задачи (см. схему).
Источники данных
В качестве первичного источника данных должны выступать все сведения, которые могут пригодиться для принятия решения: базы данных систем управления предприятием, офисные документы, Интернет. Причем речь идет не только о внутренних, но и о внешних данных (макроэкономические показатели, конкурентная среда, демографические показатели и т. п.).
Хранение данных
Хотя в хранилище данных не реализуются технологии анализа, оно является той базой, на которой нужно строить аналитическую систему. При отсутствии хранилища на сбор и систематизацию необходимой для анализа информации будет уходить большая часть времени. Что в значительной степени сведет на нет все достоинства анализа - ведь одним из ключевых показателей любой аналитической системы является возможность быстро получить результат.
Семантический слой
Следующий элемент схемы - семантический слой. Независимо от того, как будет анализироваться информация, необходимо, чтобы она была понятна ЛПР. В большинстве случаев анализируемые данные располагаются в различных базах данных, а ЛПР не должен вникать в нюансы работы с СУБД. Поэтому требуется создать некий механизм, трансформирующий термины предметной области в вызовы механизмов доступа к БД. Эту задачу и выполняет семантический слой. Желательно, чтобы он был один для всех приложений анализа - так легче применять к задаче разные подходы.
Системы отчетности
Предназначение систем отчетности - отвечать на вопрос «что происходит?». Первый вариант их использования - регулярные отчеты для контроля оперативной ситуации и анализа отклонений. Например, система ежедневно готовит отчеты об остатке продукции на складе, и когда его значение меньше значения средней недельной продажи, необходимо отреагировать подготовкой заказа на поставку. Обычно этот подход в том или ином виде реализован в компаниях (пусть даже просто на бумаге), но нельзя допускать, чтобы это был единственный из доступных подходов к анализу данных.
Второй вариант - обработка нерегламентированных запросов. Когда ЛПР хочет проверить какую-либо мысль (гипотезу), ему необходимо получить пищу для размышлений, подтверждающую либо опровергающую идею. Идеи, как известно, приходят спонтанно, а потому невозможно предсказать, какого рода информация потребуется. Это означает, что необходим инструмент, позволяющий быстро и в удобной форме нужную информацию получить.
Механизм OLAP
Для построения систем отчетности можно применять различные подходы, однако самый распространенный на сегодня - это OLAP. Его основная идея - представление информации в виде многомерных кубов, где оси являют собой измерения (время, продукты, клиенты и пр.), а в ячейках помещаются показатели (например, сумма продаж, средняя цена закупки). Пользователь манипулирует измерениями и получает информацию в нужном разрезе.
Благодаря простоте понимания и наглядности, OLAP получил широкое распространение в качестве механизма анализа данных, но его возможности в области более глубокого анализа - например, прогнозирования - крайне ограничены. Основная проблема при решении задач прогнозирования - не возможность сведения данных в таблицы и диаграммы, а построение адекватной модели. Если модель есть, дальше все просто: на ее вход подается новая информация, пропускается через нее, а результат - это и есть прогноз. Но собственно построение такой модели является совершенно нетривиальной задачей! Конечно, можно заложить в систему несколько готовых простых моделей, например линейную регрессию или что-то аналогичное. Но, увы, это проблему не решает, поскольку реальные задачи почти всегда выходят за рамки простых моделей. А значит, будут обнаружены только явные зависимости, ценность которых незначительна. Приведу пример: если при анализе курса акций на фондовом рынке вы исходите из предположения, что завтра акции будут стоить столько же, сколько и сегодня, то в 90% случаев вы угадаете. Но насколько ценны такие знания? Интерес для брокеров представляют только оставшиеся 10%. Примитивные модели дают результат примерно того же уровня.
Собственно, задача построения прогнозов и тому подобные вещи выходят за рамки механизмов систем отчетности, поэтому и не стоит здесь ждать от OLAP положительных результатов. Для этого применяется совершенно другой набор технологий - Knowledge Discovery in Databases.
Knowledge Discovery in Databases
KDD - это процесс поиска полезных знаний в «сырых данных». KDD включает в себя вопросы подготовки данных, выбора информативных признаков, очистки данных, применения методов Data Mining (DM), постобработки данных, интерпретации полученных результатов.
Привлекательность этого подхода в том, что, независимо от предметной области, мы применяем одни и те же операции:
-
Извлечь данные. В нашем случае для этого нужен семантический слой.
-
Очистить данные. «Грязные» данные могут свести на нет применяемые в дальнейшем механизмы анализа.
-
Трансформировать данные. Различные методы анализа требуют данных, подготовленных в специальном виде. Например, где-то в качестве входов может использоваться только цифровая информация.
-
Провести собственно анализ - Data Mining.
-
Интерпретировать полученные результаты.
Процесс повторяется итеративно, и, по сути, это все, что необходимо для автоматизации извлечения знаний. Дальнейшие шаги уже делает эксперт, он же ЛПР.
И снова человек
Интерпретация результатов компьютерной обработки возлагается на человека, ведь никакой результат не имеет значения, пока не будет применен к конкретной предметной области. Но зато существует возможность тиражировать знания. Например, ЛПР при помощи того или иного метода определил, какие показатели влияют на кредитоспособность покупателей, и представил вывод в виде правила. Правило можно внести в систему выдачи кредитов и таким образом значительно снизить кредитные риски, поставив их оценки на поток. При этом от человека, занимающегося выпиской документов, не требуется глубокого понимания причин того или иного вывода. Основная идея - переход от разовых и неунифицированных методов к конвейерным.
Я нигде не упоминал о том, какие технологии будут использоваться для анализа, так как сами задачи и методы их решения не зависят от инструментария. Практически все реальные бизнес-задачи - прогнозирование, сегментация рынка, оценка эффективности рекламных кампаний и множество других - сводятся к вышеописанным и решаются одним из указанных методов (или их комбинацией).
На практике под системой анализа бизнес-информации часто понимается только OLAP. Получается, что под толстым слоем рекламных лозунгов находится всего лишь система построения отчетов. Но достаточно отталкиваться от предложенной схемы, и вы будете понимать действительное положение вещей. Лишь имея в распоряжении инструмент, позволяющий решить все названные задачи, можно говорить, что независимо от природы исследуемых объектов вы готовы выжать из данных максимум полезной информации и справиться с любой задачей бизнес-анализа.
Data Mining - метод обнаружения в «сырых» данных ранее неизвестных, нетривиальных, практически полезных и доступных для интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности. DM обеспечивает решение всего шести задач: классификация, кластеризация, регрессия, ассоциация, последовательность и отклонения.
-
Классификация - отнесение объектов (наблюдений, событий) к одному из заранее известных классов.
-
Кластеризация - группировка объектов (наблюдений, событий) на основе данных (свойств), описывающих сущность объектов. Объекты внутри кластера должны быть «похожими» друг на друга и отличаться от объектов, вошедших в другие кластеры. Чем болeе похожи объекты внутри кластера и чем больше отличий между кластерами, тем точнее кластеризация.
-
Регрессия, в том числе задачи прогнозирования. Установление функциональной зависимости между зависимыми и независимыми переменными.
-
Ассоциация - выявление закономерностей между связанными событиями. Примером может служить правило, указывающее, что из события X следует событие Y. Такие правила называются ассоциативными. Впервые эта задача была предложена для нахождения типичных шаблонов покупок, совершаемых в супермаркетах, поэтому иногда ее еще называют анализом рыночной корзины (market basket analysis).
-
Последовательные шаблоны - установление закономерностей между связанными во времени событиями. Например, после события X через определенное время произойдет событие Y.
-
Анализ отклонений - выявление наиболее нехарактерных шаблонов.