Klasifikace obrázků s využitím konvolučních neuronových sítí

Blob Storage
Container Registry
Data Science Virtual Machine
Kubernetes Service
Machine Learning

Nápad řešení Solution Idea

Pokud se chcete podívat, jak nás rozšířit tento článek o další informace, podrobnosti implementace, doprovodné materiály nebo příklady kódu, dejte nám vědět s názory na GitHubu.If you'd like to see us expand this article with more information, implementation details, pricing guidance, or code examples, let us know with GitHub Feedback!

Štíhlá výroba, řízení nákladů a snížení počtu odpadů jsou pro výrobu nevyhnutelné, aby byly v konkurenčním prostředí.Lean manufacturing, cost control, and waste reduction are imperative for manufacturing to remain competitive. V případě výrobního oddělení na základě okruhu mohou být vadné desky cost Manufacturers a produktivita.In circuit-board manufacturing, faulty boards can cost manufacturers money and productivity. Linky sestavení spoléhají na lidského operátora pro rychlou kontrolu a ověření karet označených jako potenciálně vadných testovacími počítači sestavení.Assembly lines rely on human operators to quickly review and validate boards flagged as potentially faulty by assembly-line test machines.

Toto řešení analyzuje obrázky elektronických komponent vygenerované kamerami sestavení-line v továrně výrobního závodu a detekuje jejich chybový stav.This solution analyzes electronic component images generated by assembly-line cameras in a circuit-board manufacturing plant and detects their error status. Cílem je minimalizovat nebo odebrat nutnost zásahu člověka.The goal is to minimize or remove the need for human intervention. Řešení vytváří systém klasifikace imagí pomocí sítě konvoluční neuronové s 50 skrytými vrstvami, představí se 350 000 imagí v datové sadě ImageNet pro generování vizuálních funkcí imagí odebráním poslední síťové vrstvy.The solution builds an image classification system using a convolutional neural network with 50 hidden layers, pretrained on 350,000 images in an ImageNet dataset to generate visual features of the images by removing the last network layer. Tyto funkce se pak použijí ke školení posíleného rozhodovacího stromu pro klasifikaci Image jako "Pass" nebo "selhání" a konečné bodování prováděné na hraničních počítačích v závodě.These features are then used to train a boosted decision tree to classify the image as "pass" or "fail" and final scoring conducted on edge machines at the plant. Výsledky klasifikace jsou dobré (časově náročné na AUC>.90), což znamená, že řešení je vhodné k významně minimalizaci lidského zásahu při detekci selhání elektronických komponent v sestavách sestavování karet okruhů.The classification performance results are good (time-based cross-validation AUC>.90) which indicates the solution is suitable to drastically minimize human intervention for electronic-components failure detection in assembled circuit boards.

Použití tohoto řešení k automatizaci detekce selhání namísto spoléhání výhradně na lidské operátory pomáhá zlepšit identifikaci vadných elektronických komponent a zvýšit produktivitu.Using this solution to automate failure detection instead of relying solely on human operators helps improve the identification of faulty electronic components and boost productivity.

ArchitekturaArchitecture

Diagram architektury Stáhnout SVG této architektury.Architecture Diagram Download an SVG of this architecture.

KomponentyComponents

  • Azure Blob Storage: data se ingestují a ukládají ve službě Azure Blob Storage.Azure Blob Storage: Data is ingested and stored in Azure Blob Storage.
  • Data Science Virtual Machine Azure založené na GPU: Základní vývojové prostředí je DSVM GPU založené na Azure Ubuntu.GPU based Azure Data Science Virtual Machine: The core development environment is the Azure Ubuntu-based GPU DSVM. Data jsou načítána z objektu BLOB na virtuální pevný disk Azure, který je připojený k DSVM.The data is pulled from blob onto an Azure virtual hard disk (VHD) attached to the DSVM. Na tomto virtuálním pevném disku se zpracují data, image se natrénuje pomocí hluboké neuronové sítě a vyškole se model zesíleného stromu.On that VHD, the data is processed, the images are featurized using a Deep Neural Network, and a Boosted Tree model is trained. Server DSVM IPython notebook se používá pro vývoj řešení.DSVM IPython Notebook server is used for solution development.
  • Microsoft Machine Learning pro Apache Spark cluster HDInsight Spark: jako alternativu k DSVMmu školení pro velké datové sady používáme MMLSpark k sestavení vysoce škálovatelného výukového řešení.Microsoft Machine Learning for Apache Spark HDInsight Spark Cluster: As an alternative to DSVM-based training, for big datasets, we use MMLSpark to build a highly scalable training solution.
  • Azure Container Registry: model a webová aplikace jsou zabaleny do bitové kopie Docker a napsány do Azure Container Registry.Azure Container Registry: The model and web application are packaged into a Docker image and written to Azure Container Registry.
  • Služba Azure Machine Learning Správa modelů Service: pro nasazení a správu finálního modelu na virtuálním počítači a pro horizontální navýšení kapacity pomocí služby Azure Kubernetes na Kubernetes spravovaný cluster Azure slouží služba Azure Machine Learning Správa modelů.Azure Machine Learning Model Management Service: Azure Machine Learning Model Management service is used to deploy and manage the final model on a VM and to scale out using Azure Kubernetes Service to a Kubernetes managed Azure cluster. Do virtuálního počítače se zapisují také prediktivní webová služba a služba Java ETL, každé ve svém vlastním kontejneru.A predictive web service and a Java ETL service are also written onto the VM, each in its own container.
  • Služba Azure Kubernetes Service (AKS): nasazení pro toto řešení používá službu Azure Kubernetes Service, která spouští cluster spravovaný v Kubernetes.Azure Kubernetes Service (AKS): Deployment for this solution uses Azure Kubernetes Service running a Kubernetes-managed cluster. Kontejnery se nasazují z imagí uložených v Azure Container Registry.The containers are deployed from images stored in Azure Container Registry.

Další krokyNext steps