neuralNet annScore

Extracción de Características con Autoencoder para Detección de Fraude

Scénario de test & Cas d'usage

Contexto empresarial

Una entidad financiera busca mejorar sus modelos de detección de fraude. En lugar de usar datos transaccionales brutos, que son numerosos y ruidosos, aplicarán un modelo autoencoder para comprimir la información en un conjunto de características latentes (un 'embedding'). Estas nuevas características se usarán como entrada para un modelo de clasificación más simple y robusto.
Sobre el conjunto : neuralNet

Entrenamiento de redes neuronales artificiales clásicas.

Descubrir todas las acciones de neuralNet
Preparación de datos

Crea una tabla de transacciones ('transactions_raw') con múltiples variables y una tabla de modelo autoencoder ficticia ('autoencoder_model').

¡Copiado!
1DATA casuser.transactions_raw(keep=ID_TXN MONTO HORA_DIA TIPO_COMERCIO FREQ_CLIENTE) casuser.autoencoder_model;
2 /* Crear datos de transacciones */
3 call streaminit(456);
4 DO ID_TXN = 1 to 2000;
5 MONTO = 5 + rand('uniform') * 1000;
6 HORA_DIA = rand('integer', 23);
7 TIPO_COMERCIO = rand('integer', 50);
8 FREQ_CLIENTE = rand('uniform');
9 OUTPUT casuser.transactions_raw;
10 END;
11 
12 /* Crear modelo ficticio */
13 LENGTH _MODEL_ 8 _MODELNAME_ $32 _TYPE_ $16;
14 _MODEL_ = 1; _MODELNAME_ = 'Autoencoder_v1'; _TYPE_ = 'REGRESSION';
15 OUTPUT casuser.autoencoder_model;
16RUN;

Étapes de réalisation

1
Ejecutar annScore especificando listNode='HIDDEN' para extraer las activaciones de la capa oculta del autoencoder. Se conserva el ID de transacción.
¡Copiado!
1PROC CAS;
2 neuralNet.annScore /
3 TABLE={name='transactions_raw'},
4 modelTable={name='autoencoder_model'},
5 listNode='HIDDEN',
6 copyVars={'ID_TXN'},
7 casOut={name='transaction_features', replace=true};
8RUN;
9QUIT;
2
Inspeccionar la estructura y contenido de la tabla de salida para confirmar la creación de las nuevas características.
¡Copiado!
1PROC CAS;
2 TABLE.columnInfo / TABLE={name='transaction_features'};
3 TABLE.fetch / TABLE={name='transaction_features'} to=5;
4RUN;
5QUIT;

Resultado esperado


Se crea una tabla CAS 'transaction_features'. Esta tabla contiene el 'ID_TXN' y un nuevo conjunto de columnas (ej. '_Node_1_', '_Node_2_', etc.) que representan las características comprimidas generadas por la capa oculta del autoencoder. Estas características están listas para ser usadas en otros modelos de machine learning.