Classificação de imagem com redes neuronais convolucionais (CNNs)

Armazenamento de Blobs
Container Registry
Máquinas Virtuais de Ciência de Dados
Kubernetes Service
Machine Learning

Ideia de solução

Se quiser ver-nos expandir este artigo com mais informações, tais como potenciais casos de uso, serviços alternativos, considerações de implementação ou orientação de preços, informe-nos com GitHub Feedback!

A produção magra, o controlo de custos e a redução de resíduos são imperativos para que a produção se mantenha competitiva. Na fabricação de placas de circuitos, placas defeituosas podem custar dinheiro e produtividade aos fabricantes. As linhas de montagem dependem dos operadores humanos para rever e validar rapidamente as placas sinalizadas como potencialmente defeituosas por máquinas de teste de linha de montagem.

Potenciais casos de utilização

Utilize esta solução para automatizar a deteção de falhas em vez de depender exclusivamente dos operadores humanos, e ajudar a melhorar a identificação de componentes eletrónicos defeituosos e aumentar a produtividade.

Arquitetura

Diagrama de arquitetura: classificação de imagem com redes neuronais convolucionais e Azure Machine Learning.Faça o download de um SVG desta arquitetura.

Componentes

  • Azure Blob Armazenamento: Os dados são ingeridos e armazenados em Azure Blob Armazenamento.
  • GPU baseado em Azure Data Science Virtual Machine (DSVM): O ambiente de desenvolvimento principal é o GPU DSVM baseado em Azure Ubuntu. Os dados são retirados da bolha para um disco rígido virtual Azure (VHD) ligado ao DSVM. Nesse VHD, os dados são processados, as imagens são alotadas usando uma rede neural profunda (DNN), e um modelo de árvore impulsionado é treinado. O servidor DSVM IPython Notebook é utilizado para o desenvolvimento de soluções.
    • Como alternativa à formação baseada em DSVM, para grandes conjuntos de dados, pode utilizar ML Serviços em Azure HDInsight para construir uma solução de treino altamente escalável.
  • Registo do contentor Azure: O modelo e a aplicação web são embalados numa imagem docker e escritos para o Registo do Contentor de Azure.
  • Azure Machine Learning Gestão de Modelos (MLOps): Azure Machine Learning utiliza uma abordagem Machine Learning Operations (MLOps) para implementar e gerir o modelo final num VM, e para escalar usando o Serviço Azure Kubernetes para um cluster Azure gerido pela Kubernetes. Na implementação desta ideia de solução,um serviço web preditivo e um serviço Java ETL (extrato, transformação, carga) também estão escritos no VM, cada um no seu próprio contentor.
  • Serviço Azure Kubernetes (AKS): A implementação para esta solução utiliza o Serviço Azure Kubernetes que executa um cluster gerido por Kubernetes. Os contentores são implantados a partir de imagens armazenadas no Registo de Contentores de Azure.

Implementar este cenário

A implementação da ideia de solução discutida neste artigo analisa imagens de componentes eletrónicos geradas por câmaras de linha de montagem numa fábrica de circuitos e deteta o seu estado de erro. O objetivo é minimizar ou remover a necessidade de intervenção humana.

A solução constrói um sistema de classificação de imagem utilizando uma rede neural convolucional (CNN) com 50 camadas escondidas, pré-treinadas em 350.000 imagens num conjunto de dados imageNet para gerar características visuais das imagens removendo a última camada de rede. Estas características são então usadas para treinar uma árvore de decisão reforçada para classificar a imagem como "passe" ou "falha" e a pontuação final conduzida em máquinas de borda na planta. Os resultados do desempenho da classificação são bons (validação cruzada a tempo AUC > 0.90), o que indica que a solução é adequada para minimizar drasticamente a intervenção humana para a deteção de falhas de componentes eletrónicos em placas de circuito montado.

Passos seguintes