Detecção de Anomalias
Descubra como a detecção de anomalias em IA/ML identifica padrões incomuns em dados, com aplicações na prevenção de fraudes, saúde e muito mais.
A deteção de anomalias é uma capacidade crítica da
inteligência artificial que envolve
identificar pontos de dados, eventos ou observações que se desviam significativamente da maioria do conjunto de dados. Estas
Estas instâncias de desvio, normalmente designadas por outliers, indicam frequentemente incidentes críticos, como defeitos estruturais
condições médicas ou violações de segurança. No contexto específico da
visão computacional, os algoritmos de deteção de anomalias
analisam dados visuais para assinalar padrões irregulares que não estão em conformidade com uma representação aprendida de comportamento ou aparência
comportamento ou aparência "normal", filtrando efetivamente o ruído dos sinais significativos.
Mecanismos e abordagens fundamentais
A implementação da deteção de anomalias baseia-se normalmente na análise estatística e
técnicas de aprendizagem profunda. Dependendo da
disponibilidade de dados de treino rotulados, a abordagem
pode ser classificada em três tipos principais:
-
Aprendizagem supervisionada: Este método utiliza um conjunto de dados totalmente rotulado que contém exemplos normais e anómalos. O modelo é treinado
para efetuar uma classificação binária ou multi-classe. Embora eficaz, esta abordagem requer um volume significativo de exemplos
exemplos de anomalias conhecidas, que podem ser escassos em cenários do mundo real.
-
Aprendizagem não supervisionada: Funcionando sem dados rotulados, esta técnica assume que as anomalias são raras e distintas. Algoritmos como
agrupamento K-means ou
DBSCAN
agrupam pontos de dados semelhantes, deixando pontos isolados para serem classificados como anómalos.
-
Aprendizagem Semi-Supervisionada: Esta é uma abordagem popular na inspeção visual em que o sistema é
treinado exclusivamente em dados normais. Durante a inferência, qualquer entrada que produza um erro de reconstrução elevado - muitas vezes
calculado usando um autoencoder - ésinalizado como uma
anomalia.
Detecção de Anomalias vs. Detecção de Objetos
Embora ambas as técnicas sejam utilizadas para analisar imagens, é importante distinguir a deteção de anomalias da
deteção de objectos.
-
A deteção de objectos centra-se na localização e classificação de instâncias de categorias conhecidas (por exemplo
carros, peões) utilizando caixas delimitadoras definidas. O modelo
modelo deve ter visto exemplos destes objectos específicos durante o treino.
-
A deteção de anomalias é frequentemente aberta, o que significa que procura desvios desconhecidos. Por
Por exemplo, um sistema que monitoriza uma correia transportadora pode ser treinado com produtos perfeitos e deve assinalar qualquer risco, amolgadela ou descoloração sem saber explicitamente de antemão o aspeto desses defeitos,
ou descoloração sem saber explicitamente qual o aspeto desses defeitos. No entanto, modelos robustos como
Ultralytics YOLO11 podem ser adaptados à deteção supervisionada de anomalias
supervisionada, tratando os defeitos específicos como classes distintas.
Aplicações no Mundo Real
A capacidade de detetar automaticamente irregularidades torna esta tecnologia indispensável em vários sectores.
Implementação da deteção de defeitos com o YOLO11
Uma forma prática de implementar uma forma supervisionada de deteção de anomalias é treinar um modelo de visão para reconhecer
classes específicas de defeitos. O exemplo a seguir demonstra como carregar um
modelo personalizado treinado
e executar a inferência para identificar anomalias rotuladas como objectos.
from ultralytics import YOLO
# Load a YOLO11 model trained to detect specific defects (e.g., scratches)
model = YOLO("yolo11n.pt") # Replace with your custom trained weights
# Perform inference on a new image to check for anomalies
results = model.predict("path/to/product_image.jpg", conf=0.25)
# Display the results to visualize identified defects
for result in results:
result.show() # Renders the image with bounding boxes around defects
Ferramentas e Frameworks
O desenvolvimento destes sistemas exige ecossistemas de software robustos.
-
Bibliotecas: bibliotecas fundamentais como PyTorch e
TensorFlow fornecem os blocos de construção para arquitecturas de aprendizagem profunda.
-
Tratamento de dados: Para dados não visuais, o
módulo de deteção de outliers do Scikit-learn
oferece algoritmos padrão como o Isolation Forest.
-
Soluções de ponta a ponta: A futura
Ultralytics Platform foi concebida para otimizar todo o fluxo de trabalho, desde a
anotação de dados até o treinamento e a implantação do modelo,
tornando mais fácil a construção de sistemas de visão especializados para detetar anomalias em ambientes em tempo real.