Entender como treinar modelos de machine learning
A forma como você treina um modelo de machine learning depende do tipo de modelo que você deseja treinar. Vamos explorar algumas estruturas comumente usadas que você pode usar para treinar um modelo de machine learning no Microsoft Fabric.
Explorar estruturas de machine learning
Muitos cientistas de dados trabalham no Python e muitas bibliotecas de aprendizado de máquina são projetadas para funcionar bem com o Python.
Algumas bibliotecas e seus usos populares com os quais você pode trabalhar no Microsoft Fabric são:
- Scikit-learn: treinar modelos tradicionais de machine learning para tarefas como classificação, regressão e clustering.
- PyTorch e TensorFlow: treinar modelos de aprendizado profundo para tarefas de processamento de linguagem natural ou pesquisa visual computacional.
- SynapseML: permite que você crie pipelines de machine learning escalonáveis para um treinamento de modelo mais ideal.
Trabalhar com notebooks no Microsoft Fabric
Quando você deseja treinar um modelo no Microsoft Fabric, pode usar notebooks.
Como cientista de dados, talvez você já esteja familiarizado com notebooks Jupyter. Os notebooks disponíveis no workspace do Microsoft Fabric são semelhantes aos notebooks Jupyter, facilitando a execução do código conforme o esperado.
Os notebooks no Microsoft Fabric são alimentados pela computação do Spark, o que significa que você pode usar pySpark e Python. A maioria das estruturas de aprendizado de máquina, como scikit-learn, PyTorch e TensorFlow, funcionam com o Python e o Pandas DataFrames.
O PySpark é uma biblioteca python criada para processamento de dados distribuídos. Sempre que você observar a necessidade de um pipeline de treinamento de máquina mais escalonável, poderá explorar o uso do PySpark e do SynapseML em seus projetos.
Treinar um modelo
A maneira como você aborda o treinamento de um aprendizado de máquina depende do tipo de modelo que você treina. Uma abordagem comum com modelos tradicionais é iterar pelas seguintes etapas:
- Carregue os dados disponibilizando-os no notebook como um DataFrame.
- Explore os dados visualizando os dados e entendendo a relação entre os recursos (entrada do modelo) e como eles afetam o rótulo (saída do modelo).
- Prepare os dados, também conhecidos como engenharia de recursos.
- Divida os dados em um conjunto de dados de treinamento e um conjunto de dados de teste.
- Treine o modelo.
- Avalie o modelo inspecionando as métricas de desempenho.
Vamos explorar um exemplo e supor que você já tenha um conjunto de dados que você explorou e preparou para treinamento de modelo. Imagine que você deseja treinar um modelo de regressão e optar por usar scikit-learn.
Você pode dividir o conjunto de dados preparado com o seguinte código:
from sklearn.model_selection import train_test_split
X, y = df[['feature1','feature2','feature3']].values, df['label'].values
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.30, random_state=0)
Como resultado da divisão do conjunto de dados, você terá quatro DataFrames:
-
X_train: conjunto de dados de treinamento, incluindo apenas os recursos. -
X_test: teste o conjunto de dados, incluindo apenas os recursos. -
y_train: conjunto de dados de treinamento, incluindo apenas o rótulo. -
y_test: teste o conjunto de dados, incluindo apenas o rótulo.
Quando quiser treinar um modelo, você pode selecionar um dos algoritmos (por exemplo, regressão linear) para sua tarefa (por exemplo, regressão) que estão disponíveis na estrutura de sua escolha (por exemplo, scikit-learn). O código a seguir mostra um exemplo de treinamento de um modelo de regressão:
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X_train, y_train)
Depois de ajustar o modelo, você pode usar o modelo para gerar previsões no conjunto de dados de teste para criar métricas de desempenho do modelo. Ao usar o MLflow para acompanhar seu modelo, você pode acompanhar as métricas de desempenho calculadas. Como alternativa, você pode permitir que o MLflow crie e acompanhe as métricas de desempenho padrão para você.
Ao acompanhar o MLflow, você também pode garantir que seu modelo seja salvo em um formato para habilitar a pontuação do modelo em um estágio posterior.