Responder a: Dúvidas de treinamento do modelo

#32817
Gabriel Alves
Moderador

    Opa, então seria em média umas 85 fotos para cada classe. Isso se o dataset estiver bem balanceado, pois se tiver por exemplo classes com uma quantidade de fotos bem abaixo dessa média (ex: 10 fotos) isso será ainda outro problema, o ideal é que esteja bem distribuído e se tiver classes com poucas fotos será necessário completar com mais fotos (ou gerar amostras através de técnicas de sintetização de novas imagens) pois se não vai ocorrer muitas detecções incorretas para essas classes especialmente.

    Como está sendo treinado uma quantidade de classes muito elevada (140 é até bem acima do MS COCO, que já tem bastante) então pode esperar que seja necessário treinar por mais tempo ainda para conseguir resultados melhores. Pois é conforme eu comentei, 17.000 embora pareça muito nesse caso é pouco considerando o número de classes (não há uma quantidade “certa” pois depende de algumas coisas como a complexidade dos objetos).

    Enfim, a sugestão continua sendo treinar por mais tempo. Treine o máximo de tempo que for possível e use daquela dica que comentei para evitar um possível overfitting.

    Se tiver muita disposição você poderia fazer um teste mais tarde: escolha apenas umas 5 classes e faça o treinamento do modelo com elas apenas. E depois compare os resultados obtidos, para verificar se a precisão melhora mesmo com uma quantidade de iterações menor (5.000 pelo menos), o que é o esperado. Se ainda assim continuar com resultados ruins então o problema é outro e não adianta treinar o modelo de 140 classes por mais tempo. Não creio que seja isso pois você seguiu as formulas para definir os valores do arquivo de config e imagino que as imagens de treinamento são boas e abrangentes, mas se por um acaso no teste com 5 classes continuar com uma assertividade próxima dessa sua atual então tem que verificar com mais calma o que mais pode ser; rever os passos e se as imagens de treinamento são o suficiente para o modelo aprender a detectar bem esses mesmos objetos nos cenários reais que você está testando (pois se for muito diferente em ambiente/iluminação/ângulo então a rede não entregará resultados tão bons como esperado).