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

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

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

Как рождались модели

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

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

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

Во второй половине 90-х, благодаря работам математика Владимира Вапника (см. врезку «Первоисточники»), была разработана «Теория минимизации структурного риска», позволяющая автоматизировать процесс моделирования. Суть ее состоит в быстром нахождении такой модели, для которой соотношение точности и надежности будет наилучшим (в том числе, для большого количества переменных). В 1998 году франко-американская компания KXEN (Knowledge Extraction Engines) разработала на основе этой теории программный продукт, в котором удалось: сократить время на построение моделей с недель до часов; обеспечить построение точных и надежных моделей; ориентировать продукт на применение и бизнес-пользователями, и статистиками.

Моделирование «на каждый день»

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

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

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

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

Работа с KXEN

C точки зрения методологии анализа, инструментарий KXEN помогает решать три класса задач.

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

Работа с KXEN состоит из четырех этапов (рис. 1).

Этап 1 — постановка задачи. Бизнес-пользователь формулирует задачу: ответ на какой вопрос необходимо получить в результате анализа. При этом определяется класс решаемой задачи или их комбинация.

Этап 2 — построение модели. KXEN автоматически строит модель, а пользователь указывает данные для анализа, представляя их в виде одной таблицы в реляционной базе или в текстовом файле. KXEN выявляет пропуски и заполняет их значениями, типичными для представленного набора данных. Построив модель RXEN приводит ее характеристики в виде коэффициента точности (KI) и коэффициента надежности (KR). Таким образом, можно сразу оценить качество построенной модели.

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

Этап 4 — применение результатов. Получив качественную модель, пользователь может не просто работать с ней в рамках KXEN и совершенствовать работу на основе полученных знаний, но и экспортировать построенные модели в виде текста на одном из языков программирования (Cи, Visual Basic, Java, SQL, HTML и др.).

KXEN Analytic Framework представляет собой набор описательных и предсказательных аналитических модулей — «движков» для построения и применения моделей, которые можно комбинировать в зависимости от задачи (регрессия, кластеризация, временные ряды). Программный интерфейс к движкам открыт, и они могут быть встроены в существующие пользовательские приложения (например, как объекты COM/DCOM), с помощью протоколов CORBA или другими способами (рис. 2).

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

Программный инструментарий KXEN совместим с операционными системами Windows, Sun Solaris, IBM AIX, HP-UX и Linux, имеет интерфейсы с С++, DCOM, CORBA для организации собственных сценариев взаимодействия с пользователем. Для работы могут быть использованы как текстовые данные, так и СУБД IBM DB2, Oracle и Microsoft SQL Server, доступ к которым осуществляется с помощью протокола ODBC. Имеется интерфейс с системами SAS, SPSS.

Сила и слабость

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

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

Михаил Аветисов (Mikhail.Avetisov@Ksema.ru) — руководитель направления аналитических систем компании «Ксема», группа компаний «Терн» (Москва).


Первоисточники

  • V. Vapnik. The Nature of Statistical Learning Theory. Springer, 1995.

  • V. Vapnik. Structure of Statistical Learning Theory. Chapter in the Book: Computational Learning and Probabilistic Reasoning, ed. A. Gammerman. John Wiley and Sons, 1996.

  • I. Guyon, J. Makhoul, V.Vapnik. What size test set gives good error rate estimates? IEEE Pattern Analysis and Machine Intelligence, Vol. 20, January 1998.

  • V. Vapnik. The support vector method of function estimation. In J. Suykens and J. Vandewalle, ed. Nonlinear Modeling: Advanced Black-Box Techniques, Kluwer Academic Publishers, 1998.

  • V. Vapnik. Statistical Learning Theory. John Wiley, 1998.