Un banco es, por definición, una "organización monetaria", y su futuro depende de cuán exitosamente esta organización emita y reembolse los préstamos. Para trabajar con éxito con los préstamos, debe comprender la situación financiera de los prestatarios, a la que ayudan los factores de riesgo crediticio (FKR). Los analistas de crédito los identifican en grandes cantidades de información bancaria, procesan estos factores y predicen nuevos cambios. Por lo general, se utilizan análisis descriptivos y de diagnóstico para esto, pero decidimos conectar las herramientas de aprendizaje automático al trabajo. Lea sobre lo que sucedió en la publicación.

Algunos factores de riesgo de crédito se encuentran en la superficie, mientras que otros deben buscarse en las profundidades de los datos bancarios. Los cambios en el tipo de cambio del dólar, los ingresos de los clientes, la carga de la deuda, la caída de las ventas y las calificaciones, los tribunales, los casos penales, las fusiones y adquisiciones, todo esto proporciona una señal estadística de diferentes puntos fuertes. Para componer correctamente la imagen general del prestatario, es necesario no solo captar todas las señales asociadas con él, sino también evaluar su solidez.
Los análisis descriptivos y de diagnóstico han funcionado bien al trabajar con FCR, pero, sin embargo, estos métodos no están exentos de inconvenientes. El uso de análisis está limitado a los reguladores; no todos los métodos y modelos avanzados pueden ser aprobados por ellos. La analítica no es flexible y no brinda la oportunidad de presentar datos en un segmento arbitrario, y esto a menudo es muy necesario. Y con la eficiencia en este caso, no todo es genial. Y también sucede que para algunos modelos analíticos simplemente no hay suficientes datos.
¿Por qué no probar el aprendizaje automático para estos fines? Por lo tanto, es bastante posible mejorar el cálculo de la importancia de los factores de riesgo de crédito, en términos técnicos, para aumentar en varios puntos porcentuales el indicador de Gini, mediante el cual evaluamos la precisión de los modelos de pronóstico. Cuanto mejor sea el cálculo de FKR, más precisa será la evaluación de la situación financiera de los clientes: mayor será la calidad de la cartera de préstamos del banco. Y cuanto menor es la proporción de trabajo manual.
Progreso del proyecto
Cloudera Hadoop fue elegido para almacenar grandes datos, Apache Spark y Apache Hive SQL se implementaron para acceder a datos sin procesar, Apache Oozie se utilizó para coordinar e iniciar los flujos de descarga y cálculo. Utilizando Apache, Zeppelin y JupyterHub visualizaron y exploraron los datos. Además, utilizaron varias bibliotecas de aprendizaje automático que admiten el procesamiento paralelo: Spark MLIB, PySpark y H20.

Se asignaron siete nodos para todo esto:
- 3 nodos maestros con 64 GB de vRAM y 2 TB de espacio en disco cada uno
- 3 nodos de datos con 512 GB de vRAM y 8 TB cada uno
- 1 nodo para aplicaciones con 128 GB de vRAM, 2.5 TB

Todo el proyecto tomó tres meses y consistió en tres etapas de demostración, cuatro sprints semanales en cada una. Para el cálculo, se eligieron 22 factores de riesgo de crédito durante el proyecto.
En la primera etapa, implementamos la infraestructura y conectamos las primeras fuentes de datos:
- Almacenamiento de información corporativa (FIR): el almacenamiento principal en el banco. Para operar libremente con datos dentro de Data Lake y no crear una carga en los sistemas de producción, de hecho lo cargamos en su conjunto.
- El sistema de cálculo de calificación () es una de las principales bases de datos para evaluar los riesgos asociados con las actividades de los clientes corporativos. Contiene información sobre calificaciones de empresas, indicadores de estados financieros.
- Datos de fuentes externas que reflejan afiliación y otros criterios.
- Archivos separados que contienen información y datos adicionales para el trabajo de los científicos de datos.
En la segunda etapa, se calculó el primer PCF, intentamos construir modelos basados en estos indicadores, instalamos una herramienta de BI y discutimos cómo visualizar la dinámica del PCF. Como resultado, decidimos preservar la estructura familiar de la hoja de cálculo de Excel en la nueva herramienta, dejando una visualización avanzada para el futuro.
Y finalmente, en la etapa final, descargamos todos los datos faltantes, incluso de una fuente externa. El banco temía que su importancia estadística fuera pequeña, por lo que realizamos pruebas estadísticas que demostraron lo contrario. La demostración final demostró el funcionamiento de las herramientas de datos científicos, BI, carga y actualización periódicas de datos. De los 22 factores, solo dos no se calcularon dentro del piloto, debido a razones externas: la falta de datos de la calidad requerida.
Resultado
El clúster en Hadoop es fácilmente escalable y permite a los modelos alimentar más datos, y pueden realizar cálculos en paralelo. El indicador de Gini ha crecido: los modelos han predicho con mayor precisión ciertos eventos relacionados con factores de riesgo de crédito.
Anteriormente, nuestros analistas tenían que ponerse en contacto con el Departamento de TI para escribir consultas SQL en el repositorio corporativo y luego procesar los modelos en sus computadoras personales. Y ahora, el clúster piloto permite a los analistas escribir consultas por su cuenta, es decir, generar datos sin procesar y procesar modelos es mucho más rápido.
Planes
Este año continuaremos el desarrollo del proyecto. Implementaremos la infraestructura de Data Lake en equipos especializados para aumentar la velocidad de muestreo y procesamiento. Organizamos sobre la base del "lago" un recurso único y centralizado para el análisis crediticio. Agregue algunas fuentes de datos más y conecte nuevas bibliotecas de aprendizaje automático.
Otras divisiones del banco se interesaron en nuestro proyecto: CRM, auditoría interna (búsqueda de estafadores, identificación de transacciones sospechosas), soporte operativo (antifraude), analistas de la industria. Cuando utilizamos el "sandbox", les damos nuestros desarrollos, obtendrán un acceso fácil a los datos, la capacidad de conectar cualquier fuente de datos y experimentar con modelos de aprendizaje automático.