Como o Couchbase simplifica a ciência de dados (Parte 2)

Este blog tem a coautoria de Karen Yuan, estagiária do ensino médio

Em nosso Artigo anterior, aprendemos a fazer análise exploratória de dados usando o serviço Couchbase Query. Também aprendemos a ler com eficiência os dados de treinamento com as APIs de consulta no Couchbase Python SDK e a salvá-los perfeitamente em um dataframe pandas adequado para aprendizado de máquina (ML). E, por fim, armazenamos modelos de ML e seus metadados no Couchbase. Neste artigo, aprenderemos a fazer previsões, armazená-las no Couchbase e usar os gráficos de consulta para analisá-las.

Previsão em tempo real

O cientista de dados usa o modelo treinado para gerar previsões.

Usaremos o fluxo de previsão da Figura 1 para prever a pontuação de rotatividade em tempo real e armazenar a previsão no Couchbase. Usaremos o modelo de previsão de rotatividade que treinamos no artigo anterior.

Real Time Prediction Flow

Função para ler o modelo e seus metadados armazenados no Couchbase:

Função para ler os dados do cliente armazenados no Couchbase:

O seguinte prever lê o modelo, seus metadados e registros de clientes usando as funções acima. Ela converte os dados do cliente em recursos usando o mesmo processo usado durante o treinamento (ou seja, codificação de um ponto). Em seguida, ela prevê a pontuação de rotatividade executando o modelo nos recursos.

Previsão de rotatividade para ID do cliente 100002 é 1, o que indica que eles provavelmente deixarão o serviço de streaming.

churn prediction

A previsão é salva em um bucket do Couchbase chamado previsões usando o código mostrado abaixo. Crie o bucket de previsões em seu cluster do Couchbase antes de continuar.

Verifique se a previsão foi salva com êxito no Couchbase.

Você também pode executar o modelo treinado e gerar previsões no Couchbase Analytics usando o recurso Python UDF (atualmente em visualização para desenvolvedores). Consulte o artigo sobre Execução de modelos de ML usando o Couchbase Analytics Python UDF para obter mais informações.

Análise de variações hipotéticas

O cientista de dados analisará as previsões para responder a perguntas que ajudem a tomar decisões.

O problema que definimos no artigo anterior era uma equipe de vendas da empresa de serviços de streaming on-line que queria saber se o aumento do custo mensal maximizaria a receita e, ao mesmo tempo, manteria a rotatividade de clientes sob controle.

Para responder a isso, usaremos o código abaixo para prever as pontuações de rotatividade quando os custos mensais forem aumentados em $1, $2 etc. Os resultados dessa análise serão armazenados no bucket de previsões.
Usando a interface do usuário do cluster do Couchbase, crie um escopo chamado análise what_if e uma coleção chamada increase_monthly_cost no bucket de previsões. (Os escopos e as coleções estão disponíveis no Couchbase Server 7.0 e posterior)

Para analisar os resultados da previsão usando o Couchbase Query, crie um índice primário no análise what_if conforme mostrado na interface do usuário da consulta abaixo. Observe que o contexto da consulta deve ser definido conforme mostrado.

query editor
Os gráficos de consulta podem ser usados para analisar os resultados da previsão. O gráfico abaixo mostra que ~7% dos clientes existentes têm previsão de cancelamento se o custo mensal for aumentado em $1, ~10% provavelmente cancelarão se o custo mensal for aumentado em $2, etc.

query chart

O gráfico abaixo mostra que a receita mensal atual é de $3,15 milhões. Prevê-se que essa receita aumente em ~$50K se o custo da assinatura mensal dos clientes existentes for aumentado em $1 e em ~$230k se o custo mensal for aumentado em $2. Mas prevê-se que a receita diminua se o custo mensal for aumentado em $3 ou mais, devido à maior taxa de rotatividade prevista.

querychart2
Com essa análise, podemos concluir que a equipe de vendas da empresa de serviços de streaming on-line pode aumentar o custo da assinatura mensal em $2 para maximizar a receita e, ao mesmo tempo, manter a taxa de rotatividade sob controle.

A opção "Download chart" (Baixar gráfico) na interface do usuário da consulta pode ser usada para salvar os gráficos.

Serviço de análise do Couchbase

Usamos a API de consulta do Couchbase no Python SDK para ler dados do Couchbase. Se, em vez disso, você quiser usar a API do Couchbase Analytics, aqui está um exemplo para ler os dados do Couchbase e armazená-los em um dataframe do pandas.

O serviço Couchbase Analytics também pode ser usado para EDA, visualização de dados e para executar modelos de ML treinados (visualização do desenvolvedor). Consulte a seção Referência da linguagem N1QL for Analytics e o artigo sobre Execução de modelos de ML usando o Couchbase Analytics Python UDF para obter mais informações.

Conclusão

Neste artigo e no anterior, aprendemos como o Couchbase facilita a ciência de dados. Usando a previsão de rotatividade de clientes como exemplo, vimos como realizar análises exploratórias usando o serviço Query, como ler com eficiência grandes conjuntos de dados de treinamento usando o Python SDK e como armazená-los facilmente em uma estrutura de dados adequada para ML.

Também vimos como armazenar modelos de ML, seus metadados e previsões no Couchbase e como usar os gráficos de consulta para analisar as previsões.

A plataforma de dados Couchbase pode ser usada para armazenar dados brutos, recursos, modelos de ML, seus metadados e previsões no mesmo cluster que executa os serviços de consulta e análise. Isso torna o processo rápido e fácil, reduzindo o número de ferramentas necessárias para a ciência de dados.

Próximas etapas

Se você estiver interessado em aprender mais sobre aprendizado de máquina e Couchbase, aqui estão algumas etapas e recursos excelentes para você começar:

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Poonam Dhavale, engenheiro de software principal

Poonam Dhavale é engenheira de software principal da Couchbase. Ela tem mais de 20 anos de experiência em projeto e desenvolvimento de sistemas distribuídos, NoSQL, alta disponibilidade e tecnologias de armazenamento. Ela detém várias patentes em sistemas de armazenamento distribuído e possui certificações em aprendizado de máquina e ciência de dados.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.