0Pricing
Learn AI with Python · Aula

Criando pipelines reproduzíveis de aprendizado de máquina

Pipeline do sklearn, persistência de pipelines com joblib e execuções parametrizadas com arquivos de configuração.

Criando pipelines reproduzíveis de aprendizado de máquina é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.

Por que garantir a reprodutibilidade?

Um resultado que não pode ser reproduzido não é ciência, é sorte. Fluxos de processamento reproduzíveis garantem que os mesmos dados e a mesma configuração sempre produzam o mesmo modelo, algo essencial para depuração, auditorias e trabalho em equipe.

O fluxo de processamento do sklearn

Um fluxo de processamento do scikit-learn encadeia o pré-processamento e o modelo em um único objeto, para que exatamente as mesmas transformações aplicadas no treinamento sejam aplicadas na inferência, eliminando a discrepância entre treinamento e disponibilização.

from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import RandomForestClassifier

pipe = Pipeline([
    ("scaler", StandardScaler()),
    ("model", RandomForestClassifier(n_estimators=200))
])
pipe.fit(X_train, y_train)

Persistindo o fluxo de processamento como artefato

Como todo o fluxo de processamento é um único objeto, você pode salvá-lo como um único artefato e recarregá-lo em qualquer lugar, sabendo que o pré-processamento acompanha o modelo.

joblib.dump e load

joblib serializa objetos do scikit-learn com eficiência (ele lida melhor com matrizes grandes do NumPy do que pickle). Salve o fluxo de processamento ajustado e depois recarregue-o para disponibilização.

import joblib

joblib.dump(pipe, "pipeline.joblib")        # save
loaded = joblib.load("pipeline.joblib")    # reload
preds = loaded.predict(X_new)

Configuração YAML para hiperparâmetros

Valores fixados diretamente no código ocultam o que foi usado em uma execução. Coloque todos os hiperparâmetros em um arquivo YAML, para que cada configuração seja explícita, controlada por versão e alterável sem editar o código.

# config.yaml
model:
  n_estimators: 200
  max_depth: 8
data:
  test_size: 0.2
  random_state: 42

Carregando a configuração

Leia o YAML uma vez na inicialização e passe os valores para o seu fluxo de processamento, para que um único arquivo controle toda a execução.

import yaml

with open("config.yaml") as f:
    cfg = yaml.safe_load(f)

model = RandomForestClassifier(
    n_estimators=cfg["model"]["n_estimators"],
    max_depth=cfg["model"]["max_depth"]
)

Fixe as sementes aleatórias

A reprodutibilidade também exige sementes aleatórias fixas em todos os lugares: divisão entre treino e teste, inicialização do modelo e qualquer embaralhamento. Armazene a semente na configuração YAML para que ela seja explícita e consistente.

from sklearn.model_selection import train_test_split

X_tr, X_te, y_tr, y_te = train_test_split(
    X, y, test_size=cfg["data"]["test_size"],
    random_state=cfg["data"]["random_state"]
)

Arquivo de automação para etapas repetíveis

Um arquivo de automação transforma cada etapa do fluxo de processamento em um alvo nomeado, para que qualquer pessoa execute make train em vez de precisar lembrar comandos longos. Isso padroniza o fluxo de trabalho em toda a equipe.

Definindo alvos de automação

Alvos comuns são make data, make train e make evaluate, cada um chamando o script correspondente.

# Makefile
data:
	python src/prepare_data.py

train:
	python src/train.py --config config.yaml

evaluate:
	python src/evaluate.py --config config.yaml

Encadeando dependências

Os alvos podem depender uns dos outros, de modo que make train execute data primeiro, se necessário, garantindo que o fluxo de processamento seja sempre executado na ordem correta.

train: data
	python src/train.py --config config.yaml

Juntando tudo

Uma configuração reproduzível: um fluxo de processamento persistido com joblib, todos os hiperparâmetros em YAML, sementes fixas e um arquivo de automação que disponibiliza os alvos make data / train / evaluate. Qualquer pessoa pode clonar o repositório e reproduzir exatamente o seu modelo.

Verificação rápida

Teste seus conhecimentos sobre fluxos de processamento reproduzíveis.

Recapitulação

Você criou fluxos de processamento reproduzíveis: um fluxo de processamento do sklearn persistido por meio de joblib.dump/load, todos os hiperparâmetros em uma configuração YAML, sementes aleatórias fixas e um arquivo de automação com os alvos make data / train / evaluate. Próximo tema: monitoramento de modelos em produção.

Perguntas Frequentes

A aula “Criando pipelines reproduzíveis de aprendizado de máquina” é grátis?

Sim — o texto completo de “Criando pipelines reproduzíveis de aprendizado de máquina” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.

O que vou aprender em “Criando pipelines reproduzíveis de aprendizado de máquina”?

Pipeline do sklearn, persistência de pipelines com joblib e execuções parametrizadas com arquivos de configuração. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Learn AI with Python?

Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Criando pipelines reproduzíveis de aprendizado de máquina”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Learn AI with Python?

Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Acompanhamento de experimentos com MLflow
  2. Registro e versionamento de modelos
  3. Criando pipelines reproduzíveis de aprendizado de máquina
  4. Monitoramento do desempenho de modelos em produção
← Voltar para Learn AI with Python