Escolhas de Política

O LeRobot oferece três arquiteturas de política prontas para produção. Escolha uma antes de iniciar o treinamento — você não pode mudar durante a execução.

Política de Difusão

Maior precisão de pico em tarefas de precisão, mas 3–5x mais lento para treinar e inferir. Use-o depois de ter uma linha de base ACT funcional.

SmolVLA

VLA condicionado por linguagem. Use quando sua tarefa requer instruções em linguagem natural ou generalização de múltiplas tarefas. Requer mais dados.

Comando de Treinamento ACT

Substitua $HF_USER/pick-place-v1 com o ID do repositório do seu conjunto de dados da Unidade 3.

source ~/lerobot-env/bin/activate # Add --device cuda if you have a GPU (strongly recommended) # Checkpoints save every 5k steps to ~/lerobot-policies/pick-place-v1/ # Start this before sleep — it can run unattended
Tempo de treinamento em GPU vs CPU: Em uma RTX 3090 (24GB), 50.000 passos leva aproximadamente 60–80 minutos. Em uma RTX 3080 (10GB), aproximadamente 90–120 minutos. Em CPU, espere 8–12 horas. Opções de GPU em nuvem (Lambda Labs, Vast.ai) custam $0,50–1,50/h pela hardware necessário.

Hiperparâmetros Recomendados para Pick-and-Place com Um Braço

Parâmetro Recomendado Por quê
num_steps50000Suficiente para 50–100 demonstrações de um simples pick-and-place. Aumente para 80k se seu platô de perda ocorrer tarde.
tamanho_do_lote32Padrão para conjuntos de dados de braço único. Reduza para 16 se você ficar sem memória de GPU.
tamanho_do_bloco100O ACT planeja 100 passos à frente. A 30fps isso é ~3,3 segundos — um bom horizonte de planejamento para pick-and-place.
n_passos_de_ação100Deve corresponder ao tamanho_do_bloco. Reduz a frequência de inferência e suaviza a execução.
peso_kl10Padrão do LeRobot. Não mude a menos que L_kl permaneça próximo de zero após 20k passos.
lr1e-5Padrão do LeRobot para ACT. Reduza para 5e-6 se a perda de reconstrução oscilar em vez de convergir.

Lendo os Registros de Treinamento

Os registros de treinamento são impressos no terminal e no TensorBoard. Inicie o TensorBoard em um segundo terminal:

tensorboard --logdir ~/lerobot-policies/

Então abra http://localhost:6006 no seu navegador. Observe essas curvas:

perda/reconstrução (L_recon)

O sinal de treinamento primário. Deve diminuir de ~2,5–3,5 para abaixo de 0,1 em 50.000 passos. Um platô acima de 0,15 após 40.000 passos geralmente significa que seu conjunto de dados tem muita variância — revise as boas práticas de demonstração da Unidade 3 e considere gravar demonstrações mais consistentes.

perda/kl (L_kl)

Aumenta lentamente de perto de 0 a 5–20. Este é um comportamento esperado — o CVAE está aprendendo uma incorporação de estilo compacta. Se exceder 40, suas demonstrações contêm muita diversidade comportamental. Se permanecer perto de 0 após 20 mil passos, o CVAE não está aprendendo; aumente kl_weight para 20.

treino/perda (perda total)

L_recon + kl_weight × L_kl. Dominada por L_recon no início do treinamento. Deve diminuir de forma monótona. Uma perda total que aumenta após uma diminuição inicial indica que a redução da taxa de aprendizado é muito agressiva — verifique a configuração do agendador.

Gerenciamento de Checkpoints

Checkpoints são salvos a cada 5.000 passos em ~/lerobot-policies/pick-place-v1/checkpoints/. Não assuma que o último checkpoint é o melhor. A política pode se ajustar demais em contagens de passos altas, especialmente com conjuntos de dados pequenos.

Após o treinamento, identifique seu melhor checkpoint: é o passo onde L_reconstruction atingiu seu mínimo antes de começar a se estabilizar. Para 50 demonstrações, isso geralmente ocorre na faixa de 35.000 a 50.000 passos. Salve este número de passo — você o usará na Unidade 5.

Unidade 4 Completa Quando...

O treinamento completou 50.000 passos e os checkpoints estão salvos em ~/lerobot-policies/pick-place-v1/checkpoints/. A perda final de L_reconstruction está abaixo de 0,1. Você identificou seu melhor passo de checkpoint com base nas curvas de perda. Você entende o que L_kl está fazendo em sua execução de treinamento. Você está pronto para avaliar a política na Unidade 5.