Modelo de aprendizado de máquina no Microsoft Fabric

Um modelo de aprendizado de máquina é um arquivo treinado para reconhecer certos tipos de padrões. Você treina um modelo sobre um conjunto de dados e fornece a ele um algoritmo que usa para raciocinar e aprender com esse conjunto de dados. Depois de treinar o modelo, você pode usá-lo para raciocinar sobre dados que nunca viu antes e fazer previsões sobre esses dados.

No MLflow, um modelo de aprendizado de máquina pode incluir várias versões de modelo. Aqui, cada versão pode representar uma iteração de modelo. Neste artigo, você aprenderá a interagir com modelos de ML para controlar e comparar versões de modelos.

Criar um modelo de aprendizagem automática

No MLflow, os modelos de aprendizado de máquina incluem um formato de empacotamento padrão. Este formato permite o uso desses modelos em várias ferramentas downstream, incluindo inferência em lote no Apache Spark. O formato define uma convenção para salvar um modelo em diferentes "sabores" que diferentes ferramentas a jusante podem entender.

Você pode criar diretamente um modelo de aprendizado de máquina a partir da interface do usuário do Fabric. A API MLflow também pode criar diretamente o modelo.

Para criar um modelo de aprendizado de máquina a partir da interface do usuário, você pode:

  1. Crie um novo espaço de trabalho de ciência de dados ou selecione um espaço de trabalho de ciência de dados existente.

  2. Na lista suspensa + Novo, selecione Modelo para criar um modelo vazio em seu espaço de trabalho de ciência de dados.

    Screenshot showing the New drop-down menu.

  3. Após a criação do modelo, você pode começar a adicionar versões do modelo para controlar métricas e parâmetros de execução. Registre ou salve execuções de experimento em um modelo existente.

Você também pode criar um experimento de aprendizado de máquina diretamente de sua experiência de criação com a mlflow.register_model() API. Se um modelo de aprendizado de máquina registrado com o nome fornecido não existir, a API o criará automaticamente.

import mlflow

model_uri = "runs:/{}/model-uri-name".format(run.info.run_id)
mv = mlflow.register_model(model_uri, "model-name")

print("Name: {}".format(mv.name))
print("Version: {}".format(mv.version))

Gerenciar versões dentro de um modelo de aprendizado de máquina

Um modelo de aprendizado de máquina contém uma coleção de versões de modelo para rastreamento e comparação simplificados. Dentro de um modelo, um cientista de dados pode navegar por várias versões do modelo para explorar os parâmetros e métricas subjacentes. Os cientistas de dados também podem fazer comparações entre versões de modelos para identificar se modelos mais recentes podem ou não produzir melhores resultados.

Rastreie modelos de aprendizado de máquina

Uma versão de modelo de aprendizado de máquina representa um modelo individual que é registrado para rastreamento.

Screenshot showing the details screen of a model.

Cada versão do modelo inclui as seguintes informações:

  • Hora de criação: Data e hora de criação do modelo.
  • Nome da execução: o identificador para as execuções do experimento usado para criar essa versão específica do modelo.
  • Hiperparâmetros: Os hiperparâmetros são salvos como pares chave-valor. Tanto as chaves quanto os valores são cadeias de caracteres.
  • Métricas: execute métricas salvas como pares chave-valor. O valor é numérico.
  • Esquema/assinatura do modelo: uma descrição das entradas e saídas do modelo.
  • Arquivos registrados: arquivos registrados em qualquer formato. Por exemplo, você pode gravar imagens, ambiente, modelos e arquivos de dados.

Comparar e filtrar modelos de aprendizagem automática

Para comparar e avaliar a qualidade das versões do modelo de aprendizado de máquina, você pode comparar os parâmetros, métricas e metadados entre as versões selecionadas.

Compare visualmente modelos de aprendizado de máquina

Você pode comparar visualmente execuções dentro de um modelo existente. A comparação visual permite uma navegação fácil entre várias versões e ordenações entre elas.

Screenshot showing a list of runs for comparison.

Para comparar execuções, você pode:

  1. Selecione um modelo de aprendizado de máquina existente que contenha várias versões.
  2. Selecione a guia Exibir e navegue até o modo de exibição de lista Modelo. Você também pode selecionar a opção Exibir lista de modelos diretamente na visualização de detalhes.
  3. Você pode personalizar as colunas dentro da tabela. Expanda o painel Personalizar colunas . A partir daí, você pode selecionar as propriedades, métricas e hiperparâmetros que deseja ver.
  4. Por fim, você pode selecionar várias versões, para comparar seus resultados, no painel de comparação de métricas. Neste painel, você pode personalizar os gráficos com alterações no título do gráfico, tipo de visualização, eixo X, eixo Y e muito mais.

Compare modelos de aprendizado de máquina usando a API MLflow

Os cientistas de dados também podem usar o MLflow para pesquisar entre vários modelos salvos no espaço de trabalho. Visite a documentação do MLflow para explorar outras APIs do MLflow para interação do modelo.

from pprint import pprint

client = MlflowClient()
for rm in client.list_registered_models():
    pprint(dict(rm), indent=4)

Aplicar modelos de aprendizagem automática

Depois de treinar um modelo em um conjunto de dados, você pode aplicar esse modelo a dados que ele nunca viu para gerar previsões. Chamamos esse modelo de usar a técnica de pontuação ou inferência. Para obter mais informações sobre a pontuação de modelo do Microsoft Fabric, consulte a próxima seção.