Free Trial

Base de conhecimento

Comparando Modelos Preditivos de Machine Learning no Alteryx

Thableaus
17 - Castor
17 - Castor
Created

 

Por vezes, precisamos utilizar algoritmos de predição em um conjunto de dados, mas não temos ideia de qual se encaixa melhor para prever o resultado final. Esse tipo de análise pode consumir tempo quando você está fazendo via código (R ou Python, por exemplo).


Felizmente, com o Alteryx, basta apenas arrastar algumas ferramentas para que se possa comparar a acurácia e gerar a matriz de confusão para cada modelo. Vamos ver como podemos tornar essa tarefa árdua em algo tão simples e rápido de se fazer.


Primeiramente, uma das maneiras para trabalhar com análise de modelos preditivos no Alteryx é baixando o pacote de ferramentas preditivas. Ele está disponível no portal de downloads, ao clicar em qualquer versão do Alteryx Designer – (detalhe, ele é gratuito se você possui o Alteryx Designer). Sim – o nome do arquivo é RInstaller, pois se instala também uma versão do R na sua máquina (todas as ferramentas da aba preditiva usam o R por trás delas).


Um método alternativo é clicar no menu de Opções, caso você ainda não tenha instalado o pacote, este aparecerá como a última opção neste menu.

Thableaus_9-1622773819248.png

 

Também é necessário acessar a Galeria Pública do Alteryx e baixar separadamente a ferramenta Model Comparison – ela é uma macro que fará o processo de comparação dos modelos. Você a encontra ao acessar a galeria e clicar em Districts (Distritos), selecionando Predictive District (Distrito Preditivo). Ou diretamente neste link. Lembre-se que é necessário clicar em "DOWNLOAD" para baixá-la.

Thableaus_10-1622773819264.png

 

Feito isso, para este exemplo utilizaremos o Iris dataset, tão famoso e escolhido por muitos para se explicar exemplos no R. Você pode fazer o download aqui. Este dataset vem em formato .CSV (formato de texto), portanto, ao trazê-lo para o Alteryx, a primeira coisa que temos que fazer é adicionar uma Auto-Field tool, de maneira que auto ajustamos os tipos de dados para cada coluna (o que é numérico vira numérico, etc.).

Thableaus_11-1622773819279.png

 

Como este dataset já vem limpo, não iremos abordar técnicas de tratamento de dados para modelos preditivos. Este é um assunto a parte. A próxima ferramenta a ser adicionada é a Create Samples. Nela dividiremos o nosso dataset em 70% de treino e 30% de validação. O dataset de treino será utilizado para construção do modelo, e o de validação será usado para testar a eficácia dos modelos.

Thableaus_12-1622773819295.png

 


O próximo passo é adicionar os modelos. Neste exemplo serão comparados 3 modelos de classificação multinomial – Support Vector Machine (SVM), Naive Bayes e Decision Tree (árvore de decisão). Iremos ter como variável alvo a espécie (Species) e todas outras variáveis numéricas como preditoras. A configuração é basicamente a mesma para todos os modelos (deixamos o padrão para outras eventuais configurações). Todos eles estão na aba Preditiva, caso você tenha instalado o pacote de ferramentas preditivas.

Thableaus_13-1622773819312.png

 

Feito isso, cada modelo gerará um objeto, e estes objetos devem ser unidos (empilhados) em uma tabela utilizando a Union Tool.

Thableaus_14-1622773819326.png

 

Agora é hora de adicionar a Model Comparison macro! Colocamos o resultado da união dos modelos na entrada M, e puxamos o conjunto de validação para testar os modelos utilizados na entrada D. Adicionamos Browse Tool para ver o resultado e voilà! Temos os resultados que queremos na saída R.

Thableaus_15-1622773819353.png

 

Thableaus_16-1622773819379.png

 

Thableaus_17-1622773819410.png

 

Como pode-se perceber, a primeira tabela traz a acurácia de cada modelo em geral e também a acurácia para prever com exatidão cada possível resultado da variável alvo. Logo abaixo, há também a matriz de confusão de cada modelo para se realizar a comparação de registros que foram previstos de maneira correta. SVM trouxe uma acurácia maior no geral em comparação com os outros dois.

 

Nota-se que com poucos passos é possível enxergar insights valiosos na hora de realizar análise preditiva com o Alteryx. A customização e interpretação de cada caso obviamente irá variar, mas de fato essa solução economiza muito tempo de desenvolvimento de código. Para se ter uma ideia, esse fluxo roda em 12.5 segundos!


O fluxo utilizado nesse caso está neste link. Deixe seu comentário caso tenha dúvidas.
Até a próxima!

Comentários
lucacal
Átomo

Excelente, muito obrigado por compartilhar! Por mais materiais deste tipo...rs. Abraços!

Axle
Átomo

everything was great

sireeshagandam
Asteroide

Good

Contribudores
Rótulos