Salta para o conteúdo

Treino de modelos com Ultralytics YOLO

Ultralytics YOLO ecossistema e integrações

Introdução

O treinamento de um modelo de aprendizagem profunda envolve a alimentação de dados e o ajuste de seus parâmetros para que ele possa fazer previsões precisas. O modo Train em Ultralytics YOLO11 foi concebido para um treino eficaz e eficiente de modelos de deteção de objectos, utilizando plenamente as capacidades do hardware moderno. Este guia tem como objetivo cobrir todos os detalhes necessários para começares a treinar os teus próprios modelos utilizando o conjunto robusto de funcionalidades do YOLO11.



Observa: Como treinar um modelo YOLO no teu conjunto de dados personalizado em Google Colab.

Porquê escolher Ultralytics YOLO para a formação?

Aqui estão algumas razões convincentes para optares pelo modo Train do YOLO11:

  • Eficiência: Tira o máximo partido do teu hardware, quer estejas numa configuração única -GPU ou a escalar entre várias GPUs.
  • Versatilidade: Treina em conjuntos de dados personalizados, para além dos prontamente disponíveis, como COCO, VOC e ImageNet.
  • Fácil de utilizar: Interfaces CLI e Python simples mas poderosas para uma experiência de formação direta.
  • Flexibilidade de hiperparâmetros: Uma ampla gama de hiperparâmetros personalizáveis para ajustar o desempenho do modelo.

Principais características do modo comboio

Seguem-se algumas caraterísticas notáveis do modo Train do YOLO11:

  • Descarga automática de conjuntos de dados: Os conjuntos de dados padrão como COCO, VOC e ImageNet são descarregados automaticamente na primeira utilização.
  • Suporte a váriosGPU : Dimensiona os teus esforços de formação de forma integrada em várias GPUs para acelerar o processo.
  • Configuração de hiperparâmetros: A opção de modificar hiperparâmetros por meio de arquivos de configuração YAML ou argumentos de CLI .
  • Visualização e monitorização: Acompanha em tempo real as métricas de formação e visualiza o processo de aprendizagem para obter melhores informações.

Dica

  • Os conjuntos de dados YOLO11 como COCO, VOC, ImageNet e muitos outros são descarregados automaticamente na primeira utilização, ou seja yolo train data=coco.yaml

Exemplos de utilização

Treina o YOLO11n no conjunto de dados COCO8 para 100 épocas no tamanho de imagem 640. O dispositivo de treino pode ser especificado utilizando o comando device argumento. Se não for passado nenhum argumento GPU device=0 será utilizado se estiver disponível, caso contrário device='cpu' será utilizado. Vê a secção Argumentos abaixo para uma lista completa de argumentos de treino.

Single-GPU e CPU Exemplo de formação

O dispositivo é determinado automaticamente. Se estiver disponível um GPU , este será utilizado; caso contrário, a formação terá início em CPU.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.yaml")  # build a new model from YAML
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)
model = YOLO("yolo11n.yaml").load("yolo11n.pt")  # build from YAML and transfer weights

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Build a new model from YAML and start training from scratch
yolo detect train data=coco8.yaml model=yolo11n.yaml epochs=100 imgsz=640

# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640

# Build a new model from YAML, transfer pretrained weights to it and start training
yolo detect train data=coco8.yaml model=yolo11n.yaml pretrained=yolo11n.pt epochs=100 imgsz=640

Multi-GPU Formação

O treinamento multiGPU permite a utilização mais eficiente dos recursos de hardware disponíveis, distribuindo a carga de treinamento em várias GPUs. Esta funcionalidade está disponível através da API Python e da interface de linha de comandos. Para ativar o treino multiGPU , especifica as IDs de dispositivo GPU que pretendes utilizar.

Multi-GPU Exemplo de formação

Para treinar com 2 GPUs, CUDA dispositivos 0 e 1, usa os seguintes comandos. Expande para GPUs adicionais conforme necessário.

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model with 2 GPUs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=[0, 1])
# Start training from a pretrained *.pt model using GPUs 0 and 1
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640 device=0,1

Formação Apple Silicon MPS

Com o suporte para chips de silício Apple integrados nos modelos Ultralytics YOLO , é agora possível treinar os teus modelos em dispositivos que utilizam a poderosa estrutura Metal Performance Shaders (MPS). O MPS oferece uma forma de alto desempenho de executar tarefas de computação e processamento de imagem no silício personalizado da Apple.

Para ativar a formação em chips de silício da Apple, deves especificar 'mps' como o teu dispositivo quando iniciares o processo de formação. Segue-se um exemplo de como podes fazer isto em Python e através da linha de comandos:

MPS Exemplo de formação

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model with MPS
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device="mps")
# Start training from a pretrained *.pt model using MPS
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640 device=mps

Ao mesmo tempo que aproveita o poder computacional dos chips de silício da Apple, isto permite um processamento mais eficiente das tarefas de formação. Para obter orientações mais detalhadas e opções de configuração avançadas, consulta a documentaçãoPyTorch MPS .

Retomar as formações interrompidas

Retomar o treinamento a partir de um estado salvo anteriormente é um recurso crucial ao trabalhar com modelos de aprendizado profundo. Isto pode ser útil em vários cenários, como quando o processo de treino foi inesperadamente interrompido, ou quando desejas continuar a treinar um modelo com novos dados ou para mais épocas.

Quando o treinamento é retomado, o Ultralytics YOLO carrega os pesos do último modelo salvo e também restaura o estado do otimizador, o agendador da taxa de aprendizado e o número da época. Isto permite-te continuar o processo de treino sem problemas a partir do ponto onde foi deixado.

Podes retomar facilmente a formação em Ultralytics YOLO definindo o resume argumento para True ao chamar o train e especificando o caminho para o método .pt ficheiro que contém os pesos do modelo parcialmente treinado.

Segue-se um exemplo de como retomar uma formação interrompida utilizando Python e através da linha de comandos:

Exemplo de formação de currículo

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/last.pt")  # load a partially trained model

# Resume training
results = model.train(resume=True)
# Resume an interrupted training
yolo train resume model=path/to/last.pt

Por definição resume=True, o train continua a treinar a partir do ponto em que parou, utilizando o estado armazenado no ficheiro 'path/to/last.pt'. Se o ficheiro resume é omitido ou definido como False, o train A função de "iniciar" inicia uma nova sessão de formação.

Lembra-te que os pontos de controlo são guardados no final de cada época por defeito, ou em intervalos fixos utilizando a opção save_period por isso, tens de completar pelo menos 1 época para retomar uma corrida de treino.

Definições do comboio

As definições de treino para os modelos YOLO englobam vários hiperparâmetros e configurações utilizados durante o processo de treino. Estas definições influenciam o desempenho, a velocidade e a precisão do modelo. As principais definições de treino incluem o tamanho do lote, a taxa de aprendizagem, o momento e a diminuição do peso. Além disso, a escolha do optimizador, a função de perda e a composição do conjunto de dados de treino podem ter impacto no processo de treino. O ajuste cuidadoso e a experimentação com estas definições são cruciais para otimizar o desempenho.

ArgumentaPredefiniçãoDescrição
modelNoneEspecifica o arquivo de modelo para treinamento. Aceita um caminho para um arquivo .pt modelo pré-treinado ou um .yaml ficheiro de configuração. Essencial para definir a estrutura do modelo ou inicializar os pesos.
dataNoneCaminho para o ficheiro de configuração do conjunto de dados (por exemplo, coco8.yaml). Este ficheiro contém parâmetros específicos do conjunto de dados, incluindo caminhos para o treino e dados de validação, nomes de classes e número de classes.
epochs100Número total de épocas de treino. Cada época representa uma passagem completa por todo o conjunto de dados. O ajuste deste valor pode afetar a duração do treino e o desempenho do modelo.
timeNoneTempo máximo de formação em horas. Se estiver definido, substitui a opção epochs permitindo que a formação pare automaticamente após a duração especificada. Útil para cenários de formação com restrições de tempo.
patience100Número de épocas a aguardar sem melhoria nas métricas de validação antes de parar o treino antecipadamente. Ajuda a evitar o sobreajuste, interrompendo o treino quando o desempenho atinge um patamar.
batch16Tamanho do lote, com três modos: definido como um número inteiro (por exemplo, batch=16), modo automático para 60% de utilização da memória GPU (batch=-1) ou modo automático com fração de utilização especificada (batch=0.70).
imgsz640Dimensão da imagem alvo para treino. Todas as imagens são redimensionadas para esta dimensão antes de serem introduzidas no modelo. Afecta a precisão do modelo e a complexidade computacional.
saveTruePermite guardar os pontos de verificação do treino e os pesos finais do modelo. É útil para retomar o treino ou a implementação do modelo.
save_period-1Frequência de gravação dos pontos de controlo do modelo, especificada em épocas. Um valor de -1 desactiva esta funcionalidade. Útil para guardar modelos provisórios durante longas sessões de treino.
cacheFalseAtiva a colocação em cache das imagens do conjunto de dados na memória (True/ram), no disco (disk), ou desactiva-a (False). Melhora a velocidade de treino reduzindo as E/S do disco à custa de uma maior utilização da memória.
deviceNoneEspecifica o(s) dispositivo(s) computacional(is) para a formação: um único GPU (device=0), várias GPUs (device=0,1), CPU (device=cpu), ou MPS para silício Apple (device=mps).
workers8Número de threads de trabalho para carregamento de dados (por RANK se Multi-GPU training). Influencia a velocidade do pré-processamento de dados e a alimentação do modelo, especialmente útil em configurações multiGPU .
projectNoneNome do diretório do projeto onde são guardados os resultados do treino. Permite o armazenamento organizado de diferentes experiências.
nameNoneNome da ação de formação. Utilizado para criar uma subdiretoria dentro da pasta do projeto, onde são armazenados os registos e os resultados da formação.
exist_okFalseSe Verdadeiro, permite a substituição de um diretório de projeto/nome existente. Útil para experimentação iterativa sem a necessidade de limpar manualmente as saídas anteriores.
pretrainedTrueDetermina se deve iniciar o treino a partir de um modelo pré-treinado. Pode ser um valor booleano ou um caminho de cadeia de caracteres para um modelo específico a partir do qual carregar pesos. Melhora a eficiência do treinamento e o desempenho do modelo.
optimizer'auto'Escolhe o optimizador para a formação. As opções incluem SGD, Adam, AdamW, NAdam, RAdam, RMSProp etc., ou auto para seleção automática com base na configuração do modelo. Afecta a velocidade de convergência e a estabilidade.
seed0Define a semente aleatória para o treino, garantindo a reprodutibilidade dos resultados entre execuções com as mesmas configurações.
deterministicTrueForça a utilização de algoritmos determinísticos, garantindo a reprodutibilidade, mas pode afetar o desempenho e a velocidade devido à restrição de algoritmos não determinísticos.
single_clsFalseTrata todas as classes em conjuntos de dados multi-classe como uma única classe durante o treino. Útil para tarefas de classificação binária ou quando se concentra na presença de objectos em vez de na classificação.
rectFalsePermite a formação retangular, optimizando a composição do lote para um preenchimento mínimo. Pode melhorar a eficiência e a velocidade, mas pode afetar a precisão do modelo.
cos_lrFalseUtiliza um programador de taxa de aprendizagem cosseno, ajustando a taxa de aprendizagem seguindo uma curva cosseno ao longo de épocas. Ajuda a gerir a taxa de aprendizagem para uma melhor convergência.
close_mosaic10Desactiva o aumento dos dados do mosaico nas últimas N épocas para estabilizar o treino antes da conclusão. Definir como 0 desactiva esta funcionalidade.
resumeFalseReinicia o treinamento a partir do último ponto de verificação salvo. Carrega automaticamente os pesos do modelo, o estado do otimizador e a contagem de épocas, continuando o treinamento sem problemas.
ampTruePermite a formação automática de precisão mista (AMP), reduzindo a utilização de memória e possivelmente acelerando a formação com um impacto mínimo na precisão.
fraction1.0Especifica a fração do conjunto de dados a utilizar para o treino. Permite o treino num subconjunto do conjunto de dados completo, útil para experiências ou quando os recursos são limitados.
profileFalsePermite a criação de perfis de ONNX e TensorRT velocidades durante o treino, útil para otimizar a implementação do modelo.
freezeNoneCongela as primeiras N camadas do modelo ou camadas especificadas por índice, reduzindo o número de parâmetros treináveis. Útil para ajuste fino ou aprendizagem por transferência.
lr00.01Taxa de aprendizagem inicial (i.e. SGD=1E-2, Adam=1E-3) . O ajuste deste valor é crucial para o processo de otimização, influenciando a rapidez com que os pesos do modelo são actualizados.
lrf0.01Taxa de aprendizagem final como fração da taxa inicial = (lr0 * lrf), utilizado em conjunto com programadores para ajustar a taxa de aprendizagem ao longo do tempo.
momentum0.937Fator de impulso para SGD ou beta1 para optimizadores Adam, influenciando a incorporação de gradientes passados na atualização atual.
weight_decay0.0005Termo de regularização L2, penalizando pesos grandes para evitar o sobreajuste.
warmup_epochs3.0Número de épocas para o aquecimento da taxa de aprendizagem, aumentando gradualmente a taxa de aprendizagem de um valor baixo para a taxa de aprendizagem inicial para estabilizar a formação numa fase inicial.
warmup_momentum0.8Momento inicial para a fase de aquecimento, ajustando-se gradualmente ao momento definido durante o período de aquecimento.
warmup_bias_lr0.1Taxa de aprendizagem para parâmetros de polarização durante a fase de aquecimento, ajudando a estabilizar o treinamento do modelo nas épocas iniciais.
box7.5Peso do componente de perda de caixa na função de perda, influenciando a importância dada à previsão exacta das coordenadas da caixa delimitadora.
cls0.5Peso da perda de classificação na função de perda total, afectando a importância da previsão correcta da classe em relação a outros componentes.
dfl1.5Peso da perda focal da distribuição, utilizado em determinadas versões de YOLO para uma classificação fina.
pose12.0Peso da perda de pose nos modelos treinados para a estimativa de pose, influenciando a ênfase na previsão exacta dos pontos-chave da pose.
kobj2.0Peso da perda de objetividade do ponto-chave nos modelos de estimação da pose, equilibrando a confiança na deteção com a precisão da pose.
label_smoothing0.0Aplica a suavização de rótulos, suavizando os rótulos rígidos para uma mistura do rótulo alvo e uma distribuição uniforme sobre os rótulos, pode melhorar a generalização.
nbs64Tamanho nominal do lote para normalização da perda.
overlap_maskTrueDetermina se as máscaras de objeto devem ser mescladas em uma única máscara para treinamento ou mantidas separadas para cada objeto. Em caso de sobreposição, a máscara mais pequena é sobreposta à máscara maior durante a fusão.
mask_ratio4Rácio de downsample para máscaras de segmentação, que afecta a resolução das máscaras utilizadas durante o treino.
dropout0.0Taxa de desistência para regularização em tarefas de classificação, evitando o sobreajuste através da omissão aleatória de unidades durante o treino.
valTruePermite a validação durante o treino, permitindo a avaliação periódica do desempenho do modelo num conjunto de dados separado.
plotsFalseGera e guarda gráficos de métricas de treino e validação, bem como exemplos de previsão, fornecendo informações visuais sobre o desempenho do modelo e a progressão da aprendizagem.

Nota sobre configurações de tamanho de lote

O batch O argumento pode ser configurado de três maneiras:

  • Tamanho fixo do lote: Define um valor inteiro (por exemplo, batch=16), especificando diretamente o número de imagens por lote.
  • Modo automático (60% GPU Memória): Utiliza batch=-1 para ajustar automaticamente o tamanho do lote para aproximadamente 60% de utilização da memória CUDA .
  • Modo automático com fração de utilização: Define um valor de fração (por exemplo, batch=0.70) para ajustar o tamanho do lote com base na fração especificada da utilização da memória GPU .

Definições de aumento e hiperparâmetros

As técnicas de aumento são essenciais para melhorar a robustez e o desempenho dos modelos YOLO , introduzindo variabilidade nos dados de treino, ajudando o modelo a generalizar melhor para dados não vistos. A tabela seguinte descreve o objetivo e o efeito de cada argumento de aumento:

ArgumentaTipoPredefiniçãoAlcanceDescrição
hsv_hfloat0.0150.0 - 1.0Ajusta a tonalidade da imagem por uma fração da roda de cores, introduzindo variabilidade de cores. Ajuda o modelo a generalizar em diferentes condições de iluminação.
hsv_sfloat0.70.0 - 1.0Altera a saturação da imagem por uma fração, afectando a intensidade das cores. Útil para simular diferentes condições ambientais.
hsv_vfloat0.40.0 - 1.0Modifica o valor (brilho) da imagem por uma fração, ajudando o modelo a ter um bom desempenho em várias condições de iluminação.
degreesfloat0.0-180 - +180Roda a imagem aleatoriamente dentro do intervalo de graus especificado, melhorando a capacidade do modelo para reconhecer objectos em várias orientações.
translatefloat0.10.0 - 1.0Traduz a imagem horizontal e verticalmente por uma fração do tamanho da imagem, ajudando a aprender a detetar objectos parcialmente visíveis.
scalefloat0.5>=0.0Escala a imagem por um fator de ganho, simulando objectos a diferentes distâncias da câmara.
shearfloat0.0-180 - +180Corta a imagem num grau especificado, imitando o efeito de objectos vistos de ângulos diferentes.
perspectivefloat0.00.0 - 0.001Aplica uma transformação de perspetiva aleatória à imagem, melhorando a capacidade do modelo para compreender objectos no espaço 3D.
flipudfloat0.00.0 - 1.0Vira a imagem ao contrário com a probabilidade especificada, aumentando a variabilidade dos dados sem afetar as características do objeto.
fliplrfloat0.50.0 - 1.0Inverte a imagem da esquerda para a direita com a probabilidade especificada, útil para aprender objectos simétricos e aumentar a diversidade do conjunto de dados.
bgrfloat0.00.0 - 1.0Inverte os canais de imagem de RGB para BGR com a probabilidade especificada, útil para aumentar a robustez da ordenação incorrecta dos canais.
mosaicfloat1.00.0 - 1.0Combina quatro imagens de treino numa só, simulando diferentes composições de cenas e interacções de objectos. Altamente eficaz para a compreensão de cenas complexas.
mixupfloat0.00.0 - 1.0Mistura duas imagens e seus rótulos, criando uma imagem composta. Melhora a capacidade de generalização do modelo, introduzindo ruído de etiqueta e variabilidade visual.
copy_pastefloat0.00.0 - 1.0Copia objectos de uma imagem e cola-os noutra, útil para aumentar as instâncias de objectos e aprender a oclusão de objectos.
copy_paste_modestrflip-Seleção do método de aumento Copiar-Colar entre as opções de ("flip", "mixup").
auto_augmentstrrandaugment-Aplica automaticamente uma política de aumento predefinida (randaugment, autoaugment, augmix), optimizando as tarefas de classificação através da diversificação das características visuais.
erasingfloat0.40.0 - 0.9Apaga aleatoriamente uma parte da imagem durante o treino de classificação, encorajando o modelo a concentrar-se em características menos óbvias para o reconhecimento.
crop_fractionfloat1.00.1 - 1.0Corta a imagem de classificação para uma fração do seu tamanho para enfatizar as características centrais e adaptar-se às escalas dos objectos, reduzindo as distracções de fundo.

Estas definições podem ser ajustadas para satisfazer os requisitos específicos do conjunto de dados e da tarefa em causa. A experimentação de valores diferentes pode ajudar a encontrar a estratégia de aumento ideal que conduz ao melhor desempenho do modelo.

Informação

Para mais informações sobre as operações de reforço da formação, ver a secção de referência.

Registo

Ao treinar um modelo YOLO11, podes achar útil acompanhar o desempenho do modelo ao longo do tempo. É aqui que o registo entra em jogo. Ultralytics' YOLO fornece suporte para três tipos de registadores - Comet, ClearML, e TensorBoard.

Para usar um registrador, seleciona-o no menu suspenso no trecho de código acima e executa-o. O registador escolhido será instalado e inicializado.

Comet

Comet é uma plataforma que permite aos cientistas de dados e aos programadores acompanhar, comparar, explicar e otimizar experiências e modelos. Fornece funcionalidades como métricas em tempo real, diferenças de código e rastreio de hiperparâmetros.

Para utilizar Comet:

Exemplo

# pip install comet_ml
import comet_ml

comet_ml.init()

Não te esqueças de iniciar sessão na tua conta Comet no respetivo sítio Web e de obter a tua chave API. Terás de a adicionar às tuas variáveis de ambiente ou ao teu script para registar as tuas experiências.

ClearML

ClearML é uma plataforma de código aberto que automatiza o acompanhamento de experiências e ajuda na partilha eficiente de recursos. Foi concebida para ajudar as equipas a gerir, executar e reproduzir o seu trabalho de ML de forma mais eficiente.

Para utilizar ClearML:

Exemplo

# pip install clearml
import clearml

clearml.browser_login()

Depois de executares este script, terás de iniciar sessão na tua conta ClearML no browser e autenticar a tua sessão.

TensorBoard

O TensorBoard é um conjunto de ferramentas de visualização para TensorFlow. Permite-te visualizar o teu gráfico TensorFlow , traçar métricas quantitativas sobre a execução do teu gráfico e mostrar dados adicionais como imagens que passam por ele.

Para utilizares o TensorBoard em Google Colab:

Exemplo

load_ext tensorboard
tensorboard --logdir ultralytics/runs  # replace with 'runs' directory

Para utilizar o TensorBoard localmente, executa o comando abaixo e vê os resultados em http://localhost:6006/.

Exemplo

tensorboard --logdir ultralytics/runs  # replace with 'runs' directory

Isto irá carregar o TensorBoard e direccioná-lo para o diretório onde os teus registos de treino estão guardados.

Depois de configurares o teu registador, podes prosseguir com o treino do teu modelo. Todas as métricas de treino serão automaticamente registadas na plataforma escolhida e podes aceder a esses registos para monitorizar o desempenho do teu modelo ao longo do tempo, comparar diferentes modelos e identificar áreas de melhoria.

FAQ

Como posso treinar um modelo de deteção de objectos utilizando Ultralytics YOLO11?

Para treinar um modelo de deteção de objectos utilizando Ultralytics YOLO11, pode utilizar a API Python ou a CLI. Segue-se um exemplo de ambas:

Single-GPU e CPU Exemplo de formação

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640

Para mais informações, consulta a secção Definições do comboio.

Quais são as principais caraterísticas do modo Train do Ultralytics YOLO11?

As principais caraterísticas do modo Train do Ultralytics YOLO11 incluem:

  • Descarrega automaticamente conjuntos de dados: Descarrega automaticamente conjuntos de dados padrão como COCO, VOC e ImageNet.
  • Suporte a váriosGPU : Escala o treinamento em várias GPUs para um processamento mais rápido.
  • Configuração de hiperparâmetros: Personaliza os hiperparâmetros por meio de arquivos YAML ou argumentos de CLI .
  • Visualização e monitorização: Acompanha em tempo real as métricas de formação para obteres melhores informações.

Estas características tornam o treino eficiente e personalizável de acordo com as tuas necessidades. Para mais informações, consulta a secção Características principais do Modo de Treino.

Como é que retomo o treino de uma sessão interrompida em Ultralytics YOLO11?

Para retomar o treino a partir de uma sessão interrompida, define o botão resume argumento para True e especifica o caminho para o último ponto de controlo guardado.

Exemplo de formação de currículo

from ultralytics import YOLO

# Load the partially trained model
model = YOLO("path/to/last.pt")

# Resume training
results = model.train(resume=True)
yolo train resume model=path/to/last.pt

Para mais informações, consulta a secção " Retomar formações interrompidas ".

Posso treinar modelos YOLO11 em chips de silício da Apple?

Sim, Ultralytics YOLO11 suporta a formação em chips de silício da Apple que utilizam a estrutura Metal Performance Shaders (MPS). Especifica 'mps' como o teu dispositivo de treino.

MPS Exemplo de formação

from ultralytics import YOLO

# Load a pretrained model
model = YOLO("yolo11n.pt")

# Train the model on Apple silicon chip (M1/M2/M3/M4)
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device="mps")
yolo detect train data=coco8.yaml model=yolo11n.pt epochs=100 imgsz=640 device=mps

Para obter mais detalhes, consulta a secção de formação Apple Silicon MPS .

Quais são as definições de formação comuns e como as configuro?

Ultralytics O YOLO11 permite-te configurar uma variedade de definições de treino, como o tamanho do lote, a taxa de aprendizagem, as épocas e muito mais, através de argumentos. Aqui tens uma breve visão geral:

ArgumentaPredefiniçãoDescrição
modelNoneCaminho para o ficheiro de modelo para treino.
dataNoneCaminho para o ficheiro de configuração do conjunto de dados (por exemplo, coco8.yaml).
epochs100Número total de épocas de treino.
batch16Tamanho do lote, ajustável em modo inteiro ou automático.
imgsz640Tamanho da imagem alvo para formação.
deviceNoneDispositivo(s) informático(s) para treino como cpu, 0, 0,1, ou mps.
saveTruePermite guardar os pontos de controlo de treino e os pesos finais do modelo.

Para obteres um guia detalhado sobre as definições de treino, consulta a secção Definições de treino.

📅 C riado há 1 ano ✏️ Atualizado há 14 dias

Comentários