Machine Learning para todos os perfis


Sempre que pensamos em Machine Learning, alguns algoritmos vêm à cabeça, como, Árvores de decisão, Classificação Naive Bayes, Regressão logística, Análise de componentes independentes, regressão linear, dentre outros. Junto com estes algoritmos também vem o pensamento sobre a dificuldade de se implementá-los, o que quase nos faz desistir de trabalhar com isso.

Pensando no desenvolvimento da aplicação e principalmente, no seu desenvolvimento como desenvolvedor, acreditamos que um dos cenários ideais é que você aprenda a tocar a matemática por trás desta tecnologia, entretanto, não vivemos em um mundo de CNTP e, assim, as vezes temos que fazer entregas rápidas e não temos muito tempo para nos aprofundar nos estudos.

Para ajudar a desenvolver aplicações com o uso de Machine Learning, temos uma ferramenta muito bacana chamada Machine Learning Studio.

Com o Machine Leanring Studio você consegue compilar, implementar e compartilhar suas soluções de análise preditiva, independentemente das suas habilidades como programador. Porém, quanto mais habilidades você tiver e quanto mais você entender dos conceitos matemáticos por trás, mais robusta será a sua solução.

Drag and Drop

Caso você não tenha muitas habilidades em codar, mas trabalhe com ciência de dados, o MLS pode te ajudar facilmente.

Aqui você consegue arrastar e soltar conjuntos de dados e módulos de análises em telas interativas. Depois de arrastar os conjuntos, você faz as interligações a fim de formar um experimento. Com isso pronto, você pode criar um modelo, treiná-lo, ajustar o score e testar. Depois do modelo pronto, você pode publicá-lo como um web service para que outras pessoas tenham acesso e enviem novos dados, ajudando outros profissionais e, consequentemente, melhorando a acuracidade da sua solução.

Um screenshot da tela do Azure Machine Learning Studio, contendo um gráfico de classificação binária e seus relacionamentos

Basicamente, este Drag and Drop segue o fluxo básico de desenvolvimento de uma aplicação baseada em Machine Learning.

Criação do modelo

  1. Obtenção dos dados;
  2. Preparação dos dados;
  3. Definição dos recursos.

Treinamento do modelo

  1. Escolha e aplicação de um algoritmo de aprendizado.

Score e teste

  1. Entrega de resultados.

Neste link você consegue seguir um tutorial básico dessa aplicação.

Desenvolvedores R ou Python

Caso você tenha familiaridade com desenvolvimento de algoritmos para machine learning, é possível utilizar seus algoritmos personalizados e escalá-los com o Machine Learning Studio.

Dentro da ferramenta, seus scripts são executados em um módulo chamado Execute R Script Module (se você estiver usando o R).

Um screenshot do Azure Machine Learning Studio demonstrando a relação entre um banco de dados e um script R. As propriedades do script aparecem a direita

Na imagem você pode observar:

  • Os módulos do teste são mostrados no painel central;
  • A parte superior do painel direito contém uma janela para exibir e editar seus scripts de R;
  • A parte inferior do painel direito mostra algumas propriedades de Execute R Script. Você pode exibir os logs de erro e de saída clicando nos pontos apropriados deste painel. (Lembre sempre de olhar os logs para visualizar se as saídas estão sendo as esperadas).

Para evitar surpresas, é interessante que você edite, teste e depure suas funções mais complexas no RStudio, assim, você pode estender seu código de forma incremental e fazer testes unitários.

Ou seja, para executar seus scripts personalizados, basta que você recorte e cole, ou até mesmo transferir seu código por meio de um arquivo zip.

Para carregar seu código e o conjunto de dados, basta executar as seguintes funções dentro do Execute Script R:

source(“src/yourfile.R”)

load(“src/yourData.rdata”)

Basicamente o caminho é:

  1. Salve o script R em um arquivo.R;
  2. Crie um arquivo zip e copie o script no arquivo zip;
  3. Adicione o arquivo aos conjuntos de dados no Machine Learning Studio, especificando o tipo como zip;
  4. Arraste e solte o arquivo zip dos conjuntos de dados para as telas do ML Studio;
  5. Conecte a saída do ícone dados de zip à entrada do Pacote de Scripts do módulo Executar Script R;
  6. Digite a função source() com o nome do arquivo zip na janela de código do módulo Execute Script R;
  7. Lembre-se de clicar em Salvar.
  8. Uma vez concluídas essas etapas, o Executar R Script Module executará o script R no arquivo zip quando o experimento for executado. Agora seu teste deve ser semelhante à seguinte imagem.

Um screenshot do relacionamento dentre um banco de dados csv, um banco de dados zip e um script R.

Depois de clicar em executar, você terá uma saída parecida com a seguinte

Um Screenshot do dashboard com os resultados obtidos após a aplicação do script R nos bancos de dados. Existem gráficos, números gerais e estatísticas.

Em seguida, você pode trabalhar com a filtragem de dados e sua transformação.

Conclusão

Vimos que o Machine Learning Studio é uma ferramenta que acelera e escala nossa aplicação, independentemente da nossa capacidade em codificar soluções. Entretanto, vimos também que quanto mais você sabe sobre desenvolvimento de scripts e quanto mais conhecimentos matemáticos sobre os algoritmos você tem, mais robusta será sua solução.

Fiquem a vontade para brincar com a ferramenta e testar suas soluções de Machine Learning.


Autor: Microsoft Tech