Jak opracowa? wewn?trzny system wykrywania nadu?y??

Materia? Partnera
7 Min

Podczas gdy ilo?? danych ro?nie ka?dego roku, mechanizmy wykrywania nadu?y? typu rule-based nie nad??aj? za rozwojem technologii stosowanych przez hakerów. W poni?szym artykule Igor Kaufman z firmy DataArt, krok po kroku przedstawia sposób na opracowanie w?asnej platformy wykrywania nadu?y?.

Systemy wykrywania nadu?y?, które s? oparte na sztucznej inteligencji, to jeden z najbardziej popularnych tematów w bran?y. Ale jak one dok?adnie dzia?aj?? Jakie czynno?ci nale?y wykona?, by taki system wdro?y? we w?asnej firmie? Jak wygl?da sterowanie procesem decyzyjnym? Odpowiedzi na te pytania znajduj? si? poni?ej.

Krok 0. Przygotowanie danych

Na potrzeby tego artyku?u pomin?, jak nale?y agregowa?, przechowywa? i przenosi? dane. Zamiast tego, przejd? od razu do ich wykorzystywania w uczeniu maszynowym.

Dane to paliwo dla mechanizmów uczenia maszynowego. Je?li u?yjemy lepszego paliwa, mo?emy oczekiwa?, ?e pojazd osi?gnie wy?sz? pr?dko??.

Na pocz?tek wa?ne jest oczyszczenie danych, by wyszczególni? odpowiednie elementy do analizy. Spójrzmy na przyk?ad na mechanizmy p?atno?ci w sieci. Kluczowymi elementami danych s? informacje o kupuj?cym i sprzedaj?cym, kwoty, godzina przekazania transakcji, dane banku, adresy IP i wiele innych. Na dobr? spraw? takich parametrów mog? by? setki. Im bardziej z?o?ony proces, tym wi?cej niezb?dnych parametrów. Dlatego im lepiej dane s? oczyszczone i pozbawione zale?nych lub skorelowanych elementów, tym lepiej ko?cowy algorytm b?dzie dzia?a?. W przeciwnym wypadku trudno b?dzie okre?li?, który element by? podstaw? oceny ko?cowej. Z regu?y analiza i opracowanie danych mog? zaj?? po?ow? lub wi?cej ca?ego czasu realizacji projektu uczenia maszynowego.

da1

Czerwone kwadraty przedstawiaj? wysoce skorelowane elementy; im mniej czerwonych kwadratów, tym ?atwiejsze jest interpretowanie modelu.

Krok 1. Uczenie pod nadzorem, czyli co mo?na wyci?gn?? z tego, co ju? wiemy?

Firmy z regu?y maj? wdro?ony system wykrywania nadu?y?. Mog? to by? rozwi?zania oparte na zasadach (rule-based fraud detectors). Takie systemy z czasem staj? si? zbyt uci??liwe ze wzgl?du na liczb? potrzebnych zasad, a przy tym maj? trudno?ci z odfiltrowaniem wszystkich podejrzanych dzia?a?. W alternatywie, mog? to by? równie? rozwi?zania oparte na sztucznej inteligencji, ale dostarczone przez zewn?trzne firmy, gdzie poufne dane s? przetwarzane poza obr?bem w?asnej infrastruktury.

Je?li chcemy wzmocni? ochron? i opracowa? wewn?trzny system wykrywania nadu?y?, to czy istnieje sposób na wykorzystanie bie??cych zasobów wiedzy w tej dziedzinie? Okazuje si?, ?e tak. Nadzorowane uczenie maszynowe to proces, w którym cz?owiek podpowiada maszynie, co jest prawid?owe i nieprawid?owe. Wykorzystuj?c sprawdzone wyniki z bie??cych systemów, mo?na znacznie przyspieszy? proces uczenia maszynowego.

Z regu?y istnieje szereg algorytmów mo?liwych do wykorzystania. Nale?y wi?c odnale?? taki, który b?dzie sprawnie pos?ugiwa? si? wybranym zestawem danych, a nast?pnie odpowiednio dobra? jego parametry, by uzyska? odpowiedni balans wyników prawdziwie dodatnich (faktyczne nadu?ycia), fa?szywie dodatnich (dzia?ania b??dnie oznaczone jako nadu?ycia) i fa?szywie ujemnych (nadu?ycia, które nie zosta?y jako takie rozpoznane). Istnieje wykres zwany tablic? pomy?ek, który naukowcy stosuj? w celu optymalizowania algorytmów.

da2

Tablica pomy?ek – pomara?cza, czy nie pomara?cza?

Im lepsze s? wyniki uzyskane przy jego u?yciu, tym szybciej nowy system zast?pi dotychczasowe rozwi?zania, poniewa? zosta? on skutecznie wyuczony w oparciu o dane historyczne.

Krok 2. Wykrywanie anomalii

Co zrobi?, je?li istniej?ce algorytmy nie wychwytuj? wielu elementów stanowi?cych nadu?ycia? Po to w?a?nie potrzebna jest pomoc – by odnale?? podejrzane rekordy, które mog? by? nadu?yciami.

W tym celu nale?y pogrupowa? wszystkie elementy, transakcje, p?atno?ci i innego typu informacje. Drobne i odleg?e zgrupowania danych s? elementami podejrzanymi. Powstaj? one dlatego, ?e algorytm grupowania oznaczy? dane jako nietypowe. Niekoniecznie oznaczaj? one nadu?ycia, ale warto si? im przyjrze? i dok?adniej je zbada?.

da3

Trójwymiarowa reprezentacja klastrów. Rzeczywista liczba wymiarów mo?e wynosi? setki D.

Pó?niej specjalista w danej dziedzinie mo?e si? przyjrze? takim zgrupowaniom. Pozwoli to sprawdzi?,

  • czy wpisy nie wygl?daj? na autentyczne i czy wszystkie transakcje z tego zgrupowania nale?y automatycznie blokowa?;
  • tylko cze?? rekordów jest podejrzana i nale?y dostosowa? parametry zgrupowania lub przekaza? wszystkie podejrzane rekordy do sprawdzenia przez specjalist?.

Krok 3. Analiza szeregów czasowych i limity dynamiczne

Grupowanie mo?na wykonywa? na statycznym zestawie danych, ale oczekiwane zachowania zmieniaj? si? w czasie. Przychody osobiste lub firmowe mog? rosn??, poszerzaj?c schematy zwi?zane z wydatkami. Oprócz tego wydatki mog? si? zmienia? okresowo – na przyk?ad w okresie ?wi?tecznym. Takie wzorce dzia?a? równie? nale?y uwzgl?dni?, by system funkcjonowa? prawid?owo. Powinien on sprawdza? nietypowe transakcje, w dynamiczny sposób koryguj?c oczekiwane zakresy, by uwzgl?dni? zmieniaj?c? si? w czasie natur? transakcji.

W tworzeniu „bezpiecznych” zakresów wykorzystuje si? algorytmy szeregów czasowych – pocz?wszy od mniej skomplikowanych modeli autoregresyjnych i przechodz?c do bardziej z?o?onych modeli takich jak FBProphet (opracowany przez Facebooka), które uwzgl?dniaj? okresowo??.

da4

Ciemnoniebieska linia – warto?ci rzeczywiste i oczekiwane, niebieski zakres – oczekiwane odchylenie, czarne kropki – warto?ci rzeczywiste. Czarne kropki poza zakresem s? podejrzane.

Krok 4. Integracja

Dane s? przygotowane, a model jest wst?pnie wyuczony i przetestowany. Jak go zintegrowa? z istniej?c? infrastruktur??

Pod wzgl?dem technologicznym nie jest to skomplikowane. Model uczenia maszynowego jest przekszta?cany w us?ug? (np. REST) wykorzystuj?c? interfejs API, z którym mo?e wspó?pracowa? reszta systemu. Nast?pnie nale?y go przetestowa? i wdro?y? (np. jako container w platformie Docker), pod??czaj?c do ?róde? danych i interfejsu u?ytkownika wspieraj?cego proces decyzyjny.

Z perspektywy zarz?dzania ryzykiem i weryfikacji sensownie jest jednocze?nie korzysta? z nowego i starego (je?li taki istnieje) systemu wykrywania nadu?y?, by si? upewni?, ?e dzia?aj? one w sposób spójny. Oprócz tego mo?na wdro?y? weryfikacj? przez cz?owieka, by ograniczy? ryzyko b??dnych decyzji w realnych warunkach, a tak?e usprawni? dzia?anie modeli poprzez dodatkowe uczenie nadzorowane.

O autorze:
Igor Kaufman, Head of Machine Learning /Data Science Practice, DataArt
Specjalizuje si? w projektowaniu i budowaniu rozwi?za? automatyzuj?cych procesy biznesowe przy u?yciu zaawansowanych technik analitycznych i transformacji cyfrowej.
Pasjonuje go innowacja technologiczna i lean engineering. Przed do??czeniem do DataArt w 2017 roku, Igor budowa? i zarz?dza? zespo?ami in?ynieryjnymi w ró?nych dziedzinach – od startupów zajmuj?cych si? analiz? danych po liderów Magic Quadrant firmy Gartner.
Udostępnij