ГоловнаШІ та Машинне навчанняДетектор відмивання грошей

🏦 Детектор відмивання грошей — кластеризація DBSCAN наживо

Спостерігайте, як справжній алгоритм кластеризації DBSCAN на основі щільності наживо сканує симульовані мережі транзакцій, позначаючи підозрілі щільно пов'язані кластери рахунків, які пропустило б просте порогове правило.

ШІ та Машинне навчання3DПросунутий60 FPS
ai-money-laundering-detection ↗ Відкрити окремо

Про цю симуляцію

Ця симуляція виконує справжній прохід DBSCAN (кластеризація на основі щільності для застосунків із шумом) над симульованою мережею транзакцій: кожен симульований банківський рахунок стає точкою в 3D-просторі ознак, побудованому з частоти його транзакцій, середньої суми транзакції та центральності рахунку в мережі. Для кожної точки алгоритм обчислює її справжній ε-окіл, перевіряє його на відповідність порогу щільності minPts, щоб визначити, чи є точка кореневою, а потім розширює кластери назовні через справжню щільнісну досяжність — саме той алгоритм із статті Ester, Kriegel, Sander і Xu 1996 року, а не стилізована куля-радіус чи перейменований k-means.

🔬 Що показано

Близько 110 симульованих рахунків розташовані в 3D-кубі, утвореному частотою, логарифмічно масштабованою сумою та центральністю. Кілька рахунків навмисно посіяні як щільні, високощільнісні «структуровані» кільця — подібні суми, подібна частота, висока центральність — поряд із розрідженішими звичайними клієнтськими кластерами та розсіяними одиничними нерегулярними рахунками. DBSCAN наживо класифікує кожну точку як кореневу (суцільна, щільна внутрішня частина), межову (щільнісно досяжна від кореневої, але сама не щільна) або шумову (викид, недосяжний із жодного кластера). Кластери, що виявляються незвично щільними й компактними, додатково позначаються червоним як потенційні кільця відмивання грошей.

🎮 Як користуватися

Перетягуйте повзунок ε (epsilon), щоб змінити, наскільки далеко кожна точка шукає сусідів, і minPts, щоб змінити, скільки сусідів потрібно точці, аби вважатися щільною. Спостерігайте, як кластери зливаються, розпадаються або розчиняються в шумі в реальному часі під час руху будь-якого повзунка. Вмикайте й вимикайте оболонки кластерів, натисніть «Регенерувати мережу» для нового випадкового сценарію, перетягуйте, щоб обертати 3D-сцену, і клацайте будь-яку сферу, щоб переглянути сирі ознаки цього рахунку та його поточну класифікацію ядро/межа/шум.

💡 Чи знали ви?

Головна особливість DBSCAN у тому, що йому ніколи не потрібно повідомляти, скільки існує кластерів — параметр, який заздалегідь вимагає будь-який алгоритм у стилі k-means. Саме тому він так добре підходить для аналітики шахрайства: слідчі рідко знають наперед, скільки кілець відмивання грошей, якщо взагалі якісь, ховаються всередині мережі транзакцій, а категорія шуму DBSCAN дає кожному звичайному рахунку місце, куди можна потрапити, не будучи примусово віднесеним до кластера.

Часті запитання

Що таке DBSCAN і чим він відрізняється від k-means?

DBSCAN (кластеризація на основі щільності для застосунків із шумом, Ester та ін., 1996) групує точки, які щільно розташовані в просторі ознак, позначаючи точки в областях низької щільності як шум. На відміну від k-means, DBSCAN не вимагає заздалегідь обирати кількість кластерів, може знаходити кластери довільної форми, а не лише округлі плями, і явно виокремлює категорію викидів замість того, щоб примусово відносити кожну точку до якогось кластера. Це робить його добре придатним для виявлення шахрайства й аномалій, де кількість підозрілих груп невідома, а більшість рахунків є звичайним фоновим шумом.

Що таке кореневі точки, межові точки та шумові точки?

Для обраного радіуса epsilon (ε) та мінімальної кількості сусідів minPts точка є кореневою, якщо принаймні minPts точок (включно з нею самою) лежать у її ε-околі — вона перебуває в справді щільній області. Межова точка сама не відповідає цьому порогу щільності, але лежить в ε-околі якоїсь кореневої точки, тож вона щільнісно досяжна й приєднується до кластера цієї кореневої точки. Будь-яка точка, що не є ні кореневою, ні щільнісно досяжною від кореневої, позначається як шум — викид, що не належить жодному кластеру.

Що контролюють epsilon (ε) і minPts, і як вони змінюють результат?

Epsilon задає радіус околу, що досліджується навколо кожної точки; minPts задає, скільки сусідів (включно із самою точкою) потрібно, щоб точка вважалась достатньо щільною для статусу кореневої. Збільшення ε або зменшення minPts полегшує досягнення порогу щільності, тож кластери зростають і зливаються, а менше точок опиняються в шумі. Зменшення ε або збільшення minPts робить поріг суворішим, тож кластерами лишаються тільки найщільніші групи, а все розрідженіше перекласифіковується як шум або розпадається на менші кластери.

Чому DBSCAN добре підходить для виявлення кілець відмивання грошей порівняно з простим пороговим правилом?

Просте правило на кшталт «позначати будь-який рахунок з понад N транзакціями на тиждень» розглядає кожен рахунок окремо й ігнорує те, як рахунки пов'язані між собою. Кільця відмивання грошей зазвичай виявляються як невелика група рахунків, що незвично щільно згруповані одразу за кількома ознаками — подібна частота транзакцій, подібна сума (часто трохи нижче порогу звітності — патерн, що зветься структуруванням) і висока центральність у мережі — залишаючись при цьому окремо непримітними. DBSCAN виявляє саме це: компактну, незвично щільну групу взаємно близьких точок, яку порогові правила за однією ознакою не можуть побачити, бо жодне окреме значення ознаки не є екстремальним само по собі.

Що таке щільнісна досяжність і щільнісна зв'язність?

Точка q безпосередньо щільнісно досяжна від кореневої точки p, якщо q лежить в ε-околі p. Щільнісна досяжність — це транзитивне замикання цього відношення: q щільнісно досяжна від p, якщо існує ланцюжок кореневих точок p = p1, p2, ..., pn = q, де кожна безпосередньо щільнісно досяжна від попередньої. Дві точки p і q є щільнісно зв'язаними, якщо існує якась коренева точка o, від якої досяжні і p, і q. Кластери DBSCAN — це саме максимальні множини щільнісно зв'язаних точок; така ланцюгова структура дозволяє одному кластеру звиватися через неопуклі, нерегулярні області, а не лише утворювати округлі плями.

Які обмеження має DBSCAN?

DBSCAN використовує один глобальний ε і minPts для всього набору даних, тож має труднощі, коли кластери мають дуже різну щільність — налаштування, підібране під щільне кільце відмивання грошей, може поглинути розріджений звичайний кластер у шум, або навпаки (алгоритми на кшталт OPTICS і HDBSCAN вирішують це підходом зі змінною щільністю). Він також масштабується приблизно квадратично за кількістю точок без просторового індексу, такого як k-d дерево, а його результати залежать від вибору розумної метрики відстані та масштабування ознак, оскільки ознаки в дуже різних масштабах можуть спотворити те, які точки вважаються «близькими».

⚙ Під капотом

Справжній прохід DBSCAN — реальні запити ε-околу, перевірки густини за minPts та розширення кластерів через щільнісну досяжність — виконується наживо над симульованим 3D-простором ознак транзакцій, класифікуючи кожен рахунок як кореневий, межовий або шумовий і позначаючи незвично щільні кластери як потенційні кільця відмивання грошей.

DBSCANКластеризаціяВиявлення аномалійНавчання без учителяВиявлення шахрайства

3D · рушій Three.js / WebGL · ціль 60 FPS · працює повністю на клієнті, без встановлення

Що ви знайшли?

Додати кроки відтворення (необов'язково)