Informazioni sul rilevamento delle frodi in streaming
In questa guida sulle soluzioni, scopri come utilizzare il framework di sicurezza informatica NVIDIA Morpheus per implementare il rilevamento delle frodi basato sull'intelligenza artificiale in tempo reale utilizzando una pipeline Morpheus accelerata dalla GPU e pubblicare i risultati utilizzando Compute Cloud@Customer. La soluzione consente il rilevamento immediato delle frodi senza attendere i processi batch e mantiene i dati al sicuro elaborandoli localmente all'avanguardia.
Operazioni preliminari
- Sistema operativo: Ubuntu 24.04 LTS
- Piattaforma: NVIDIA AI Enterprise su un'istanza di Oracle Compute Cloud@Customer a nodo singolo dotata di una GPU NVIDIA L40S.
Prima di iniziare, accertarsi che sul computer host siano installati gli strumenti indicati di seguito.
- Docker e composizione Docker (
docker compose V2
) - Git e Git LFS (
git-lfs
) - Python 3 e
Pip
Flusso di lavoro
Il flusso di lavoro utilizza il framework di sicurezza informatica NVIDIA Morpheus per eseguire inferenze accelerate dalla GPU su un flusso di dati delle transazioni finanziarie.
Il diagramma seguente mostra un flusso di lavoro attraverso tre swimlane: Ambiente host, Apache Kafka e pipeline Morpheus:
La pipeline acquisisce i dati delle transazioni in tempo reale tramite Apache Kafka, esegue un'analisi contestuale basata su grafici utilizzando un modello Graph Sample and Aggregate (GraphSAGE) pre-addestrato ed esegue la classificazione delle frodi finale utilizzando XGBoost. Tutte le fasi vengono accelerate utilizzando le librerie RAPIDS NVIDIA (cuDF, cuML), rendendo l'intero flusso di lavoro ottimizzato per la GPU per un throughput elevato. Di seguito viene descritto il flusso del processo.
Transaction data (.csv)
è prodotto da un producer Python.- I dati vengono inseriti nel flusso
INPUT
dell'argomento Kafka. - I dati vengono elaborati tramite la pipeline Morpheus nei passi seguenti: lettura dall'origine Kafka, deserializzazione, creazione di un grafico, interfaccia con l'interfaccia Graph Neural Network (GNN) (
GraphSAGE
), classificazione conXGBoost
, serializzazione dei risultati e scrittura nel sink Kafka. - I risultati vengono inviati al flusso
OUTPUT
dell'argomento Kafka. - Un consumer Python riceve l'output e fornisce previsioni di frodi in tempo reale.
Provenienza modello
La pipeline di inferenza alla base di questa architettura utilizza due modelli di apprendimento automatico pre-addestrati: un GNN GraphSAGE e un classificatore XGBoost. Questi modelli sono stati generati utilizzando una pipeline di addestramento separata, che è inclusa nel repository Morpheus per riferimento.
- Posizione script formazione:
examples/gnn_fraud_detection_pipeline/training.py
. - Processo: lo script elabora un set di dati cronologici etichettato per addestrare il GNN sulle funzioni basate su grafici e il modello
XGBoost
sulle integrazioni risultanti.
In questa soluzione, non è necessario eseguire lo script di addestramento perché i modelli pre-addestrati sono già forniti. Concentrati sulla distribuzione e sull'esecuzione della pipeline di inferenza in tempo reale.
Questa architettura supporta i componenti elencati di seguito.
- Oracle Compute Cloud@Customer
Oracle Compute Cloud@Customer è un'infrastruttura su scala rack completamente gestita che ti consente di utilizzare OCI Compute ovunque. Ottieni i vantaggi dell'automazione e dell'economia del cloud nel tuo data center eseguendo forme di OCI Compute e GPU con servizi di storage e networking su Compute Cloud@Customer. Puoi eseguire applicazioni e sfruttare la potenza di GenAI sull'infrastruttura cloud nel tuo data center, aiutandoti a indirizzare le connessioni a residenza, sicurezza e bassa latenza dei dati alle risorse locali e alle operazioni in tempo reale.
- RAPIDI cuDF/cuML
RAPIDS cuDF/cuML sono una suite di librerie con accelerazione GPU per le utility di manipolazione dei dati e apprendimento automatico ad alte prestazioni all'interno della pipeline Morpheus.
- Docker + Conda
Docker + Conda offrono un approccio a più livelli alla gestione delle dipendenze, utilizzando Docker per l'isolamento a livello di sistema operativo e Conda per la gestione del complesso ambiente Python all'interno del contenitore.
Considerazioni per la produzione
Quando si implementa questa soluzione in un ambiente di produzione, considera la scalabilità e la resilienza che Kubernetes può fornire. Puoi eseguire la migrazione di questa soluzione a OCI Kubernetes Engine (OKE) effettuando le seguenti operazioni:
- Contenerizzazione degli script di supporto per produttori e consumatori.
- Distribuzione di Kafka utilizzando un operatore Kubernetes di livello produzione.
- Distribuzione della pipeline Morpheus come job o distribuzione Kubernetes.
Informazioni sui servizi e i ruoli richiesti
Questa soluzione richiede i seguenti servizi e ruoli:
- Oracle Compute Cloud@Customer
- NVIDIA AI Enterprise 6.0
-
Ubuntu Linux (o una distribuzione Linux compatibile)
- Docker
- NVIDIA Morpheus 25.02
Questi sono i ruoli necessari per ogni servizio.
Nome servizio: ruolo | Obbligatorio per... |
---|---|
Oracle Compute Cloud@Customer: administrator |
Configurare e distribuire l'istanza della virtual machine NVIDIA AI Enterprise, gestire le risorse di rete e garantire l'accesso alla GPU NVIDIA L40S. |
Ubuntu Linux: root o utente con privilegi sudo
|
Installare il software dei prerequisiti (Docker, Git), gestire i servizi di sistema ed eseguire i comandi Docker. |
NVIDIA AI Enterprise: utente account | Estrarre l'immagine del contenitore NVIDIA Morpheus dal catalogo NVIDIA GPU Cloud (NGC). |
Consulta i prodotti, le soluzioni e i servizi Oracle per ottenere ciò di cui hai bisogno.