База примеров

Анализ клиентских баз данных. Выявление мошенничества (fraud detection) на базе STATISTICA Data Miner

Содержание

 


Введение

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

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

В торговле книгами пол, возраст, купленные книги и т.д.

В интернет-торговле купленные товары, их количество, время покупки и т.д.

В этом кейсе мы рассмотрим медицинские базы данных. Реальный кейс описан в статье.

Цель анализа: выявление дантистов, умышлено завышающих стоимость услуг - выявление потенциальных мошенников (fraud detection).

В начало


Краткий обзор Data Mining

Data Mining – исследование и обнаружение «машиной» (алгоритмами, средствами искусственного интеллекта) в сырых данных скрытых знаний, которые ранее не были известны, нетривиальны, практически полезны, доступны для интерпретации человеком. (Основатель направления Data Mining Пятецкий-Шапиро.)

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

Ниже приведено краткое описание основных задач анализа данных.

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

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

Регрессия. Поиск функции, которая описывает зависимость характеристиками объекта с наименьшей ошибкой.

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

Кластеризация. Выявление в данных скрытой структуры или наблюдений, которые так или иначе схожи.

В этом кейсе мы уделим внимание методу выявления нетипичных наблюдений.

В начало


Вербальная постановка задачи

Страховая компания имеет контракты с 10 клиниками, в которых работает 100 дантистов. База данных состоит из 20000 пациентов. С помощью SQL выгружаем из базы данных тех дантистов, которые выполняли услуги по страховке более 25 раз.

Всего было найдено 30 таких дантистов. Длина выборки составила 1000 – общее количество работ, которые они выполнили по страховке. Общая сумма страховки составила 500000$.

В выборке имеется информация об оказанных услугах дантистов, выполненных по страховке:

  • Возраст клиента;
  • Тип работ;
  • Дополнительные услуги;
  • Стоимость оказанных услуг в $;
  • Персональный номер дантиста.

Необходимо определить дантистов, умышлено завышающих стоимость услуг – выявить потенциальных мошенников (fraud detection).

В начало


Структура данных

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

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

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

Размер выборки – 1000 наблюдений.

Ниже приведен фрагмент таблицы:

В представленной таблице приводится информация о 1000 выполненных работ различными дантистами.

По строчкам стоят Выполненные работы, по столбцам - следующие параметры:

  • Возраст клиента;
  • Тип работы (1- незначительная, 2 - значительная, 3 - специализированная);
  • Дополнительные услуги (1 – не было; 2 – недорогостоящие дополнительные услуги; 3- дорогостоящие);
  • Стоимость оказанных услуг в $;
  • Личный номер дантиста (используется для точной идентификации дантиста).

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

В начало


Основные подходы обнаружения мошенничества

Большинство методов, применяемых для обнаружения мошенничества (fraud detection), решают задачу классификации. Они требуют наличия объектов, для которых заранее известно к какому из двух классов они принадлежат Мошенничество или Не мошенничество (при чем достаточно большого количества для построения качественной модели). Такие методы принадлежат к классу supervised learning (обучение с учителем).

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

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

Задача кластеризации решается на начальных этапах исследования. Ее решение помогает лучше понять данные, их природу.

Большое достоинство кластерного анализа состоит в том, что он позволяет проводить разбиение объектов не по одному, а по целому набору признаков.

В начало


Почему именно технология Data Mining, а не отдельные методы классификации и кластеризации?

Технология Data Mining позволяет в отличие от отдельных методов кластеризации и классификации:

  • Определить автоматически оптимальное количество кластеров;
  • Работать с большим массивом данных;
  • Не требуется наличия объектов, для которых заранее известно к какому из классов они принадлежат;
  • Анализ баз данных на месте (In-Place Database Processing).

Анализ баз данных на месте (In-Place Database Processing)
Обработка баз данных на месте In-Place Database Processing (IDP) - это развитая технология доступа к базам данных, разработанная в StatSoft для достижения высокой производительности прямого интерфейса между данными внешних серверов и аналитической функциональностью продуктов STATISTICA.

IDP технология разработана, чтобы помочь обеспечить доступ к данным в больших БД, используя одношаговый процесс, который не требует создания локальных копий данных. IDP значительно увеличивает производительность STATISTICA; в частности хорошо приспособлена для задач data mining и исследовательских Анализов данных.

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

В начало


Алгоритмы кластеризации

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

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

В начало


Описательный анализ

Из таблицы видно, что непрерывные переменные Возраст клиента и Стоимость услуг имеют разную вариабельность (разброс) – Стандартное отклонение (последний столбец).

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

Стандартизация

  • Выберем вкладку Данные;
  • Выберем Стандартизовать… Откроется диалоговое окно;
  • Выберем переменные – Возраст клиента, Стоимость услуг. Нажмем кнопку ОК .

В начало


Кластеризация K-средних

Анализ результатов - вкладка Quick

В верхней части диалогового окна расположено рабочая область, где показаны основные характеристики кластеризации:

  • Algorithm (Алгоритм) – К-средних;
  • Distance method (мера связи) - Евклидова;
  • Initial centers (определение центров кластеров) – Максимальное расстояние между кластеров;
  • MD casewise deletion (удаление пропущенных значений) - Да;
  • Cross-validation (кросс-проверка) – 10 кратная;
  • Testing sample (Контрольная выборка) - 0;
  • Training cases (Обучающая выборка) - 1000;
  • Training error (ошибка на обучающей выборке) – 0,492645;
  • Number of cluster (Число кластеров) – 4.

Во вкладке Quick (Быстрый) можно просмотреть следующие результаты:

Результаты анализа: Описание кластеров

Средние в каждом кластере (Cluster Means):

По строчкам стоят номера кластеров.

По столбцам - переменные, выбранные в начале анализа.

Последний столбец показывает долю наблюдений в каждом кластере.

Были получены следующие кластеры:

  • Кластер 1: Специализированная работа с использованием дорогостоящих дополнительных процедур, средний возраст клиента – 25, средняя стоимость услуг – 715$;
  • Кластер 2: Незначительная работа без использования дополнительных процедур, средний возраст клиента – 21, средняя стоимость услуг – 286$;
  • Кластер 3: Значительная работа с использованием дорогостоящих дополнительных процедур, средний возраст клиента – 38, средняя стоимость услуг – 819$;
  • Кластер 4: Значительная работа с использованием дешевых жополнительных процедур, средний возраст клиента – 27, средняя стоимость услуг – 551$.

Расстояние между кластерами (Cluster distance):

К примеру, расстояние между Кластер 1 и Кластер 2 - 1,465 (по метрики Евклида).

Объекты кластеров и расстояния:

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

Определение значимых факторов

1. Сначала рассмотрим непрерывные переменные.

1.1 Построим график среднего возраста клиентов и стоимости услуг в каждом из кластеров.

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

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

Исходя из дисперсионного анализа, переменные Возраст клиента и Стоимость оказанных услуг влияют на принадлежность объекта кластеру, т.к. p-уровень меньше 0,05. Другими словам, и факторы Возраст и Стоимость оказанных услуг значимы.

2. Рассмотрим категориальные переменные.

Будем строить Таблицы частот и Графики частот для категориальных переменных (тип работы, дополнительные процедуры) для каждого кластера.

2.1. Тип работы.

Таблица частот:

График частот:

Исходя из построенного графика видим:

  • В Кластере 2 наибольшее количество незначительных работ;
  • В Кластере 1 наибольшее количество специализированных работ.

2.2. Дополнительные процедуры.

Таблица частот:

График частот:

Исходя из построенного графика видим:

  • В Кластере 2 наибольшее количество работ, выполненных без использование дополнительных процедур;
  • В Кластере 3 наибольшее количество работ, выполненных с использование дешевых дополнительных процедур;
  • В Кластере 1 наибольшее количество работ, выполненных с использование дорогих дополнительных процедур.

2.3. Определим, какие переменные оказывают значимое влияние на принадлежность к кластеру. Воспользуемся критерием Хи-Квадрат для категориальных переменных:

Исходя из таблицы, Тип работы и Дополнительные процедуры влияют на принадлежность объекта к кластеру, т.к. p-уровень меньше 0,05. Другими словами факторы Тип работы и Дополнительные процедуры значимы.

Алгоритм запуска алгоритма k-средних рассмотрен в Приложении 1.

Выявление потенциальных мошенников

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

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

График общей средней стоимости оказанных услуг в каждом кластере:

Дантист 0

График средней стоимости оказанных услуг Дантиста 0 и График средней общей стоимости оказанных услуг в каждом кластере:

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

Дантист 5

График средней стоимости оказанных услуг Дантиста 5 и График средней общей стоимости оказанных услуг в каждом кластере:

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

Дантист 13

График средней стоимости оказанных услуг Дантиста 13 и График средней общей стоимости оказанных услуг в каждом кластере:

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

Дантист 19

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

В начало


EM-алгоритм

Анализ результатов – вкладка Quick

При EM-кластеризации получилось всего 2 кластера.

Результаты анализа: Описание кластеров

Были получены следующие кластеры:

Кластер 1: Специализированные работы с использованием дешевый дополнительных процедур, средний возраст клиента – 34, средняя стоимость услуг – 882$;

Кластер 2: Значительные и незначительные работы с использованием дешевый дополнительных процедур, средний возраст клиента - 26,5, средняя стоимость услуг – 256$.

Определение значимых факторов

1. Сначала рассмотрим непрерывные переменные;

1.1 Построим график среднего возраста клиентов и стоимости услуг в каждом из кластеров.

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

Исходя из дисперсионного анализа, переменные Возраст клиента и Стоимость оказанных услуг влияют на принадлежность объекта кластеру, т.к. p-уровень меньше 0,05. Другими словами факторы Возраст и Стоимость оказанных услуг значимы.

2. Рассмотрим категориальные переменные.

Будем строить Таблицу частот и График частот для категориальных переменных (тип работы, дополнительные процедуры) для каждого кластера.

2.1 Тип работы.

Таблица частот:

График частот:

Исходя из построенного графика видим:

  • В Кластере 2 наибольшее количество незначительных и значительных работ;
  • В Кластере 3 наибольшее количество специализированных работ.

2.2 Дополнительные процедуры.

Таблица частот:

График частот:

Исходя из построенного графика видим:

  • В Кластере 1 наибольшее количество работ без использования дополнительных процедур;
  • В Кластере 2 наибольшее количество работ с использованием дорогостоящих и недорогостоящих дополнительных процедур.

2.3. Определим, какие переменные оказывают значимое влияние на принадлежность к кластеру. Воспользуемся критерием Хи-Квадрат для категориальных переменных:

Исходя из таблицы, Тип работы и Дополнительные процедуры влияют на принадлежность объекта к кластеру, т.к. p-уровень меньше 0,05. Другими словами факторы Тип работы и Дополнительные процедуры значимы.

Алгоритм запуска модуля см. в Приложении 2.

 

Выявление потенциальных мошенников

График общей средней стоимости оказанных услуг в каждом кластере:

 

Дантист 15

График средней стоимости оказанных услуг Дантиста 15 и График средней общей стоимости оказанных услуг в каждом кластере:

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

Дантист 5

График средней стоимости оказанных услуг Дантиста 5 и График средней общей стоимости оказанных услуг в каждом кластере:

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

Дантист 27

График средней стоимости оказанных услуг Дантиста 5 и График средней общей стоимости оказанных услуг в каждом кластере:

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

Дантист 14

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

В начало


Автоматизация

 Для автоматического вычисления описательных статистик и построения графиков в STATISTICA Data Miner есть модуль построения проекта. Фрагмент интерактивного построения проекта показан ниже. 

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

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

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

Последний прямоугольник (зеленый) – результаты анализа. В них можно просмотреть полученные результаты.

В начало


Выводы

В ходе анализа было выявлено 7 дантистов из 31, которые умышленно завышают стоимость выполненных по страховке работ.

Алгоритм k-средних

С помощью алгоритма k-средних образовалось 4 кластера:

  • Кластер 1: Специализированная работа с использованием дорогостоящих дополнительных процедур, средний возраст клиента – 25, средняя стоимость услуг – 715$;
  • Кластер 2: Незначительная работа без использования дополнительных процедур, средний возраст клиента – 21, средняя стоимость услуг – 286$;
  • Кластер 3: Значительная работа с использованием дорогостоящих дополнительных процедур, средний возраст клиента – 38, средняя стоимость услуг – 819$;
  • Кластер 4: Значительная работа с использованием дешевых дополнительных процедур, средний возраст клиента – 27, средняя стоимость услуг – 551$.

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

Дантист 0

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

Дантист 5

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

Дантист 13

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

Дантист 19

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

EM-алгоритм

С помощью алгоритма EM образовалось 2 кластера:

  • Кластер 1: Специализированные работы с использованием дешевый дополнительных процедур, средний возраст клиента – 34, средняя стоимость услуг – 882$;
  • Кластер 2: Значительные и незначительные работы с использованием дешевый дополнительных процедур, средний возраст клиента - 26,5, средняя стоимость услуг – 256$.

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

Дантист 15

Сильно завышает стоимость работ по оказанию специализированных услуг с использованием дешевых дополнительных работ.

Дантист 5

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

Дантист 27

Сильно завышает стоимость работ по оказанию специализированных услуг с использованием дешевых дополнительных работ.

Дантист 14

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

В результате было выявлено 7 потенциальных мошенников:

Дантист 0
Дантист 5
Дантист 13
Дантист 14
Дантист 15
Дантист 19
Дантист 27

Применяемые техники для анализа данных страховых случаев позволяют подсчитать, как много работ определенных дантистов отличаются от нормы. Решаются важные вопросы: Как много дантистов-мошенников? Сколько денег подвержено риску из-за деятельности последних?

Алгоритмы кластеризации (алгоритм K-средних и EM-алгоритм) являются удобными инструментами для ответа на поставленные вопросы.

В начало


Приложение 1. Алгоритм запуска Алгоритма К-средних

Шаг 0 (Модуль)

Откроем вкладку Добыча данных (Data Miner) и выберем модуль Обобщенные методы кластерного анализа (Generalized EM and k-Means Cluster Analysis).

Откроется диалоговое окно:

Шаг 1 (Выбор переменных).

Нажмем на кнопку Variables (Переменные).

В качестве категориальных переменных выберем:

  • Тип работы;
  • Дополнительные процедуры.

В качестве непрерывных переменных:

  • Возраст клиента;
  • Стоимость оказанных услуг в $.

Шаг 2 (Настройка параметров кластеризации).

Во вкладке Quick (Быстрый) выберем:

  • k-Means (к-средних);
  • Number of cluster - 2;
  • Number of iterations – 50,

как показано на рисунке выше.

Перейдем во вкладку k-means:

В этой вкладке настраиваются следующие параметры:

  • начальные центры кластеров;
  • мера связи.

Оставим по умолчанию.

Начальные центры кластеров будут определяться так, чтобы между ними было максимальное расстояние.

Мера связи (метрика в многомерном пространстве) – Евклидова.

Шаг 3 (Проверка).

Во вкладке Validation (Проверка) поставим галку рядом с кросс-проверкой. Остальные параметры оставим без изменений. Нажмем кнопку ОК.

В начало


Приложение 2. Алгоритм запуска EM-алгоритма

Повторить Шаг 0, Шаг 1 (см. Приложение 1).

Шаг 2 (Настройка параметров кластеризации).

Во вкладке Quick (Быстрый) выберем:

  • EM algoritm;
  • Number of cluster - 2;
  • Number of iterations – 50.

Перейдем во вкладку EM:

В этой вкладке настраиваются следующие параметры:

  • random seed;
  • минимальный рост логарифма правдоподобия (minimum increase of log-likehood).

Оставляем их по умолчанию.

Для непрерывных переменных выберем в качестве распределения – нормальное.

Шаг 3 (Проверка).

Во вкладке Validation (Проверка) поставим галку рядом с кросс-проверкой. Остальные параметры оставим без изменений. Нажмем кнопку OK.

Читать подробнее о методах и инструментах STATISTICA Data Miner


В начало


Узнайте больше на курсах Академии Анализа Данных StatSoft

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






info@statsoft.ru       (495) 787-77-33       (499) 674-06-15       STATISTICA Data Miner 13.2 Trial

Авторские права на дизайн и материалы сайта принадлежат компании StatSoft Russia.
Все права защищены.

© StatSoft Russia
1999-2017

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

Лицензионное соглашение      Карта сайта