Weka - Seleção de recursos

Quando um banco de dados contém um grande número de atributos, haverá vários atributos que não se tornarão significativos na análise que você está procurando no momento. Portanto, remover os atributos indesejados do conjunto de dados torna-se uma tarefa importante no desenvolvimento de um bom modelo de aprendizado de máquina.

Você pode examinar todo o conjunto de dados visualmente e decidir sobre os atributos irrelevantes. Isso pode ser uma tarefa enorme para bancos de dados que contêm um grande número de atributos, como a caixa do supermercado que você viu na lição anterior. Felizmente, o WEKA oferece uma ferramenta automatizada para seleção de recursos.

Este capítulo demonstra esse recurso em um banco de dados que contém um grande número de atributos.

Carregando dados

No Preprocess tag do WEKA explorer, selecione o labor.arffarquivo para carregar no sistema. Ao carregar os dados, você verá a seguinte tela -

Observe que existem 17 atributos. Nossa tarefa é criar um conjunto de dados reduzido, eliminando alguns dos atributos que são irrelevantes para nossa análise.

Extração de recursos

Clique no Select attributesTAB. Você verá a seguinte tela -

Debaixo de Attribute Evaluator e Search Method, você encontrará várias opções. Usaremos apenas os padrões aqui. NoAttribute Selection Mode, use a opção de conjunto de treinamento completo.

Clique no botão Iniciar para processar o conjunto de dados. Você verá a seguinte saída -

Na parte inferior da janela de resultados, você obterá a lista de Selectedatributos. Para obter a representação visual, clique com o botão direito no resultado noResult Lista.

O resultado é mostrado na seguinte captura de tela -

Clicar em qualquer um dos quadrados fornecerá o gráfico de dados para sua análise posterior. Um gráfico de dados típico é mostrado abaixo -

Isso é semelhante ao que vimos nos capítulos anteriores. Brinque com as diferentes opções disponíveis para analisar os resultados.

Qual é o próximo?

Você viu até agora o poder do WEKA no desenvolvimento rápido de modelos de aprendizado de máquina. O que usamos é uma ferramenta gráfica chamadaExplorerpara o desenvolvimento desses modelos. O WEKA também fornece uma interface de linha de comando que oferece mais potência do que a fornecida no explorer.

Clicando no Simple CLI botão no GUI Chooser aplicativo inicia esta interface de linha de comando que é mostrada na imagem abaixo -

Digite seus comandos na caixa de entrada na parte inferior. Você poderá fazer tudo o que fez até agora no explorer e muito mais. Consulte a documentação do WEKA (https://www.cs.waikato.ac.nz/ml/weka/documentation.html) para obter mais detalhes.

Por último, o WEKA é desenvolvido em Java e fornece uma interface para sua API. Portanto, se você é um desenvolvedor Java e deseja incluir implementações WEKA ML em seus próprios projetos Java, pode fazer isso facilmente.

Conclusão

WEKA é uma ferramenta poderosa para desenvolver modelos de aprendizado de máquina. Ele fornece implementação de vários algoritmos de ML mais amplamente usados. Antes que esses algoritmos sejam aplicados ao seu conjunto de dados, ele também permite que você pré-processe os dados. Os tipos de algoritmos suportados são classificados em atributos Classify, Cluster, Associate e Select. O resultado em vários estágios de processamento pode ser visualizado com uma bela e poderosa representação visual. Isso torna mais fácil para um cientista de dados aplicar rapidamente as várias técnicas de aprendizado de máquina em seu conjunto de dados, comparar os resultados e criar o melhor modelo para o uso final.