Simplificando a utilização de algoritmos de Feature Engineering com a Tail Refinaria

Simplificando a utilização de algoritmos de Feature Engineering com a Tail Refinaria
20

No artigo anterior, mostramos como criar pipelines interativos, também conhecidos como notebooks de Data Science, para ler dados do Data Lake e transformá-los usando Spark SQL. O pipeline é composto por células que podem ser executadas durante a fase de experimentação em um cluster Apache Spark para que se obtenha feedback instantâneo de como nossos experimentos estão se comportando.

Aplicar algoritmos de feature engineering aos dados antes de submetê-los aos algoritmos de machine learning para serem treinados é um passo importante em todo projeto de Ciência de Dados.

A Tail Refinaria disponibiliza os algoritmos de feature engineering disponíveis na biblioteca Apache Spark MLLib para tornar mais fácil encadear diversas transformações de feature engineering, como parte do processo de construção do modelo. Essas mesmas transformações serão aplicadas aos dados reais quando o modelo for executado para obtenção de predições. 

 

Veja como funciona:

 

1- Começamos adicionando uma célula de Machine Learning ao pipeline que criamos no artigo anterior.

A célula de Machine Learning pode operar em modo de Treino ou Predição. O modo de treino é usado para treinar modelos de Machine Learning. O modo de predição é usado para executar um modelo já treinado sobre um conjunto de dados.

1- Nós começamos a configuração da célula escolhendo um conjunto de dados sobre os quais iremos executar os testes do modelo treinado. Neste exemplo, escolhemos o próprio conjunto de dados usado no treino, mas poderíamos escolher outro.

 

2- Depois, escolhemos um algoritmo de feature engineering para aplicar. Neste exemplo, escolhemos o Vector Assembler para combinar várias colunas em apenas uma coluna. Esta coluna resultante da aplicação do algoritmo de feature engineering será usada pelo algoritmo de machine learning posteriormente.

 

3- Depois, nós precisamos configurar o método de feature engineering que selecionamos, escolhendo as colunas de entrada que devem ser combinadas e a coluna de saída que será gerada:

 

 

4- Agora que adicionamos um estágio de feature engineering, nós podemos executá-lo para verificar se o resultado é o que precisamos: 

 

A partir desse ponto, nós podemos adicionar vários outros estágios, combinando diferentes técnicas de feature engineering. Estes estágios serão executados mais tarde quando o modelo gerado for executado.

No próximo artigo, vamos mostrar como nós usamos a célula de machine learning para treinar um modelo e implantá-lo em produção.

 

Esse post faz parte de uma série de conteúdos sobre Refinaria de Dados.

Confira todos os conteúdos:

Post 1: Tail Refinaria – Resolvendo os problemas da Engenharia de Dados

Post 2: Machine Learning com a Tail Refinaria

Post 3: Acesso fácil a dados de treino para construção de modelos de Machine Learning com a Tail Refinaria

Post 4: Simplificando a utilização de algoritmos de Feature Engineering com a Tail Refinaria

Post 5: Treinando e implantando um modelo de Machine Learning com a Tail Refinaria

Post 6: Usando Notebooks de Ciência de Dados para Treino e Implantação de Modelos de Machine Learning

Post 7: Precisamos falar sobre Model Lineage

Post escrito por Fabiane Bizinella Nardon (@fabianenardon), Cientista Chefe da Tail. Com mestrado em Ciência da Computação e Doutorado em Engenharia Elétrica, é especialista em Engenharia de Dados e Engenharia de Machine Learning. É também responsável pelo conteúdo editorial da trilha de Engenharia de Machine Learning do QCon São Paulo, palestrante frequente sobre o tema e autora de diversos artigos. Fabiane também foi escolhida Java Champion pela Sun Microsystems, como reconhecimento de sua contribuição para o ecossistema Java.