Quais foram os anúncios sobre Machine Learning com .NET no Microsoft Build 2019?

Sérgio Prates
May 21 · 3 min read

Do dia 06/05 até o dia 08/05 aconteceu um dos principais eventos da microsoft, o Microsoft Build, onde são anunciadas diversas novidades do mundo microsoft para desenvolvedores.

Foram anunciadas diversas funcionalidades novas no azure, na plataforma .NET, .NET 5 e etc.

Entre elas, foi anunciada a versão 1.0 do ML.NET que estava até então na versão 1.0 preview.

O que é o ML.NET?

ML.NET é um framework para machine learning desenvolvido pela Microsoft para aproximar desenvolvedores .NET de soluções de inteligência artificial.

O foco é não precisar de conhecimentos em linguagens diferentes da plataforma .NET para desenvolver o fluxo de machine learning, como python, R e outras.

Antes do ML.NET já existiam outros frameworks para este tipo de tarefa, como o Accord.NET por exemplo, mas o legal do ML.NET é a facilidade de utilizar algorítimos de IA em nossas Web APIs, Consoles, Functions e etc, sem ter tanto conhecimento de algoritmos de machine learning.

O que há de novo no ML.NET?

As versões anteriores do ML.NET eram bastante limitadas, sendo que não tinham tantos modelos disponíveis e existiam alguns erros no momento de carregar arquivos que continham textos com aspas por exemplo.

Nessa versão, podemos ver que esse problema do carregamento do arquivo foi corrigido e também temos muito mais modelos disponíveis para utilizar.

Nessa versão os principais anúncios foram:

  • Modelos de recomendação (preview)
  • Séries temporais (preview)
  • Suporte para integração de modelos do Tensor Flow e ONNX (preview)
  • Auto ML com suporte para regressão e classificação (preview)
  • Model builder (preview)
  • ML.NET CLI (preview)

Model Builder

Com o Model Builder, podemos fazer machine learning no formato “next, next, finish”. O interessante é que no Visual Studio 2019 podemos baixar a extensão ML.NET Model Builder, clicar com o botão direito em um console por exemplo, adicionar machine learning, seguir os passos do Builder e ele encontra para nós qual o melhor modelo, além de gerar um código de exemplo para utilizarmos em nossas aplicações. Veja o gif abaixo:

Mágico né? Veja que quando você tem que dizer o que quer fazer, ele separa em predição, classificação e cenário customizado de forma que facilita o entendimento do desenvolvedor.

ML.NET CLI

O CLI desenvolvido para o ML.NET atualmente é semelhante ao Model Builder, só que agora é para quem gosta de linha de comando, isso pode ser legal para automatizar tarefas.

Para utilizar o CLI, você deve instalar como uma ferramenta do dotnet:

dotnet tool install -g mlnet

Veja no gif que rodamos o comando direto no console especificando a coluna que queremos que o modelo resolva (sentiment_label), o tipo de tarefa (classificação), o nome do dataset, o tempo máximo de exploração e que queremos o auto-treino.

No fim, o resultado que ele nos dá é semelhante ao model builder, com os dados de qual foi o melhor modelo e um código de exemplo para podermos utilizar em nossas aplicações.

E sobre o futuro?

Segundo o anúncio da microsoft, o que eles estão mirando para o futuro é:

  • Cenários adicionais de AutoML;
  • Aprimorar o suporte para cenários de deep learning;
  • Suporte para outras fontes de dados como SQL Server, CosmosDB, Azure Blob Storage e mais;
  • Expansão no azure para treinamento e consumo de modelos;
  • Suporte para cenários e funcionalidades adicionais de ML quando estiver usando o Model Builder e o CLI;
  • Integração nativa para machine learning em escala com .NET for Spark e ML.NET;
  • Novos tipos para ML como por exemplo DataFrame;

Em breve colocarei alguns exemplos que tenho com ML.NET, mas deixarei para outro post.

Links:

Sérgio Prates

Written by

Software Engineer, Microsoft Certified Solutions Developer (MCSD), Solutions Associate (MCSA), Certified Professional (MCP), Technical Writer and Speaker

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade