Все наверное видели рекламный ролик SAS:
Enterprise Fraud and Financial Crimes. Оратор
произнес очень важную фразу — “reducing false positives”. Это, наверное, одна из важнейших характеристик fraud detection системы для организации работающей с клиентами. Абсолютно не проблема отметить как подозрительные транзакции все действия “похожие” на уже совершенные мошеннические операции. Проблема — не отпугнуть добросовестных клиентов, попавших в этот список.
Приведу несколько цитат из статьи “Statistical Fraud Detection: A Review” by Richard J.Bolton and David J.Hand:
“One of the difficulties with fraud detection is that typically there are many legitimate records for each fraudulent one. A detection method which correctly identifies 99% of the legitimate records as legitimate and 99% of the fraudulent records as fraudulent might be regarded as a highly effective system. However, if only 1 in 1000 records is fraudulent, then, on average, in every 100 that the system flags as fraudulent, only about 9 will in fact be so. In particular, this means that to identify those 9 requires detailed examination of all 100 — at possibly considerable cost. This leads us to a more general point: fraud can be reduced to as low a level as one likes, but only by virtue of a corresponding level of effort and cost. In practice, some compromise has to be reached, often a commercial compromise, between the cost of detecting a fraud and the savings to be made by detecting it.”
Почему так происходит поясняет следующая схема:
Области множества символизируют:
1 — все транзакции (N)
2 — мошеннические транзакции классифицированные как не мошениические (False negatives)
3 — правильно классифицированные мошеннические транзакции (True positives)
4 — нормальные транзакции классифированные как мошеннические (False positives)
Мы предполагаем что в базе данных примерно каждая тысячная транзакция — мошенническая
Это так называемая prior probability. Т.е. изначально мы можем сказать (после просмотра существующей базы данных), что каждая следующая транзакция которую мы будем наблюдать, с вероятностью 0.001 является мошеннической. Математически это так, но это тоже самое как если бы врач объявлял пациенту, только что зашедшему в кабинет, что он болен с такой то вероятностью такой то болезнью. Но потом бы он проводил осмотр, проверял симптомы и корректировал бы вероятность, получая posterior probability, которая нас и интересует (и потенциального больного тоже).
Предположим что всего в базе содержится N записей. Точность классификации (accuracy) мошенников и нормальных транзакций- 0.99 (в обоих случаях). Далее, 100 записей было классифицировано как fraud (область 3 + область 4):
истинные мошенники попадают только в область 3:
Теперь посчитаем долю истинных fraud transactions (область 3) среди всех записей классифицированных как fraud (область 3 + область 4)
То есть из 100 “подозрительных” транзакций только примерно 0.09 будут действительно мошеннические. И это при том, что наш классификатор имеет очень выскокую точность 99%.
Еще несколько цитат:
“Fraud detection is a continuously evolving discipline.Whenever it becomes known that one detection method is in place, criminals will adapt their strategies and try others..”
“The development of new fraud detection methods is made more difficult by the fact that the exchange of ideas in fraud detection is severely limited.”
Т.е. помимо того, что имеется очень мало записей о реальных мошеннических операциях, мы еще имеем адаптивное поведение мошенников и естественные ограничения на обмен знаниями между банками в силу специфики отрасли. Всё это делает fraud detection очень сложной задачей. Скорее всего для ее решения нужна комбинация supervised (для мониторига он-лайн) и unsupervised (для выявления новых, ранее не известных мошеннических схем) алгоритмов.
Банки должны находить некий баланс между стоимостью “ручной проверки” всех транзакций классифицированных как fraud и возможными потерями связанными с false positives.
Второй случай встречается довльно часто. Одним из важных параметров fraud detection системы является location транзакции. Если клиент совершал транзакции в течении месяца например из Франции, а в один прекрасный день прилетел в Бразилию и решил там срочно снять наличных на 1000 евро, то велика вероятность что карточу заблокируют. Тоже самое и в США, только там банки рекомендуют клиентам сообщать о своих передвижениях даже если они перемещаются в другой штат.
Вывод: учитывая перечисленные трудности, коробочное решение, которое работает “out of the box” — врят ли возможно в принципе.