Considere este escenario: usted es desarrollador en una empresa de tecnología financiera y uno de sus usuarios recibe una notificación para preguntarle si había autorizado una transacción internacional por $1.000. En lugar de alarmarse, el usuario hace clic en la opción "No", con la seguridad de que su empresa se encargará del resto. En lugar de alarmarse, el usuario hace clic en la opción "No", con la seguridad de que su empresa se encargará del resto.

Entre bastidores, su aplicación de IA para la prevención del fraude bloqueó la compra antes de la respuesta, permitiéndole seguir adelante sólo si el usuario selecciona "Sí". El sistema de detección de fraudes se mueve rápido, muy rápido. Revisa la transacción y predice si es fraudulenta o no con una precisión razonable en menos de 50 ms.

Para hacer predicciones rápidas y precisas, su sistema requiere una base de datos en memoria de alto rendimiento como Couchbase, que almacena, recupera y entrega datos como características de ML, perfiles, datos operativos y otra información contextual. Velocidad y flexibilidad como estas son las razones por las que las principales empresas de tecnología financiera han elegido Couchbase.

Revolut, por ejemplo, tiene construyó su aplicación de prevención del fraude para dar servicio a sus más de 12 millones de usuarios. Aunque la detección de fraudes en tiempo real es un caso de uso popular entre los clientes de Couchbase, vemos que los clientes aprovechan Couchbase para otros casos de uso de alta velocidad como ETA de conductores, detección de anomalías, precios dinámicos, previsiones, promociones personalizadas y muchos más. Couchbase Capella es una plataforma de base de datos como servicio (DBaaS) que simplifica el desarrollo de aplicaciones de IA y reduce la sobrecarga operativa asociada a la gestión de datos.

El papel de un almacén de características

Los algoritmos de ML no entienden los datos en bruto, por lo que deben preprocesarse (mediante una técnica denominada ingeniería de funciones) y se transforman en características. Las características ML son los campos más relevantes de un conjunto de datos para resolver un problema de predicción, como la detección de fraudes. Un almacén de características, tanto en línea como fuera de línea (hablaremos de ello más adelante), permite el almacenamiento, la reutilización y el acceso seguro a las características.

Los desarrolladores de ML dedican aproximadamente el 75-80% de su tiempo a la ingeniería de características. Para reducir la repetición de este esfuerzo cada vez que se entrena un modelo, los desarrolladores utilizan un almacén de características para agilizar sus operaciones de ML. El almacén de características en línea se utiliza durante el análisis predictivo, o inferencia, para el servicio de baja latencia de las características de ML a los modelos de ML. Antes de que esto ocurra, es necesario entrenar el modelo de ML, lo que se hace con el almacén de características offline. Se utiliza para almacenar y gestionar características, que se crean durante la etapa de ingeniería de características.

Varios clientes de Couchbase utilizan Apache Spark para trabajos de ingeniería de características debido a su ecosistema masivo de bibliotecas Python ML para transformaciones y sus capacidades MPP (procesamiento paralelo masivo).

Para acelerar el desarrollo de aplicaciones de ML, hemos anunciado recientemente algunos bloques de construcción que permiten aprovechar Capella como almacén de funciones tanto en línea como fuera de línea dentro de una plataforma unificada:

    1. Plugins de Feast para aprovechar Couchbase en aplicaciones ML. Feast (abreviatura de Tienda de artículos) es un almacén de características de código abierto, fácil de usar y agnóstico para la nube. Muchos clientes como Revolut ya confían en Capella como almacén de funciones en línea. Capella Columnar ofrece las capacidades analíticas necesarias para una tienda de funciones offline.
    2. El conector PySpark para Capella acelera la ingeniería de características combinando las capacidades de procesamiento paralelo masivo de Spark con las capacidades analíticas de Capella Columnar. Los trabajos de ingeniería de características implican el procesamiento de columnas relevantes en lugar de filas enteras y, por lo tanto, se pueden acelerar utilizando una base de datos columnar como Capella Columnar.

Plugins de Feast para Couchbase

Fiesta ha sido adoptada por una amplia variedad de organizaciones en distintos sectores, como el comercio minorista, los medios de comunicación, los viajes y los servicios financieros. Los plugins de Feast para Couchbase están disponibles en el proyecto Feast. Los almacenes de funciones online y offline de Feast respaldados por Capella ofrecen las siguientes ventajas:

    • Pone a disposición funciones de Capella para la formación y el servicio, de forma que se minimiza el sesgo formación/servicio.
    • Evita la fuga de datos generando conjuntos de características correctos en un momento dado para que los científicos de datos puedan centrarse en la ingeniería de características en lugar de depurar la lógica de unión de conjuntos de datos propensa a errores. Esto garantiza que los valores de las características futuras no se filtren a los modelos durante el entrenamiento.
    • Desacopla el ML de la infraestructura de datos proporcionando una única capa de acceso a datos que abstrae el almacenamiento de características de la recuperación de características. Esto garantiza la portabilidad de los modelos al pasar de modelos de formación a modelos de servicio, de modelos por lotes a modelos en tiempo real y de un sistema de infraestructura de datos a otro.
    • Registra funciones de streaming en el almacén de funciones
    • Almacena metadatos relacionados con las características para facilitar su localización en el registro de características.
    • Valida los datos para garantizar su calidad
    • Apoya la transformación
    • Versiones de características para vincular los valores de las características a las versiones del modelo
    • Admite Spark para la ingesta y sincronización de almacenes en línea y fuera de línea

Conector PySpark para Couchbase

Con su ecosistema masivo de librerías Python ML y sus capacidades de procesamiento masivamente paralelo, Apache Spark es insuperable para la ingeniería de funciones. El conector PySpark para Columnar le permite aprovechar el formato Columnar para sus consultas de datos, acelerando los trabajos de formación.

Por otro lado, el conector PySpark para Operational permite servir características a los modelos de ML con baja latencia, lo que acelera la inferencia necesaria para aplicaciones como la detección de fraudes en tiempo real.

Esta es la vista conceptual de cómo podrías desarrollar una aplicación ML utilizando Capella:

ML workflows with Couchbase as a feature store

Figura 1 - Vista conceptual de una canalización de ML que impulsa una aplicación de detección de fraudes

Formación

Primer paso: Ingesta de datos sin procesar de Capella (por ejemplo, historial de pagos) y otras fuentes de datos en Spark para la ingeniería de funciones utilizando los conectores respectivos. El conector PySpark le permite consultar datos en Capella al tiempo que admite optimizaciones como predicate pushdowns, etc.

Segundo paso: Almacene las características que ha creado en el almacén fuera de línea (Capella Columnar) a través de las API de Feast y actualícelas según sea necesario a través del conector PySpark. El formato columnar ayuda a acelerar el trabajo de ingeniería de características en comparación con los formatos basados en filas.

Paso 3: Mueva los datos de Capella Columnar a la plataforma de ML, como AWS SageMaker, utilizando S3 para la puesta en escena. Puede utilizar la sentencia SQL++ COPY TO para mover fácilmente los datos a S3.

Paso 4: Cree un punto final del modelo para inferencias que la aplicación de detección de fraudes pueda invocar.

Proceso de inferencia

Primer paso: Sincronizar los datos del almacén de funciones offline con el almacén de funciones online mediante Proveedor AirFlow para Couchbase para que las transacciones entrantes puedan ser procesadas para la detección de fraudes.

Segundo paso: En la aplicación, aumenta la transacción entrante desde la fuente de transacciones con la información del almacén de datos en línea y la envía al punto final de inferencia para las predicciones.

Paso 3:  Después de la predicción, almacene las etiquetas junto con los registros asociados en el almacén operativo de Capella para que pueda utilizarlos con fines de auditoría o formación.

Empieza con Capella

Utilice los bloques de construcción a continuación para comenzar con el desarrollo de su aplicación ML con Capella:

Autor

Publicado por Kiran Matty, Jefe de Producto AI/ML

Dejar una respuesta