Já pensou em utilizar uma ferramenta que automatiza todo o processo de construção, treinamento e até mesmo validação de modelos de machine learning?
Todas essas etapas são feitas de maneira rápida, eficiente e, acredite, sem necessidade de construção de códigos. Então, venha conosco aprender a utilizar o H2O Flow.
Eu sou a Mirla Costa, instrutora aqui na Alura, e vou te acompanhar ao longo deste curso!
Audiodescrição: Mirla se descreve como uma pessoa branca de cabelo cacheado e preto amarrado em um coque, olhos pretos e sobrancelhas pretas. Ela usa óculos de grau de armação redonda preta e veste uma camiseta verde. Ao fundo, uma parede iluminada em gradiente de azul e rosa, com duas prateleiras com livros e enfeites, uma à direita e outra à esquerda.
Durante o projeto, atuaremos como cientistas de dados no banco Bytebank, um banco online. Precisamos desenvolver rapidamente um modelo de machine learning capaz de detectar fraudes, pois essa é uma demanda urgente.
Para fazer isso, vamos aprender a utilizar o H2O Flow, uma ferramenta criada pela H2O.ai, para criar, treinar e desenvolver modelos de machine learning de forma automática.
Para que você aproveite ao máximo este curso, recomendamos que tenha conhecimento em Python, com foco na biblioteca Pandas, para conseguirmos preparar os dados.
Além disso, é importante ter, pelo menos, um conhecimento básico de machine learning com foco em algoritmos de classificação.
Tudo pronto para começar?
Trabalhamos na equipe de dados de um banco online chamado Bytebank. Recentemente, foram identificadas diversas reclamações de fraudes entre transações financeiras no nosso banco.
Para evitar perder clientes e lucro financeiro, nossa liderança solicitou que criássemos um novo modelo de machine learning, baseado em árvores, capaz de detectar efetivamente essas fraudes.
Simultaneamente a essa demanda, foi pedido que desenvolvêssemos esse modelo com uma certa urgência, devido aos prejuízos já sofridos pelo banco. Então, recebemos os dados da equipe e esses dados devem ser utilizados para treinar e avaliar o modelo que vamos construir.
Você pode fazer o download desses dados em um arquivo CSV nas atividades deste curso.
Precisamos entender como esses dados estão estruturados antes de enviá-los para um modelo de machine learning, pois nem todo formato de dado pode ser enviado para um modelo.
Para ter essa certeza, vamos verificar os dados no ambiente Python que é o Google Colab, ferramenta que utilizaremos para essa verificação.
Com o Google Colab aberto, vamos nos preparar para fazer o upload do arquivo. Para isso, na barra lateral esquerda, selecionamos o botão "Arquivos", que é um ícone de pasta.
No nosso caso, o ambiente já está conectado. Caso o seu ainda não esteja, conecte-o antes de inserir o arquivo. Podemos fazer o upload do arquivo CSV que acabamos de receber da equipe de dados.
Para fazer isso, clicamos no primeiro botão, intitulado "Fazer upload para o armazenamento da sessão" e representado por um papel com uma seta para cima. Após clicar nele, selecionamos o arquivo que vamos importar. No caso, é o arquivo data_fraude_banco.csv
.
Finalizado o upload, fechamos a aba "Arquivos" e agora podemos utilizar a biblioteca Pandas do Python, que é muito eficaz para importar e trabalhar com os dados, principalmente em arquivos CSV.
Vamos importar essa biblioteca no Google Colab com o comando abaixo:
import pandas as pd
Agora vamos importar nossos dados para um dataframe que vamos chamar de df
, então, inserimos df = pd.read_csv()
. Feito isso, vamos abrir novamente a aba "Arquivo".
À direita do arquivo data_fraude_banco.csv
, vamos clicar nos três pontos e selecionar a opção "Copiar caminho". Depois, entre os parênteses do método read_csv()
, colamos entre aspas simples o caminho do arquivo. Por fim, inserimos df
na linha abaixo para visualizar esse dataframe.
df = pd.read_csv('/content/drive/MyDrive/Alura/data_fraude_banco.csv')
df
Visualização dos cinco primeiros registros da tabela. Para visualizá-la na íntegra, execute o comando na sua máquina.
# | passo | valor | antigo_saldo_pessoa1 | novo_saldo_pessoa1 | antigo_saldo_pessoa2 | novo_saldo_pessoa2 | tipo_transacao | fraude |
---|---|---|---|---|---|---|---|---|
0 | 1 | 181.00 | 181.00 | 0.0 | 0.00 | 0.00 | transferencia | 1 |
1 | 1 | 181.00 | 181.00 | 0.0 | 21182.00 | 0.00 | saque | 1 |
2 | 1 | 2806.00 | 2806.00 | 0.0 | 0.00 | 0.00 | transferencia | 1 |
3 | 1 | 2806.00 | 2806.00 | 0.0 | 26202.00 | 0.00 | saque | 1 |
4 | 1 | 20128.00 | 20128.00 | 0.0 | 0.00 | 0.00 | transferencia | 1 |
Conseguimos ter uma visualização resumida dos dados e observamos quais são as colunas do dataframe. Temos as colunas passo
, valor
, antigo_saldo_pessoa1
, novo_saldo_pessoa1
, antigo_saldo_pessoa2
, novo_saldo_pessoa2
, tipo_transacao
, e fraude
, sendo esta a coluna-alvo.
Para saber o que representa cada uma dessas colunas, deixamos o dicionário de dados na atividade desse curso. Recomendamos que você verifique!
Como cientistas de dados, sabemos que para os dados serem enviados para o modelo de machine learning, eles precisam estar estruturados em um formato tabular, onde cada linha representa uma amostra, uma observação, e cada coluna representa uma característica dessa observação.
Porém, também sabemos que dentro dessas características, é importante existirem valores numéricos, pois é assim que a máquina e, consequentemente, o modelo, vão entender esses dados, encontrar um padrão para eles, e assim por diante.
Identificamos nos nossos dados uma coluna chamada tipo_transacao
, e nessa coluna, temos vários dados categóricos em formato de texto. Não podemos levar os dados dessa forma para o modelo, precisaremos transformá-los para o numérico. Uma técnica muito utilizada para isso é a OneHotEncoder
, que vai transformar os dados textuais em dados numéricos.
Conseguimos fazer isso utilizando o método get_dummies()
. Vamos aplicá-lo ao nosso dataframe. Então, inserimos df = pd.get_dummies(df)
. Na linha abaixo, vamos adicionar df
para visualizar.
df = pd.get_dummies(df)
df
Visualização dos cinco primeiros registros da tabela. Para visualizá-la na íntegra, execute o comando na sua máquina.
# | passo | valor | antigo_saldo_pessoa1 | novo_saldo_pessoa1 | antigo_saldo_pessoa2 | novo_saldo_pessoa2 | fraude | tipo_transacao_debito | tipo_transacao_deposito | tipo_transacao_pagamento | tipo_transacao_saque | tipo_transacao_transferencia |
---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 1 | 181.00 | 181.00 | 0.0 | 0.00 | 0.00 | 1 | 0 | 0 | 0 | 0 | 1 |
1 | 1 | 181.00 | 181.00 | 0.0 | 21182.00 | 0.00 | 1 | 0 | 0 | 0 | 1 | 0 |
2 | 1 | 2806.00 | 2806.00 | 0.0 | 0.00 | 0.00 | 1 | 0 | 0 | 0 | 0 | 1 |
3 | 1 | 2806.00 | 2806.00 | 0.0 | 26202.00 | 0.00 | 1 | 0 | 0 | 0 | 1 | 0 |
4 | 1 | 20128.00 | 20128.00 | 0.0 | 0.00 | 0.00 | 1 | 0 | 0 | 0 | 0 | 1 |
Agora, temos todas as colunas numéricas no dataframe. Essa é a única transformação que precisamos fazer no dataframe para poder utilizar os dados e aplicá-los no modelo de machine learning.
O próximo passo é transformar o dataframe em um arquivo CSV para fazer o download dele. Em uma nova célula, vamos inserir df.to_csv()
, método que vai permitir criar um novo arquivo CSV com base nesse dataframe. Entre parênteses, vamos colocar o nome do arquivo inicialmente, dados_fraude_numerico.csv
.
Feito isso, inserimos uma vírgula e definimos o parâmetro index
como False
. Isso vai permitir que a coluna index
do Pandas, que tem 0, 1, 2, 3 como índices das linhas, não se transforme em uma coluna.
df.to_csv('dados_fraude_numerico.csv', index=False)
Após executar essa célula com "Shift + Enter", abrimos novamente a aba "Arquivos" e já temos o novo arquivo CSV (dados_fraude_numerico.csv
).
Para fazer o download, clicamos nos três pontos e selecionamos a opção "Fazer download". Vamos fazer esse download para aplicar um modelo de machine learning nele.
Nossa liderança nos informou que precisamos construir esse modelo com velocidade. Para isso, sugeriram utilizar uma ferramenta do H2O.ai.
Vamos conhecer essa ferramenta no próximo vídeo!
Devido à urgência da nossa demanda, a liderança sugeriu que utilizássemos uma ferramenta desenvolvida pela H2O.ai. Essa organização é renomada por criar ferramentas e produtos que aceleram a produtividade em projetos na área de ciência de dados, inclusive integrando inteligência artificial.
A sugestão foi utilizar o H2O Flow, uma interface da H2O.ai que facilita a construção, o treinamento, a validação e até a implantação de modelos de aprendizado de máquina.
Para acessar essa ferramenta, precisamos primeiro baixá-la e instalá-la. Precisamos acessar o site que permite o download dessa interface.
Primeiro, vamos clicar no botão de download do H2O Flow, na aba "Download and Run". O arquivo vem em um formato compactado (.zip
). Enquanto fazemos o download, precisamos verificar qual é a versão Java instalada na nossa máquina. O Java é necessário para executar essa interface.
Para verificar a versão do Java, vamos digitar cmd
no prompt de comando do Windows e, em seguida, executar java -version
no terminal.
java -version
Se o Java não estiver instalado, precisaremos fazer o download do Java, especificamente da versão 17, pré-requisito para usar o H2O Flow. Caso você utilize uma versão diferente, recomendamos atualizar.
Após o download do Java através do instalador no arquivo .exe
, vamos extrair o arquivo .zip
do H2O Flow. Dentro do arquivo extraído, vamos procurar o arquivo h2o.jar
e copiar o caminho completo dele.
Com o caminho copiado, vamos voltar ao prompt de comando e navegar até o diretório do arquivo h2o.jar
utilizando o comando cd
seguido do caminho.
cd C:\Users\Mirla\Desktop\Bytebank - projeto de fraude\h2o-3.44.0.1
Em seguida, vamos executar o arquivo h2o.jar
com o comando abaixo:
java -jar h2o.jar
Para acessar a interface do H2O Flow, precisamos acessar o endereço "http://localhost:54321" no navegador. A interface possui diversas abas e funções, que serão exploradas ao longo do curso.
Em resumo, temos uma aba lateral à direita onde são exibidas as saídas (outline), os flows que salvamos localmente, os clips onde salvamos códigos ou textos para inserir em células, e uma categoria "HELP" que traz documentações e explicações simples sobre o H2O Flow.
Também há um menu superior, composto pelas opções:
- "Flow", onde fazemos ações sobre arquivos;
- "Cell", onde encontramos comandos que envolvem as células;
- "Data", onde conseguimos importar arquivos, listar frames, entre outras ações;
- "Model", que traz várias funções de criação de modelos de machine learning;
- "Score", que traz opções sobre previsões;
- "Admin", onde fazemos funções de administrador;
- E "Help", com documentações e assistências.
Outro ponto interessante é que conseguimos mudar o nome do flow. Vamos começar criando um novo flow que chamaremos de Fraude-banco
. Para salvar o nome, clicamos no ícone de verificação à direita do campo.
Abaixo do título, temos diversos botões de ação que se referem às ações que encontramos no menu superior. Para salvar o flow, clicamos em "Flow" no menu superior e depois em "Save Flow".
Com a instalação do H2O Flow concluída, podemos iniciar nosso projeto!
O curso H2O Flow: otimizando a produção de modelos ML possui 100 minutos de vídeos, em um total de 44 atividades. Gostou? Conheça nossos outros cursos de IA para Dados em Inteligência Artificial, ou leia nossos artigos de Inteligência Artificial.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.