Strona głównaAI i uczenie maszynoweDetektor prania pieniędzy

🏦 Detektor prania pieniędzy — klasteryzacja DBSCAN na żywo

Obserwuj, jak prawdziwy algorytm klasteryzacji DBSCAN oparty na gęstości skanuje na żywo symulowane sieci transakcji, oznaczając podejrzane, ściśle powiązane klastry kont, które pominęłaby prosta reguła progowa.

AI i uczenie maszynowe3DZaawansowany60 FPS
ai-money-laundering-detection ↗ Otwórz osobno

O tej symulacji

Ta symulacja wykonuje prawdziwy przebieg DBSCAN (przestrzennej klasteryzacji opartej na gęstości dla danych z szumem) nad symulowaną siecią transakcji: każde symulowane konto bankowe staje się punktem w 3D przestrzeni cech zbudowanej z częstotliwości jego transakcji, średniej kwoty transakcji i centralności konta w sieci. Dla każdego punktu algorytm oblicza jego rzeczywiste ε-sąsiedztwo, sprawdza je względem progu gęstości minPts, aby zdecydować, czy punkt jest punktem rdzeniowym, a następnie rozszerza klastry na zewnątrz poprzez prawdziwą gęstościową osiągalność — dokładnie ten sam algorytm z pracy Estera, Kriegela, Sandera i Xu z 1996 roku, a nie stylizowaną kulę o stałym promieniu czy przemianowany k-means.

🔬 Co pokazuje

Około 110 symulowanych kont znajduje się w 3D sześcianie rozpiętym przez częstotliwość, logarytmicznie skalowaną kwotę i centralność. Garstka kont jest zasiana jako ścisłe, wysokogęste pierścienie „strukturyzacji” — podobne kwoty, podobna częstotliwość, wysoka centralność — obok luźniejszych, codziennych klastrów klientów i rozproszenia jednorazowych nieregularnych kont. DBSCAN klasyfikuje na żywo każdy punkt jako punkt rdzeniowy (lite, gęste wnętrze), punkt brzegowy (gęstościowo osiągalny z punktu rdzeniowego, ale sam niegęsty) lub szum (wartość odstająca nieosiągalna z żadnego klastra). Klastry, które okazują się niezwykle gęste i zwarte, są dodatkowo oznaczane na czerwono jako potencjalne pierścienie prania pieniędzy.

🎮 Jak korzystać

Przeciągnij suwak ε (epsilon), aby zmienić, jak daleko każdy punkt szuka sąsiadów, oraz minPts, aby zmienić, ilu sąsiadów potrzebuje punkt, by uznać go za gęsty. Obserwuj, jak klastry łączą się, rozpadają lub rozpuszczają w szumie w czasie rzeczywistym podczas przesuwania dowolnego suwaka. Włączaj i wyłączaj otoczki klastrów, kliknij „Regeneruj sieć”, aby uzyskać nowy losowy scenariusz, przeciągaj, aby obracać scenę 3D, i kliknij dowolną sferę, aby sprawdzić surowe cechy danego konta oraz jego bieżącą klasyfikację rdzeń/brzeg/szum.

💡 Czy wiesz, że?

Kluczowa sztuczka DBSCAN polega na tym, że nigdy nie trzeba mu podawać, ile klastrów istnieje — parametr, którego z góry wymaga każdy algorytm w stylu k-means. Właśnie dlatego tak dobrze pasuje do analityki oszustw: śledczy rzadko wiedzą z góry, ile pierścieni prania pieniędzy, jeśli w ogóle jakieś, ukrywa się wewnątrz sieci transakcji, a kategoria szumu DBSCAN daje każdemu zwykłemu kontu miejsce, w którym może się znaleźć, bez wymuszania przypisania do klastra.

Najczęściej zadawane pytania

Czym jest DBSCAN i czym różni się od k-means?

DBSCAN (przestrzenna klasteryzacja oparta na gęstości dla aplikacji z szumem, Ester i in., 1996) grupuje punkty, które są ściśle skupione w przestrzeni cech, oznaczając punkty w obszarach o niskiej gęstości jako szum. W przeciwieństwie do k-means, DBSCAN nie wymaga wcześniejszego wyboru liczby klastrów, potrafi znajdować klastry o dowolnym kształcie, a nie tylko okrągłe skupiska, i jawnie tworzy kategorię wartości odstających zamiast wymuszać przypisanie każdego punktu do jakiegoś klastra. Dzięki temu doskonale nadaje się do wykrywania oszustw i anomalii, gdzie liczba podejrzanych grup jest nieznana, a większość kont to po prostu zwykły szum tła.

Czym są punkty rdzeniowe, brzegowe i szumowe?

Dla wybranego promienia epsilon (ε) i minimalnej liczby sąsiadów minPts, punkt jest punktem rdzeniowym, jeśli w jego ε-sąsiedztwie znajduje się co najmniej minPts punktów (łącznie z nim samym) — oznacza to, że leży on w naprawdę gęstym obszarze. Punkt brzegowy sam nie spełnia tego progu gęstości, ale leży w ε-sąsiedztwie jakiegoś punktu rdzeniowego, więc jest gęstościowo osiągalny i dołącza do klastra tego punktu rdzeniowego. Każdy punkt, który nie jest ani punktem rdzeniowym, ani gęstościowo osiągalnym z takiego punktu, jest oznaczany jako szum — wartość odstająca, która nie należy do żadnego klastra.

Co kontrolują epsilon (ε) i minPts i jak zmieniają wynik?

Epsilon ustala promień sąsiedztwa przeszukiwanego wokół każdego punktu; minPts ustala, ilu sąsiadów (łącznie z samym punktem) jest wymaganych, aby punkt uznać za wystarczająco gęsty, by był punktem rdzeniowym. Zwiększenie ε lub zmniejszenie minPts ułatwia spełnienie progu gęstości, więc klastry rosną i łączą się, a mniej punktów kończy jako szum. Zmniejszenie ε lub zwiększenie minPts zaostrza próg, więc jako klastry przetrwają tylko najściślejsze grupy, a wszystko luźniejsze zostaje przeklasyfikowane jako szum lub rozpada się na mniejsze klastry.

Dlaczego DBSCAN dobrze nadaje się do wykrywania pierścieni prania pieniędzy w porównaniu z prostą regułą progową?

Prosta reguła w rodzaju „oznacz każde konto z więcej niż N transakcjami tygodniowo” traktuje każde konto niezależnie i ignoruje to, jak konta są ze sobą powiązane. Pierścienie prania pieniędzy zwykle ujawniają się jako niewielki zbiór kont, które są niezwykle ściśle skupione jednocześnie wokół kilku cech — podobna częstotliwość transakcji, podobna kwota (często tuż poniżej progu raportowania, wzorzec zwany strukturyzacją) i wysoka centralność w sieci — pozostając przy tym indywidualnie niepozornymi. DBSCAN wykrywa dokładnie to: zwartą, niezwykle gęstą grupę wzajemnie bliskich punktów, której progi oparte na pojedynczej cesze nie widzą, ponieważ żadna pojedyncza wartość cechy nie jest sama w sobie ekstremalna.

Czym jest gęstościowa osiągalność i gęstościowa spójność?

Punkt q jest bezpośrednio gęstościowo osiągalny z punktu rdzeniowego p, jeśli q leży w ε-sąsiedztwie p. Gęstościowa osiągalność jest przechodnim domknięciem tej relacji — q jest gęstościowo osiągalny z p, jeśli istnieje łańcuch punktów rdzeniowych p = p1, p2, ..., pn = q, gdzie każdy jest bezpośrednio gęstościowo osiągalny z poprzedniego. Dwa punkty p i q są gęstościowo spójne, jeśli istnieje jakiś punkt rdzeniowy o, z którego zarówno p, jak i q są gęstościowo osiągalne. Klastry DBSCAN to dokładnie maksymalne zbiory gęstościowo spójnych punktów; to łańcuchowanie pozwala pojedynczemu klastrowi wić się przez niewypukłe, nieregularne obszary, zamiast tworzyć wyłącznie okrągłe skupiska.

Jakie są ograniczenia DBSCAN?

DBSCAN używa jednego globalnego ε i minPts dla całego zbioru danych, więc ma trudności, gdy klastry mają bardzo różną gęstość — ustawienie dostrojone do ścisłego pierścienia prania pieniędzy może pochłonąć luźny, zwykły klaster jako szum, albo odwrotnie (algorytmy takie jak OPTICS i HDBSCAN rozwiązują to podejściem ze zmienną gęstością). Skaluje się on też z grubsza kwadratowo względem liczby punktów bez indeksu przestrzennego, takiego jak drzewo k-d, a jego wyniki zależą od wyboru sensownej metryki odległości i skalowania cech, ponieważ cechy o bardzo różnych skalach mogą zniekształcać to, które punkty są uznawane za „bliskie”.

⚙ Pod maską

Prawdziwy przebieg DBSCAN — rzeczywiste zapytania o ε-sąsiedztwo, testy gęstości minPts i rozszerzanie klastrów przez gęstościową osiągalność — działa na żywo nad symulowaną 3D przestrzenią cech transakcji, klasyfikując każde konto jako rdzeniowe, brzegowe lub szumowe i oznaczając niezwykle gęste klastry jako potencjalne pierścienie prania pieniędzy.

DBSCANKlasteryzacjaWykrywanie anomaliiUczenie nienadzorowaneWykrywanie oszustw

3D · renderer Three.js / WebGL · cel 60 FPS · działa w całości po stronie klienta, bez instalacji

Co znalazłeś/aś?

Dodaj kroki odtworzenia (opcjonalnie)