Gerenciar modelos no Microsoft Fabric
A integração do MLflow no Microsoft Fabric facilita o acompanhamento e o gerenciamento de seus modelos de machine learning.
Acompanhar artefatos de modelo com o MLflow
Depois de treinar um modelo, você deseja usar o modelo para pontuar e gerar novas previsões. Para integrar facilmente seu modelo, você precisa armazenar seu modelo para que possa carregar o modelo em um ambiente diferente. Uma abordagem comum é armazenar um modelo como um arquivo pickle, um objeto serializado.
Observação
O formato do modelo armazenado depende da estrutura de aprendizado de máquina que você está usando. Por exemplo, ao treinar um modelo de aprendizado profundo, você pode optar por armazenar seu modelo usando o formato Open Neural Network Exchange (ONNX).
O MLflow adiciona outra camada à saída do modelo adicionando o arquivo MLmodel. O arquivo MLmodel especifica os metadados do modelo, como e quando o modelo foi treinado, bem como a entrada e a saída esperadas do modelo.
Entender o arquivo MLmodel
Quando você registra um modelo com o MLflow, todos os ativos de modelo relevantes são armazenados na pasta model
com a execução do experimento.
A pasta model
inclui o arquivo MLmodel, uma única fonte de verdade sobre como o modelo deve ser carregado e consumido.
O arquivo MLmodel pode incluir:
artifact_path
: Durante o treinamento, o modelo está registrado neste caminho.flavor
: biblioteca de machine learning com a qual o modelo foi criado.model_uuid
: identificador exclusivo do modelo registrado.run_id
: identificador exclusivo da execução de trabalho durante a qual o modelo foi criado.signature
: Especifica o esquema das entradas e saídas do modelo:inputs
: entrada válida para o modelo. Por exemplo, um subconjunto do conjunto de dados de treinamento.outputs
: saída válida do modelo. Por exemplo, previsões de modelo para o conjunto de dados de entrada.
Imagine que você treinou um modelo de regressão para prever diabetes em pacientes; o arquivo MLmodel registrado pode se parecer ao seguinte:
artifact_path: model
flavors:
python_function:
env:
conda: conda.yaml
virtualenv: python_env.yaml
loader_module: mlflow.sklearn
model_path: model.pkl
predict_fn: predict
python_version: 3.10.10
sklearn:
code: null
pickled_model: model.pkl
serialization_format: cloudpickle
sklearn_version: 1.2.0
mlflow_version: 2.1.1
model_uuid: 8370150f4e07495794c3b80bcaf07e52
run_id: 14cdf02f-119b-4b8d-90f3-044987c29bce
signature:
inputs: '[{"type": "tensor", "tensor-spec": {"dtype": "float64", "shape": [-1, 10]}}]'
outputs: '[{"type": "tensor", "tensor-spec": {"dtype": "float64", "shape": [-1]}}]'
Quando você opta por usar a função de registro automático do MLflow no Microsoft Fabric, o arquivo MLmodel é criado automaticamente para você. Se você quiser alterar o arquivo para alterar o comportamento do modelo durante a pontuação, poderá alterar a forma como o arquivo MLmodel é registrado.
Dica
Saiba mais sobre arquivos de modelo do MLflow e como personalizar os campos.
Gerenciar modelos no Microsoft Fabric
Quando você acompanha um modelo com o MLflow durante o treinamento no Microsoft Fabric, todos os artefatos de modelo são armazenados na pasta model
. Você pode encontrar a pasta model
na execução do experimento:
A pasta de modelo contém:
MLmodel
: contém os metadados do modelo.conda.yaml
: contém o ambiente Anaconda necessário para executar o modelo.model.pkl
: contém o modelo treinadopython_env.yaml
: descreve o ambiente Python necessário para executar o modelo. Faz referência ao arquivorequirements.txt
.requirements.txt
: lista os pacotes do Python necessários para executar o modelo.
Todos esses artefatos de modelo são necessários quando você deseja usar seu modelo para gerar previsões em novos dados.
Salvar um modelo no workspace
Ao escolher o modelo que deseja usar, você pode salvar o modelo no workspace da execução do experimento. Ao salvar um modelo, você cria um novo modelo com controle de versão no workspace que contém todos os artefatos e metadados do modelo.
Selecione a execução do experimento que representa o modelo treinado e selecione a opção Salvar para salvar a execução como um modelo.
Ao selecionar um existente, você cria uma versão de um modelo com o mesmo nome. O controle de versão do modelo permite comparar modelos que atendem a uma finalidade semelhante e após isso escolher o modelo com melhor desempenho para gerar previsões.