Recentemente, anunciamos o lançamento do
ML.NET 1.0 .
O ML.NET é uma estrutura de aprendizado de máquina gratuita, multiplataforma e aberta, projetada para aproveitar os recursos de aprendizado de máquina (ML) em aplicativos .NET.
github.com/dotnet/machinelearningInício:
dot.net/mlO ML.NET permite que você treine, crie e forneça modelos personalizados de aprendizado de máquina usando C # ou F # para cenários como análise de sentimentos, classificação de problemas, previsão, recomendações e muitos outros. Você pode verificar esses cenários e tarefas comuns em nosso
repositório de amostra ML.NET de amostra .
O ML.NET foi originalmente desenvolvido como parte da Pesquisa da Microsoft, mas posteriormente se transformou em uma estrutura significativa usada por muitos produtos da Microsoft, como Windows Defender, Microsoft Office (idéias de design no PowerPoint, diagramas recomendados no Excel), Aprendizado de Máquina do Azure, visualização dos principais fatores influências no PowerBI e assim por diante!
Desde o seu lançamento, o ML.NET tem sido usado por muitas organizações, como
SigParser (detecção de spam no e-mail) ,
William Mullens (classificação de questões legais) e
Evolution Software (determinação da umidade das avelãs) . Você pode seguir o caminho dessas e de muitas outras organizações que usam o ML.NET em nosso
ML.NET Customer Showcas . Os clientes apresentados nos dizem que a facilidade de uso do ML.NET, a capacidade de reutilizar suas habilidades .NET e a preservação total de sua pilha técnica no .NET são os principais drivers para o uso do ML.NET.
Juntamente com o lançamento do ML.NET 1.0, também estamos adicionando novos recursos de visualização, como o Aprendizado Automático de Máquina (AutoML), e novas ferramentas, como o ML.NET CLI e o ML.NET Model Builder, o que significa adicionar modelos de aprendizado de máquina ao Seus aplicativos agora são realizados apenas com o botão direito do mouse!

O restante deste post é dedicado a esse novo experimento.
- Componentes principais do ML.NET
- Aprendizado de máquina automatizado (visualização)
- Construtor de modelos ML.NET (visualização)
- CLI do ML.NET (visualização)
- Introdução ao ML.NET
- Caminho à frente
Componentes principais do ML.NET
O ML.NET visa fornecer o fluxo de trabalho final para o uso de aplicativos ML em .NET em vários estágios do aprendizado de máquina (pré-processamento, design de recursos, modelagem, avaliação e comissionamento). O ML.NET 1.0 fornece os seguintes componentes principais:
- Apresentação dos dados
- Tipos de dados fundamentais do pipeline de dados ML, como IDataView (é um tipo fundamental de pipeline de dados)
- Leitores para suportar a leitura de dados de arquivos de texto delimitados ou objetos IEnumerable
- Suporte para tarefas de aprendizado de máquina:
- Classificação binária
- Classificação Multiclasse
- Regressão
- Ranking
- Detecção de anomalias
- Agrupamento
- Recomendação (pré-visualização)
- Transformação e caracterização de dados
- Text
- Categorias
- Seleção de recursos
- Normalização e processamento de valores ausentes
- Caracterização da imagem
- Séries temporais (visualização)
- Suporte para integração dos modelos ONNX e TensorFlow (visualização)
- Outros
- Modelo de entendimento e explicabilidade
- Transformações customizadas definidas pelo usuário
- Tabela de operação
- Suporte para manipulação de conjuntos de dados e validação cruzada
Aprendizado de máquina automatizado (visualização)
A introdução ao aprendizado de máquina hoje inclui uma curva acentuada de aprendizado. Ao criar modelos personalizados de aprendizado de máquina, você precisa descobrir qual tarefa de aprendizado de máquina escolher para o seu cenário (por exemplo, classificação ou regressão?), Como converter os dados em um formato que os algoritmos de ML possam entender (por exemplo, dados de texto -> vetores numéricos) e ajuste esses algoritmos de ML para obter o melhor desempenho. Se você é novo no ML, cada uma dessas etapas pode ser bastante difícil!
O Machine Learning automatizado simplifica sua jornada com o ML, descobrindo automaticamente como converter seus dados de entrada e escolhendo o melhor algoritmo de ML com as configurações corretas, facilitando a criação dos melhores modelos de ML personalizados da sua classe.
O suporte ao AutoML no ML.NET agora está no modo de visualização, e atualmente suportamos apenas as principais tarefas do ML - regressão (usada para scripts como a Previsão de preço) e classificação (usada para scripts como Análise de sentimentos, Classificação de documentos, Detecção de spam, etc.).
Você pode experimentar o AutoML no ML.NET de três formas: usando o ML.NET Model Builder, o ML.NET CLI ou usando a API do AutoML diretamente (
exemplos podem ser encontrados aqui ).
Para iniciantes no aprendizado de máquina, recomendamos começar com o ML.NET Model Builder no Visual Studio e a CLI do ML.NET em qualquer plataforma. A API do AutoML também é muito útil para scripts nos quais você deseja criar modelos em tempo real.
Construtor de modelos (visualização)
Para simplificar o caminho para os desenvolvedores .NET criarem modelos ML, também temos o prazer de apresentar o ML.NET Model Builder. Com o ML.NET Model Builder, a adição de aprendizado de máquina a seus aplicativos agora é feita com apenas um clique!
O Model Builder é uma ferramenta de interface do usuário simples para desenvolvedores que usam o AutoML para criar os melhores modelos de ML da classe usando o conjunto de dados fornecido. Além disso, o Model Builder também gera código de treinamento e consumo de modelo para o modelo mais eficiente, o que permite adicionar rapidamente ML a um aplicativo existente.
Saiba mais sobre o ML.NET Model BuilderO Model Builder está atualmente no primeiro modo, e gostaríamos que você o experimentasse e compartilhasse sua opinião conosco!
CLI do ML.NET (visualização)
O ML.NET CLI (interface da linha de comandos) é outra nova ferramenta que apresentamos!
O ML.NET CLI é uma ferramenta dotnet que permite gerar modelos ML.NET usando o AutoML e o ML.NET. O CLI do ML.NET também itera rapidamente seu conjunto de dados para uma tarefa específica do ML (atualmente suporta regressão e classificação) e cria o melhor modelo.
A CLI, além de criar o melhor modelo, também permite que os usuários gerem treinamento e código de consumo de modelo para criar o modelo mais eficiente.
O ML.NET CLI é um complemento simples e multiplataforma para o .NET CLI. A propósito, a extensão Model Builder para o Visual Studio também usa a CLI do ML.NET para fornecer recursos.
Você pode instalar a CLI do ML.NET através deste comando:
dotnet tool install -g mlnet
A imagem gif abaixo mostra a CLI do ML.NET que cria o conjunto de dados para análise de sentimentos.
Saiba mais sobre o ML.NET CLIO CLI do ML.NET também está no primeiro modo agora, e gostaríamos que você o experimentasse e compartilhasse sua opinião conosco!
Comece agora!
Se você ainda não o fez, saiba: começar com o ML.NET é fácil e você pode fazê-lo em apenas algumas etapas simples, como mostrado abaixo. A amostra abaixo
mostra como a análise de sentimentos pode ser realizada usando o ML.NET .
Você também pode explorar vários outros recursos educacionais, como
tutoriais, recursos para amostras do ML.NET e ML.NET, demonstrando cenários populares, como recomendação de produtos, detecção de anomalias e muitos outros.
O que acontecerá a seguir no ML.NET
Embora tenhamos muito prazer em lançar o ML.NET 1.0, nossa equipe já está trabalhando duro para incluir os seguintes recursos após o lançamento do 1.0:
- AutoML para scripts ML opcionais
- Suporte aprimorado a scripts de Deep Learning
- Suporte para outras fontes adicionais, como SQL Server, CosmosDB, armazenamento de Blob do Azure, etc.
- Dimensionamento do Azure para treinamento e consumo de modelos
- Suporte para scripts adicionais e recursos de ML ao usar o Model Builder e a CLI
- Integração nativa para aprendizado de máquina baseado em escala com .NET para Apache Spark e ML.NET
- Novos tipos de ML no .NET, por exemplo, DataFrame