Considere este cenário: você é desenvolvedor em uma empresa de fintech e um de seus usuários é notificado para perguntar se autorizou uma transação internacional de $1.000. Em vez de ficar alarmado, o usuário clica na opção "Não", com a garantia de que sua empresa cuidará do resto.
Nos bastidores, seu aplicativo de IA para prevenção de fraudes bloqueou a compra antes da resposta, só permitindo que ela fosse adiante se o usuário selecionasse "Sim". O sistema de detecção de fraudes age rapidamente, muito rapidamente. Ele analisa a transação e prevê se ela é ou não fraudulenta com razoável precisão em menos de 50 ms.
Para fazer previsões rápidas e precisas, seu sistema requer um banco de dados na memória de alto desempenho, como o Couchbase, que armazena, recupera e fornece dados como recursos de ML, perfis, dados operacionais e outras informações contextuais. Velocidade e flexibilidade como essas são a razão pela qual as principais empresas de fintech escolheram o Couchbase.
A Revolut, por exemplo, tem criou seu aplicativo de prevenção de fraudes para atender aos seus mais de 12 milhões de usuários. Embora a detecção de fraudes em tempo real seja um caso de uso popular entre os clientes do Couchbase, vemos os clientes aproveitarem o Couchbase para outros casos de uso de alta velocidade, como ETA de motoristas, detecção de anomalias, preços dinâmicos, previsões, promoções personalizadas e muito mais. O Couchbase Capella é uma plataforma de banco de dados como serviço (DBaaS) que simplifica o desenvolvimento de aplicativos de IA e reduz a sobrecarga operacional associada ao gerenciamento de dados.
A função de um armazenamento de recursos
Os algoritmos de ML não entendem os dados brutos, portanto, eles devem ser pré-processados (usando uma técnica chamada engenharia de recursos) e transformados em recursos. Os recursos de ML são os campos mais relevantes de um conjunto de dados para resolver um problema de previsão, como a detecção de fraudes. Um armazenamento de recursos, tanto on-line quanto off-line (falaremos mais sobre isso em breve), permite o armazenamento, a reutilização e o acesso seguro aos recursos.
Os desenvolvedores de ML gastam cerca de 75-80% de seu tempo na engenharia de recursos. Para reduzir a repetição desse esforço todas as vezes para o treinamento de modelos, os desenvolvedores usam um armazenamento de recursos para simplificar suas operações de ML. O armazenamento de recursos on-line é usado durante a análise preditiva, ou inferência, para o fornecimento de baixa latência de recursos de AM aos modelos de AM. Antes disso, o modelo de AM precisa ser treinado, o que é feito com o armazenamento de recursos off-line. Ele é usado para armazenar e gerenciar recursos, que são criados durante o estágio de engenharia de recursos.
Vários clientes do Couchbase usam o Apache Spark para trabalhos de engenharia de recursos devido ao seu enorme ecossistema de bibliotecas Python ML para transformações e seus recursos de MPP (processamento massivamente paralelo).
Para acelerar o desenvolvimento de aplicativos de ML, anunciamos recentemente alguns blocos de construção que permitem que você aproveite o Capella como um armazenamento de recursos on-line e off-line em uma plataforma unificada:
-
- Plug-ins do Feast para aproveitar o Couchbase em aplicativos de ML. Feast (abreviação de Loja de recursos) é um armazenamento de recursos de código aberto simples de usar e independente da nuvem. Muitos clientes, como a Revolut, já confiam no Capella como um armazenamento de recursos on-line. Capella Columnar oferece os recursos de análise necessários para uma loja de recursos off-line.
- O conector PySpark para Capella acelera a engenharia de recursos combinando os recursos de processamento massivamente paralelo do Spark com os recursos de análise do Capella Columnar. Os trabalhos de engenharia de recursos envolvem o processamento de colunas relevantes em vez de linhas inteiras e, portanto, podem ser acelerados com o uso de um banco de dados colunar como o Capella Columnar.
Plug-ins do Feast para o Couchbase
Festa foi adotado por uma grande variedade de organizações em diferentes setores, incluindo varejo, mídia, viagens e serviços financeiros. Os plug-ins do Feast para o Couchbase estão disponíveis no projeto Feast. As lojas de recursos on-line e off-line do Feast, apoiadas pela Capella, oferecem os seguintes benefícios:
-
- Disponibiliza recursos da Capella para treinamento e atendimento, de modo que a distorção entre treinamento e atendimento seja minimizada
- Evita o vazamento de dados ao gerar conjuntos de recursos corretos em um momento específico para que os cientistas de dados possam se concentrar na engenharia de recursos em vez de depurar a lógica de união de conjuntos de dados propensos a erros. Isso garante que os valores futuros dos recursos não vazem para os modelos durante o treinamento.
- Desacopla o ML da infraestrutura de dados, fornecendo uma única camada de acesso a dados que abstrai o armazenamento de recursos da recuperação de recursos. Isso garante que os modelos permaneçam portáteis à medida que você passa de modelos de treinamento para modelos de serviço, de modelos em lote para modelos em tempo real e de um sistema de infraestrutura de dados para outro.
- Registra recursos de streaming no armazenamento de recursos
- Armazena metadados relacionados a recursos para facilitar a descoberta de recursos no registro de recursos.
- Valida os dados para garantir a qualidade dos dados
- Oferece suporte à transformação
- Versões de recursos para vincular valores de recursos a versões de modelos
- Suporta o Spark para ingestão e sincronização de lojas off-line e on-line
Conector PySpark para Couchbase
Com seu enorme ecossistema de bibliotecas Python ML e recursos de processamento massivamente paralelo, o Apache Spark é inigualável para a engenharia de recursos. O conector PySpark para Columnar permite que você aproveite o formato Columnar para suas consultas de dados, acelerando os trabalhos de treinamento.
Por outro lado, o conector PySpark para o Operational permite o fornecimento de recursos de baixa latência para modelos de ML, acelerando a inferência necessária para aplicativos como a detecção de fraudes em tempo real.
Esta é a visão conceitual de como você poderia desenvolver um aplicativo de ML usando o Capella:

Figura 1 - Visão conceitual de um pipeline de ML que alimenta um aplicativo de detecção de fraude
Pipeline de treinamento
Etapa 1: Ingerir dados brutos do Capella (por exemplo, histórico de pagamentos) e outras fontes de dados no Spark para engenharia de recursos usando os respectivos conectores. O conector PySpark permite que você consulte dados no Capella e, ao mesmo tempo, oferece suporte a otimizações, como pushdowns de predicados etc.
Etapa 2: Armazene os recursos que você criou no armazenamento off-line (Capella Columnar) por meio das APIs do Feast e atualize-os conforme necessário por meio do conector PySpark. O formato columnar ajuda a acelerar o trabalho de engenharia de recursos quando comparado aos formatos baseados em linhas.
Etapa 3: Mova os dados do Capella Columnar para a plataforma de ML, como o AWS SageMaker, usando o S3 para preparação. Você pode usar a instrução COPY TO do SQL++ para mover facilmente os dados para o S3.
Etapa 4: Crie um endpoint de modelo para inferência que o aplicativo de detecção de fraude possa invocar.
Pipeline de inferência
Etapa 1: Sincronize os dados do armazenamento de recursos off-line para o on-line usando Provedor AirFlow para Couchbase para que as transações recebidas possam ser processadas para detecção de fraudes.
Etapa 2: No aplicativo, aumente a transação de entrada da fonte de transação com as informações do armazenamento de dados on-line e envie-as para o endpoint de inferência para previsões.
Etapa 3: Após a previsão, armazene os rótulos junto com os registros associados no armazenamento operacional do Capella para que você possa usá-los para fins de auditoria ou treinamento.
Comece a usar o Capella
Use os blocos de construção abaixo para começar a desenvolver seu aplicativo de ML com a Capella:
-
-
- Nível gratuito Capella
- Crie aplicativos de IA/ML altamente dimensionáveis com o Couchbase e o PySpark (consulte o aplicativo de amostra)
- Plug-in do Feast Couchbase para Capella (Operacional) Loja de recursos on-line
- Plug-in do Feast Couchbase para o armazenamento de recursos off-line do Capella (Columnar)
- Provedor do AirFlow Couchbase
-