Schafung vun engem automatesche System fir Intruder op der Plaz ze bekämpfen (Betrug)

Fir déi lescht ongeféier sechs Méint hunn ech e System erstallt fir Bedruch ze bekämpfen (bedrügeresch Aktivitéit, Bedruch, etc.) ouni eng initial Infrastruktur dofir. D'Iddien vun haut, déi mir an eisem System fonnt hunn an ëmgesat hunn, hëllefen eis vill betrügeresch Aktivitéiten z'entdecken an ze analyséieren. An dësem Artikel wëll ech iwwer d'Prinzipien schwätzen, déi mir gefollegt hunn a wat mir gemaach hunn fir den aktuellen Zoustand vun eisem System z'erreechen, ouni an den techneschen Deel ze goen.

Prinzipien vun eisem System

Wann Dir Begrëffer wéi "automatesch" a "Betrüger" héiert, fänkt Dir wahrscheinlech un Maschinnléieren, Apache Spark, Hadoop, Python, Airflow an aner Technologien aus dem Apache Foundation Ökosystem an dem Data Science Feld ze denken. Ech mengen et gëtt een Aspekt vun der Benotzung vun dësen Tools, deen normalerweis net ernimmt gëtt: si erfuerderen gewësse Viraussetzungen an Ärem Enterprise System ier Dir se benotze kënnt. Kuerz gesot, Dir braucht eng Enterprise Dateplattform déi en Dateséi a Lager enthält. Awer wat wann Dir net sou eng Plattform hutt an nach ëmmer dës Praxis muss entwéckelen? Déi folgend Prinzipien, déi ech hei ënnen deelen, hunn eis gehollef e Punkt z'erreechen wou mir eis kënne fokusséieren op d'Verbesserung vun eisen Iddien anstatt een ze fannen deen funktionnéiert. Allerdéngs ass dëst kee Projet Plateau. Et sinn nach vill Saachen am Plang aus enger technologescher a produktescher Siicht.

Prinzip 1: Business Wäert Éischt

Mir setzen "Geschäftswäert" un der Spëtzt vun all eisen Efforten. Am Allgemengen gehéiert all automatesch Analyse System zu der Grupp vu komplexe Systemer mat engem héijen Niveau vun Automatisatioun an technesch Komplexitéit. Eng komplett Léisung erstellen wäert vill Zäit huelen wann Dir se vun Null erstellt. Mir hu beschloss de Geschäftswäert als éischt an d'technologesch Vollständegkeet zweet ze setzen. Am richtege Liewen heescht dat, datt mir net fortgeschratt Technologie als Dogma akzeptéieren. Mir wielen déi Technologie déi am Moment am Beschten fir eis funktionnéiert. Mat der Zäit kann et schéngen datt mir e puer Moduler mussen nei ëmsetzen. Dëst ass de Kompromiss dee mir ugeholl hunn.

Prinzip 2: Augmentéiert Intelligenz

Ech wetten, datt déi meescht Leit, déi net déif an der Entwécklung vu Maschinnléierléisungen involvéiert sinn, mengen datt d'Mënsche ersetzen d'Zil ass. Tatsächlech sinn Maschinnléiere Léisunge wäit vu perfekt an nëmmen a bestëmmte Beräicher ass Ersatz méiglech. Mir hunn dës Iddi vun Ufank un aus verschiddene Grënn refuséiert: onbalancéiert Daten iwwer betrügeresch Aktivitéit an d'Onméiglechkeet eng ëmfaassend Lëscht vu Features fir Maschinnléieremodeller ze bidden. Am Géigesaz, hu mir déi verstäerkte Intelligenzoptioun gewielt. Dëst ass en alternativt Konzept vu kënschtlecher Intelligenz, déi sech op d'Ënnerstëtzungsroll vun der AI konzentréiert, a betount d'Tatsaach datt kognitiv Technologien geduecht sinn fir mënschlech Intelligenz ze verbesseren anstatt se ze ersetzen. [1]

An dësem virleien, eng komplett Maschinn Léieren Léisung vun Ufank un z'entwéckelen, géif e groussen Effort erfuerderen, wat d'Schafung vu Wäert fir eist Geschäft verspéit. Mir hu beschloss e System mat engem iterativ wuessende Maschinnléieren Aspekt ënner der Leedung vun eisen Domainexperten ze bauen. Deen usprochsvollen Deel vun der Entwécklung vun esou engem System ass datt et eisen Analysten Fäll muss ubidden net nëmme wat et betrügeresch Aktivitéit ass oder net. Am Allgemengen ass all Anomalie am Clientverhalen e verdächtege Fall dee Spezialisten mussen ermëttelen an iergendwéi reagéieren. Nëmmen eng Fraktioun vun dëse gemellt Fäll kann wierklech als Bedruch klasséiert ginn.

Prinzip 3: Rich Analytics Plattform

Deen Erausfuerderung Deel vun eisem System ass end-to-end Verifizéierung vum System Workflow. Analysten an Entwéckler sollen einfach historesch Datesets kréien mat all de Metriken, déi fir Analyse benotzt ginn. Zousätzlech soll d'Dateplattform en einfache Wee ubidden fir eng existent Set vu Metriken mat neien ze ergänzen. D'Prozesser déi mir erstellen, an dëst sinn net nëmme Softwareprozesser, sollten eis et erlaben, vireg Perioden einfach nei ze berechnen, nei Metriken derbäi ze ginn an d'Dateprognose z'änneren. Mir kéinten dëst erreechen andeems Dir all d'Donnéeën sammelt déi eise Produktiounssystem generéiert. An dësem Fall géifen d'Date lues a lues zu enger Nues ginn. Mir mussen eng wuessend Quantitéit un Daten späicheren déi mir net benotzen a schützen. An esou engem Szenario wäerten d'Donnéeë mat der Zäit ëmmer méi irrelevant ginn, awer erfuerdert nach ëmmer eis Efforte fir se ze managen. Fir eis huet Datenhoarding kee Sënn gemaach, also hu mir decidéiert eng aner Approche ze huelen. Mir hunn décidéiert Echtzäitdatengeschäfter ronderëm d'Zil-Entitéiten ze organiséieren, déi mir wëllen klassifizéieren, an nëmmen d'Donnéeën späicheren, déi eis erlaabt déi rezentst a relevant Perioden ze kontrolléieren. D'Erausfuerderung fir dësen Effort ass datt eise System heterogen ass, mat multiple Dategeschäfter a Softwaremoduler déi virsiichteg Planung erfuerderen fir op eng konsequent Manéier ze bedreiwen.

Design Konzepter vun eisem System

Mir hu véier Haaptkomponenten an eisem System: Intakesystem, computational, BI Analyse a Tracking System. Si déngen spezifesch, isoléiert Zwecker, a mir halen se isoléiert andeems Dir spezifesch Design Approche verfollegt.

Schafung vun engem automatesche System fir Intruder op der Plaz ze bekämpfen (Betrug)

Kontrakt-baséiert Design

Als éischt si mir eis eens ginn datt Komponenten nëmmen op bestëmmten Datestrukturen (Kontrakter) vertrauen, déi tëscht hinnen passéiert sinn. Dëst mécht et einfach tëscht hinnen z'integréieren an net eng spezifesch Zesummesetzung (an Uerdnung) vun Komponente imposéieren. Zum Beispill, an e puer Fäll erlaabt dëst eis direkt den Intakesystem mat dem Alarm Tracking System z'integréieren. An esou engem Fall gëtt dat am Aklang mam ausgemaache Alarmkontrakt gemaach. Dëst bedeit datt béid Komponenten integréiert ginn mat engem Kontrakt deen all aner Komponent ka benotzen. Mir wäerten keen zousätzleche Kontrakt derbäi fir Alarmer fir den Tracking System vum Input System ze addéieren. Dës Approche erfuerdert d'Benotzung vun enger virbestëmmter Mindestzuel vu Kontrakter a vereinfacht de System a Kommunikatiounen. Wesentlech huelen mir eng Approche mam Numm "Contract First Design" an applizéieren se op Streaming Kontrakter. [2]

Streaming iwwerall

Spueren a Gestioun vum Staat an engem System wäert zwangsleefeg zu Komplikatiounen a senger Ëmsetzung féieren. Am Allgemengen, Staat soll vun all Komponent zougänglech sinn, et soll konsequent sinn an déi aktuell Wäert iwwer all Komponente bidden, an et soll zouverlässeg mat de richtege Wäerter ginn. Zousätzlech, Uruff un persistent Späichere fir de leschten Zoustand z'erhalen, wäert d'Zuel vun den I/O Operatiounen an d'Komplexitéit vun den Algorithmen erhéijen, déi an eisen Echtzäit Pipelines benotzt ginn. Dofir hu mir décidéiert d'Staatslagerung, wa méiglech, komplett aus eisem System ze läschen. Dës Approche erfuerdert datt all néideg Donnéeën am iwwerdroenen Dateblock (Message) abegraff sinn. Zum Beispill, wa mir d'Gesamtzuel vun e puer Observatioune musse berechnen (d'Zuel vun den Operatiounen oder Fäll mat bestëmmte Charakteristiken), berechnen mir et an der Erënnerung a generéieren e Stroum vun esou Wäerter. Ofhängeg Moduler benotze Partition a Batching fir de Stream an Entitéiten opzedeelen an op déi lescht Wäerter operéieren. Dës Approche eliminéiert de Besoin fir persistent Disklagerung fir sou Donnéeën ze hunn. Eise System benotzt Kafka als Message Broker an et kann als Datebank mat KSQL benotzt ginn. [3] Awer et ze benotzen hätt eis Léisung staark un de Kafka gebonnen, a mir hu beschloss et net ze benotzen. D'Approche, déi mir gewielt hunn, erlaabt eis Kafka mat engem anere Message Broker ze ersetzen ouni grouss intern Ännerungen am System.

Dëst Konzept heescht net datt mir keng Disklagerung an Datenbanken benotzen. Fir d'Systemleistung ze testen an ze analyséieren, musse mir eng bedeitend Quantitéit un Daten op der Disk späicheren, déi verschidde Metriken a Staaten duerstellt. De wichtege Punkt hei ass datt Echtzäit Algorithmen net vun esou Daten ofhänken. Am meeschte Fäll benotze mir déi gespäichert Donnéeën fir offline Analyse, Debugging an Tracking vu spezifesche Fäll a Resultater déi de System produzéiert.

Problemer vun eisem System

Et gi verschidde Probleemer déi mir op e gewëssen Niveau geléist hunn, awer si erfuerderen méi nodenklech Léisungen. Elo wëll ech se just hei ernimmen, well all Punkt säin eegenen Artikel wäert ass.

  • Mir mussen nach ëmmer Prozesser a Politiken definéieren déi d'Akkumulatioun vu sënnvoll a relevant Donnéeën ënnerstëtzen fir eis automatiséiert Datenanalyse, Entdeckung an Exploratioun.
  • Integratioun vu mënschlechen Analyseresultater an de Prozess fir de System automatesch opzestellen fir et mat de leschten Donnéeën ze aktualiséieren. Dëst ass net nëmmen d'Aktualiséierung vun eisem Modell, awer och d'Aktualiséierung vun eise Prozesser an d'Verbesserung vun eisem Verständnis vun eisen Donnéeën.
  • E Gläichgewiicht tëscht der deterministescher Approche vun IF-ELSE a ML ze fannen. Een huet gesot: "ML ass e Tool fir déi verzweifelt." Dëst bedeit datt Dir ML benotze wëllt wann Dir net méi versteet wéi Dir Är Algorithmen optiméiert an verbessert. Op der anerer Säit erlaabt déi deterministesch Approche net d'Detektioun vun Anomalien déi net virausgesot goufen.
  • Mir brauchen en einfache Wee fir eis Hypothesen oder Korrelatiounen tëscht Metriken an den Daten ze testen.
  • De System muss e puer Niveaue vu richtege positiven Resultater hunn. Bedruchfäll sinn nëmmen e Fraktioun vun alle Fäll, déi als positiv fir de System ugesi kënne ginn. Zum Beispill wëllen Analysten all verdächteg Fäll fir d'Verifizéierung kréien, an nëmmen e klengen Deel vun hinnen sinn Bedruch. De System muss effizient all Fäll un Analysten presentéieren, egal ob et tatsächlech Bedruch ass oder just verdächtegt Verhalen.
  • D'Dateplattform soll fäeg sinn historesch Datesets mat Berechnungen ze recuperéieren, déi am Fluch generéiert a berechent sinn.
  • Einfach an automatesch all vun de Systemkomponenten an op d'mannst dräi verschidden Ëmfeld ofsetzen: Produktioun, experimentell (Beta) a fir Entwéckler.
  • A lescht awer net zulescht. Mir mussen eng räich Leeschtungstestplattform bauen op där mir eis Modeller analyséiere kënnen. [4]

Referenze

  1. Wat ass Augmentéiert Intelligenz?
  2. Eng API-First Design Methodik ëmsetzen
  3. Kafka transforméiert an "Event Streaming Datebank"
  4. AUC - ROC Curve verstoen

Source: will.com

Setzt e Commentaire