Ao clicar em “Aceitar todos os cookies”, concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Definições de cookies
Ao clicar em “Aceitar todos os cookies”, concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Conheça as diferenças entre a aprendizagem supervisionada e não supervisionada na visão computacional e saiba como escolher a abordagem mais adequada aos seus dados e aos objetivos do seu projeto.
Expanda os seus projetos de visão computacional com Ultralytics
A inteligência artificial (IA) assenta no conceito fundamental de ensinar as máquinas a aprender e a raciocinar de formas que se assemelham à inteligência humana. À semelhança do que acontece com as pessoas, que aprendem através de diferentes métodos, tais como a instrução direta ou a observação de padrões e experiências, os sistemas de IA e de aprendizagem automática são concebidos para seguir essas mesmas abordagens.
Mais concretamente, no que diz respeito aos algoritmos de aprendizagem automática, os sistemas são treinados para aprender a partir dos dados, em vez de serem explicitamente programados para cada tarefa. Em vez de se basearem em regras fixas, os modelos de aprendizagem automática identificam padrões nos dados e utilizam esses padrões para fazer previsões ou tomar decisões.
Por exemplo, a visão computacional é um ramo da IA e da aprendizagem automática que se centra em permitir que os sistemas interpretem e compreendam informações visuais, tais como imagens e vídeos. Desde o reconhecimento de objetos até à identificação de padrões ocultos em grandes conjuntos de dados, estes sistemas dependem em grande medida da forma como são treinados para aprender.
São utilizadas várias técnicas de aprendizagem de IA para treinar estes sistemas, dependendo do tipo de dados disponíveis e do problema a resolver.
Alguns modelos de visão computacional aprendem a partir de dados rotulados, em que cada entrada é associada a uma resposta correta, o que significa que cada imagem ou ponto de dados vem acompanhado de um rótulo predefinido que indica ao modelo o que representa. Isto permite que o modelo aprenda a relação entre a entrada e o resultado esperado, melhorando a sua capacidade de fazer previsões precisas sobre dados novos e nunca antes vistos.
Outros modelos de visão aprendem a partir de dados não rotulados, nos quais não são fornecidas respostas predefinidas, concentrando-se, em vez disso, na identificação de padrões e relações dentro dos próprios dados. Estas abordagens são conhecidas, respetivamente, como aprendizagem supervisionada e aprendizagem não supervisionada, e constituem a base de muitos sistemas de visão computacional de ponta.
Neste artigo, vamos explorar a aprendizagem supervisionada e não supervisionada, a forma como são utilizadas na visão computacional e como escolher a abordagem que melhor se adequa ao seu projeto de IA de visão. Vamos começar!
Como as abordagens de aprendizagem da IA impulsionam a visão computacional
Pode pensar na inteligência artificial como um guarda-chuva, abrangendo um conjunto de tecnologias que permitem às máquinas realizar tarefas que normalmente requerem inteligência humana. Dentro desse guarda-chuva, a aprendizagem automática é uma área fundamental que permite que os sistemas aprendam com os dados, em vez de dependerem apenas de regras fixas.
No âmbito da aprendizagem automática, diferentes técnicas de aprendizagem determinam a forma como um modelo aprende e melhora ao longo do tempo. Abordagens como a aprendizagem supervisionada (aprendizagem a partir de dados rotulados com respostas corretas), a aprendizagem não supervisionada (identificação de padrões em dados não rotulados), a aprendizagem por reforço (aprendizagem por tentativa e erro, utilizando feedback ou recompensas) e a aprendizagem semi-supervisionada (combinação de uma pequena quantidade de dados rotulados com uma grande quantidade de dados não rotulados) definem a forma como os sistemas processam os dados de entrada e geram os dados de saída.
Fig. 1. Uma visão geral dos métodos de aprendizagem da IA (Fonte)
Em particular, os sistemas de visão computacional são desenvolvidos utilizando essas abordagens de aprendizagem para interpretar e compreender dados visuais. A aprendizagem supervisionada é o método mais utilizado, uma vez que permite que os modelos aprendam a partir de exemplos claramente rotulados e produzam resultados precisos e fiáveis.
Por exemplo, um modelo pode ser treinado com imagens rotuladas como «gato» e «cão», aprendendo características como a forma, as orelhas e a estrutura facial, para que possa classify corretamente classify imagens utilizando algoritmos de classificação. Por outro lado, a aprendizagem não supervisionada e a aprendizagem semi-supervisionada também são utilizadas na visão computacional, frequentemente para explorar padrões nos dados ou para melhorar o desempenho quando os dados rotulados são limitados.
Uma análise da utilização de modelos de aprendizagem supervisionada na visão computacional
Pode comparar os algoritmos de aprendizagem supervisionada com uma sala de aula, onde um professor apresenta exemplos acompanhados das respostas corretas para que os alunos possam aprender o que está certo e o que está errado. Na aprendizagem automática, os modelos aprendem de forma semelhante utilizando dados rotulados, em que cada entrada está associada a uma saída conhecida.
Imaginemos que está a trabalhar no desenvolvimento de um sistema de visão computacional que automatiza a análise de jogos de basebol. Poderia treinar um modelo como Ultralytics com imagens ou fotogramas de vídeo em que objetos como a bola, o taco e os jogadores estejam identificados.
Cada objeto seria marcado com a sua localização e categoria, permitindo que o modelo aprendesse o que procurar. Com o tempo, o modelo consegue detect localizar esses objetos em novas imagens, permitindo aplicações como o acompanhamento da bola e a deteção de jogadores ao longo dos fotogramas.
Fig. 2. Um exemplo de deteção de objetos através da aprendizagem supervisionada (Fonte)
Para além da deteção de objetos, a aprendizagem supervisionada é amplamente utilizada numa variedade de tarefas de visão computacional, tais como a classificação de imagens, a segmentação de instâncias e a estimativa de poses, nas quais a precisão e a consistência são fundamentais. Em cada uma destas tarefas, os modelos aprendem a partir de dados rotulados para identificar padrões específicos e fazer previsões fiáveis sobre novos dados de entrada.
Estes modelos são normalmente criados com recurso ao deep learning, um tipo de aprendizagem automática que utiliza redes neurais para aprender padrões diretamente a partir dos dados. As redes neurais são concebidas para processar informação de uma forma vagamente inspirada no funcionamento do cérebro humano, permitindo que os modelos aprendam características visuais complexas a partir de grandes conjuntos de dados.
As abordagens anteriores de visão computacional baseavam-se frequentemente em características definidas manualmente, combinadas com algoritmos como as máquinas de vetores de suporte (SVM, modelos que classify identificando a melhor fronteira entre categorias) ou árvores de decisão (modelos que tomam decisões dividindo os dados em ramos).
Em contrapartida, os modelos de visão computacional atuais utilizam a aprendizagem profunda para aprender automaticamente essas características a partir dos dados, tornando-os mais eficazes na execução de tarefas visuais em grande escala e altamente detalhadas.
Compreender a necessidade de modelos de aprendizagem não supervisionada na IA de visão
Embora a aprendizagem supervisionada seja a abordagem mais comum na visão computacional, existem certas aplicações de visão em que não há dados rotulados disponíveis ou cuja criação é demasiado dispendiosa e demorada.
Nestes casos, os algoritmos de aprendizagem não supervisionada podem ser uma alternativa útil. Imaginemos que tem uma grande coleção de fotografias sem rótulos, captadas por uma câmara de vigilância da vida selvagem.
Não existem rótulos que indiquem o que cada imagem contém, mas mesmo assim pretende organizar ou compreender os dados. Um modelo não supervisionado pode analisar estas imagens e agrupar as que são semelhantes, separando animais com aparência semelhante em clusters, mesmo sem conhecer os seus rótulos exatos.
Como funciona a aprendizagem não supervisionada na visão computacional
Então, como funciona a aprendizagem automática não supervisionada? Em vez de aprender com respostas corretas, o modelo aprende identificando padrões e estruturas nos dados por si próprio. Procura semelhanças e diferenças nos dados sem depender de exemplos rotulados.
Um caso de uso comum é a deteção de anomalias, em que o modelo aprende como são os dados normais e, em seguida, identifica tudo o que se desvia dessa norma. A deteção de anomalias e valores atípicos é uma das aplicações industriais de maior impacto. Exemplos incluem a identificação de itens defeituosos numa linha de produção, a sinalização de exames médicos invulgares para revisão por um radiologista ou a deteção de atividades suspeitas em imagens de vigilância. Como os defeitos e as anomalias são frequentemente raros e variados, rotular todos os casos possíveis é impraticável, tornando as abordagens não supervisionadas a escolha natural.
Para apoiar este processo, são frequentemente utilizadas técnicas como a agrupamento e a redução de dimensionalidade, geralmente aplicadas a características extraídas das imagens, em vez das próprias imagens em bruto. Os métodos de agrupamento, como o agrupamento k-means, agrupam imagens semelhantes com base em padrões comuns, enquanto as técnicas de redução de dimensionalidade, como a análise de componentes principais (PCA), simplificam os dados concentrando-se nas características mais importantes.
Isto facilita ao modelo a identificação de padrões e estruturas significativas em conjuntos de dados grandes e complexos. A principal vantagem da aprendizagem não supervisionada é que funciona bem com dados não rotulados e pode revelar padrões que não são imediatamente evidentes. No entanto, é mais difícil de avaliar e oferece menos controlo sobre o resultado final, em comparação com a aprendizagem supervisionada.
Aprendizagem auto-supervisionada e semi-supervisionada na visão computacional
À medida que explora a aprendizagem supervisionada e não supervisionada, poderá questionar-se se existe um meio-termo entre as duas. Curiosamente, a aprendizagem auto-supervisionada e a aprendizagem semi-supervisionada colmatam a lacuna entre a aprendizagem supervisionada e a não supervisionada.
Estas abordagens permitem que os modelos aprendam a partir de dados não rotulados de forma mais eficaz. Em vez de se basearem apenas em exemplos rotulados, criam as suas próprias tarefas de aprendizagem a partir dos dados ou combinam um pequeno conjunto de dados rotulados com um conjunto maior de dados não rotulados.
Na aprendizagem auto-supervisionada, o modelo aprende resolvendo tarefas criadas a partir dos próprios dados. Por exemplo, pode ser-lhe apresentada uma imagem com uma parte em falta e aprender a prever o que deve preencher esse espaço, ou pode aprender a reconhecer diferentes perspetivas do mesmo objeto. Isto ajuda o modelo a aprender características úteis sem necessidade de rótulos manuais.
Por outro lado, na aprendizagem semi-supervisionada, utiliza-se uma pequena quantidade de dados rotulados juntamente com um conjunto maior de dados não rotulados para melhorar o desempenho. Em alguns casos, o modelo pode gerar rótulos para os dados não rotulados e utilizá-los para continuar a aprender.
A principal vantagem destas abordagens é que reduzem a necessidade de grandes conjuntos de dados rotulados, cuja criação é frequentemente dispendiosa e demorada. No entanto, podem ser mais complexas de conceber e avaliar em comparação com os métodos totalmente supervisionados.
Principais diferenças entre a aprendizagem supervisionada e a aprendizagem não supervisionada
A diferença entre a aprendizagem supervisionada e a não supervisionada resume-se à forma como um modelo aprende e ao que pretende alcançar. Enquanto a aprendizagem supervisionada depende de dados rotulados e de orientações claras para aprender tarefas específicas, a aprendizagem não supervisionada funciona sem respostas predefinidas e centra-se na descoberta de padrões e estruturas nos dados.
Por exemplo, num sistema de monitorização do tráfego, um modelo de aprendizagem supervisionada pode ser treinado com imagens rotuladas para detect , peões ou semáforos. Em contrapartida, um modelo não supervisionado poderia analisar grandes quantidades de imagens de vídeo para agrupar padrões de tráfego semelhantes ou identificar eventos invulgares, tais como congestionamentos inesperados ou movimentos anormais, sem que lhe seja explicitamente indicado o que procurar.
Quando utilizar a aprendizagem supervisionada na visão computacional
A aprendizagem supervisionada é uma excelente opção para tarefas de visão computacional em que o objetivo está claramente definido e o modelo precisa de mapear os dados de entrada para resultados precisos. Funciona especialmente bem quando se dispõe de um conjunto de dados rotulados fiável e se necessitam de resultados consistentes e previsíveis.
Fig. 3. Tarefas de visão computacional baseadas na aprendizagem supervisionada (Fonte)
É frequentemente utilizado em problemas em que o modelo tem de distinguir entre categorias conhecidas ou prever resultados específicos. Em vez de explorar padrões, o foco está em aprender relações precisas a partir de dados rotulados, facilitando a orientação do modelo para o resultado desejado.
Outra vantagem fundamental é o controlo. Com a aprendizagem supervisionada, é mais fácil avaliar o desempenho através de métricas claras, ajustar o modelo e garantir um comportamento estável durante a implementação. Isto torna-a ideal para sistemas que exigem consistência e fiabilidade ao longo do tempo.
No entanto, isto tem um lado negativo. O modelo depende fortemente da qualidade e da escala dos dados rotulados, e a recolha e anotação desses dados pode ser demorada.
Exemplos práticos de visão computacional supervisionada
Os modelos de IA de visão, como YOLO Ultralytics , utilizam a aprendizagem supervisionada para realizar tarefas como a deteção de objetos com elevada precisão, especialmente em aplicações em tempo real. Aqui estão alguns casos de utilização comuns da visão no mundo real em que a aprendizagem supervisionada faz a diferença:
Cuidados de saúde e imagiologia médica: Os médicos podem utilizar sistemas de visão computacional treinados com imagens rotuladas, tais como raios-X ou ressonâncias magnéticas, nos quais são utilizados classificadores para identificar condições como tumores ou fraturas, contribuindo para diagnósticos mais rápidos e precisos.
Inspeção de qualidade industrial: Em ambientes de fabrico, os sistemas de visão treinados com dados rotulados podem inspecionar produtos através da análise de várias características relacionadas com a qualidade, tais como a forma, os defeitos superficiais, a textura e o tamanho. Ao aprender com exemplos de produtos aceitáveis e defeituosos, estes sistemas conseguem identificar falhas de forma consistente e manter os padrões de produção.
Condução autónoma: Os sistemas de condução autónoma baseiam-se em modelos treinados com dados de condução rotulados para reconhecer faixas de rodagem, veículos, peões e sinais de trânsito, ajudando os veículos a circular em segurança em tempo real.
Sistemas de retalho e de caixa: As lojas utilizam modelos treinados com imagens de produtos rotuladas para identificar artigos nas prateleiras ou na caixa, permitindo a faturação automatizada e uma gestão de inventário mais eficiente. Estes sistemas também podem apoiar tarefas como a segmentação de clientes quando combinados com dados adicionais, ajudando as empresas a compreender melhor os padrões de compra.
Agricultura e monitorização de culturas: Os agricultores podem utilizar modelos treinados com imagens rotuladas para detect classify , por exemplo, identificando e contando batatas saudáveis e danificadas, melhorando o controlo de qualidade e reduzindo as perdas.
Fig. 4. Utilização YOLO detect contar batatas saudáveis e com defeito
Que tipos de problemas na visão computacional a aprendizagem não supervisionada consegue resolver
A aprendizagem não supervisionada é útil quando não se dispõe de dados rotulados suficientes ou quando os dados não apresentam respostas claras. Nessas situações, o objetivo não é fazer previsões exatas, mas compreender os padrões e a estrutura dos dados.
É frequentemente utilizado quando se explora um conjunto de dados não rotulado pela primeira vez. Em vez de indicar ao modelo o que procurar, permite-se que ele identifique semelhanças, agrupe imagens relacionadas ou destaque padrões invulgares por si próprio.
Numa grande coleção de imagens, uma abordagem não supervisionada pode ajudar a agrupar imagens semelhantes ou a identificar valores atípicos que possam necessitar de uma análise mais aprofundada. Isto torna-a um ponto de partida útil em projetos de ciência de dados.
Os modelos generativos, incluindo GANs, autoencoders variacionais e modelos de difusão, aprendem a distribuição subjacente das imagens para criar imagens totalmente novas. Estes modelos estão na base de aplicações como a síntese de imagens, o preenchimento de lacunas, a super-resolução e a transferência de estilos, e constituem a espinha dorsal dos atuais sistemas de IA generativa.
Segmentação não supervisionada: alguns métodos agrupam píxeis ou regiões em segmentos coerentes sem recorrer a máscaras rotuladas, o que é útil quando a anotação é demasiado dispendiosa ou quando o objetivo é descobrir a estrutura, em vez de corresponder a categorias predefinidas.
A aprendizagem não supervisionada também é eficaz quando se trabalha com grandes conjuntos de dados, nos quais a rotulagem é demorada ou impraticável. Nesses casos, permite-lhe obter insights a partir dos dados sem depender de dados de treino rotulados.
É também frequentemente utilizada em áreas como a IA generativa (modelos que criam novos dados, como imagens, texto ou áudio) e a aprendizagem de representações (modelos que aprendem características ou padrões úteis a partir de dados brutos), onde os modelos aprendem características gerais a partir de grandes quantidades de dados. Em geral, se o seu problema envolve exploração, descoberta de padrões ou o trabalho com dados não rotulados, a aprendizagem não supervisionada é uma abordagem flexível e prática a ter em conta.
Exemplos práticos de aprendizagem não supervisionada na visão computacional
Eis alguns exemplos de casos de utilização em que a aprendizagem não supervisionada é aplicada na visão computacional:
Detecção de anomalias na indústria transformadora: os modelos podem aprender a reconhecer o aspeto dos produtos normais e sinalizar defeitos ou irregularidades sem necessidade de exemplos rotulados de todos os defeitos possíveis.
Organização e pesquisa de imagens: grandes coleções de imagens, como bibliotecas de fotografias ou catálogos de comércio eletrónico, podem ser agrupadas automaticamente com base na semelhança visual, facilitando aos cientistas de dados a organização, a exploração e a pesquisa em grandes conjuntos de dados.
Vigilância e segurança: Os sistemas podem analisar imagens de vídeo para identificar padrões ou comportamentos invulgares, tais como movimentos inesperados ou alterações na composição da multidão, sem terem sido explicitamente treinados com eventos rotulados.
Pré-processamento e exploração de dados: Os métodos não supervisionados são frequentemente utilizados para explorar e estruturar dados de imagem brutos antes do treino de modelos supervisionados, contribuindo para melhorar a qualidade dos dados e reduzir o trabalho manual.
Limitações práticas da aprendizagem supervisionada e não supervisionada
Apesar das vantagens de ambas as abordagens de aprendizagem, há certas limitações a ter em conta. Aqui estão alguns fatores práticos a ter em conta ao criar modelos de visão computacional:
Sobreajuste em modelos supervisionados: Na aprendizagem supervisionada, um modelo pode adaptar-se excessivamente aos dados de treino, em vez de aprender padrões gerais. Isto acontece frequentemente quando o conjunto de dados é pequeno ou não é suficientemente diversificado. Por exemplo, um modelo treinado para detect num determinado tipo de produto pode falhar quando testado com novos dados que incluam produtos ligeiramente diferentes ou condições de iluminação distintas.
Desafios dos algoritmos de agrupamento: Na aprendizagem não supervisionada, um modelo pode agrupar pontos de dados semelhantes. No entanto, este processo pode falhar quando os dados apresentam ruído, são inconsistentes ou carecem de uma estrutura clara. Por exemplo, em tarefas de agrupamento de imagens, imagens com cores semelhantes mas objetos diferentes podem ser agrupadas incorretamente.
Importância de um pré-processamento adequado: Antes do treino, os dados têm de ser limpos e preparados. Normalmente, isto é feito utilizando Python que lidam com o processamento de imagens e a transformação de dados. É especialmente importante na visão computacional, onde as imagens podem variar em tamanho, qualidade ou iluminação. Sem um pré-processamento adequado, os modelos podem aprender a partir de ruído em vez de padrões significativos, o que leva a um desempenho insatisfatório.
Principais conclusões
Na visão computacional, tanto a aprendizagem supervisionada como a não supervisionada desempenham papéis importantes. A abordagem adequada depende do tipo de dados de que dispõe, sejam eles rotulados ou não, bem como do problema que pretende resolver e das suas necessidades de implementação.
Se o seu objetivo é obter resultados de elevada precisão e claramente definidos, a aprendizagem automática supervisionada é, muitas vezes, a melhor opção. Se estiver a explorar dados ou a trabalhar sem rótulos, a aprendizagem não supervisionada pode ser mais adequada.