Melhora os teus modelos de aprendizagem automática com o aumento de dados. Descobre técnicas para aumentar a precisão, reduzir o sobreajuste e melhorar a robustez.
O aumento de dados é uma técnica utilizada na aprendizagem automática para expandir artificialmente o tamanho de um conjunto de dados de treino, criando versões modificadas dos dados existentes. Este processo envolve a aplicação de várias transformações aos dados originais, tais como rodar, inverter, escalar ou cortar imagens. Ao aumentar a diversidade dos dados de treino, o aumento de dados ajuda a melhorar a capacidade de generalização dos modelos de aprendizagem automática, tornando-os mais robustos e menos propensos ao sobreajuste. O sobreajuste ocorre quando um modelo aprende demasiado bem os dados de treino, incluindo o ruído e os valores atípicos, o que pode levar a um fraco desempenho em dados novos e não vistos.
O aumento dos dados oferece várias vantagens importantes. Em primeiro lugar, ajuda a reduzir o sobreajuste, expondo o modelo a uma gama mais ampla de variações durante o treino. Isto torna o modelo menos sensível a caraterísticas específicas dos dados de treino e mais capaz de generalizar para dados novos e não vistos. Em segundo lugar, pode melhorar a precisão e o desempenho dos modelos, especialmente quando o conjunto de dados original é pequeno ou não tem diversidade. Ao criar mais exemplos de treino, o aumento de dados dá ao modelo mais oportunidades de aprender os padrões subjacentes nos dados. Por último, pode aumentar a robustez de um modelo, tornando-o mais resistente a alterações nos dados de entrada, como variações na iluminação, orientação ou ruído de fundo.
São utilizadas várias técnicas comuns para aumentar os dados, nomeadamente em tarefas de visão computacional:
Na visão computacional, o aumento de dados é particularmente útil porque pode simular uma vasta gama de cenários do mundo real que um modelo pode encontrar. Por exemplo, na deteção de objectos, um modelo Ultralytics YOLO da primeira vez que YOLO é mencionado numa página treinado em imagens aumentadas pode aprender a detetar objectos independentemente da sua orientação, tamanho ou condições de iluminação. Isto é crucial para aplicações como os veículos autónomos, em que o modelo tem de funcionar de forma fiável em condições diversas e imprevisíveis. Por exemplo, ao aplicar várias transformações, como rotação, escala e adição de ruído a imagens de peões e veículos, um sistema de condução autónoma pode ser treinado para detetar com precisão esses objectos numa variedade de cenários do mundo real. Da mesma forma, na classificação de imagens, o aumento de imagens com diferentes ajustes de cor pode ajudar o modelo a generalizar melhor para diferentes condições de iluminação.
Embora o aumento de dados seja amplamente utilizado na visão computacional, é também aplicável noutros domínios, como o processamento de linguagem natural (PLN) e o processamento de áudio. Na PNL, técnicas como a substituição de sinónimos, a retrotradução e a inserção/eliminação aleatória de palavras podem aumentar os dados de texto. No processamento de áudio, a adição de ruído de fundo, a alteração do tom ou o alongamento temporal do áudio podem criar diversos exemplos de treino.
É importante distinguir o aumento de dados de outras técnicas relacionadas:
Várias ferramentas e bibliotecas apoiam o aumento de dados. Em Python, bibliotecas como a OpenCV e a TensorFlow fornecem uma vasta gama de funções para transformações de imagens. Além disso, bibliotecas especializadas como a Albumentations oferecem pipelines de aumento altamente optimizados e diversificados. Ultralytics O HUB também fornece ferramentas para o aumento de dados, facilitando a integração destas técnicas no processo de formação de modelos. Explora técnicas de aumento de dados como MixUp, Mosaic e Random Perspective para melhorar o treino de modelos.