Detectando Fraude usando Mapa Auto-Organizado

Usaremos un mapa auto organizado para detectar fraude en un banco.

Los Mapas Auto Organizados son de mucha ayuda para reducir las dimensiones de un set de datos muy grande.

En este caso prestaremos atencion a los usuarios que estan ubicados en cuadros fuera de lo comun. Estos son usuarios que cometieron posible fraude.

Mas adelante usaremos una mezcla de este modelo y una red neuronal artificial para predecir fraude en un banco.

El blog se divide de la siguiente manera:

  • Introduccion Caso de Estudios
  • Entendiendo set de datos
  • Importando set de datos
  • Entrenamiento
  • Prediccion
  • Visualizacion

Introduccion Caso de Estudios

Un banco nos da información de clientes que aplican para una tarjeta de crédito. Nos da un set de datos.

Ese set de datos es el formulario que el cliente tiene que llenar cuándo va a aplicar para la tarjeta.

Nuestra misión es detectar los posibles fraudes en el formulario. Vamos a generar una lista de personas que tienen un posible fraude.

Resolveremos el problema utilizando un mapa auto organizado.

Vamos entonces a crear un mapa y ese mapa va a tener todos los resultados de colores y en ese mapa vas

a notar que el color negro va a representar a todos los clientes que están bien. Habran distintos colores

blancos que van a ser los que están mal, los que cometieron un posible fraude.

Cómo sabemos que cometieron posible fraude porque son los que están con el espacio más distante

a los B.M. Como tienen el espacio más distante tienen algún tipo de irregularidad.

Ahora sabemos que hay que chequear mas de cerca a esos clientes.

Entendiendo set de datos

De esta tabla que podemos ver, cada cliente es una fila. Las columnas A son atributos del cliente, la ultima columna “Class” indica si el cliente obtuvo una tarjeta o no.

Importando Set de Datos

Empezaremos importando las librerias que usaremos y el set de datos que nos dio el banco.

Ahora debemos separar nuestro set de datos en un set de entrenamiento y uno de prueba.

Para la matriz de variables X usaremos todas las columnas menos la ultima. La ultima columna del set de datos es nuestra variable dependiente Y.

El set de datos contiene columnas con digitos grandes, vamos a nivelar todo aplicando escalado de caracteristicas.

Con esto hemos finalizado el pre-procesamiento de datos, ahora pasaremos al entrenamiento del mapa auto organizado.

Entrenamiento

Crearemos un mapa auto organizado de 10×10 y con un rango de aprendizaje de 0.5.

Entrenaremos el mapa alrededor de 100 iteraciones.

Usaremos el paquete minisom para crear el mapa, asegurate de descargarlo haciendo “pip install minisom” igualmente necesitaras “matplotlib” mas adelante asi que descargalo de una vez.

Seleccionamos todo el codigo y en “Spyder” presionamos Ctrl + Alt + Enter para iniciar el entrenamiento.

Visualizacion

Ahora que tenemos nuestro mapa listo vamos a visualizar los resultados para poder observar quienes son los fraudes.

Utilizando pylab vamos a visualizar nuestro mapa, los marcadores y colores nos ayudan a visulizar mejor nuestros resultados.

los clientes que se encuentran en el cuadrado blanco son los que cometieron posible fraude, ahora debemos poner a estos clientes en una lista.

Debemos indicar las cordenadas de los cuadrados blancos, en este caso (2,6), (8,2) (5,6) y (6,7)

Seleccionamos este codigo y lo corremos con Ctrl + Alt + Enter y obtenemos una variable llamada “Fraudes”.

Esta variable contiene una lista de los fraudes. Para visualizar de mejor manera los resultados puedes indicar la manera de visualizacion de los numeros (Metodo Cientifico o Normal) en “Format”.

Ahi puedes seleccionar si quieres ver con decimales y el formato.

Hemos detectado fraude de manera exitosa, ahora usaremos estos resultados y los alimentaremos a una red neuronal artificial para esta vez Predecir Fraude, asi podemos capturar a los criminales antes de que cometan el fraude.

Related Articles

Preguntas

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

    1. Un mapa auto organizado es inteligencia artificial que utiliza aprendizaje no supervisado par encontrar algun tipo de discrepancia en los datos