KR20220117126A - 분산형 제품 결함 분석 시스템 및 방법, 및 컴퓨터 판독가능 저장 매체 - Google Patents

분산형 제품 결함 분석 시스템 및 방법, 및 컴퓨터 판독가능 저장 매체 Download PDF

Info

Publication number
KR20220117126A
KR20220117126A KR1020217040637A KR20217040637A KR20220117126A KR 20220117126 A KR20220117126 A KR 20220117126A KR 1020217040637 A KR1020217040637 A KR 1020217040637A KR 20217040637 A KR20217040637 A KR 20217040637A KR 20220117126 A KR20220117126 A KR 20220117126A
Authority
KR
South Korea
Prior art keywords
product
defect
computing cluster
product manufacturing
manufacturing
Prior art date
Application number
KR1020217040637A
Other languages
English (en)
Inventor
자오웨 리
둥 차이
야오핑 왕
메이쥐안 장
훙 왕
Original Assignee
보에 테크놀로지 그룹 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 보에 테크놀로지 그룹 컴퍼니 리미티드 filed Critical 보에 테크놀로지 그룹 컴퍼니 리미티드
Publication of KR20220117126A publication Critical patent/KR20220117126A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0275Fault isolation and identification, e.g. classify fault; estimate cause or root of failure
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41875Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by quality surveillance of production
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0243Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
    • G05B23/0254Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model based on a quantitative model, e.g. mathematical relationships between inputs and outputs; functions: observer, Kalman filter, residual calculation, Neural Networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0262Confirmation of fault detection, e.g. extra checks to confirm that a failure has indeed occurred
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0275Fault isolation and identification, e.g. classify fault; estimate cause or root of failure
    • G05B23/0281Quantitative, e.g. mathematical distance; Clustering; Neural networks; Statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06K9/62
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06395Quality analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/96Management of image or video recognition tasks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32368Quality control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30148Semiconductor; IC; Wafer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Resources & Organizations (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Manufacturing & Machinery (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Tourism & Hospitality (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Educational Administration (AREA)
  • General Business, Economics & Management (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Primary Health Care (AREA)
  • Game Theory and Decision Science (AREA)
  • Operations Research (AREA)
  • Evolutionary Biology (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)

Abstract

분산형 제품 결함 분석 시스템(104)으로서, 이는 제품 제조 프로세스에서 제품 결함 분석을 위해 사용되고, 제품 제조 메시지 처리 클러스터(201), 제품 결함 식별 클러스터(202), 제품 이미지 데이터베이스(203) 및 클라이언트 디바이스(204)를 포함하며, 제품 이미지 데이터베이스(203)는 제품 제조 프로세스에서 생성된 제품 이미지를 저장하도록 구성되고; 제품 제조 메시지 처리 클러스터(201)는 제품 제조 메시지에 따라 제품 결함 분석 작업을 생성하도록 구성되고, 제품 결함 분석 작업은 제1 결함 식별 작업을 포함하고; 제품 결함 식별 클러스터(202)는 결함 식별 모델에 의해 그리고 제1 결함 식별 작업에 기초하여 제품 이미지로부터 제품 결함 내용을 식별하도록 구성되고, 제품 결함 내용은 제품의 결함 타입, 결함 위치 및 결함 크기 중 어느 하나 이상을 포함하고; 클라이언트 디바이스(204)는 제품 결함 식별 결과를 출력하도록 구성된다.

Description

분산형 제품 결함 분석 시스템 및 방법, 및 컴퓨터 판독가능 저장 매체
본 개시내용의 실시예들은 제품 결함 분석을 위한 분산 컴퓨팅 시스템, 제품 결함 분석 방법, 및 컴퓨터 판독가능 저장 매체에 관한 것이다.
제품 제조 프로세스에서, 예를 들어, 반도체 제품들의 제조 프로세스에서, 디바이스들, 파라미터들, 동작들, 환경들 등의 문제들로 인해, 생산된 제품들은 처리 요건들을 충족시키지 못하거나 심지어 결함들을 초래할 수 있다. 따라서, 각각의 처리 후에 요건들을 충족시키지 못하는 결함 제품들의 결함 타입들, 결함 크기들, 결함 위치들 및 다른 정보를 즉시 계산하고 식별하고, 결함들이 계속되는 것을 피하기 위해 적시의 수정 및 개선을 수행할 필요가 있다. 현재, 전통적인 식별 방법들은 주로 수동 검출에 의존한다. 이는, 특히 제품 모델들이 많은 경우 및 복합적 문제들의 경우에, 검사자들에 대한 전문적 훈련을 필요로 한다. 예를 들어, 반도체 제품들은 입자, 잔류물, 약한 라인, 구멍, 스플래쉬, 정전기 파괴, 주름, 필름 컬러, 버블 등을 포함할 수 있는 광범위한 결함들을 갖는다. 이는 결함들을 찾고 관련 판단들을 내리기 위해 길고 그에 전적으로 사용되는 시간(dedicated time)과 검사자들의 주의를 필요로 한다.
요약하면, 기존의 기술적 수단은 낮은 효율 및 낮은 정확도의 문제들을 갖는다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템이 개시되고, 이는 제품 제조 프로세스에서 제품 결함 분석을 위해 사용된다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템은 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터, 제품 결함을 식별하기 위한 컴퓨팅 클러스터, 제품 이미지 데이터베이스, 및 클라이언트 디바이스를 포함하고, 여기서, 제품 이미지 데이터베이스는 제품 제조 프로세스에서 생성된 제품 이미지들을 저장하도록 구성되고; 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는 제품 제조 메시지들에 따라 제품 결함 분석 작업들을 생성하도록 구성되고, 제품 결함 분석 작업들은 제1 결함 식별 작업을 포함하고; 제품 결함을 식별하기 위한 컴퓨팅 클러스터는 제1 결함 식별 작업에 기초하여 결함 식별 모델을 통해 제품 이미지들 중 하나 내의 제품 결함 내용을 식별하도록 구성되고, 제품 결함 내용은 제품들의 결함 타입, 결함 위치, 및 결함 크기 중 어느 하나 이상을 포함하고; 클라이언트 디바이스는 제품 결함 식별 결과를 출력하도록 구성된다.
분산 시스템에 기초한 제품 결함 분석 방법이 개시되며, 이 방법은 제품 제조 메시지에 따라 제품 결함 분석 작업들을 생성하는 단계- 제품 결함 분석 작업들은 제1 결함 식별 작업을 포함함 -; 제1 결함 식별 작업에 기초하여 결함 식별 모델에 의해 제품 이미지 내의 제품 결함 내용을 식별하는 단계- 제품 결함 내용은 제품들의 결함 타입, 결함 위치, 및 결함 크기 중 어느 하나 이상을 포함함 -; 제품 결함 식별 결과를 출력하는 단계를 포함한다.
컴퓨터 프로그램들이 저장된 컴퓨터 판독가능 저장 매체가 개시되고, 프로그램들이 프로세서에 의해 실행될 때, 상기 제품 결함 분석 방법이 구현된다.
본 개시내용의 적어도 하나의 예시적인 실시예의 기술적 방식을 더 명확하게 예시하기 위해, 다음은 예시적인 실시예의 설명에 필요한 도면에 대한 간단한 설명이다. 다음의 설명에서 도면들은 단지 본 개시내용의 예시적인 실시예들에 불과하다.
도 1은 제품들의 제조 프로세스의 장면을 예시하는 개략도이다.
도 2는 본 개시내용의 적어도 하나의 실시예에 따른 사이트(site)의 개략도이다.
도 3은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템의 다른 개략도이다.
도 4는 본 개시내용의 적어도 하나의 실시예에 따른 제품 제조 메시지들을 처리하기 위한 방법의 흐름도이다.
도 5는 본 개시내용의 적어도 하나의 실시예에 따른 제품 결함 작업을 전송하기 위한 방법의 개략도이다.
도 6은 본 개시내용의 적어도 하나의 실시예에 따라 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터가 제품 결함 분석 작업들을 스케줄링하는 프로세스를 예시하는 개략도이다.
도 7은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템 내의 클라이언트 디바이스의 그래픽 사용자 인터페이스(GUI)의 개략도이다.
도 8은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템 내의 클라이언트 디바이스의 GUI의 다른 개략도이다.
도 9는 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템 내의 클라이언트 디바이스의 GUI의 또 다른 개략도이다.
도 10은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석 방법의 개략도이다.
도 11은 본 개시내용의 다른 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템의 개략도이다.
본 개시내용의 예들은 본 개시내용의 예들이 예시된 첨부 도면들을 참조하여 더 완전하게 후술된다. 그러나, 본 개시내용은 많은 상이한 형태들로 구현될 수 있고, 본 개시내용은 본 명세서에 제시된 예들에 의해 제한되는 것으로 해석되어서는 안 된다. 설명 전반에 걸쳐, 동일한 구성요소들을 나타내기 위해 동일한 참조부호가 사용된다.
본 명세서에서 사용되는 용어들은 특정 실시예들을 설명하기 위한 목적으로만 사용되며, 본 개시내용을 제한하는 것을 의도하지 않는다. 본 명세서에서 사용되는 바와 같이, 단수 형태의 "하나(one)", "이(this)"는, 문맥상 명확하게 달리 나타나지 않는 한, 복수 형태도 포함하는 것을 의도한다. 본 명세서에서 사용될 때, 용어 "포함한다"는 선언된 특징, 전체, 단계, 동작, 요소 및/또는 컴포넌트의 존재를 지시하지만, 하나 이상의 다른 특징, 전체, 단계, 동작, 요소, 컴포넌트 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는다는 것도 이해해야 한다.
달리 정의되지 않는 한, 기술적 및 과학적 용어들을 포함하여, 본 명세서에서 사용되는 용어들은 본 개시내용이 속하는 분야의 통상의 기술자가 일반적으로 이해하는 것들과 동일한 의미를 가질 것이다. 본 명세서에서 사용되는 용어들은, 본 명세서에서 구체적으로 정의되지 않는 한, 이상적이거나 과도하게 정형화된 의미가 아니라, 본 명세서의 맥락 및 해당 분야에서의 그들의 의미와 일치하는 의미를 갖는 것으로 해석되어야 한다.
본 개시내용은 본 개시내용의 실시예들에 따른 방법들, 디바이스들(시스템들), 및/또는 컴퓨터 프로그램 제품들을 예시하는 블록도들 및/또는 흐름도들을 참조하여 후술된다. 블록도 및/또는 흐름도 도면의 박스 및 박스들의 조합은 컴퓨터 프로그램 명령어들에 의해 구현될 수 있다는 것을 이해해야 한다. 이러한 컴퓨터 프로그램 명령어들은 범용 컴퓨팅 디바이스, 전용 컴퓨팅 디바이스의 프로세서, 및/또는 다른 프로그램가능 데이터 처리 디바이스에 제공될 수 있고, 따라서, 컴퓨팅 디바이스 프로세서 및/또는 다른 프로그램가능 데이터 처리 디바이스에 의해 실행되는 명령어들은 블록도 및/또는 흐름도 블록에 명시되는 기능들/액션들을 구현하는 방법들을 생성한다.
따라서, 하드웨어 및/또는 소프트웨어(펌웨어, 상주 소프트웨어, 마이크로코드 등을 포함함)가 또한 본 개시내용을 구현하기 위해 사용될 수 있다. 또한, 본 개시내용은 명령어 실행 시스템에 의해 또는 그와 함께 사용하기 위해 매체에 구현된 컴퓨터 사용가능 또는 컴퓨터 판독가능 프로그램 코드를 갖는 컴퓨터 사용가능 또는 컴퓨터 판독가능 저장 매체 상의 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 본 개시내용의 맥락에서, 컴퓨터 사용가능 또는 컴퓨터 판독가능 매체는 명령어 실행 시스템, 디바이스, 또는 장비에 의해 또는 그와 함께 사용하기 위한 프로그램을 포함, 저장, 통신, 송신, 또는 전달하는 임의의 매체일 수 있다.
현재, 제품 제조시의 결함 검출 동안, 여전히 제품 제조 메시지들의 수동 분석이 주로 사용된다. 제품 제조의 관련 품질 검사 절차에서, 수동 검사는 많은 불안정한 요인이 있고, 이는 품질 검사의 정확도의 저하를 초래하며, 이에 의해 제품 품질에 잠재적인 영향을 미친다. 한편, 검출 프로세스에서, 모든 데이터가 수동으로 입력되는 것은 비효율적이다. 동시에, 제한된 시간 내에 검출될 제품의 이미지에 대해 수동으로 획득된 정보는 비교적 개략적이고, 이는 결함 원인들의 후속 검색 및 분석에 불편을 야기한다. 상기 이유들 전부 또는 그 일부에 기초하여, 본 개시내용은 다음의 실시예들을 제공한다.
본 개시내용은 반도체 제품 제조의 맥락에서 설명되지만, 본 개시내용의 실시예들은 반도체 제품 제조에 적용되는 것에 제한되지 않고, 임의의 제품의 제조 프로세스에 적용하는 것을 고려할 수 있다는 점에 유의해야 한다.
아래에서 언급되는 제품은 실제 제조 프로세스의 원료들뿐만 아니라, (제품 제조 디바이스에 의해 처리될 수 있는) 각각의 프로세스 후의 반제품 또는 완제품들을 포함한다. 예를 들어, 반도체 산업에서, 제품들은 생산 라인에 진입하기 시작하는 유리들, 노광 프로세스를 거친 어레이 기판들, 셀-어셈블리를 거친 스크린들 등을 포함한다. 제품 이미지들은 (카메라, 자동 광학 검사(AOI) 디바이스 등과 같은) 이미지 취득 디바이스들에 의해 직접 획득된 제품 이미지들은 물론, 결함 내용 라벨들을 포함하는 제품 이미지들(즉, 결함 내용의 식별을 거친 제품 이미지들)도 포함한다.
공장의 제품 제조 시스템은 비교적 복잡하다. 제품 제조 메시지들의 처리는 다수의 시스템들의 통신, 파일들 및 이미지들의 송신들, 및 하드웨어 리소스들의 스케줄들을 수반한다. 또한, 전체 시스템은 제품 제조의 원활한 진행을 보장하기 위해 높은 가용성 및 높은 동시성을 보장할 필요가 있다.
이러한 이유로, 본 개시내용은 제품 결함 분석을 위한 분산 컴퓨팅 시스템, 그 방법, 및 컴퓨터 판독가능 저장 매체를 제공하며, 이는 다양한 제품들의 제조, 특히 반도체 디스플레이 디바이스들의 제조 프로세스에 적용되어, 제품 제조 프로세스에서 제품 결함 식별의 효율을 개선할 수 있다.
도 1은 제품 제조 프로세스의 장면(100)을 예시한 개략도이다.
도 1에 도시된 바와 같이, 다수의 제품들이 차례로 장면(100) 내의 사이트(101)를 통과한다. 사이트(101)는 전체 생산 라인 흐름에서 처리 기법을 완료할 때 제품들이 통과할 수 있는 하나 이상의 디바이스로 구성된 시스템을 나타낸다.
예를 들어, 반도체 산업에서 어레이 기판의 포토리소그래피 프로세스에 관하여, 이 프로세스에 대응하는 사이트(101)는 세정 디바이스, 프리-베이킹 디바이스, 냉각 디바이스, 코팅 디바이스, 노광 디바이스, 현상 디바이스, 포스트-베이킹 디바이스, 냉각 디바이스 등으로 구성된 시스템을 포함할 수 있다. 사이트(101)는 또한 노광 프로세스에 대응하는 단일 디바이스(노광 디바이스)일 수 있다. 제품이 사이트(101)에 진입하는 경우, 트랙인(trackin) 메시지가 사이트(101)에 의해 포착된다. 제품이 사이트(101)를 떠나면, 사이트(101)에 의해 트랙아웃(trackout) 메시지가 포착된다. 제품 품질을 보장하기 위해, 트랙인 메시지 및 트랙아웃 메시지 내의 제품 정보/제품 데이터는 제품 제조의 요건들을 충족시킬 필요가 있다.
사이트(101)는 또한 제품 제조 프로세스에서 가상 사이트일 수 있으며, 이는 처리 단계들을 비물리적 형태로 나타낸다. 예를 들어, 제품 결함 분석이 하나의 프로세스로서 채택된다. 그리고 사이트(101)가 제품 결함 분석 시스템으로서 채택된다. 사이트(101)는 통과하는 제품들에 대해 결함 분석을 수행하고, 제품 결함 검사를 위해 모든 프로세스 정보를 획득하고 분석한 다음, 제품 결함들을 결정하도록 구성될 수 있다. 제품 결함이 제품 제조 요건들을 만족시킬 수 없는 경우, 사이트(101)에 의해 경보가 트리거되며, 이는 제품이 다음 사이트에 진입하지 못하게 한다. 또는, 제품이 유지보수 프로세스를 위해 사이트에 진입할 필요가 있다는 표시가 사이트(101)로부터 발행된다.
사이트(101)는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)을 포함할 수 있다. 사이트(101)는 또한 이미지 취득 디바이스(102) 및 제품 제조 메시지 서비스 디바이스(103) 중 어느 하나 이상을 포함할 수 있다. 이미지 취득 디바이스(102), 제품 제조 메시지 서비스 디바이스(103), 및 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 프로세서들 및 메모리들을 포함하는 컴퓨팅 디바이스들일 수 있다. 이러한 디바이스들은 네트워크를 통해 서로 연결될 수 있다. 상기 디바이스들은 서로 직접적으로 또는 간접적으로 통신될 수 있다. 예를 들어, 이들은 네트워크를 통해 데이터 및/또는 신호들을 전송 및 수신할 수 있다. 네트워크는 인터넷에 기초한 사물 인터넷 및/또는 유선 네트워크 또는 무선 네트워크일 수 있는 통신 네트워크일 수 있다. 예를 들어, 네트워크는 LAN(local area network), MAN(metropolitan area network), WAN(wide area network), 및 셀룰러 데이터 통신 네트워크와 같은 정보 교환의 기능을 실현할 수 있는 전자 네트워크일 수 있다.
본 개시내용에서, 사이트(101)는 제품 결함의 검출, 분석, 및 처리에 주로 적용된다. 본 기술 분야의 통상의 기술자는 사이트(101)는 또한 제품 제조의 다른 프로세스들에 적용될 수 있다는 것을 이해할 것이다.
이미지 취득 디바이스(102)는 제조 프로세스에서 제품들의 제품 이미지들을 획득하도록 구성된다. 이미지 취득 디바이스(102)는 사진 카메라, 카메라 또는 다른 디바이스들일 수 있다. 예를 들어, 반도체 산업에서의 스크린 결함 검출 동안, 이미지 취득 디바이스(102)는 자동 광학 검사(AOI) 디바이스일 수 있다. AOI 디바이스는 제조 프로세스에서 제품들에 대해 광학 검사를 수행하고, 제품 이미지들과 표준 제품 이미지들 사이의 차이들을 결정하고, 결함들을 결정하고 사진을 촬영한 다음, 제품 결함 그래프들과 함께 제품 이미지들을 획득하여 결함 타입의 후속 식별 및 분석을 용이하게 하도록 구성될 수 있다. 이미지 취득 디바이스(102)는 또한 이미지 취득 기능을 갖는 다른 카메라들 또는 사진 카메라들일 수 있다. 이미지 취득 디바이스(102)는 포착된 제품 이미지들 및 대응하는 파일들을 제품 이미지 데이터베이스로 전송할 수 있다. 제품 이미지 데이터베이스는 분산형 파일 시스템(DFS) 또는 다른 데이터 저장 디바이스들일 수 있다.
제품 제조 메시지 서비스 디바이스(103)는 제품 제조 프로세스에서 생성된 제품 제조 메시지들의 전부 또는 일부를 모니터링 및 관리하도록 구성된다. 지능형 제조 프로세스에서, 많은 양의 제품 제조 메시지들이 생성된다. 제품 제조 메시지는 제품 제조 프로세스에서 생성된 생산 기록 정보를 포함한다. 제품이 통과한 제품 제조 디바이스에 대한 정보 및 이들 디바이스에 의해 제품이 처리된 후에 획득된 결과가 제품 제조 메시지로부터 획득될 수 있다. 예를 들어, 제품 제조 메시지 서비스 디바이스(103)는 제조 실행 시스템(MES)을 포함하고, 실행 정보 시스템(EIS)을 또한 포함할 수 있고; 제품 제조 메시지 서비스 디바이스(103)는 또한 제품 제조를 모니터링하기 위해 사용되는 다른 디바이스들일 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다. 제품 제조 메시지 서비스 디바이스(103)는 제품 제조 프로세스에서 제품 제조 메시지들의 전부 또는 일부를 포착하고, 제품 결함 분석을 위해 제품 제조 메시지들을 분산 컴퓨팅 시스템(104)에 전파 또는 전송하도록 구성될 수 있다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 제품 제조 메시지들에 대해 추가 처리를 수행하고, 제품 결함들의 검출 분석을 위한 제품 결함 분석 작업들을 생성하도록 구성될 수 있다. 제품 결함 분석 작업들은 결함 식별 모델들의 이용에 의해 제품들에 대한 결함 식별을 수행하기 위한 작업들, 검사자들에 의한 제품들에 대한 결함 식별을 수행하기 위한 작업들, 및 결함 식별 모델들을 훈련하기 위한 작업들 등을 포함한다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 제품 결함 분석을 완료한 후에 분석 결과를 제품 제조 메시지 서비스 디바이스(103)에 반환하고, 또한 분석 결과를 이미지 취득 디바이스(102)에 반환하도록 구성될 수 있다.
도 2는 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)의 개략도이다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 메시지들 및 통신을 전달하고 그들의 거동들을 조정하기 위해 네트워크를 통해 서로 연결되는 컴퓨터들의 그룹에 의해 형성되는 시스템이다. 그 컴포넌트들은 공통의 목표를 달성하기 위해 서로 상호작용한다. 네트워크는 인터넷에 기초한 사물 인터넷 및/또는 유선 네트워크 또는 무선 네트워크일 수 있는 통신 네트워크일 수 있다. 예를 들어, 네트워크는 LAN, MAN, WAN, 셀룰러 데이터 통신 네트워크, 또는 정보 교환의 기능을 실현할 수 있는 임의의 전자 네트워크일 수 있다. 분산 컴퓨팅 시스템은 소프트웨어 객체들과 같은 소프트웨어 컴포넌트들, 또는 분산 객체들, 에이전트들, 액터(actor)들, 가상 컴포넌트들 등과 같은 다른 타입들의 개별적으로 어드레싱가능한 격리된 엔티티들을 포함할 수 있다. 일반적으로, 각각의 이러한 컴포넌트는 개별적으로 어드레싱가능하고 분산 시스템에서 (정수, GUID(globally unique identifier), 문자열, 또는 불투명 데이터 구조와 같은) 고유 아이덴티티를 갖는다. 지리적 분산을 허용하는 하는 분산 시스템에서, 애플리케이션은 배치에 의해 컴퓨팅 클러스터에 상주할 수 있다. 분산 컴퓨팅 환경을 지원하는 다양한 시스템들, 컴포넌트들, 및 네트워크 구성들이 있다. 예를 들어, 컴퓨팅 시스템은 로컬 네트워크 또는 폭넓게 분산된 네트워크를 거쳐 유선 또는 무선 시스템을 통해 서로 연결될 수 있다. 물론, 많은 네트워크들이 인터넷에 결합되고, 인터넷은 폭넓은 분산 컴퓨팅을 위한 인프라스트럭처를 제공하며, 많은 다양한 네트워크들을 포함한다. 임의의 네트워크 인프라스트럭처가, 예를 들어, 다양한 예들에서 설명된 계통적 통신을 위해 사용될 수 있다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 컴퓨팅 디바이스들과 시스템들 사이의 통신 교환을 통해 컴퓨터 리소스들 및 서비스들의 공유를 제공한다. 이러한 리소스들 및 서비스들은 (파일들과 같은) 객체들, 캐시 저장 디바이스들, 및 디스크 저장 디바이스들에 대한 정보 교환을 포함한다. 이러한 리소스들 및 서비스들은 또한 부하 균형, 리소스 확장, 처리 특수화 등을 위한 다수의 처리 유닛에 걸친 처리 용량의 공유를 포함한다. 예를 들어, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 클라이언트 디바이스들/서버들, 및 피어-투-피어 또는 하이브리드 아키텍처들과 같은 네트워크 토폴로지들 및 네트워크 인프라스트럭처가 제공되는 호스트를 포함할 수 있다.
도 2는 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 사이트(101)의 개략도이다.
도 2에 도시된 바와 같이, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202), 제품 이미지 데이터베이스(203), 및 클라이언트 디바이스(204)를 포함할 수 있다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 또한(모델 관리 서버와 같은) 다른 서버들 또는 컴퓨팅 클러스터들을 포함할 수 있다.
상기 컴퓨팅 클러스터(예를 들어, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201) 및 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202))는 네트워크를 통해 서로 연결된 2개 이상의 상호 독립적인 컴퓨터를 포함할 수 있다. 이러한 컴퓨터들은 그룹을 형성하고 단일 시스템의 모드에서 관리된다. 컴퓨팅 클러스터는 외부 세계와 상호작용 하는 경우 독립 서버로서 채택될 수 있다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 또한, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202), 클라이언트 디바이스(204), 및 제품 이미지 데이터베이스(203) 상에서 실행되는 프로그램, 방법, 데이터 저장소, 프로그램가능 로직 등을 포함할 수 있다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 디바이스들은 개인 휴대 정보 단말기(PDA), 오디오/비디오 디바이스, 이동 전화, 동영상 전문가 그룹 오디오 계층 III(MP3) 플레이어, 개인용 컴퓨터(PC), 랩탑 컴퓨터 및 서버와 같은 다양한 타입의 하드웨어 디바이스들일 수 있다는 것을 이해할 수 있다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202), 및 클라이언트 디바이스(204)를 포함할 수 있다. 선택적으로, 제품 제조 메시지 서비스 디바이스(103) 및 이미지 취득 디바이스(102)가 또한 제품 결함 분석을 위해 분산 컴퓨팅 시스템(104)에 포함될 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지 서비스 디바이스(103)와 통신할 수 있다. 제품 제조 메시지 서비스 디바이스(103), 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201) 및 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 프로세서 및 메모리를 포함하는 컴퓨팅 디바이스일 수 있다. 이러한 디바이스들은 네트워크를 통해 서로 연결될 수 있다. 상기 디바이스들은 서로 직접적으로 또는 간접적으로 통신할 수 있는데, 예를 들어, 네트워크를 통해 데이터 및/또는 신호들을 전송 및 수신할 수 있다.
제품 이미지 데이터베이스(203)는 제품 제조 프로세스에서 생성된 제품 이미지들을 저장하도록 구성된다. 제품 제조 프로세스에서 생성된 제품 이미지들은 제품 제조 프로세스에서 이미지 취득 디바이스(102)에 의해 획득된 제품 이미지들을 포함할 수 있고, 그리고 또한 다른 방식들에 의해 획득되어 제품 이미지 데이터베이스에 저장된 제품 이미지들을 포함할 수 있다. 예를 들어, AOI 디바이스가 제품 이미지들을 획득한 후에, 제품 이미지들은 제품 이미지 데이터베이스(203)에 직접 저장될 수 있고, 또한 공장 데이터베이스에 저장되고, 그 후, 공장 데이터베이스 내의 제품 이미지들이 제품 이미지 데이터베이스(203)에 송신될 수 있다. 공장 데이터베이스에 의한 제품 이미지들의 제품 이미지 데이터베이스(203)로의 송신은, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)이 제품 이미지 데이터베이스(203) 내의 제품 이미지들에 대해 호출, 저장 및 다른 동작들을 수행하는 경우, 공장 내의 다른 데이터가 영향을 받지 않는 것을 보장할 수 있다. 제품 이미지 데이터베이스(203)는 DFS일 수 있으며, 또한, 관련 데이터베이스(오라클, 레디스 및 MySQL)일 수 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지들에 따라 제품 결함 분석 작업들을 생성하도록 구성된다. 제품 결함 분석 작업은 제1 결함 식별 작업을 포함한다.
전술한 바와 같이, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 전체 제품 제조 프로세스에서 검출 사이트로서 채택될 수 있다. 공장의 상이한 생산 라인들의 제품들은 검출 프로세스에서 사이트로 유동할 수 있다. 현재, 공장에서는, 풍부한 제품 및 복잡한 프로세스로 인해, 많은 수의 제품 제조 메시지가 생성될 것이다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 이미지 취득 디바이스(102)에 의해 생성된 제품 제조 메시지들 또는 제품 제조 메시지 서비스 디바이스(103)에 의해 수신된 제품 제조 메시지들을 획득하고, 제품 제조 메시지들의 내용을 분석하고, 제품 결함 분석 작업들을 생성하도록 구성될 수 있다. 따라서, 제품 결함 분석을 위해 분산 컴퓨팅 시스템(104)의 다른 디바이스들 및 컴퓨팅 클러스터들에 대해 할당 및 스케줄링하기 위한 작업이 실현된다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함 분석을 위해 분산 컴퓨팅 시스템(104)에 의해 생성된 제품 제조 메시지들을 제품 제조 메시지 서비스 디바이스(103)에 피드백하도록 추가로 구성될 수 있다.
본 개시내용에서, 제품 제조 메시지는 제품 제조 사이트 정보 및/또는 제품 정보를 포함할 수 있다. 제품 제조 사이트 정보는 사이트의 식별정보, 사이트의 물리적 위치(예를 들어, AOI 디바이스의 물리적 위치), 제품 제조 프로세스의 사이트의 노드 정보(예를 들어, 노광 프로세스의 결함 식별/검출, 세정 프로세스의 결함 식별/검출 등) 등을 포함한다. 이 정보는 특정의 사이트를 식별하거나 위치 확인하는 데 도움이 될 수 있다. 제품 정보는 제품 타입, 제품 명칭, 제품 아이덴티티, 제품 우수성 등일 수 있다. 이 정보는 특정 제품을 식별 또는 위치 확인하는데 도움이 될 수 있다. 본 기술 분야의 통상의 기술자는, 내용이 제품 제조 프로세스의 결함 식별/검출에 관련되는 한, 제품 제조 메시지들의 내용이 상기 예들에 제한되지 않는다는 것을 이해할 것이다.
제품 제조 메시지는 로트 제품 제조 메시지일 수 있고, 또한 단일 제품 제조 메시지일 수 있다. 예를 들어, 제품 생산 라인의 스크린 제품이 AOI 디바이스에 의해 검사될 때, 스크린(또는 Glass라고도 지칭되는 하는 대형 유리 기판 스크린) 상의 검사가 완료된 후에, 단일 제품 제조 메시지가 제품 제조 메시지로서 AOI 디바이스로부터 제품 제조 메시지 서비스 디바이스(103)로 전송될 수 있고, 사진 파일들(.jpg/.gls)이 AOI 디바이스로부터 제품 이미지 데이터베이스 (203)로 전송될 수 있다. 단일 제품 제조 메시지는 또한 AOI 디바이스로부터 현재 공장 내의 모든 활성화된 디바이스로 전송될 수 있다. AOI 디바이스는 또한 유닛으로서 LOT를 취함으로써 로트 제품 제조 메시지를 전송하도록 구성될 수 있다(1개의 로트는 20 Glass를 포함하고, 각각의 Glass는 단일 대형 유리 기판 스크린임). 예를 들어, 하나의 LOT의 검사가 완료되면, 하나의 제품 제조 메시지로서 채택된 로트 제품 제조 메시지(예를 들어, 로트 제품 정보)가 AOI 디바이스로부터 제품 제조 메시지 서비스 디바이스(103) 또는 임의의 다른 관련 디바이스로 전송될 수 있다. 제품 제조 프로세스에서, 다수의 제품들이 일반적으로 제조 활동을 위한 유닛으로서 채택된다. 그리고 다수의 제품들이 통과하는 제품 제조 사이트들 및 프로세스 흐름들은 모두 일관성이 있다. 따라서, 로트-제품 제조 메시지들은 일반적으로 하나의 제품 제조 메시지로서 채택되고 공장에서 송신된다. 따라서, 제품 제조 메시지 관리가 더 효율적이다.
제품 제조 메시지는 제품 결함 식별과 무관한 내용을 포함할 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지를 분석하고, 제품 결함 식별에 관련된 정보(예컨대, 제품 타입)를 획득하고, 그 정보를 기초로 대응하는 제품 결함 분석 요청 메시지를 생성하고, 제품 결함 분석 요청 메시지들을 전송하는 것을 통해 제품 결함 분석 작업들을 발행하도록 구성될 수 있다.
예를 들어, 하나의 로트 제품 제조 메시지를 분석하는 프로세스에서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지로부터 다수의 제품에 포함된 제품 이미지들의 수량, 제품 이미지들의 대응하는 제품 타입들, 제품 이미지들의 크기들 등을 획득하도록 구성될 수 있다. 제품 이미지는 기판, 퇴적, 에칭으로부터 최종 셀-어셈블리로의 반도체 스크린의 임의의 생산 단계에서 포착된 이미지일 수 있다. 제품 결함 분석 요청 메시지를 생성하는 프로세스에서, 제품 제조 메시지들을 처리하여 제품 결함 분석 작업에서 분석될 제품 타입 및 실행될 제품 결함 분석 작업의 타입(예를 들어, 인공 지능(AI) 식별, 수동 식별 등)을 결정하기 위해 컴퓨팅 클러스터(201)가 필요할 수 있다. 후속하여, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 제품 결함 분석 요청 메시지에 대한 메시지 포맷 검증을 수행한 다음, 제품 결함 분석 요청 메시지의 포맷이 적격인 경우, 제품 결함 분석 요청 메시지를 전송하는 것을 통해 제품 결함 분석을 위해 분산 컴퓨팅 시스템(104) 내의 다른 디바이스들(예컨대, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 및 클라이언트 디바이스)에 제품 결함 분석 작업들을 발행하도록 구성될 수 있다. 제품 결함 분석 작업 타입은 상이한 타입들의 제품 결함 분석 작업들을 나타내기 위해 사용된다. 제품 결함 분석 작업은 제1 결함 식별 작업을 포함하고, 제1 결함 식별 작업은 AI에 기초하여 결함 식별을 수행하는 작업을 지칭하고, 작업은 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 실행될 수 있다. 따라서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지에 따라 제1 결함 식별 작업을 생성하고, 제품 결함을 식별하기 위해 제1 결함 식별 작업을 컴퓨팅 클러스터(202)에 전송하도록 구성될 수 있다.
제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 그래픽 처리 유닛(GPU) 계산 리소스들을 이용하여 AI 추론(시각적 식별) 및 훈련 작업들을 실행할 수 있는 하나 이상의 디바이스일 수 있다. AI에 기초하여 실행되는 추론 작업은 결함 식별 모델에 기초한 결함 식별 작업일 수 있고, 결함 식별 모델은 주로 딥 러닝에 기초한 신경망 모델이다. 예를 들어, 결함 식별 모델은 피드포워드 신경망에 기초할 수 있다. 피드포워드 네트워크는 비순환 그래프로서 구현될 수 있고, 노드들은 계층들에 배열된다. 일반적으로, 피드포워드 네트워크 토폴로지는 입력 계층 및 출력 계층을 포함하고, 입력 계층 및 출력 계층은 적어도 하나의 은닉 계층에 의해 분리된다. 은닉 계층은 입력 계층에 의해 수신된 입력을 출력 계층에서 출력을 생성하기 위한 유용한 표현으로 변환한다. 네트워크 노드들은 에지들을 통해 인접 계층들 내의 노드들에 완전히 연결되지만, 그러나, 각각의 계층 내의 노드들 사이에는 에지들이 존재하지 않는다. 피드포워드 네트워크의 입력 계층의 노드들에서 수신된 데이터는 활성화 함수를 통해 출력 계층의 노드들에 전파된다(즉, "피드포워드"). 네트워크 내의 각각의 연속 계층의 노드들의 상태는 계수들("가중치들")에 기초하여 활성화 함수에 의해 계산되고, 계수들은 이들 계층들을 연결하는 에지들 각각에 각각 관련된다. 결함 식별 모델의 출력은 다양한 형태들을 채택할 수 있고, 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다. 결함 식별 모델은 또한 컨볼루션 신경망(CNN) 모델, 순환 신경망(RNN) 모델, 또는 생성적 적대 네트워크(GAN) 모델과 같은 다른 신경망 모델들을 포함할 수 있지만, 이에 제한되지 않는다. 본 기술 분야의 통상의 기술자들에 의해 일반적으로 알려진 다른 신경망 모델들이 또한 결함 식별 모델로서 채택될 수 있다.
신경망 모델은 일반적으로 훈련에 의해 획득되어야 한다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 또한 신경망 모델을 훈련시키도록 구성될 수 있으며, 이는 주로 다음의 단계들을 포함한다: 네트워크 토폴로지를 선택하는 단계; 네트워크 모델링이 적용된 문제들을 나타내는 훈련 데이터의 그룹을 이용하는 단계; 및 네트워크 모델이 훈련 데이터 세트의 모든 인스턴스들에 대해 가장 작은 에러를 가질 때까지 가중치들을 조정하는 단계. 예를 들어, 신경망들에 대한 지도 학습 훈련 프로세스에서, 훈련 데이터 세트 내의 인스턴스를 나타내는 입력에 응답하여 네트워크에 의해 생성되는 출력은 인스턴스의 "정확한" 마킹된 출력과 비교되고; 출력과 마킹된 출력 사이의 차이를 나타내는 에러 신호들이 계산되고; 에러 신호가 네트워크의 계층들을 통해 역방향으로 전파되면, 연결들과 연관된 가중치들은 에러를 최소화하도록 조정된다. 훈련 데이터 세트의 인스턴스로부터 생성된 각각의 출력의 에러가 최소화되면, 신경망 모델은 "훈련되었음"으로 해석되고 AI 추론 작업들에 사용될 수 있다.
신경망 모델의 추론 및 훈련 프로세스는 많은 양의 파라미터들, 활성화 값들, 및 그래디언트 값들의 버퍼 영역들을 수반하고, 그 각각의 값은 각각의 훈련 반복시 완전히 업데이트될 수 있고, 이는 매우 높은 계산 및 처리량 능력들을 요구한다. GPU는 강한 병렬성 및 높은 메모리 대역폭을 가지며, 심층 신경망들을 훈련하는 것과 연관된 계산들을 처리할 시에 매우 효율적이다. 따라서, 다수의 GPU들과 통합된 GPU 클러스터의 채택은 신경망 모델의 훈련 및 추론 속도를 효과적으로 개선할 수 있다. 그리고, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 또한 하드웨어 리소스들을 스케줄링 및 할당하도록 구성될 수 있다.
본 개시내용의 적어도 하나의 실시예에서, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 제1 결함 식별 작업에 기초하여 결함 식별 모델을 통해 제품 이미지 내의 제품 결함 내용을 식별하도록 구성될 수 있다. 제품 결함의 내용은 제품의 결함 타입, 결함 위치, 및 결함 크기 중 어느 하나 이상을 포함한다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 전송된 제1 결함 식별 작업을 수신한 후에, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 훈련된 결함 식별 모델을 통해 제품 이미지 데이터베이스(203)에 저장된 제품 이미지의 제품 결함의 내용, 즉 제품의 결함 타입, 결함 위치 및 결함 크기 중 어느 하나 이상을 식별하도록 구성된다.
본 개시내용의 실시예에서, 제1 결함 식별 작업에 기초하여 결함 식별 모델을 통해 제품 이미지 내의 제품 결함 내용을 식별하는 구현은 다음과 같다. 먼저, 제품 이미지는 고정된 픽셀 크기 MxN으로 스케일링되고(또한 스케일링되지 않을 수 있음), MxN 이미지는 딥 컨볼루션 신경망(예를 들어, VGG/Resnet/MobileNet 등)에 전송된다. 두 번째로, 전체 이미지의 특징 맵들이 다수의 컨볼루션 계층, 활성화 계층 및 풀링(pooling) 계층을 통해 획득된다. 세 번째로, 특징 맵들은 영역 제안 네트워크(ZF/SSD/RPN 등)에 입력되고, 제안 영역들이 계산에 의해 획득된다. 네 번째로, 제안 영역의 제안 특징 맵이 제안 영역에 대한 연산(예컨대, 컨볼루션 및 풀링)을 수행함으로써 획득되고, 제안 특징 맵들은 분류를 위해(즉, 제안을 결함 타입들로 분류하기 위해) 후속 완전 연결 네트워크 및 소프트맥스 네트워크로 전송된다. 가장 큰 확률을 갖는 결함 타입이 최종 분류 결과로서 결정된다. 카테고리 및 확률이 기록된다. 또한, 제안 영역의 좌표 및 크기는 결함의 위치 및 크기를 나타낸다. 결함 식별 모델에 기초하여 제품 결함 내용을 식별하는 방법은 위의 방법 또는 본 기술 분야의 통상의 기술자들에게 공지된 다른 방법들과 유사한 변경들을 채택할 수 있으며, 이는 본 개시내용에 의해 제한되지 않는다.
예를 들어, 반도체 산업에서, 결함 카테고리들은 입자, 잔류물, 라인, 구멍, 스플래쉬, 주름, 필름 컬러, 버블 등을 포함할 수 있다. 더 많은 서브클래스들이 또한 각각의 결함 타입에 기초하여 나누어질 수 있다. 예를 들어, 입자 타입은 상이한 타입들의 입자 결함들에 기초하여 P1(정상 입자), P2(모래 입자), P3(벽 입자) 등으로 분할될 수 있다. 결함 위치는 제품 이미지에서의 결함의 특정 좌표 위치를 나타낼 수 있다. 그 다음, 회로 보드 상의 결함의 특정 좌표 위치, 결함과 배경 회로 사이의 관계(예를 들어, 결함이 완전히 게이트 내부에 속하는지, 게이트와 교차하는지, 또는 게이트 외부 근처에 있는지 등) 등이 결정된다. 결함 크기는 결함의 길이, 결함의 지역적 영역 등을 포함할 수 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201) 및 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 클라이언트 디바이스(204)로부터 데이터를 수신하는 것, 데이터를 저장하는 것, 데이터를 처리하는 것, 및 데이터를 클라이언트 디바이스(204)에 전송하는 것과 같은 데이터 서비스들을 제공하기 위해 클라이언트 디바이스/서버 아키텍처에서 서버로서 채택될 수 있다. 서버는 일반적으로 원격 또는 로컬 네트워크(예컨대, 인터넷 또는 무선 네트워크 인프라스트럭처)를 통해 액세스가능한 원격 컴퓨터 시스템이다.
클라이언트 디바이스(204)는 제품 결함 식별 결과를 출력하도록 구성된다. 클라이언트 디바이스(204)는 제품 결함 식별 결과를 관련 직원에게 보여주기 위한 하나 이상의 단말기일 수 있다. 제품 결함 식별 결과는 제품 결함 식별 내용을 포함할 수 있고, 제품 결함 내용 등에 기초한 분석 후의 경보 정보를 더 포함할 수 있다. 클라이언트 디바이스(204)는 디스플레이를 포함할 수 있고, 디스플레이는 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 식별된 제품 결함 내용을 디스플레이할 수 있어서, 관련 직원이 제품 결함에 대한 추가의 판단 및 분석을 수행할 수 있게 한다. 클라이언트 디바이스(204)는 또한 결함 식별 결과에 경보를 제공하여 그에 따라 결함 식별 결과를 처리할 것을 관련 직원에게 경고하도록 구성되는 경보 유닛을 포함할 수 있다.
예를 들어, 클라이언트 디바이스(204)는 다른 컴퓨터(예를 들어, 서버)에 의해 제공되는 공유 가능한 네트워크 리소스들에 액세스하는 컴퓨터일 수 있다. 클라이언트 디바이스(204)는 명령어들 또는 작업들의 세트와 같은 다른 프로그램 또는 프로세스에 의해 제공되는 서비스를 요청하는 프로세스일 수 있다. 클라이언트 디바이스 프로세스는 다른 프로그램들 또는 서비스 자체에 관한 임의의 작업 세부사항들을 "알" 필요 없이 요청된 서비스를 이용한다. 예를 들어, 본 개시내용의 실시예에서, 클라이언트 디바이스(204)는 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201) 및 전체 제품 생산 라인에 유익하도록 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 집합적 능력을 이용한다. 이때, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 디바이스들은 리소스 관리 메커니즘에 참여할 수 있는 애플리케이션들, 객체들, 또는 리소스들을 가질 수 있다. 클라이언트 디바이스(204)는 또한 애플리케이션들을 포함할 수 있고, 본 개시내용의 실시예들에 의해 제공되는 애플리케이션들과 통신하거나 이들을 구현하기에 적합한 API들(application programming interfaces) 또는 다른 객체들, 소프트웨어, 펌웨어, 및/또는 하드웨어를 이용할 수 있다.
상황들에 따라, 제품 제조 메시지들을 처리하기 위한 위의 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 위의 컴퓨팅 클러스터(202) 및 위의 클라이언트 디바이스(204)는 모두 클라이언트 디바이스, 서버 또는 이들 양자 모두로서 해석될 수 있으며, 본 개시내용은 이에 제한되지 않는다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 디바이스들은 모두 이동식일 수 있고, 통신 매체를 통해 서로 통신할 수 있으며, 이에 의해 분산 기능을 제공하고, 복수의 클라이언트 디바이스(204)가 서버의 정보 수집 능력을 이용하는 것을 허용한다.
애플리케이션은 제품 결함 분석을 위해 분산 컴퓨팅 시스템(104)을 통해 사이트의 결함 분석 작업을 분할하여, 시스템 스케줄링을 위해 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터, AI 추론/훈련을 위해 제품 결함을 식별하기 위한 컴퓨팅 클러스터, 모델 배치를 업데이트하는 모델 관리를 위한 컴퓨팅 클러스터, 데이터 저장을 위한 제품 이미지 데이터베이스, 제품 결함 분석 결과를 출력하기 위한 클라이언트 디바이스 등을 형성한다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 복수의 하위작업을 저장하고, 이러한 하위작업들을 상이한 서버들에 각각 배치할 수 있다. 그리고, 또한 각각의 단일 지점 서버에 고가용성 컴퓨팅 클러스터가 형성된다. 일부 실시예들에서, 시스템 스케줄링을 위한 컴퓨팅 클러스터 및 모델 관리를 위한 컴퓨팅 클러스터는 하나의 컴퓨팅 클러스터로서 채택될 수 있다. 따라서, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 각각의 제품 이미지의 처리 시간을 단축시킬 수 있고, 그래서 제품 생산 라인 상의 관련 직원이 생산 라인 상의 제품의 생산 진행을 직관적으로 모니터링할 수 있고, 이에 의해 제품 품질을 개선할 수 있다.
도 3은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)의 다른 개략도이며, 이는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)의 기술적 아키텍처를 예시적으로 도시한다.
제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 개발을 위해 이클립스(Eclipse), 메이븐(Maven), 주피터(Jupyter), 및 VS2017과 같은 개발 도구들을 사용할 수 있다. 개발 언어들은 파이선, C++, C#, 자바 등을 포함한다. 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 디바이스들 및 컴퓨팅 클러스터들은 FTP, TCP/IP, HSMS, 및 Tibco와 같은 하나 이상의 통신 프로토콜을 통해 서로 통신될 수 있다. 선택적으로, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 또한 데이터, 이미지들, 결함 식별 모델들 등을 저장하기 위해 복수의 상이한 데이터베이스(예컨대, DFS, 오라클(Oracle), 레디스(Redis), 및 MySQL)를 사용할 수 있다.
도 3에 도시된 바와 같이, 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)은 전체적으로 애플리케이션 계층, 서비스 계층, 엔진 계층, 데이터 계층, 알고리즘 계층, 및 프레임워크 계층으로 분할될 수 있다.
애플리케이션 계층은 결함 타입 식별, 결함 위치 식별, 결함 크기 식별, 불량 경향 분석, 및 경보 분석과 같은 기능들을 실현할 수 있다. 클라이언트 디바이스(204)는 클라이언트 디바이스의 디스플레이를 통해 GUI를 제공할 수 있다. 결함 위치 및 크기, 결함 타입들의 결과들, 불량한 경향 분석의 결과들, 경보 분석의 결과들 등으로 라벨링된 이미지들이 GUI 상에 디스플레이될 수 있다.
서비스 계층은 이상 검출, 결함 위치, 제품 분류, 크기 계산, 로그 분석, 및 정밀도 측정과 같은 기능들을 실현하도록 구성될 수 있다. 이러한 기능들은 클라이언트 디바이스(204)로 구현될 수 있다. 이들 기능은 또한 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 또는 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)에 의해 구현될 수 있다.
엔진 계층은 결함 식별 모델을 훈련시키도록 구성되는 훈련 엔진을 포함한다. 훈련 엔진은 결함 식별 모델을 초기화하고, 결함 식별 모델을 반복하고, 엔진을 최적화하고, 결함 식별 모델 엔진을 생성하는 기능들을 실현할 수 있다. 엔진 계층은 또한 결함 식별 모델을 이용하여 제품 이미지로부터 제품 결함 내용을 식별하도록 구성된 예측 엔진을 포함한다. 예측 엔진은 실시간 예측, 동적 평가, 성능 통계 수집, 및 인덱스 피드백과 같은 기능들을 실현하도록 구성될 수 있다. 엔진 계층의 다양한 기능들은 모델 관리를 위해 컴퓨팅 클러스터에 의해 구현될 수 있고, 또한 제품 결함 식별 모델에 의해 구현될 수 있다.
데이터 계층은 데이터 전처리를 위한 모듈을 포함한다. 데이터 전처리는 이미지 클리닝, 이미지 전처리, 데이터 세트 구성 및 정규화를 포함한다. 데이터 계층은 또한 데이터 라벨링을 위한 모듈을 포함할 수 있다. 데이터 라벨링은 제품 이미지들 상의 반자동 라벨링, 자동 라벨링, 샘플 분류 등을 포함한다. 데이터 전처리를 위한 모듈 및 데이터 라벨링을 위한 모듈은 모델 관리를 위해 컴퓨팅 클러스터에 포함될 수 있고, 또한 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 포함될 수 있다. 데이터 계층의 데이터는 제품 이미지 데이터베이스(203)에 저장될 수 있다.
알고리즘 계층은 컴퓨터 비전, 머신 러닝, 및 딥 러닝에 관련된 알고리즘을 포함한다. 컴퓨터 비전과 관련된 알고리즘들은 모폴로지, 임계값 분할, 배경 모델링, 오픈CV(OpenCV), 푸리에 변환(FFT) 및 허프 변환과 관련된 알고리즘들을 포함한다. 머신 러닝에 관련된 알고리즘들은 K-평균 클러스터링 알고리즘, 앙상블 알고리즘, 밀도-기반 클러스터링 알고리즘 등을 포함한다. 딥 러닝과 관련된 알고리즘들은 덴스넷(Densenet), GAN, 오토인코더(AutoEncoder), 패스터-rcnn(Faster-rcnn), VGG, ResNet 알고리즘 등을 포함한다.
프레임 계층은 아키텍처 구축 프로세스의 제품 결함 분석을 위해 분산 컴퓨팅 시스템(104)에 의해 사용되는 프레임워크, 예를 들어, 컨테이너 스케줄링을 위한 오픈CV(OpenCV), 에이포지(Aforge), 텐서플로우(TensorFlow), 케라스(Keras), 스프링클라우드(SpringCloud), 뷰(Vue), 및 쿠버메트스(Kubermetes)를 포괄한다.
본 기술 분야의 통상의 기술자는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104)이 적용될 수 있는 기술들이 상기 예들로 제한되지 않는다는 것을 이해할 것이다. 본 개시내용의 실시예는 이에 제한되지 않는다.
도 4는 본 개시내용의 적어도 하나의 실시예에 따라 제품 제조 메시지들을 처리하기 위한 방법(400)의 흐름도이고, 이는 제품 제조 메시지들이 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 처리되는 프로세스를 도시한다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지들을 모니터링하도록 구성된다. 제품 제조 메시지들을 모니터링하는 방법은 폴링(polling) 및 인터럽트를 포함할 수 있다. 폴링에 의한 제품 제조 메시지들의 모니터링은 미리 설정된 빈도로 제품 제조 메시지들을 연속적으로 모니터링하고 수신하는 것을 지칭한다. 인터럽트에 의한 모니터링은, 특정 제품 제조 메시지가 생성됨을 통지받으면, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터 (201)가 제품 제조 메시지를 모니터링 및 수신하고; 그 후, 제품 제조 메시지를 수신한 후에 모니터링을 중단하고; 특정 제품 제조 메시지가 다시 생성됨을 통지받으면 모니터링을 계속하는 것을 나타낸다. 선택적으로, 인터럽트에 의한 모니터링은 제품 제조 메시지 전송 디바이스의 정보 등록을 미리 요구한다.
동작 401에서, 등록 정보 설정이 제품 제조 메시지 서비스 디바이스(103)에 제공된다. 등록 정보는 제품 제조 사이트 정보 및/또는 제1 제품 정보를 포함한다. 제품 제조 메시지 서비스 디바이스(103)에 대한 등록 정보 설정은, 제품 제조 메시지 서비스 디바이스(103)에 등록 정보를 전송하는 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 구현될 수 있다. 그리고, 이는 또한 제품 제조 메시지 서비스 디바이스(103) 상에 등록 정보를 직접 설정함으로써 구현될 수 있다. 등록 정보를 통해, 제품 제조 메시지 서비스 디바이스(103)는, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)가 등록 정보에 관련된 어떤 종류의 제품 제조 메시지들을 알고 싶어하는지를 인정받을 수 있다. 등록 정보에 관련된 제품 제조 메시지들은 제품 제조 사이트 정보 또는 제1 제품 정보를 포함한다. 따라서, 등록 정보에 관련된 제품 제조 메시지를 수집할 때, 제품 제조 메시지 서비스 디바이스(103)는 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)에 우선적으로 제품 제조 메시지를 전송할 수 있다. 따라서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 인터럽트에 의해 제품 제조 메시지들을 모니터링할 수 있다. 제품 제조 사이트 정보는 사이트의 식별정보, 사이트의 물리적 위치(예를 들어, AOI 디바이스의 물리적 위치), 제품 제조 프로세스의 사이트의 노드 정보(예를 들어, 노광 프로세스의 결함 식별/검출, 세정 프로세스의 결함 식별/검출 등) 등 중 하나 이상을 포함한다. 이 정보는 특정의 사이트를 식별하거나 위치 확인하는 데 도움을 줄 수 있다. 제1 제품 정보는 특정 제품을 식별하거나 위치확인하는 것을 보조할 수 있는 제품 타입, 제품 명칭, 제품 식별정보, 제품 우선순위 등 중 하나 이상일 수 있다. 본 기술 분야의 통상의 기술자는, 제품 제조 사이트 정보 및 제1 제품 정보의 내용은, 그 내용이 제품 제조 프로세스의 결함 식별/검출에 관련되는 한, 상기 예에 제한되지 않는다는 것을 이해할 것이다. 제품 제조 메시지 서비스 디바이스(103)의 등록을 예로 들어 도 4에 설명이 주어진다. 본 기술 분야의 통상의 기술자들은 이미지 취득 디바이스(102)가 또한 등록될 수 있다는 것을 이해할 것이다.
동작 402에서, 등록 정보에 기초하여, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 인터럽트에 의해 제1 제품 제조 메시지를 모니터링하도록 구성된다. 여기서, 제1 제품 제조 메시지는 등록 정보에 관련된 제품 제조 메시지를 포함한다. 제1 제품 제조 메시지가 등록 정보 내의 제품 제조 사이트 정보 또는 제1 제품 정보와 관련되는 한, 제1 제품 제조 메시지는 로트 제품 제조 메시지 또는 단일 제품 제조 메시지일 수 있다. 제1 제품 제조 메시지가 제품 제조 사이트 정보와 관련되는 경우, 제1 제품 제조 메시지는 제품 제조 메시지 서비스 디바이스(103)에 의해 식별되는 사이트 변동 정보, 사이트 상태 정보 등을 포함할 수 있다. 제1 제품 제조 메시지가 제1 제품과 관련되는 경우, 제1 제품 제조 메시지는 제품 이미지들이 저장되는 어드레스, 제품에 대응하는 제품 이미지들의 수량, 현재 제품의 제조 프로세스 등을 포함할 수 있다.
동작 403에서, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 폴링에 의해 제2 제품 제조 메시지를 모니터링하도록 구성되고, 제2 제품 제조 메시지는 등록 정보와 관련되지 않는다. 제품 제조 메시지 서비스 디바이스(103)는 동일한 포트를 이용하여 제1 제품 제조 메시지 및 제2 제품 제조 메시지를 브로드캐스팅할 수 있고, 또한 상이한 포트들을 이용하여 제1 제품 제조 메시지 및 제2 제품 제조 메시지를 브로드캐스팅할 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다. 선택적으로, 제2 제품 제조 메시지는 등록 정보의 내용과 관련되지 않은 정보, 예를 들어, 현재 공장 환경의 온도, 습도 등을 포함할 수 있다. 물론, 제2 제품 제조 메시지는 로트 제품 제조 메시지일 수 있고, 또한 단일 제품 제조 메시지일 수 있다.
동작 404에서, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 제2 제품 제조 메시지가 제품 제조 키워드를 포함하는지를 결정한다. 제2 제품 메시지가 제품 제조 키워드를 포함하는 경우, 동작 405에서, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 제2 제품 제조 메시지를 유지한다. 제2 제품 제조 메시지가 제품 제조 키워드를 포함하지 않는 경우, 동작 406에서, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 제2 제품 제조 메시지를 폐기한다.
제품 제조 메시지 서비스 디바이스(103)에 대한 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)의 등록은 관련 요원에 의한 구성 및 검증과 같은 더 많은 프로세스를 요구할 수 있다. 그러나, 공장에서, 제품들은 연속적으로 조정되고 업데이트될 수 있다. 또한, 일부 디바이스(일부 AOI 디바이스)는 제품 제조 메시지 서비스 디바이스(103)에 등록되지 못할 수 있다. 따라서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 등록 정보와 관련되지 않은 메시지들을 모니터링할 수 있다. 예를 들어, 등록 정보와 관련되지 않은 메시지들은 폴링에 의해 모니터링될 수 있다. 등록 정보에 관련되지 않지만 제품 결함 식별, 검출 및 분석에 관련되는 제품 제조 키워드들은 제품 제조 키워드 목록에 저장된다. 제2 제품 제조 메시지를 수신할 때, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제2 제품 제조 메시지 내의 필드들을 분석하고, 이들 필드들을 제품 제조 키워드 목록과 비교하며, 목록 내에 임의의 제품 제조 키워드를 포함하는 제2 제품 제조 메시지를 유지할 수 있다. 예를 들어, 관련 요원이 마지막 몇몇 로트에서 생성된 스크린에서의 제품 결함들이 과도한 환경 습도에 의해 야기될 가능성이 있는 것을 발견한다고 가정하면, 관련 요원은 제품 제조 키워드 목록에 키워드 "환경 습도"를 추가할 수 있다. 후속하여, 환경 습도에 관련된 메시지들을 수신할 때, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 관련 요원의 분석을 용이하게 하도록 메시지들을 유지할 수 있다. 환경 습도와 같은 영향 요인들을 배제할 때, 관련 요원은 제품 제조 키워드 목록에서 환경 습도와 관련된 키워드를 제거하여, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 저장된 중복 정보를 감소시키고 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)의 메시지 처리 효율을 개선할 수 있다. 환경 습도 정보를 취득하는 전체 프로세스에서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지 서비스 디바이스(103)에 등록할 필요가 없고, 이에 의해 제품 제조 메시지를 처리하는 프로세스를 감소시킨다.
이러한 메커니즘의 채택에 의해, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 등록된 정보를 우선적으로 모니터링할 수 있는 한편, 제품 제조 키워드에 따라 등록되지 않은 정보를 필터링할 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 등록된 정보를 모니터링할 뿐만 아니라, 또한 모든 제품 제조 메시지 서비스 디바이스들(103)에 의해 전송된 메시지들을 모니터링할 수 있고, 이에 의해 시스템의 확장성을 개선한다.
제품 제조 메시지의 모니터링 및 브로드캐스팅 프로세스에서, 공장 제조 시스템은 제품 제조 메시지들의 처리에 대해 높은 요건을 갖는다. 선택적으로, 메시지 손실을 피하기 위해, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 메시지 캐시 및 메시지 큐의 기능들을 가질 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 지연 또는 다른 이상들에 의해 야기되는 메시지 손실의 문제를 회피하기 위해 메시지 큐 관리를 위해 래빗MQ(RabbitMQ)에 제품 제조 메시지들을 캐싱할 수 있다.
본 개시내용의 적어도 하나의 실시예에서, 제1 제품 제조 메시지는 로트 제품 제조 메시지를 포함하고, 제2 제품 제조 메시지는 단일 제품 제조 메시지를 포함한다. 따라서, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 인터럽트에 의해 로트 제품 제조 메시지를 모니터링하고 폴링에 의해 단일 제품 제조 메시지를 모니터링하도록 구성될 수 있다.
전술한 바와 같이, 산업 생산에서, 다수의 제품이 하나의 LOT로 조합되고, 동일한 LOT에 동일한 처리 프로세스가 적용되어, 제품 제조 메시지들의 기록 및 소팅을 용이하게 한다. 하나의 로트 제품 제조 메시지는 동일한 LOT의 다수의 제품의 제품 제조 메시지들의 모음을 지칭하고, 하나의 단일 제품 제조 메시지는 단일 제품(예컨대, GLASS)의 제품 제조 메시지들을 지칭한다.
제품 제조 프로세스에서, LOT는 일반적으로 제조 메시지들의 기록 및 송신을 위한 유닛으로서 채택되며, 이는 메시지 처리의 효율을 개선할 수 있다. 그러나, 제품 결함 분석 작업의 프로세스에서, 로트 제품 제조 메시지들에 관련된 등록 정보가 제품 제조 메시지 서비스 디바이스(103) 상에 미리 설정될 수 있다. 이러한 방식으로, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 인터럽트에 의해 로트 제품 제조 메시지들을 모니터링하여, 메시지들의 수신 및 처리의 효율을 향상시킨다. 그러나, 로트 제품 제조 메시지들은 제품 제조 메시지들을 처리하기 위해, 다수의 제품들이 완전히 처리된 후에만 컴퓨팅 클러스터(201)에 전송되고, 이 기간은 제품 결함 검출 분석 시스템의 특정 디바이스들(예컨대, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202))이 유휴 상태에 있게 할 수 있다. 따라서, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 또한, 인터럽트 갭에서, 폴링에 의해 단일 제품 제조 메시지를 모니터링하고, 단일 제품 제조 메시지를 적시에 처리할 수 있다. 따라서, 이러한 LOT의 대부분의 단일 제품 제조 메시지들의 처리는 로트 제품 제조 메시지를 수신할 때 완료되고, 이에 의해 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)의 메시지 처리 효율을 향상시킬 수 있다. 단일 제품은 제품들의 로트 중 하나의 제품일 수 있고 또한 제품들의 로트 중 하나가 아닐 수 있다. 단일 제품이 제품들의 로트 내의 하나의 제품이고 로트에 대한 로트 제품 제조 메시지가 수신되는 경우, 폴링에 의해 후속하여 모니터링되는 제품들의 로트에 관련된 다른 단일 제품 제조 메시지들은 처리되거나 모니터링되지 않을 수 있고, 이에 의해 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)의 메시지 처리 효율을 더 개선한다.
선택적으로, 모니터링된 제품 제조 메시지는 이미지 취득 디바이스(102)에 의해 생성된 제품 제조 메시지 또는 제품 제조 메시지 서비스 디바이스(103)에 의해 획득된 제품 제조 메시지일 수 있고, 또한 제품 이미지 데이터베이스(203)에서 생성된 제품 제조 메시지(예컨대, 제품 이미지 데이터의 생성 메시지)일 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다.
도 5는 본 개시내용의 적어도 하나의 실시예에 따른 제품 결함 작업들을 전송하기 위한 방법(500)의 개략도이다.
도 5에 도시된 바와 같이, 선택적으로, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)가 제품 메시지들에 따라 제품 결함 분석 작업들을 생성하는 경우는 또한 동작들(501 내지 505)을 포함한다.
본 개시내용의 일부 실시예들에서, 제품 제조 메시지들에 따라 제품 결함 분석 작업들을 생성하는 프로세스는 제품 제조 메시지에 따라 결함 식별 모델이 제품 타입에 대응하는지를 결정하는 단계; 결함 식별 모델이 제품 타입에 대응하는 경우 제1 결함 식별 작업을 생성하고 제품 결함을 식별하기 위해 제1 결함 식별 작업을 컴퓨팅 클러스터(202)에 전송하는 단계; 및 제2 결함 식별 작업을 생성하고, 제품 결함 타입에 대응하는 결함 식별 모델이 없는 경우 제2 결함 식별 작업을 클라이언트 디바이스(204)에 전송하는 단계를 포함한다.
동작 501에서, 제품 제조 메시지에 따라 결함 식별 모델이 제품 타입에 대응하는지가 결정된다.
결함 식별 모델에 기초하여 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 결함 식별 작업은 실질적으로 AI 기반 시각적 식별이고, 결함 식별 모델은 훈련될 필요가 있다. 공장의 제조 프로세스에서, 상이한 타입들의 제품들이 생산될 수 있거나, 또는 프로세스 파라미터들의 조정으로 인해 동일한 타입의 제품들의 결함들이 변경될 수 있다. 따라서, 결함 식별 모델은 제품 결함들을 식별하지 못할 수 있다. 따라서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는, 대응하는 제품 결함 분석 작업들을 생성하기 위해, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제품 제조 메시지들에 따라 제품 결함들을 식별할 수 있는지를 결정할 필요가 있다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제품 결함들을 식별할 수 없는 경우, 제품 결함 분석 작업은 클라이언트 디바이스에 전송되고, 그 후, 클라이언트 디바이스에 의해 디스플레이된 제품 이미지들에 기초하여 사용자에 의해 수동 식별이 수행된다. 따라서, 제품 결함 분석 작업은 제1 결함 식별 작업 및 제2 결함 식별 작업을 포함하고, 제1 결함 식별 작업은 AI에 기초하여 결함 식별을 수행하는 작업이고, 제2 결함 식별 작업은 수동 작업에 기초하여 검출 식별을 수행하는 작업이다.
예를 들어, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 획득된 제품 제조 메시지를 분석하고, 제품 타입을 획득하고, 결함 식별 모델이 제품 타입에 대응하는지를 결정한 다음, 대응하는 제품 결함 분석 작업을 생성한다.
제품 타입이 알려진 제품 타입(즉, 훈련된 제품)이고 결함 식별 모델이 제품 타입에 대응하는 것으로 결정되는 경우, 결함 작업 분석은 제품 타입에 대응하는 결함 식별 모델에 기초하여 실행될 수 있다. 따라서, 제1 결함 식별 작업이 생성되고, 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 전송된다.
제품 타입이 미지의 제품 타입(즉, 훈련되지 않은 제품)이고 제품 타입에 대응하는 결함 식별 모델이 없다고 결정되면, 수동 식별이 요구된다. 따라서, 제2 결함 식별 작업이 생성되어 클라이언트 디바이스에 전송된다.
제품 타입이 알려진 제품 타입이지만, 제품 타입에 대응하는 결함 식별 모델에 기초하여 제품 결함 내용이 식별될 수 없는 경우(예를 들어, 식별 스코어가 미리 설정된 임계값보다 낮은 경우), 또한 결함 식별 모델이 제품 타입에 대응하지 않는다고 결정될 수 있다. 결함 식별 모델의 성능들이 제품 타입에 대응하는 결함 분석 작업을 충족시키기에 불충분한 경우(예를 들어, 정확도 및 리콜이 미리 설정된 임계값보다 더 낮음), 결함 식별 모델이 제품 타입에 대응하지 않는다고 또한 결정될 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 수동 결정 및 결함 식별 모델 사전 판단과 같은 다른 수단에 의해 결함 식별 모델이 제품 타입에 대응하는지를 결정할 수 있다. 본 개시내용에서는, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)가 결함 식별 모델이 제품 타입에 대응하는지를 결정하는 방법에 대해 어떠한 제한도 주어지지 않는다.
결함 식별 모델이 제품 타입에 대응하는 경우, 동작 502에서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 제품 결함을 식별하기 위한 제1 결함 식별 작업이 생성되어 컴퓨팅 클러스터(202)에 전송된다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제1 제품 결함 분석 요청 메시지를 전송함으로써 제1 제품 결함 식별 작업을 전송할 수 있다. 제1 제품 결함 분석 요청 메시지는 제품 타입, 제품 이미지들의 저장 어드레스, 제품 이미지들의 수량, 및 결함 식별 모델에 대한 결함 식별을 위한 작업 식별자를 포함한다(작업 식별자는 제품 타입의 제품 이미지들에 대한 결함 식별을 수행하기 위한 제품 이미지들의 저장 어드레스 및 제품 이미지들의 수량의 이용을 나타낸다). 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제1 제품 결함 분석 요청 메시지를 수신한(즉, 제1 제품 결함 식별 작업을 수신한) 후에, 제1 제품 결함 분석 요청 메시지의 제품 이미지의 저장 어드레스에 기초하여 제품 이미지 데이터베이스(203)로부터의 결함 식별을 위한 제품 이미지들이 획득된다. 제품 타입에 대응하는 결함 식별 모델이 제품 타입에 따라 로딩되고, 결함 모델에 기초하여 제품 이미지들에 대한 결함 식별이 수행된다. 제품들 및 사이트들이 다양하고 결함 식별 모델의 로딩 시간이 길기 때문에, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 디폴트로 결함 식별 모델을 미리 로딩할 수 있다. 설정들이 변경된 후에, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 또한 독립 배경 서버를 이용하여 모델의 로딩을 완료함으로써, 제품이 변경될 때 모델을 로딩하는 프로세스에 의해 소비되는 시간을 피하고, 이에 의해 전체 효율을 개선할 수 있다. 생산 라인이 결함 식별 모델 알고리즘의 검출 작업을 위해 매일 많은 수의 이미지들을 생성할 수 있기 때문에, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 또한 GPU 리소스들에 대한 합리적인 스케줄링 및 할당을 수행할 수 있고, 이에 의해 하드웨어 리소스들의 사용 효율을 개선한다.
제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제품 이미지의 제1 제품 결함 식별 작업을 완료한 후, 동작 503에서, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 제품 제조 메시지들을 처리하기 위해 제1 결함 식별 결과를 컴퓨팅 클러스터(201)에 전송한다. 제1 결함 식별 결과는 결함 타입, 결함 위치, 및 결함 크기 중 하나 이상을 포함한다.
선택적으로, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 제품 결함 식별 모델의 추론 성능을 모니터링할 수 있다. 추론 성능은 제품 결함 식별 모델에 기초하여 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 처리되는 제1 제품 결함 식별 작업의 정확도, 정밀도, 리콜, FScore 및 속도 중 하나 이상이다. 여기서, 속도는 제품 이미지들의 제품 결함을 식별함에 있어서 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 속도를 나타낼 수 있다(이는 제품 이미지들의 수량/초 등의 관점에서 측정될 수 있음). 정확도는 이하의 수학식 (1)에 의해 계산될 수 있다. 정밀도는 이하의 수학식 (2)에 의해 계산될 수 있다. 리콜은 이하의 수학식 (3)에 의해 계산될 수 있다. 후속하여, FScore가 이하의 수학식 (4)에 의해 계산된다.
Figure pct00001
(1);
Figure pct00002
(2);
Figure pct00003
(3);
Figure pct00004
(4).
여기서, 진양성(TP)은 계산 결과가 양성이고 실제 결과도 또한 양성이라는 것, 즉 결함 식별 모델의 추론 계산 후에 획득된 계산 결과가 A이고(여기서, A는 하나의 결과를 나타냄), 실제 결과도 A라는 것을 나타낸다. 이때, 계산 결과는 실제 결과와 일치한다.
위양성(FP)은 계산 결과가 양성이고 실제 결과가 음성인 것, 즉 결함 식별 모델의 추론 계산 후에 획득된 계산 결과가 A이지만 실제 결과는 A가 아님을 나타낸다. 이때, 계산 결과는 실제 결과와 불일치한다.
위음성(FN)은 계산 결과가 음성이고 실제 결과가 양성임을, 즉, 결함 식별 모델의 추론 계산 이후에 획득된 계산 결과가 A가 아니지만 실제 결과가 A임을 나타낸다. 이때, 계산 결과는 실제 결과와 불일치한다.
진음성(TN)은 추론 계산 결과가 음성이고 실제 결과도 또한 음성임을, 즉 결함 식별 모델의 추론 계산 후에 획득된 계산 결과가 A가 아니고 실제 결과도 A가 아님을 나타낸다. 이때, 계산 결과는 실제 결과와 일치한다.
공장의 제조 프로세스에서, 제품 회로의 배경은 복잡하고 다양하다. 다수의 제품 결함이 쉽게 혼동될 수 있다. 그리고 제품의 생산 계획은 또한 제품 주문들에 따라 조정될 수 있다. 이러한 요인들은 모델 성능들에 큰 도전과제들을 야기한다. 제품 변경, 프로세스 변경, 또는 제품 이미지 조정은 AI 결함 식별 모델의 성능이 저하되게 할 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 고정된 기간에 또는 실시간으로 결함 식별 모델의 성능들을 모니터링할 수 있다. 제품 결함 식별 모델의 성능들이 생산 요구들을 충족시킬 수 없는 경우, 실시간으로 조정이 구성된다. 예를 들어, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 문제가 있는 경우에 적시에 경보를 제공하고, 새로운 결함 식별 모델의 배치 및 확인을 실행할 수 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함 식별 모델에 기초하여 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 처리되는 제1 제품 결함 식별 작업의 정확도, 정밀도, 리콜, FScore 등을 다음의 3가지 방법에 의해 모니터링할 수 있다. 본 기술 분야의 통상의 기술자는, 다음의 3가지 방법은 단지 예들이고, 제품 결함 분석 작업들을 처리할 때의 정확도, 정밀도, 리콜 또는 FScore 중 임의의 것이 획득될 수 있는 한, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 다른 방법들에 의해 제품 결함 분석 작업들을 모니터링할 수 있다는 것을 이해할 것이다.
제1 방법: 표준 데이터 샘플을 통한 모니터링
표준 데이터 샘플은 제품 이미지 데이터베이스(203)에 미리 저장될 수 있다. 표준 데이터 샘플은 시니어 공장 운영자들 및 시니어 검사자들에 의해 검사 및 검증되어 샘플의 선택 범위(예를 들어, 결함 타입, 결함 수, 결함 분포 등)가 결함 식별 모델의 훈련 샘플과 일관되게 유지되는 것을 결정할 수 있다. 후속하여, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 결함 식별 모델을 통한 추론 결과를 수동으로 설정된 표준 결과와 비교한 다음, 결함 식별 모델의 정확도, 정밀도, 리콜 또는 FScore에 대한 통계를 수행할 수 있다. 한편, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 기간, 생산 상태, 수동 조절 모드 등에 따라 표준 샘플 데이터를 업데이트하도록 구성될 수 있다.
제2 방법: 온라인 샘플링 모델을 통한 모니터링
공장의 생산 프로세스에서, 복수의(예를 들어, 3명의) 우수한 검사자가 제품 결함들에 대해 랜덤 검사를 수행할 수 있다. 예를 들어, 이러한 우수한 검사자들은 특정 제품 결함에 대한 것으로서 복수의 제품 결함 이미지(예를 들어, 100개의 제품 결함 이미지)를 추출한 다음, 제품 결함에 대해 수동 판단 및 마킹을 수행할 수 있다. 후속하여, 복수의 검사자는 위에서 마킹된 제품 결함을 이용하여, 동일한 샘플에 대해 추론을 수행하는 결함 식별 모델의 결과를 각각 그리고 독립적으로 재검사할 수 있다. 재검사의 종료 후에, 동일한 제품 결함에 대해 복수의 검사자에 의해 추론 결과에 대해 투표가 수행될 수 있고, 가장 높은 투표 결과가 표준 결과로서 채택될 수 있다. 후속하여, 표준 결과는 결함 식별 모델의 정확도, 정밀도, 리콜 또는 FScore를 모니터링하기 위해 결함 식별 모델의 추론 결과와 비교된다.
제3 방법: 제품 로트 추출에 의한 모니터링
복수의(예를 들어, 3명의) 우수한 검사자가 전체 로트의 제품 결함들의 추론 결과를 재검사하기 위해 AI 결함 식별 모델을 추출할 수 있다(예를 들어, 하나의 LOT, 여기서 하나의 LOT는 20 Glass를 포함할 수 있고, 각각의 Glass는 50 내지 300개의 제품 결함들을 포함할 수 있음). 제품 제조 메시지 처리 디바이스(603)는 재검사 결과를 획득하고, 재검사 결과에 따라 AI 결함 식별 모델의 정확도, 정밀도, 리콜 또는 FScore를 결정한다.
공장의 제조 프로세스에서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 GPU 리소스들이 비정상인지 등을 결정하기 위해 메모리, 비디오 메모리 등의 사용을 포함하는 결함 식별 모델에 대한 컴퓨터 리소스들의 사용 효율을 모니터링할 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 내의 GPU의 부하 상태에 따라 작업들을 할당하고, 추론 또는 훈련 작업을 위해 낮은 부하를 갖는 GPU에 결함 식별 작업 또는 모델 훈련 작업을 우선적으로 할당하도록 구성될 수 있다. 결함 식별의 추론 작업이 거의 모든 컴퓨터 리소스들을 이용하여 완전히 완료될 수 없는 경우, 이때 하드웨어 리소스들 등이 동적으로 추가되는 것이 필요할 수 있다.
어떠한 결함 식별 모델도 제품 타입에 대응하지 않는 경우, 동작 504에서, 제2 결함 식별 작업이 생성되어 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 클라이언트 디바이스(204)로 전송된다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제2 제품 결함 분석 요청 메시지를 전송함으로써 제2 제품 결함 식별 작업을 전송할 수 있다. 제2 제품 결함 분석 요청 메시지는 제품 타입, 제품 이미지들의 저장 어드레스, 제품 이미지들의 수량, 및 결함 식별 모델에 대한 결함 식별을 위한 작업 식별자를 포함한다(작업 식별자는 (제품 이미지들의 저장 어드레스 및 제품 이미지들의 수량을 사용하여) 이 제품 타입의 제품 이미지들을 디스플레이하고 그 제품 이미지들에 대한 제품 결함의 수동 식별을 수행하는 것을 나타낸다). 클라이언트 디바이스(204)는 제2 제품 결함 분석 요청 메시지를 수신한다. 즉, 제2 제품 결함 식별 작업이 수신된 후에, 클라이언트 디바이스(204)에 의한 제2 제품 결함 분석 요청 메시지 내의 제품 이미지들의 저장 어드레스에 기초하여 제품 이미지 데이터베이스(203)로부터 결함 식별이 적용될 제품 이미지들이 획득된다. 제품 이미지들은 수동 결함 식별을 위해 클라이언트 디바이스의 디스플레이를 통해 디스플레이된다.
사용자가 수동 결함 식별 작업을 완료한 후에, 클라이언트 디바이스(204)는 수동 식별 결함 결과를 획득한다. 동작 505에서, 제2 결함 식별 결과는 제품 제조 메시지들을 처리하기 위해 클라이언트 디바이스(204)로부터 컴퓨팅 클러스터(201)로 전송된다. 제2 결함 식별 결과는 결함 타입 식별 라벨, 결함 위치 라벨 및 결함 크기 라벨 중 하나 이상을 포함한다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 결함 식별을 위해 수동 리소스들의 상태를 모니터링하도록 구성될 수 있다. 예를 들어, 공장의 제조 프로세스에서, 보류 중인 작업들이 운영자들의 낮은 작업 효율로 인해 적시에 처리될 수 없는 경우들, 또는 일부 중요한 경보 정보가 적시에 운영자들에 의해 처리되지 않는 경우가 있을 수 있다. 이러한 경우들은 생산에 큰 손실을 야기할 수 있다. 따라서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 제품 결함 내용의 수동 식별에 대해 클라이언트 디바이스(204)의 상태를 모니터링하도록 구성될 수 있다. 예를 들어, 제품 제조 메시지 처리 디바이스(603)는 클라이언트 디바이스(204)에 보내진 제품 결함 분석 작업의 수동 처리의 속도를 모니터링하고(예를 들어, 운영자가 제품 이미지들에 대해 정상 속도로 수동 식별을 수행하는지를 모니터링하고), 운영자들의 작업 효율 및 작업 상태를 결정하고, 이에 의해, 스케줄링 계획과 조합하여 제품 결함 식별/검출의 작업 할당을 최적화하도록 구성될 수 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 공장 시스템에서의 생산 상태를 모니터링하도록 구성될 수 있다. 제품 결함 검출 프로세스에서, 대규모 결함 뭉치가 발생할 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함 정보를 공장에서 제품 결함을 핸들링하는 섹션들 또는 프로세스 부서들과 매칭시키고, 경보 정보를 이러한 부서들의 클라이언트 디바이스들(204)에 적시에 전송하도록 구성될 수 있다. 제품 결함이 대응하는 부서에게 결함에 대한 프로세스 또는 생산물 조정을 수행할 것을 요구하는 경우, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 경보 정보 및 처리되는 경보의 상태를 실시간으로 모니터링하도록 구성될 수 있다. 또한, 적시에 핸들링되지 않는 심각한 경보의 경우에, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 경보 정보를 자동으로 업데이트하고, 한편, 업데이트된 경보 정보를 상위 레벨 부서의 클라이언트 디바이스(204)에 전송하여 대응하는 부서에 적시에 경보 정보에 주의를 기울이고 이를 처리할 것을 재촉하도록 구성될 수 있다.
도 6은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)가 제품 결함 분석 작업들을 스케줄링하는 프로세스를 예시하는 개략도이다.
도 6에 도시된 바와 같이, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 복수의 제품 결함 분석 작업들을 생성하는 시간 시퀀스, 제품들의 우선순위 순서, 및 제품 스케줄링 계획 중 어느 하나 이상에 기초하여 제품 결함 분석 작업들을 소팅함으로써 제품 결함 분석 작업 큐를 생성하도록 구성된다.
여기서, 복수의 제품 결함 분석 작업들을 생성하는 시간 시퀀스에 기초한 제품 결함 분석 작업들의 소팅은 시간 시퀀스에 따른 스케줄링을 용이하게 한다. 즉, 대응하는 하드웨어 리소스 매칭이 처리될 큐에 진입하는 모니터링된 제품 제조 메시지들의 시퀀스에 따라 처리된다. 도 6에 도시된 바와 같이, 9개의 제품 제조 메시지가 차례로 수신되고 9개의 제품 결함 분석 작업(Job1 내지 Job9)이 이에 기초하여 생성된다고 가정하면, 9개의 작업은 수신 시퀀스에 따라 배열될 수 있다. 순차적 스케줄링 방법은 간단하게 설정되고, 그리고 생산 계획과 적시에 더 잘 매칭될 수 있다.
제품들의 우선순위들에 기초한 제품 결함 분석 작업들의 소팅은 설정된 제품 우선순위들에 따른 스케줄링, 즉, 생산 계획에서의 제품들의 우선순위들에 따른 소팅을 포함한다. 전체 스케줄링 메시지 큐는 동적 스케줄링 프로세스이고, 높은 우선순위들을 갖는 제품들은 제품 결함 분석 작업 큐의 전방 위치들에 삽입될 수 있다. 도 6에 도시된 바와 같이, Job2 및 Job3의 우선순위가 Job1의 우선순위보다 높다고 가정하면, Job2 및 Job3은 처리를 위해 Job1 이전에 배열될 수 있다. 우선순위에 기초한 스케줄링은 우선순위가 높은 제품들의 검출 작업의 원활한 완료를 우선적으로 보장할 수 있다.
제품 스케줄링 계획에 기초한 제품 결함 분석 작업의 소팅은 사용자들이 대응하는 스케줄링 계획을 지정할 수 있는 한편, 스케줄링 계획의 일시적인 삽입 및 조정을 지원할 수 있게 할 수 있다. 예를 들어, 도 6에 도시된 바와 같이, Job9는 Job2와 Job3 사이에 일시적으로 삽입된다. 따라서, 사용자들은 특정 제품들 또는 결함들을 모니터링하고 검증하는 것에 집중할 수 있고, 동시에, 다른 생산 라인들에 대한 정보를 통합하여 전체 생산 라인의 작업에 일시적으로 개입할 수 있다.
본 개시내용의 일부 실시예들은 제품 결함 분석 작업 큐를 생성하기 위해 제품 결함 분석 작업들을 분류하기 위해 위의 3가지 방법 중 어느 하나 이상을 조합할 수 있다.
선택적으로, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는 또한 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 부하 상태에 따라 제품 결함 분석 작업 큐에서의 제품 결함 분석 작업들의 전송 속도를 제어하도록 구성된다.
도 6에 도시된 바와 같이, 사이트(101)로의 유입 제품들의 빈도 및 수량이 불확실함에 따라, 검출될 필요가 있는 유입 제품들은 때때로 갑자기 많아지고, 때때로 매우 적어진다. 시간에 따른 유입 작업들의 수량은 유입 작업 수 그래프에 도시될 수 있다. 스케줄링되지 않은 경우, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 검출 및 분석 작업은 때때로 과다한 압박을 받고 때때로 비교적 유휴 상태가 될 것이므로, 제품 결함 분석 작업들의 처리 효율이 낮을 수 있다. 제품 결함 분석 작업 큐가 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 배치되고, 이미지 취득 디바이스에 의한 제품 이미지들의 생성과 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의한 제품 결함 분석 작업들의 수행 사이의 시간 버퍼를 제공한다.
제품 결함 분석 작업 큐에서의 제품 결함 분석 작업들은 제품 결함 분석이 적용될 작업들을 포함한다. 제품 제조 메시지 처리 디바이스는 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 부하 상태에 따라 제품 결함 분석 작업 큐에서의 작업들의 전송 속도를 제어할 수 있다. 제품 제조 메시지들의 수량이 미리 설정된 임계값보다 큰 경우, 및/또는 제품 결함 분석 작업 큐에서의 작업들의 수량이 미리 설정된 임계값보다 더 높은 경우, 및/또는 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 부하가 미리 설정된 임계값보다 큰 경우, 작업 전송 속도가 감소된다. 제품 제조 메시지들의 수량이 미리 설정된 임계값 미만인 경우, 및/또는 제품 결함 분석 작업 큐에서의 작업들의 수량이 미리 설정된 임계값보다 작은 경우, 및/또는 제품 제조 보조 디바이스의 부하가 미리 설정된 임계값 미만인 경우, 작업 전송 속도가 증가된다. 도 6에 도시된 바와 같이, (유출 작업 수 그래프에 의해 도시된 바와 같이) 유출 작업들의 수량은 스케줄링 후에 심지어 시간이 경과해도 다소 남아 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 클라이언트 디바이스(204)의 부하 상태에 따라 제품 결함 분석 작업 큐에서의 제품 결함 분석 작업들의 클라이언트 디바이스(204)로의 전송 속도를 제어할 수 있다. 복수의 클라이언트 디바이스가 존재하는 경우, 결함 분석 작업들을 상이한 클라이언트 디바이스들로 전송하는 대응하는 속도는 또한 제품 결함 분석 작업들을 처리하는 데 있어서의 클라이언트 디바이스들의 속도(결함 작업들의 수동 식별)에 따라 제어된다. 예를 들어, 제품 결함 분석 작업들을 처리하는 데 있어서의 특정 클라이언트 디바이스(예를 들어, 204-1)의 속도가 제품 결함 분석 작업들을 처리하는 데 있어서의 다른 클라이언트 디바이스(예를 들어, 204-2)의 속도보다 더 낮은 경우, 작업 전송 속도가 클라이언트 디바이스(204-1)로 감소된다. 제품 결함 분석 작업들을 처리하는 데 있어서의 특정 클라이언트 디바이스(예를 들어, 204-1)의 속도가 제품 결함 분석 작업들을 처리하는 데 있어서의 다른 클라이언트 디바이스(예를 들어, 204-2)의 속도보다 더 높으면, 클라이언트 디바이스(204-1)에 작업 전송 속도가 증가된다. 본 개시내용의 실시예들은 다양한 제품들의 분석 작업들에 대한 합리적인 스케줄링 및 할당을 수행할 수 있고, 이후 컴퓨팅 리소스들 및 작업들에 대한 합리적인 할당을 수행할 수 있고, 한편, 최대 효율로 실제 생산의 요구들을 만족시킬 수 있다.
도 7은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 클라이언트 디바이스(204)의 GUI(700)의 개략도이다.
클라이언트 디바이스(204)는 디스플레이를 포함한다. 디스플레이는 인간-컴퓨터 상호작용을 위해 사용되는 GUI(700)를 디스플레이하도록 구성될 수 있다. GUI는 윈도우, 아이콘, 스크롤 바, 및 디바이스에 명령을 입력하기 위해 사용자에 의해 사용되는 임의의 다른 GUI 객체를 포함할 수 있다. 본 발명의 예시적인 실시예들은 다양한 형상들, 설계들 및 구조들의 다양한 GUI들을 포함할 수 있다는 것을 이해해야 한다.
예시적인 인간-컴퓨터 상호작용은 다음을 포함한다: 하나 이상의 GUI 객체의 위치 및/또는 크기를 조정하거나, 버튼을 활성화하거나, GUI 객체에 의해 표현되는 파일/애플리케이션을 열고, 메타데이터를 하나 이상의 GUI 객체와 연관시키거나, GUI를 다른 방식으로 조작하는 것. 예시적인 GUI는 디지털 이미지들, 비디오들, 텍스트, 아이콘들, 및 버튼들 및 다른 그래픽들과 같은 제어 요소들을 포함한다. 일부 경우에, 사용자는 관련 애플리케이션에서 GUI 객체에 대해 이러한 조작을 수행할 필요가 있을 것이다.
선택적으로, 클라이언트 디바이스(204)는 제품 이미지 영역(701), 바로가기 기능 영역(702), 작업 목록 영역(703), 작업 세부사항 영역(704), 조작 기능 영역(705), 작업 선택 영역(706), 및 썸네일 영역(707) 중 하나 이상을 생성하고, 이러한 영역들을 디스플레이의 GUI(700) 상에 디스플레이하도록 구성될 수 있다.
선택적으로, 디스플레이는 제품 결함을 식별하기 위해 제품 결함들이 컴퓨팅 클러스터에 의해 식별되는 제품 이미지들을 디스플레이하도록 구성된다. 제품 이미지는 제품 결함 내용 라벨을 포함한다. 제품 결함 내용 라벨은 다음을 포함한다: 결함 마크 박스, 결함 마크 박스 좌표, 결함 카테고리 라벨 및 결함 카테고리 스코어. 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함들이 식별되는 제품 이미지들이 제품 이미지 영역(701)에 디스플레이될 수 있다. 제품 결함 내용 라벨을 포함하는 제품 이미지는 제1 결함 식별 작업에 기초하여 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 획득된 제품 이미지이다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제품 이미지의 결함 내용(결함 타입, 위치 및 크기)을 식별한 후, 결함 내용은 제품 이미지 상에 자동으로 라벨링되고 디스플레이를 통해 디스플레이된다.
예를 들어, 제품의 결함 있는 부분을 원으로 표시하기 위해 제품 이미지에서 정사각형/원이 사용되고(예를 들어, 도 7의 백색 정사각형(7011)), 정사각형의 정점 좌표들 (x1, y1) 및 (x2, y2)가 결함 위치 및 크기를 보여주기 위해 마킹된다. 또한, 결함 타입(예를 들어, 도 7의 백색 정사각형(7011) 위의 P6) 및 결함 타입 스코어(예를 들어, 도 7의 백색 정사각형(7011) 위의 0.96)를 나타내기 위해 정사각형 근처에 텍스트가 라벨링된다.
결함 타입 라벨, 결함 좌표 및 크기, 및 제품 결함 점수가 또한 GUI(700) 내의 다른 컴포넌트들(예를 들어, 현재 처리 작업 박스(801)) 내에 상세하게 디스플레이될 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다. 디스플레이는 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함들이 식별되는 제품 이미지들을 디스플레이하여, 사용자들이 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 결함 식별 효과를 직관적으로 관찰하고 재검사할 수 있게 하여, AI 식별의 정확도를 보장한다. 결함 타입 스코어는 AI가 결함 타입을 올바르게 식별할 확률을 나타낸다. 결함 타입 스코어의 디스플레이에 의해, 사용자는 낮은 스코어를 갖는 결함 식별 결과들에 대해 더 표적화된 재검사를 수행할 수 있다.
디스플레이는 또한 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함들이 식별될 수 없는 제품 이미지들, 즉 결함 내용 라벨을 포함하지 않는 제품 이미지들을 디스플레이하도록 구성된다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함들이 식별될 수 없는 제품 이미지들은 제2 결함 식별 작업에 의해 처리될 제품 결함 식별을 위한 제품 이미지들을 포함하고, 제품 결함 클러스터에 의한 식별 후에 결함 타입 스코어가 특정 임계값보다 낮은 제품 이미지들을 또한 포함한다. 산업 생산에서, 기술적 프로세스의 원활한 진행을 보장하기 위해, 결함 분석 모델의 정확도가 매우 높을 것이 요구된다. 따라서, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제품 결함들을 식별할 수 없거나 식별 스코어(식별 확률)가 낮은 경우, 결함 식별의 정확도를 보장하기 위해 수동 식별을 위해 모든 제품 이미지들이 클라이언트 디바이스(204)에 보내진다. 따라서, 제품 결함을 식별하는 컴퓨팅 클러스터가 제품 이미지의 제품 결함을 식별할 수 없는 경우, 제품 이미지는 라벨링되지 않을 수 있고, 제품 결함 내용 라벨로 라벨링되지 않은 제품 이미지가 제품 이미지 디스플레이 영역(701)에 디스플레이된다.
클라이언트 디바이스(204)는 사용자가 입력한 제품 결함 식별 명령을 획득하고, 제품 결함 식별 명령에 기초하여 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 식별될 수 없는 제품 이미지의 제품 결함 내용 라벨을 디스플레이하도록 구성된다.
클라이언트 디바이스(204)는 바로가기 기능 영역(702)을 생성하도록 구성되고, 디스플레이는 바로가기 기능 버튼들을 디스플레이하도록 구성된다. 바로가기 기능 버튼들이 바로가기 기능 영역(702)에 배치된다. 바로가기 기능 버튼들은 제품 이미지들의 전환을 실현하기 위한 기본 기능 버튼들 "이전", "다음", "확인" 및 다른 버튼들을 포함할 수 있으며, 결함 위치 마크 영역(7011)에 의한 결함 박스의 좌표 및 크기를 편집하여 결함 위치 마크 박스의 편집을 실현하기 위한 버튼들도 포함할 수 있고, 또한, (결함 메인 카테고리 설정 영역(7022) 내의 "입자", "잔류물", "구멍", "스플래쉬", "접힘" 및 "버블" 및 대응하는 결함 서브클래스 설정 영역(7023) 내의 버튼들 "P1", "P2", "P3" 등과 같은) 제품 결함 타입 설정 버튼들을 포함할 수 있다. 제품 이미지의 결함 타입의 라벨링은 바로가기 버튼들에 의해 실현된다. 선택적으로, 바로가기 기능 영역(702)은 또한 제품 결함 타입들에 대한 바로가기 키들을 설정하여, 바로가기 기능 영역(702)에서 다수의 결함 타입 설정 버튼들을 생략할 수 있다. 클라이언트 디바이스(204)는 또한, 마우스 위치를 실시간으로 포착하고 마우스 위치를 제품 이미지 상의 특정 위치 및 크기로 변환하도록 구성될 수 있다. 사용자는 마우스를 이용하여 제품 이미지 내의 제품 결함의 위치 및 크기를 그릴 수 있다. 클라이언트 디바이스는 바로가기 기능 영역(702) 또는 다른 수단에 기초하여 사용자가 입력한 제품 결함 식별 명령을 획득하여, 제품 결함 식별 명령에 기초하여 제품 결함 내용의 수동 라벨링을 실현하고, 이에 의해, 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 식별될 수 없는 제품 이미지의 제품 결함 내용 라벨을 디스플레이하도록 구성될 수 있다.
클라이언트 디바이스(204)는 또한 사용자가 입력한 제품 결함 재검사 명령을 획득하고, 제품 결함 재검사 명령에 기초하여 제품 이미지 내의 제품 결함 내용 라벨을 결정 또는 수정하도록 구성된다. 재검사될 제품 이미지 내의 제품 결함 내용 라벨은 제품 결함(201)을 식별하기 위한 컴퓨팅 클러스터에 의해 식별됨으로써 획득될 수 있고, 또한 수동 식별에 의해 획득될 수 있다. 예를 들어, AI에 기초한 제품 결함 내용 식별은 제품들의 카테고리 라벨링을 효율적으로 완료할 수 있다. 그러나, 생산 라인의 복잡한 프로세스로 인해 그리고 기술적 프로세스의 개선으로 인해, 결함 식별 모델의 식별 효과가 변동할 수 있다. 따라서, AI 식별의 정확도 및 안정성을 보장하기 위해 숙련된 직원에 의한 정기적인 재검사가 요구된다. 또한, 예를 들어, 하급 직원에 의해 수동 식별이 수행된 후의 제품 결함 내용 라벨은, 하급 직원의 수동 라벨링의 정확도를 보장하도록, 숙련된 직원에 의해 다시 재검사될 수 있다. 따라서, 사용자들에 대한 제품 결함 식별 재검사의 관련 기능 애플리케이션들이 클라이언트 디바이스(204)에 의해 제공된다.
예를 들어, 사용자는 클라이언트 디바이스(204)에서 재검사될 제품 이미지의 타입을 선택할 수 있다. 재검사될 제품 이미지의 타입은 결함 식별 모델에 기초하여 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 제품 결함들이 식별되는 제품 이미지들, 및 제품 결함들이 수동으로 식별되는 제품 이미지들을 포함한다. 재검사될 제품 이미지들은 제품 이미지 영역(701)에 디스플레이된다.
예를 들어, 재검사될 제품 이미지의 입자 결함 P6가 에러에 의해 입자 결함 P2인 것으로 식별된다. 사용자는 바로가기 기능 영역(702)에서 제품 결함 타입 설정 버튼 "P6"을 클릭/터치할 수 있다. 클라이언트 디바이스는 사용자가 입력한 제품 결함 재검사 명령을 획득할 수 있다. 결함 타입 라벨 P2는 재검사 명령에 기초하여 제품 결함 식별 내용을 포함하는 제품 이미지에서 P6으로 수정될 수 있다. 따라서, 재검사될 제품 이미지 내의 제품 결함 내용이 수정된다.
재검사될 제품 이미지 내의 제품 내용 라벨이 완전히 정확하다고 가정하면, 클라이언트 디바이스는 바로가기 기능 영역(702) 내의 기본 기능 버튼 "다음" 또는 "확인"을 클릭/터치함으로써 사용자가 입력한 제품 결함 재검사 명령을 획득할 수 있다. 그리고, 재검사될 제품 이미지 내의 제품 결함 내용이 확인되고, 따라서, 제품 이미지 영역(701) 내의 제품 이미지는 재검사될 다음 제품 이미지로 점프된다.
결함 식별 모델에 의해 식별된 결함 위치 마크 박스의 위치 또는 크기가 정확하지 않다고 가정하면, 결함 위치 마크 박스의 위치 또는 크기 정보를 결함 위치 마크 영역(7021) 내에 입력함으로써 결함 위치 조정이 행해질 수 있다. 사용자는 또한 마우스에 의한 클릭 및 드래그에 의해 제품 결함의 위치 및 크기를 선택할 수 있다. 클라이언트 디바이스(204)는 마우스 위치를 실시간으로 포착하고 마우스 위치를 제품 이미지 상의 특정 위치 및 크기로 변환할 수 있다. 사용자는 또한 제품 이미지 영역(701)에 제품 결함 식별 내용을 포함하는 제품 이미지 상에 새로운 결함 위치 마크 박스를 직접 그려서 오래된 결함 위치 마크 박스를 대체할 수 있다. 클라이언트 디바이스(204)는 또한 사용자에 의해 사용되는 (키보드 바로가기 설정과 같은) 다른 입력 모드들에 의해 제품 결함 재검사 명령을 획득하도록 구성될 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다.
디스플레이는 또한 복수의 제품 결함 분석 작업에 대응하는 작업 목록을 디스플레이하도록 구성될 수 있다. 클라이언트 디바이스(204)는 작업 목록 영역(703) 내의 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 생성된 복수의 제품 결함 분석 작업들을 이름 목록의 형태로 디스플레이할 수 있다. 이러한 제품 결함 분석 작업들의 소팅은 설정된 규칙들에 따라 변경될 수 있다. 예를 들어, 최상위 제품 결함 분석 작업은 현재 처리된 작업- 제품 결함 분석 작업 1 -이다. 제2 제품 결함 분석 작업으로부터 시작하여, 나머지 제품 결함 분석 작업들은 제품 우선순위 및 시간 우선순위에 따라 자동으로 분류된다. 작업 목록 영역(703)에서의 각각의 제품 결함 분석 작업 이름은 동일한 제품 로트의 복수의 제품 결함 분석 작업들의 세트를 나타낼 수 있고, 또한 단일 제품(유리)의 제품 결함 분석 작업을 나타낼 수 있다. 작업 이름은 로트 또는 단일 제품의 일련 번호를 포함할 수 있고, 또한 제품 타입 등을 포함할 수 있다. 여기에는 어떠한 제한도 주어지지 않을 것이다. 제품 제조 프로세스에서, 제품이 다양한 사이트들을 연속적으로 통과할 때, 복수의 제품 결함 분석 작업이 실시간으로 생성될 것이다. 작업 목록 영역(703) 내의 이름 목록들의 수량은 연속적으로 증가될 수 있고; 작업들의 배열 순서 또한 우선순위와 같은 요인들로 인해 연속적으로 변경될 수 있다.
디스플레이는 또한 현재 제품 결함 분석 작업의 작업 세부사항들을 디스플레이하도록 구성된다. 작업 세부사항들은 작업 세부사항 영역(704)에 디스플레이될 수 있다. 예를 들어, 현재 처리 제품 결함 분석 작업은 제품 결함 분석 작업 1이다. 작업 세부사항들은 제품 정보, 사이트 정보, 결함 타입 정보 등을 포함한다. 결함 타입 정보는 결함 식별 모델을 통한 식별에 의해 획득될 수 있다. 사용자는 또한 작업 목록 영역(703) 내의 임의의 목록 이름을 클릭할 수 있고, 작업의 상세 정보가 작업 세부사항 영역(704)에 보여질 것이다. 하나의 제품 결함 분석 작업 이름이 다수의 제품들의 복수의 제품 결함 분석 작업들을 포함하는 경우, 작업 세부사항 영역(704)은 또한 모든 단일 제품의 작업 세부사항들을 하나씩 디스플레이할 수 있다.
클라이언트 디바이스(204)는 또한 사용자가 입력한 복수의 제품 결함 분석 작업들의 실행 우선순위 조정 명령을 획득하도록 구성될 수 있고, 작업 목록에서의 제품 결함 분석 작업들의 소팅은 조정 명령에 기초하여 수정된다. 사용자는 터치 조작, 마우스 조작, 키보드 조작 등에 의해 복수의 제품 결함 분석 작업에 대한 실행 우선순위 조정 명령을 클라이언트 디바이스(204)에 입력할 수 있다. 클라이언트 디바이스(204)는 또한 다른 입력 수단에 의해 우선순위 조정 명령의 입력을 획득할 수 있다. 조정 명령을 취득한 후에, 클라이언트 디바이스(204)는 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201) 내의 제품 결함 분석 작업 큐의 실행 순서를 조정할 수 있고, 또한 제품 결함 분석 작업들을 실행함에 있어서 클라이언트 디바이스(204)의 순서를 조정할 수 있다. 대응하는 수정은 또한 대응하는 클라이언트 디바이스(204)에 의해 디스플레이되는 작업 목록 영역(703)에서의 제품 결함 분석 작업들의 소팅에 대해 이루어질 수 있다.
예를 들어, 사용자가 제품 결함 분석 작업의 실행 순서를 조정하기를 원한다고 가정하면, 사용자는 제품 결함 분석 작업을 작업 목록 영역(703)에서 드래그할 수 있다. 예를 들어, 도 7의 제품 결함 분석 작업 2를 제품 결함 분석 작업 3으로 드래그한 후에, 제품 결함 분석 작업 2의 우선순위는 제품 결함 분석 작업 3의 우선순위보다 낮도록 조정된다. 클라이언트 디바이스(204)는 사용자의 동작을 획득한 다음, 복수의 제품 결함 분석 작업들의 실행 우선순위 조정 명령을 획득할 수 있다. 실행 우선순위 조정 명령을 취득한 후에, 클라이언트 디바이스(204)는 조정 순서에 기초하여 복수의 제품 결함 분석 작업 또는 복수의 제품 결함 분석 작업 중 하나의 실행 우선순위를 수정할 수 있다. 한편, 클라이언트 디바이스(204)는 조정 명령에 기초하여 작업 목록 영역(703)에서의 제품 결함 분석 작업들의 소팅을 수정하도록 구성될 수 있다. 이때, 제품 결함 분석 작업 3이 제품 작업 2 위에 디스플레이된다.
사용자는 또한 다른 수단에 의해 제품 결함 분석 작업들의 우선순위를 직접적으로 또는 간접적으로 설정할 수 있다. 예를 들어, 사용자는 GUI(700) 상의 미리 설정된 우선순위 조정 바로가기 또는 미리 설정된 우선순위 조정 버튼에 의해 제품 결함 분석 작업 2 내지 5의 우선순위를 높이도록 선택할 수 있다. 클라이언트 디바이스(204)는 우선순위 조정 버튼을 통해 복수의 제품 결함 분석 작업들의 실행 우선순위 조정 명령을 획득하도록 구성될 수 있다. 실행 우선순위 조정 명령을 취득한 후에, 클라이언트 디바이스(204)는 조정 명령에 기초하여 복수의 제품 결함 분석 작업 또는 복수의 제품 결함 분석 작업 중 하나의 실행 우선순위를 수정할 수 있다. 한편, 클라이언트 디바이스(204)는 조정 명령에 기초하여 작업 목록 영역(703)에서의 제품 결함 분석 작업들의 소팅을 수정하도록 구성된다. 예를 들어, 클라이언트 디바이스(204)는 제품 결함 분석 작업들(2 내지 5)이 완료될 때까지, 작업 목록 영역(703)의 최상부에 제품 결함 분석 작업들(2 내지 5)을 항상 고정적으로 디스플레이할 수 있다. 나머지 제품 결함 분석 작업들은 제품 결함 분석 작업 6으로부터 시작하는 제품 우선순위 및 시간 우선순위에 따라 연속적으로 분류될 것이다.
디스플레이는 또한, 제품 이미지 디바이스의 다수의 썸네일을 디스플레이하도록 구성된다. 썸네일들은 썸네일 영역(707)에 디스플레이될 수 있다. 썸네일 영역(707) 내의 썸네일들은 제품 이미지 영역(701) 내의 제품 이미지들에 비해 단지 크기가 감소될 뿐이다. 선택적으로, 제품 이미지 영역(701) 내의 제품 이미지들은 썸네일 1의 확대된 모습일 수 있다. 사용자는 임의의 썸네일을 클릭하여, 썸네일에 대응하는 확대된 제품 이미지가 제품 이미지 영역(801)에 디스플레이되게 할 수 있다. 썸네일은 제품 결함 식별 내용을 포함하는 제품 이미지의 썸네일일 수 있고, 또한 제품 결함 식별 내용을 포함하지 않는 제품 이미지의 썸네일일 수 있다. 다수의 썸네일들은 현재 결함 분석 작업에서의 다수의 제품들의 모든 제품 이미지들의 썸네일들일 수 있고, 또한 단일 제품에서의 모든 제품 이미지들의 썸네일들일 수 있고, 또한 동일한 결함 타입 하에서의 모든 제품 이미지들의 썸네일들일 수 있다. 선택적으로, 사용자가 작업 세부사항 영역(704)에서 단일 제품 내의 특정 결함 타입을 클릭하는 경우, 이러한 타입 하의 모든 썸네일들이 대응하는 썸네일 영역(707)에 디스플레이된다.
디스플레이는 복수의 조작 기능 버튼을 디스플레이하도록 구성된다. 조작 기능 버튼들은 조작 기능 영역(705)에 배치된다. 클라이언트 디바이스는 사용자가 입력한 시작/종료 동작 명령을 획득한다. 시작 동작 명령에 기초하여, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함 분석 작업들 또는 결함 식별 결과들을 클라이언트 디바이스(204)에 전송하기 시작한다. 종료 동작 명령에 기초하여, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함 분석 작업들 또는 결함 식별 결과들을 클라이언트 디바이스에 전송하는 것을 중단한다. 클라이언트 디바이스(204)는 사용자가 입력한 온라인/오프라인 동작 명령을 획득한다. 온라인 동작 명령에 기초하여, 클라이언트 디바이스(204)는 제품 결함 분석 작업들을 실시간으로 수신할 수 있다. 오프라인 동작 명령에 기초하여, 클라이언트 디바이스(204)는 제품 결함 분석 작업들을 다시 수신하지 않지만, 사용자는 클라이언트 디바이스(204)에 저장된 완료되지 않은 제품 결함 분석 작업들에 대한 재검사 또는 수동 식별을 수행할 수 있다. 클라이언트 디바이스(204)는 또한 사용자가 입력한 다른 동작 기능 명령어들에 기초하여 대응하는 기능들을 실행할 수 있다.
디스플레이는 또한 작업 선택 버튼들을 디스플레이하도록 구성된다. 작업 선택 버튼들은 작업 선택 영역(706)에 제공된다. 클라이언트 디바이스(204)는 사용자가 입력한 재검사 작업 기능 선택 명령을 획득하도록 구성된다(예를 들어, 사용자가 AI 버튼을 클릭함). 대응하는 작업 세부사항 영역(704), 썸네일 영역(707), 및 제품 이미지 영역(701)은 제품 결함들이 제품 결함들을 식별하기 위한 컴퓨팅 클러스터(202)에 의해 식별되는 제품 이미지들을 디스플레이하고, 그리고 제품 이미지들은 사용자의 재검사를 위해 사용될 수 있다. 클라이언트 디바이스(204)는 사용자가 입력한 수동 식별 기능 선택 명령을 획득하도록 구성된다(예를 들어, 사용자는 OP 버튼을 클릭한다). 대응하는 작업 세부사항 영역(704), 썸네일 영역(707), 및 제품 이미지 영역(701)은 제품 식별 내용을 포함하지 않는 제품 이미지들, 및 수동 식별을 위해 사용될 수 있는 제품 이미지들을 디스플레이한다. 클라이언트 디바이스(204)는 또한 사용자가 입력한 점프 기능 선택을 획득하여, 사용자의 샘플링 재검사를 위해 썸네일 영역(707)에서 이미지를 점프할 수 있다.
선택적으로, 디스플레이는 또한 복수의 제품 결함 분석 작업들 중의 적어도 하나의 제품 결함 분석 작업에 관련된 참조 정보를 디스플레이하도록 구성된다. 참조 정보는 표준 제품 이미지들 및 제품 결함 식별 표준들을 포함한다. 클라이언트 디바이스(204)는 제품 이미지 영역(701)에 현재 처리 제품 결함 분석 작업 1에 관련된 제품 이미지들을 디스플레이하고, 표준 제품 이미지 박스(도면에 도시되지 않음)에 표준 제품 이미지들을 디스플레이하도록 구성될 수 있다. 클라이언트 디바이스(204)는 또한 제품 결함 식별 표준을 제품 결함 식별 표준 박스(805)에 디스플레이하도록 구성될 수 있다. 다수의 제품 이미지들이 존재하는 경우, 사용자는 바로가기 기능 영역(702) 내의 이전/다음 버튼들에 의해 제품 이미지를 선택할 수 있다. 사용자는 또한 클라이언트 디바이스에 의해 설정된 줌 버튼에 의해 제품 이미지 영역(701) 및 표준 제품 이미지 박스 내의 이미지들을 각각 스케일링할 수 있다. 관련 직원은 제품 이미지 영역(701) 내의 제품 이미지를 표준 제품 이미지 박스 내의 표준 제품 이미지와 비교함으로써 제품 결함 내용을 더 직관적으로 결정할 수 있다.
도 8은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 클라이언트 디바이스(204)의 GUI의 다른 개략도이며, 이는 GUI(700)의 다른 표시 형태를 예시적으로 도시한다.
선택적으로, 클라이언트 디바이스(204)는 또한 메시지 처리 구성 박스(801), 시스템 구성 박스(802) 및 제품 이미지 데이터베이스 구성 박스(803) 중 하나 이상을 생성하고, 이들을 GUI(700) 상에 디스플레이할 수 있다.
클라이언트 디바이스(204)는 사이트(101)의 요건에 따라 제품 제조 메시지들의 수신 및 전송을 설정하도록 구성될 수 있다. 전술한 바와 같이, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 제조 메시지 서비스 디바이스(103)에 의해 전송된 제품 제조 메시지들을 모니터링해야 한다. 따라서, 클라이언트 디바이스(204)는 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)와 제품 제조 메시지 서비스 디바이스(103) 사이의 통신을 설정하도록 구성될 수 있다. 보다 구체적으로, 클라이언트 디바이스(204)는 GUI(700)에서 메시지 처리 구성 박스(701)를 보여줄 수 있다. 메시지 처리 구성 박스(701)는 다음의 통신 설정들을 도시한다: 제품 제조 사이트 정보, 제품 정보, 제품 제조 메시지 수신 포트, 제품 제조 메시지 전송 포트, 제품 제조 메시지의 길이, 제품 제조 키워드, 제품 제조 메시지 등록 정보, 및 제품 제조 메시지 통신 프로토콜. 사용자는 메시지 처리 구성 박스(801)에서 옵션들을 편집함으로써 상기 정보를 수정할 수 있다.
제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202), 및 클라이언트 디바이스(204)는 제품 이미지 데이터베이스(203) 내의 제품 이미지에 관한 판독/삭제 동작을 직접 수행하도록 구성될 수 있다. 따라서, 클라이언트 디바이스(204)는 또한, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202), 클라이언트 디바이스(204), 및 제품 이미지 데이터베이스(203)(예를 들어, 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201), 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202), 및 클라이언트 디바이스(204)가 그를 통해 제품 이미지 데이터베이스(203)와 연결되어 있는 IP 어드레스 및 포트 번호) 사이에 통신 설정을 설정하도록 구성될 수 있다.
클라이언트 디바이스(204)는 또한 제품 이미지 데이터베이스(203)의 저장소를 설정할 필요가 있을 수 있다. 관련 직원은 제품 이미지 데이터베이스 구성 박스(803)에서 내용을 편집함으로써 제품 이미지 데이터베이스(203)의 저장소를 구성할 수 있다. 예를 들어, 하나 이상의 저장 설정이 제품 이미지 데이터베이스(203) 상에서 수행된다: 공유 저장을 위한 마운트 권한, 할당된 공간, 및 액세스 권한. 예를 들어, 제품 이미지 데이터베이스(203) 상의 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 액세스 권한은, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제품 이미지 데이터베이스(203) 내의 제품 이미지들을 에러에 의해 삭제하지 않도록 보장하기 위해 "판독 전용"으로 설정될 수 있다.
클라이언트 디바이스(204)는 또한 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 메시지 수신 포트, 메시지 전송 포트, 통신 프로토콜, IP 어드레스 등을 설정할 필요가 있을 수 있고, 따라서, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 분산된 제품 결함 분석 작업들을 수신할 수 있다. 관련 직원은 시스템 구성 박스(802)에서 내용을 편집함으로써 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 통신 세부사항을 설정할 수 있다.
제품 제조 공장의 후속 비지니스가 또한 확장될 수 있고, 따라서, 비지니스 레벨, 컴퓨팅 리소스들, 저장 리소스들 등에 조정들이 있을 수 있다. 하드웨어가 공장에 추가될 때, 클라이언트 디바이스(204)는 기존의 시스템의 실행 상태를 변경하지 않고 추가된 하드웨어를 설정할 수 있다. 따라서, 원래의 디바이스의 설정이 변경되지 않는다.
전체 시스템의 복잡성을 고려하여, 상이한 레벨들의 요원은 상이한 권한들을 갖는다.
클라이언트 디바이스(204)는 사용자 그룹 정보, 그룹 내의 사용자들의 정보, 및 사용자 권한 정보를 설정하도록 구성될 수 있다. 선택적으로, 클라이언트 디바이스(204)는 또한 제품 결함 분석 작업의 권한 조정 정보를 획득하도록 구성되고; 권한 조정 정보에 기초하여 제품 결함 분석 작업의 권한을 조정한다. 여기서, 권한 조정 정보는, 사용자 그룹 조정 정보, 그룹 내의 사용자들의 조정 정보, 및 사용자 권한 조정 정보 중 하나 이상을 포함한다.
사용자는 클라이언트 디바이스(204)를 통해 사용자 그룹 정보, 그룹 내의 사용자들의 정보, 및 사용자 권한을 편집할 수 있다. 그리고 그룹별로 사용자들을 더 관리하기 위해 사용자 그룹 정보를 편집하는 것도 가능하다. 예를 들어, 사용자는 그룹의 정보를 추가, 저장 및 삭제할 수 있다. 사용자는 그룹 내의 사용자들의 정보를 편집(예를 들어, 사용자 그룹의 멤버들을 추가, 삭제, 및 편집)함으로써 그룹 내의 사용자들을 관리할 수 있다. 사용자는 또한 각각의 사용자의 요건에 따라 상세한 권한을 설정할 수 있다. 예를 들어, 사용자는 특정 사용자의 사용자 권한을 직접 편집할 수 있다. 사용자 권한은, 사용자가 특정 제품 결함 분석 작업, 예를 들어, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)의 제품 결함 내용을 재검사하기 위한 작업, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)의 통신 설정을 위한 작업 등을 처리할 수 있는지 여부의 권한을 지칭한다.
클라이언트 디바이스(204)는 사용자의 편집 동작을 획득하고, 동작 정보를 제품 결함 분석 작업의 권한 조정 정보에 통합하고, 권한 조정 정보에 따라 제품 결함 분석 작업의 권한을 조정하도록 구성될 수 있다.
본 개시내용의 실시예에서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 결함 식별 모델 훈련 작업을 생성하도록 구성된다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 결함 식별 모델 훈련 작업에 기초하여 결함 식별 모델을 훈련시키도록 구성된다.
제품들 및 사이트들이 다양함에 따라, 모든 문제들이 범용 결함 식별 모델의 이용에 의해 해결될 수 있는 것은 아니며, 따라서, 상이한 제품 타입들의 제품들을 평가하기 위해 다수의 결함 식별 모델들이 제공되도록 요구된다. 공장의 제조 프로세스에서, 결함 식별 모델을 미세 조정할 필요도 있을 수 있다. 예를 들어, 공장의 생산 라인의 제조 프로세스가 변경되거나 제조 디바이스가 변경되면, 생성된 AOI 이미지가 변경될 수 있다. 변경은 공장의 생산 라인의 결함 식별 모델의 추론 성능의 감소를 야기할 수 있고, 따라서 결함 식별 모델은 재훈련되어야 한다. 다른 예는 새로운 제품 타입의 생산이 원래의 제품 타입의 결함들과 상이한 결함들을 생성할 수 있고, 원래의 결함 식별 모델이 그 제품 타입의 결함들을 식별할 수 없다는 것이다.
따라서, 결함 식별 모델의 추론 성능들(정확도, 정밀도, 리콜 및 FScore)이 요건들을 충족시킬 수 없거나 결함 식별 모델이 제품 결함들을 식별할 수 없을 때, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 결함 식별 모델 훈련 작업을 생성하고, 새로운 결함 식별 모델의 훈련을 위해 제품 결함을 식별하기 위한 결함 식별 모델 훈련 작업을 컴퓨팅 클러스터에 전송하도록 구성될 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 훈련된 결함 식별 모델의 결과 데이터를 클라이언트 디바이스(204)에 포워딩하도록 구성될 수 있다. 클라이언트 디바이스(240)는 포워딩된 데이터를 수신한 후에 결과 데이터를 디스플레이하도록 구성될 수 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 사이트들, 제품들, 시간 노드들 등에 따라 복수의 훈련된 결함 식별 모델을 관리하고, 새로운 결함 식별 모델들의 훈련, 테스트 등을 구성하도록 구성될 수 있다. 각각의 결함 식별 모델은 훈련, 검증, 테스트, 및 추정 후에만 사용될 수 있다. 제한된 훈련 결함 식별 모델들 및 컴퓨터 리소스들의 경우에, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 결함 식별 모델 훈련 작업들의 우선순위, 훈련 수, 및 하드웨어 리소스들의 상태에 따라 결함 식별 모델 훈련 작업들에 대한 스케줄링 및 합리적인 할당을 수행하도록 구성될 수 있다. 스케줄링 및 할당 제안은 제품 결함 분석 작업의 것과 유사하며, 여기서는 더 설명되지 않는다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 결함 식별 모델 훈련을 시각화하는 기능(결함 식별 모델 훈련의 시각화 결과는 클라이언트 디바이스(204)에 디스플레이될 것임)을 실현할 수 있어서, 사용자는 결함 식별 모델 훈련의 상태(예를 들어, 결함 식별 모델의 훈련이 수렴하는지 여부), 및 훈련 프로세스를 정지 또는 조정할지 여부를 실시간으로 관찰할 수 있다. 데이터 세트들의 연속적인 보강 및 훈련 파라미터들의 연속적인 최적화에 의해, 동일한 제품 결함 검출에 관하여, 새로 훈련된 결함 식별 모델이 오래된 결함 식별 모델보다 더 양호한 효과를 갖는 경우, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 결함 식별 모델 라이브러리 내의 결함 식별 모델을 업데이트할 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 제품 결함을 식별하기 위한 훈련 작업을 컴퓨팅 클러스터(202)에 전송하고, 훈련 프로세스에서 피드백된 프로세스 정보(예를 들어, 손실, 검증 정확도 등)에 따라 실시간으로 결함 식별 모델을 추정하여, 결함 식별 모델의 훈련 프로세스가 정상인지를 결정할 수 있다.
제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 훈련 세트들, 검증 세트들, 및 훈련을 위해 요구되는 테스트 세트들을 추가, 삭제, 수정 및 편집하도록 구성될 수 있다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 제품 요건들에 따라 결함 식별 모델을 배치하고, 배치 전에 평가 및 테스트와 같은 작업을 수행하도록 구성될 수 있다. 모델 훈련과 관련된 기능들의 구현은 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터에 의해 구현될 수 있거나, 모델 훈련 관리 기능은 또한 모델 관리 디바이스의 독립적인 배치에 의해 구현될 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다.
제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 수신된 결함 식별 모델 훈련 작업에 기초하여 제품 이미지 데이터베이스(203)에서 제품 이미지 샘플들을 획득하도록 구성된다. 제품 이미지 데이터베이스(203) 내의 제품 이미지 샘플들은 결함 내용이 인식된(라벨링됨) 제품 이미지들이다. 파라미터들 및 제품 이미지들에 기초하여, 제품 결함 분석 클러스터(1305)는 AI 결함 식별 모델을 훈련하도록 구성된다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터 (202)는 특수 트랜잭션 요청 메시지 포맷 프로브(메시지 바디는 "taskNum" 키를 포함함)를 HeartBeat로서 설정하고, 대응하는 GPU 노드 작업 큐에서 작업 부하를 정기적으로 반환하고, 각각의 GPU 노드를 3가지 타입, 즉, 훈련가능/추론가능/훈련가능 및 추론가능 중 하나로 설정하고, 각각의 GPU 노드 상의 작업 부하를 목록의 형태로 관리하도록 구성될 수 있다. 작업들은 작업 타입 및 GPU 노드 상의 작업 부하와 조합하여 최적의 GPU 노드로 보내진다. 제품 결함 분석 클러스터(1305)는 GPU 리소스를 매우 효율적으로 이용하기 위해, GPU 노드를 관리하고 작업 스케줄링을 완료하도록 구성될 수 있다.
예를 들어, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 및 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 다음의 예시적인 수단에 의해 결함 식별 모델의 훈련 또는 추론을 실현하도록 구성될 수 있다. 먼저, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)와 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201) 사이에 소켓 네트워크 연결이 설정된다. 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터(201)는 TCP 메시지를 통해 제품 결함을 식별하기 위한 트랜잭션 요청 타입 메시지를 컴퓨팅 클러스터(202)에 전송하도록 구성된다. 트랜잭션 요청 타입 메시지들은 타입 필드들에 의해 식별되는 다음의 7개의 타입, 예를 들어, 추론, 훈련, 훈련 상태 문의, 작업 훈련 조기 종료, 노드 정보의 문의(현재 GPU 노드의 고유 식별 번호 및 타입의 문의), 작업 큐 내의 작업들의 클리어링, 및 작업 상태의 문의를 가질 수 있다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 메시지를 수신한 후에 트랜잭션 요청 타입 메시지 내의 "타입" 필드를 분석하도록 구성된다. "추론" 또는 "훈련" 타입을 갖는 제품 결함 분석 작업들은 처리하는 데 긴 시간이 걸릴 수 있다. "타입" 필드가 제품 결함 분석 작업이 "추론" 또는 "훈련"의 타입임을 나타내는 경우, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 작업을 인스턴스화하고 작업을 작업 큐에 넣는다. "타입" 필드가 제품 결함 분석 작업들의 나머지 5가지 타입을 나타내는 경우, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 작업을 인스턴스화하고, 실행 함수를 직접 호출하여 대응하는 동작을 완료하고, 제품 제조 메시지들을 처리하기 위해 결과를 컴퓨팅 클러스터(201)에 신속하게 반환한다.
제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 내의 작업 매니저는 작업 큐로부터 추론/훈련 작업 객체를 획득하고, 대응하는 추론/훈련 알고리즘을 호출하고, 제품 제조 메시지들을 처리하기 위해 미리 정의된 TCP 메시지의 형태로 작업 결과를 컴퓨팅 클러스터(201)에 반환하도록 구성된다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 제품 제조 메시지를 처리하기 위해 수신된 모든 결과 메시지를 컴퓨팅 클러스터(201)에 반환하도록 구성된다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 최종적으로 결과 메시지를 클라이언트 디바이스(204)에 반환한다. 그리고, 클라이언트 디바이스(204)는 프론트 엔드 인터페이스 디스플레이를 위해 또는 데이터베이스에 저장되어 있는 결과 메시지를 분석하도록 구성된다.
클라이언트 디바이스(204)의 디스플레이는 결함 식별 모델의 훈련 상태를 디스플레이하도록 구성된다. 예를 들어, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함 분석 응답 메시지들을 클라이언트 디바이스(204)에 포워딩할 수 있고, 그 후 클라이언트 디바이스(204)는 디스플레이 상에 메시지들을 디스플레이하고 메시지들을 사용자에게 보여준다. 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 또한 결함 식별 모델의 훈련 상태에 관련된 메시지들을 클라이언트 디바이스(204)에 포워딩할 수 있고, 그 후 클라이언트 디바이스(204)는 디스플레이 상에 메시지들을 디스플레이하고 메시지들을 사용자에게 보여준다.
도 9는 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템(104) 내의 클라이언트 디바이스(204)의 GUI(700)의 또 다른 개략도이다.
선택적으로, 클라이언트 디바이스(204)는 또한 모델 훈련 상태 박스(901)를 생성하고, 모델 훈련 상태 박스를 GUI(700) 상에 디스플레이할 수 있다. 결함 식별 모델의 훈련은 시간 소모적인 프로세스이므로, 결함 식별 모델이 훈련을 시작할 때 파라미터들 및 데이터 설정들이 불합리한 경우, 장시간 훈련 후에 획득된 결함 식별 모델은 잘못되고 부정확할 수 있다. 훈련의 종료시에 문제를 발견하게 되는 것을 피하기 위해, 클라이언트 디바이스(204)는 결함 식별 모델의 훈련 프로세스를 시각적으로 디스플레이하고, 결함 식별 모델의 훈련 상태가 수렴하는지를 실시간으로 관찰하고, 훈련 프로세스를 적시에 정지 또는 조정할 수 있다.
선택적으로, 클라이언트 디바이스(204)는 또한 신/구 모델 비교 박스(902)를 생성하고, 신/구 모델 비교 박스를 GUI(700) 상에 디스플레이할 수 있다. 클라이언트 디바이스(204)는 또한 기능 버튼 박스(903)를 생성하도록 구성될 수 있다. 기능 버튼 박스(903)는 오프라인 테스트를 개시하는 기능 키, 온라인 테스트를 개시하는 기능 키, 및 새로운 결함 식별 모델을 배치하는 기능 키를 포함한다.
제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 새로운 제1 결함 식별 모델을 훈련한 것으로 가정하면, 사용자는 원래의 제2 결함 식별 모델을 새로운 제1 결함 식별 모델로 대체할 준비가 된다.
사용자는 오프라인 테스트를 개시하기 위해 기능 키를 클릭함으로써 제1 결함 식별 모델의 오프라인 테스트를 개시할 수 있다. 결함 식별 모델이 오프라인 테스트가 필요하다는 메시지가 클라이언트 디바이스(204)로부터 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)로 전송될 수 있다. 제1 결함 식별 모델의 오프라인 테스트를 위한 제품 결함 분석 작업은 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 분산되어, 제1 결함 식별 모델의 오프라인 테스트 결과를 획득한다. 이때 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)가 제2 결함 식별 모델을 사용하여 이러한 타입의 제품 결함들을 분석하고 있다고 가정하면, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 제1 결함 식별 모델과 제2 결함 식별 모델의 품질을 비교하기 위해, 제2 결함 식별 모델을 통해 추론함으로써 생성된 데이터를 테스트 세트로서 사용하여 제1 결함 식별 모델에 대해 오프라인 테스트를 수행할 수 있다. 이때, 신/구 모델 비교 박스(902)는 제1 결함 식별 모델 및 제2 결함 식별 모델의 비교 이미지들을 디스플레이한다. 신/구 모델 비교 박스(902)는 또한 제2 결함 식별 모델에 의해 식별된 제품 결함 내용을 직접 디스플레이하도록 구성될 수 있다(디스플레이 모드는 결함 식별 모델 참조 박스(7011)를 지칭한다). 사용자는 기능 버튼 박스(903)를 통해 제1 결함 식별 모델에 의해 식별된 제품 결함 내용을 재검사하고 마킹할 수 있다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 테스트 세트로서 재검사 및 마킹된 데이터를 취하고, 테스트 결과(즉, 제1 결함 식별 모델의 오프라인 테스트 결과)가 신/구 모델 비교 박스(902)에 유사하게 디스플레이된다.
제1 결함 식별 모델의 오프라인 테스트가 완료된 후에, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함들을 분석함에 있어서의 제1 결함 식별 모델의 정확도, 분석 속도 등을 나타내는 제1 결함 식별 모델의 오프라인 테스트 결과를 획득하도록 구성된다. 오프라인 테스트 결과가 미리 설정된 표준을 충족시키면(예를 들어, 제1 결함 식별 모델의 정확도가 제2 결함 식별 모델의 정확도보다 크면), 사용자는 기능 키를 클릭하여 온라인 테스트를 개시함으로써 제1 결함 식별 모델의 온라인 테스트를 개시할 수 있다. 본 기술 분야의 통상의 기술자들은 상기 미리 설정된 표준이 리콜 및 FScore와 같은 인덱스들에서의 임의의 인덱스의 비교하는 것을 또한 포함할 수 있다는 것을 이해할 것이다. 이러한 표준은 미리 설정된 표준이 2개의 결함 식별 모델의 품질을 균형화할 수 있는 한, 본 개시내용에서 제한되지 않는다.
제1 결함 식별 모델의 온라인 테스트는 또한 제1 결함 식별 모델의 그레이 스케일 릴리즈 프로세스로 지칭될 수 있다. 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202)는 공장의 생산 라인에서 생성된 실시간 데이터를 사용하여 제1 결함 식별 모델에 대해 온라인 테스트를 수행할 수 있다. 제1 결함 식별 모델 및 제2 결함 식별 모델 양자 모두는 상이한 제품 결함 추론 결과들을 생성하기 위해 동일한 실시간 데이터를 사용하여 각각 추론된다. 제품 결함 분석을 위한 관련 직원/분산 컴퓨팅 시스템(104)은 제1 결함 식별 모델의 온라인 테스트 결과가 미리 설정된 표준을 충족시키는지(예를 들어, 결과가 동일한 데이터에 대한 제2 결함 식별 모델의 추론에 의해 생성된 제품 결함 추론 결과보다 우수한지) 여부를 분석하도록 추가로 구성될 수 있다.
제1 결함 식별 모델이 오프라인 테스트를 통과한다고 가정하면, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 생산 라인에 의해 생성된 데이터를 판독한 후에 실시간으로 데이터를 2개의 사본으로 복사한다. 2개의 사본은 제2 결함 식별 모델의 제품 결함 식별 추론 작업을 실행하는 제1 제품 결함 분석 노드 및 제1 결함 식별 모델의 온라인 테스트를 실행하는 제2 제품 결함 분석 노드에 각각 발행된다. 제1 제품 결함 분석 노드 및 제2 제품 결함 분석 노드는 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 내의 상이한 GPU 노드들일 수 있고, 또한 결함 식별 모델의 분석 또는 테스트를 실행할 수 있는 다른 디바이스들일 수 있다. 제1 제품 결함 분석 노드 및 제2 제품 결함 분석 노드는 동일한 디바이스일 수 있고, 또한 상이한 디바이스들일 수 있다. 본 개시내용에서는 여기에 대한 어떠한 제한도 주어지지 않을 것이다.
제1 제품 결함 분석 노드 및 제2 제품 결함 분석 노드가 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)에 의해 전송된 온라인 테스트에 대한 제품 결함 분석 작업을 수신한 후에, 제2 제품 결함 분석 노드는 온라인 테스트를 위한 제1 결함 식별 모델을 로딩할 수 있다. 제1 결함 식별 모델의 온라인 테스트 및 제2 결함 식별 모델의 추론이 동기식으로 수행되고, 양자 모두의 데이터 소스들은 일치한다. 제1 결함 식별 모델의 추론 결과가 제2 결함 식별 모델의 추론 결과보다 우수한 경우, 이는 제1 결함 식별 모델의 실시간 처리 효과가 모델 업데이트 요건을 충족시키고, 제1 결함 식별 모델이 제2 결함 식별 모델의 양호한 대체물일 수 있음을 나타낸다.
제1 AI 결함 식별 모델의 오프라인 테스트 결과 또는 온라인 테스트 결과가 미리 설정된 표준을 충족하는 경우, 사용자는 클릭에 의해 새로운 결함 식별 모델의 기능 키를 배치할 수 있고(이때, 클라이언트 디바이스(204)는 결함 식별 모델 조정 정보를 획득하고, 결함 식별 모델 조정 정보는 제2 결함 식별 모델이 제1 결함 식별 모델로 대체될 필요가 있다는 것을 나타냄), 따라서 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터(201)는 제품 결함을 식별하기 위한 결함 식별 모델 대체 요청을 컴퓨팅 클러스터(202)에 전송한다. 따라서, 제품 결함을 식별하기 위한 컴퓨팅 클러스터(202) 내의 제2 결함 식별 모델은 제1 결함 식별 모델로 대체될 수 있다.
상기 3개의 동작들 후에, 제1 결함 식별 모델은 편리한 오프라인 테스트 및 고효율 시각적 그레이 스케일 릴리즈(온라인 테스트)를 통해 전체 릴리즈 프로세스를 업데이트할 수 있다.
그레이 스케일 릴리즈 및 위의 프로세스는 생산 라인 상의 원래의 결함 식별 모델(제2 결함 식별 모델)의 실시간 추론 작업에 영향을 미치지 않는다. 이때, 생산 라인의 정상 생산이 영향을 받지 않고, 전통적인 수동 테스트에 의한 새로운 결함 식별 모델(제1 결함 식별 모델)의 배치로 인해 시스템 셧다운 등에 의해 야기되는 큰 손실이 생성하지 않을 것이다. 또한, 그레이 스케일 릴리즈 프로세스에서 사용되는 테스트 데이터는 클라이언트 디바이스(204)에서의 사용자의 재검사 및 오래된 결함 식별 모델에 의해 생성된 데이터의 실시간 추론 이후의 결과이다. 다른 테스트 데이터는 이용되지 않고, 이에 의해, 많은 데이터 수집 비용을 절약한다.
본 기술 분야의 통상의 기술자들은, 도 9는 복수의 예시적인 표시 형태만을 도시하고, 그 위의 박스들은 다른 배열 모드들을 또한 가질 수 있다는 것을 이해할 것이다. 본 개시내용에서는 박스들의 배열 모드에 제한이 주어지지 않을 것이다.
본 개시내용의 실시예는 분산 시스템에 기초한 제품 결함 분석 방법을 제공한다. 이 방법은 상기 분산된 제품 결함 분석 시스템에 의해 구현되는 모든 방법일 수 있다. 본 기술 분야의 통상의 기술자라면, 제품 결함 분석 방법은 상이한 단계들 또는 작업들에 기초하여 임의의 동일하거나 상이한 서버들 또는 클러스터들에 각각 배치될 수 있다는 것을 이해할 것이다.
도 10은 본 개시내용의 적어도 하나의 실시예에 의해 제공되는 제품 결함 분석 방법(1000)의 개략도이다.
도 10에 도시된 바와 같이, 선택적으로, 분산 시스템에 기초한 제품 결함 분석 방법(1000)은 동작들 1010 내지 1030을 포함한다.
동작 1010에서, 제품 제조 메시지들에 따라 제품 결함 분석 작업들이 생성되고, 제품 결함 분석 작업은 제1 결함 식별 작업을 포함한다.
동작 1020에서, 제1 결함 식별 작업에 기초하여 결함 식별 모델에 의해 제품 이미지들 내의 제품 결함 내용이 식별되고, 제품 결함 내용은 제품들의 결함 타입, 결함 위치, 및 결함 크기 중 어느 하나 이상을 포함한다.
동작 1030에서, 제품 결함 식별 결과가 출력된다.
본 개시내용의 일부 실시예에서, 제품 제조 메시지는 로트 제품 제조 메시지 및 단일 제품 제조 메시지를 포함한다. 동작 1010 전에, 방법은 인터럽트에 의해 로트 제품 제조 메시지들을 모니터링하는 단계; 및 폴링에 의해 단일 제품 제조 메시지를 모니터링하는 단계를 더 포함한다.
본 개시내용의 일부 실시예들에서, 동작 1010은 또한 제품 제조 메시지에 따라 제품 타입에 대응하는 결함 식별 모델이 존재하는지를 결정하는 단계; 제품 타입에 대응하는 결함 식별 모델이 존재하는 경우 제1 결함 식별 작업을 생성하는 단계; 및 제품 타입에 대응하는 결함 식별 모델이 존재하지 않으면 제2 결함 식별 작업을 생성하는 단계를 포함한다.
도 11은 본 개시내용의 다른 실시예에 의해 제공되는 제품 결함 분석(100)을 위한 분산 컴퓨팅 시스템의 개략도이고, 이는 여기에 설명된 다양한 기술들을 실현할 수 있는 하나 이상의 시스템들 및/또는 디바이스들을 나타내는 예시적인 컴퓨팅 디바이스(1100)를 포함한다. 컴퓨팅 디바이스(1100)는 단말 디바이스, SOC(system on a chip), 및/또는 임의의 다른 적합한 컴퓨팅 디바이스 또는 컴퓨팅 시스템일 수 있다.
도면에 도시된 바와 같은 예시적인 컴퓨팅 디바이스(1100)는 서로 통신 및 결합되는 처리 시스템(1110), 하나 이상의 컴퓨터 판독가능 매체(1120) 및 하나 이상의 입출력(I/O) 인터페이스(1130)를 포함한다. 도시되지는 않았지만, 컴퓨팅 디바이스(1100)는 또한 다양한 컴포넌트들을 결합하는 시스템 버스 또는 다른 데이터 및 커맨드 전달 시스템을 포함할 수 있다. 시스템 버스는 상이한 버스 구조들 중 임의의 하나 또는 조합을 포함할 수 있다. 버스 구조는 메모리 버스 또는 메모리 제어기, 주변 장치 버스, 범용 직렬 버스, 및/또는 다양한 버스 아키텍처를 이용하는 임의의 프로세서 또는 로컬 버스이다. 제어 및 데이터 라인들과 같은 다양한 다른 예들이 또한 고려된다.
처리 시스템(1110)은 하드웨어를 이용하여 하나 이상의 동작을 실행하는 기능을 나타낸다. 따라서, 도면에 도시된 바와 같이, 처리 시스템(1110)은 프로세서, 기능 블록 등이 되도록 구성될 수 있는 하드웨어 요소이다. 시스템은 주문형 집적 회로(ASIC)로서 하드웨어로 구현되거나 하나 이상의 반도체를 사용하여 형성된 다른 로직 디바이스들을 포함할 수 있다. 하드웨어 요소는 형성 재료들 또는 그 안에 채택된 처리 메커니즘에 의해 제한되지 않는다. 예를 들어, 프로세서는 (복수의) 반도체들 및/또는 트랜지스터들(예를 들어, 전자 집적 회로(IC))로 구성될 수 있다. 이러한 맥락에서, 프로세서 실행가능 명령어들은 전자적으로 실행가능 명령어들일 수 있다. 하드웨어 요소는 하드웨어로 구현된 명령어, 모듈, 프로그래머블 디바이스 로직, 및/또는 고정 디바이스 로직을 나타내고, 일부 실시예에서는, 여기서 설명된 기술의 적어도 일부 양태를 구현하는데 이용될 수 있다. 하드웨어 요소는 집적 회로(IC) 또는 SOC, ASIC, 필드 프로그래머블 게이트 어레이 (FPGA), 복합 프로그래머블 로직 디바이스(CPLD), 및 실리콘 또는 다른 하드웨어 디바이스들의 컴포넌트들의 다른 구현들을 포함할 수 있다. 이와 관련하여, 하드웨어 요소는 하드웨어 요소에 의해 구현된 명령어들, 모듈들 및/또는 로직들에 의해 정의된 프로그램 작업들을 실행하는 처리 유닛으로서 사용될 수 있다.
컴퓨터 판독가능 매체(1120)는 메모리/저장 디바이스를 포함하는 것으로 예시된다. 메모리/저장 디바이스는 하나 이상의 컴퓨터 판독가능 매체에 관련된 메모리/저장 용량을 나타낸다. 메모리/저장 디바이스는 휘발성 및 비휘발성, 이동식 및 비이동식 매체와 같은 하드웨어 및/또는 (컴퓨터 판독가능 명령어들, 데이터 구조들, 프로그램 모듈들, 로직 요소들/회로들 또는 다른 데이터와 같은) 정보를 저장하는 데 적합한 방법들 또는 기술들에 의해 구현되는 저장 디바이스들을 포함할 수 있다. 컴퓨터 판독가능 저장 매체의 예들은 RAM(random access memory), ROM(read-only memory), EEPROM(electronically erasable programmable read-only memory), 플래시 메모리 또는 다른 메모리 기술들, CD-ROM(compact disc read-only memory), DVD(digital video disk) 또는 다른 광학 저장 디바이스들, 하드 디스크, 카세트, 자기 테이프, 디스크 저장 디바이스 또는 다른 자기 저장 디바이스들, 또는 다른 저장 디바이스들, 유형의 매체들, 또는 원하는 정보를 저장하기에 적합하고 컴퓨터들에 의해 액세스가능한 제품들을 포함할 수 있지만, 이들로 제한되지 않는다. 컴퓨터 판독가능 매체(1120)는 아래에 더 설명되는 다양한 다른 방법들에 의해 구성될 수 있다.
설명된 모듈들 및 기술들의 구현들은 특정 형태의 컴퓨터 판독가능 매체 상에 저장되거나 컴퓨터 판독가능 매체를 통해 송신될 수 있다. 컴퓨터 판독가능 매체는 컴퓨팅 디바이스(1100)에 의해 액세스될 수 있는 다양한 매체를 포함할 수 있다. 제한이 아닌 예로서, 컴퓨터 판독가능 매체는 "컴퓨터 판독가능 저장 매체" 및 "컴퓨터 판독가능 신호 매체"를 포함할 수 있다.
단순한 신호 송신, 캐리어들, 또는 신호들과 대조적으로, "컴퓨터 판독가능 저장 매체"는 정보를 영구적으로 저장할 수 있는 매체 및/또는 디바이스, 및/또는 유형의 저장 디바이스를 지칭한다. 따라서, 컴퓨터 판독가능 저장 매체는 비-신호 담지 매체(non-signal bearing media)를 지칭한다. 컴퓨터 판독가능 저장 매체는 휘발성 및 비휘발성, 이동식 및 비이동식 매체와 같은 하드웨어, 및/또는 (컴퓨터 판독가능 명령어들, 데이터 구조들, 프로그램 모듈들, 로직 요소들/회로들, 또는 다른 데이터와 같은) 정보를 저장하기에 적합한 방법들 또는 기술들에 의해 구현되는 저장 디바이스들을 포함한다. 컴퓨터 판독가능 저장 매체의 예들은 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술들, CD-ROM, DVD 또는 다른 광학 저장 디바이스들, 하드 디스크들, 카세트 테이프들, 자기 테이프들, 디스크 저장 디바이스 또는 다른 자기 저장 디바이스, 또는 원하는 정보를 저장하기에 적합하고 컴퓨터에 의해 액세스가능한 다른 저장 디바이스, 유형의 매체 또는 물품을 포함할 수 있지만, 이들로 제한되지 않는다.
"컴퓨터 판독가능 신호 매체"란, 예컨대 네트워크를 통해, 컴퓨팅 디바이스(1100)의 하드웨어에 명령어를 전송하도록 구성된 신호 담지 매체(signal bearing medium)를 지칭한다. 신호 매체는 전형적으로 컴퓨터 판독가능 명령어들, 데이터 구조들, 프로그램 모듈들 또는 다른 데이터를 캐리어들, 데이터 신호들, 또는 다른 송신 메커니즘들과 같은 변조된 데이터 신호들로 구현될 수 있다. 신호 매체는 또한 임의의 정보 송신 매체를 포함한다. 용어 "변조된 데이터 신호"는 특성들 중 하나 이상을 설정 또는 변경하는 방식으로 신호 내의 정보를 인코딩하는 신호를 지칭한다. 제한이 아닌 예로서, 통신 매체는 유선 네트워크 또는 직접 연결과 같은 유선 매체, 및 음향파, 무선 주파수(RF), 적외선, 및 다른 무선 매체와 같은 무선 매체를 포함한다.
하나 이상의 I/O 인터페이스들(1130)은 사용자가 명령들 및 정보를 컴퓨팅 디바이스(1100)에 입력할 수 있게 하고 또한 다양한 I/O 디바이스들이 정보를 사용자 및/또는 다른 컴포넌트들 또는 디바이스들에 제시할 수 있게 하는 기능들을 나타낸다. 입력 디바이스들의 예들은 키보드들, 커서 제어 디바이스들(예를 들어, 마우스들), (예를 들어, 음성 입력을 위한) 마이크로폰들, 스캐너들, 터치 기능들(예를 들어, 용량성 센서들 또는 물리적 터치를 검출하도록 구성되는 다른 센서들), 카메라들(예를 들어, (적외선 주파수들과 같은) 가시적 또는 비가시적 파장들이 제스처들로서 터치를 수반하지 않는 모션들을 검출하기 위해 사용될 수 있음) 등을 포함한다. 출력 디바이스의 예는 디스플레이 디바이스(예를 들어, 모니터 또는 프로젝터), 스피커, 프린터, 네트워크 카드, 촉각 응답 디바이스 등을 포함한다. 따라서, 컴퓨팅 디바이스(1100)는 사용자 상호작용을 지원하기 위해 아래에 더 설명되는 다양한 방식들로 구성될 수 있다.
본 문서는 소프트웨어 하드웨어 요소들 또는 프로그램 모듈들의 일반적인 맥락에서 다양한 기술들을 설명할 수 있다. 일반적으로, 이러한 모듈들은 특정 작업들을 실행하거나 특정 추상 데이터 타입들을 구현하는 루틴들, 프로그램들, 객체들, 요소들, 컴포넌트들, 데이터 구조들 등을 포함한다. 본 명세서에서 사용되는 "모듈", "기능" 및 "컴포넌트"라는 용어들은 일반적으로 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합을 지칭한다. 여기서 설명된 기술의 특성은 플랫폼-독립적이며, 이는 이들 기술들이 다양한 프로세서들을 구비한 다양한 컴퓨팅 플랫폼들 상에서 구현될 수 있다는 것을 의미한다.
전술한 조합들은 또한 본 명세서에 설명된 다양한 기술들 및 모듈들을 구현하기 위해 사용될 수 있다. 따라서, 소프트웨어, 하드웨어 또는 프로그램 모듈들 및 다른 프로그램 모듈들은 특정 형태의 컴퓨터 판독가능 저장 매체 상에 및/또는 하나 이상의 하드웨어 요소에 의해 구현되는 하나 이상의 명령어 및/또는 로직으로서 구현될 수 있다. 컴퓨팅 디바이스(110)는 소프트웨어 및/또는 하드웨어 모듈들에 대응하는 특정 명령어들 및/또는 기능들을 구현하도록 구성될 수 있다. 따라서, 예를 들어, 처리 시스템의 컴퓨터 판독가능 저장 매체 및/또는 하드웨어 요소들을 사용함으로써, 모듈들은 소프트웨어로서 컴퓨팅 디바이스(1100)에 의해 실행가능한 모듈들로서 모듈들을 구현하기 위해 적어도 부분적으로 하드웨어로 구현될 수 있다. 명령어들 및/또는 기능들은 본 명세서에 설명된 기술들, 모듈들 및 예들을 구현하기 위해 하나 이상의 물품(예를 들어, 하나 이상의 컴퓨팅 디바이스(1100) 및/또는 처리 시스템(1110))에 의해 실행가능/동작가능할 수 있다.
본 명세서에 설명되는 기술들은 컴퓨팅 디바이스(1100)의 이들 구성들에 의해 지원될 수 있고, 본 명세서에 설명되는 기술들의 특정 예들로 제한되지 않는다. 처리 시스템(1110) 및 컴퓨터 판독가능 저장 매체(1120)는 또한, 분산 시스템을 이용함으로써 "클라우드" 상에서 전체적으로 또는 부분적으로 구현될 수 있다.
본 개시내용은 컴퓨터 실행가능 명령어들이 저장되는 컴퓨터 판독가능 저장 매체를 추가로 제공한다. 명령어들이 컴퓨팅 디바이스에 의해 실행될 때, 컴퓨팅 디바이스는 제품 결함 분석 방법(1000)을 구현한다.
본 명세서의 논의에서, 다양한 상이한 실시예들이 설명된다. 본 명세서에 설명된 각각의 실시예가 단독으로 또는 본 명세서에 설명된 하나 이상의 다른 실시예와 관련하여 사용될 수 있다는 것을 잘 알고 이해할 것이다.
본 개시내용에서 채택되는 AI 기술은 인력을 해방시키고, 각각의 제품 이미지의 처리 시간을 크게 단축시키고, 동시에, 순수 수동 검출에 의해 야기되는 불안정성을 회피할 수 있다. 본 개시내용의 일부 실시예들은 또한, 연속적으로 생성된 동일한 바람직하지 않은 결함들을 회피하기 위해, 조기 경고 및 적시의 경고 프롬프트들에 도움이 된다. AI 기술의 사용은 검출 정확도를 크게 개선하고, 누락된 검출을 감소시키거나 완전히 회피하고, 간접적으로 수율을 개선할 수 있다. AI 검출의 적시의 피드백으로 인해, 중간 프로세스는 적시에 조정될 수 있고, 이는 결함들의 이차적 생성을 회피할 수 있고, 이에 의해 또한 간접적으로 수율을 개선한다.
본 개시내용이 특정 예들과 관련하여 설명되었지만, 본 기술분야의 통상의 기술자들은 많은 변경들 및 수정들이 이루어질 수 있고, 그 구성요소들이 본 개시내용의 진정한 범위로부터 벗어나지 않고서 동등하게 대체될 수 있다는 것을 이해 것이다. 또한, 본 개시내용의 교시들을 그 중심 범위로부터 벗어나지 않고 특정 상황들에 적응시키기 위해 많은 수정들이 이루어질 수 있다. 따라서, 본 개시내용은 본 개시내용을 구현하기 위해 고려되는 최상의 모델로서 본 명세서에 개시되는 특정 실시예들에 제한되지 않고, 오히려 본 개시내용은 첨부된 청구항들의 범위 내에 속하는 모든 실시예들을 포함한다.

Claims (21)

  1. 제품 제조 프로세스에서 제품 결함 분석을 위해 사용되는 제품 결함 분석을 위한 분산 컴퓨팅 시스템으로서, 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터, 제품 결함을 식별하기 위한 컴퓨팅 클러스터, 제품 이미지 데이터베이스, 및 클라이언트 디바이스를 포함하고,
    상기 제품 이미지 데이터베이스는 상기 제품 제조 프로세스에서 생성된 제품 이미지들을 저장하도록 구성되고;
    상기 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는 상기 제품 제조 메시지들에 따라 제품 결함 분석 작업들을 생성하도록 구성되고, 상기 제품 결함 분석 작업들은 제1 결함 식별 작업을 포함하고;
    상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터는 상기 제1 결함 식별 작업에 기초하여 결함 식별 모델을 통해 제품 이미지들 중 하나 내의 제품 결함 내용을 식별하도록 구성되고, 상기 제품 결함 내용은 제품들의 결함 타입, 결함 위치, 및 결함 크기 중 어느 하나 이상을 포함하고;
    상기 클라이언트 디바이스는 제품 결함 식별 결과를 출력하도록 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  2. 제1항에 있어서,
    상기 제품 제조 메시지들은 등록 정보에 관련된 제1 제품 제조 메시지를 포함하고,
    상기 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터는 인터럽트에 의해 상기 제1 제품 제조 메시지를 모니터링하도록 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  3. 제2항에 있어서,
    상기 제품 제조 메시지들은 상기 등록 정보와 무관한 제2 제품 제조 메시지를 더 포함하고;
    상기 제품 제조 메시지를 처리하기 위한 컴퓨팅 클러스터는 또한, 폴링에 의해 상기 제2 제품 제조 메시지를 모니터링하도록 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  4. 제3항에 있어서, 폴링에 의해 상기 제2 제품 제조 메시지를 모니터링한 이후에, 상기 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는
    상기 제2 제품 제조 메시지가 제품 제조 키워드를 포함하는지를 결정하도록;
    상기 제2 제품 제조 메시지가 상기 제품 제조 키워드를 포함하는 경우 상기 제2 제품 제조 메시지를 유지하도록; 및
    상기 제2 제품 제조 메시지가 상기 제품 제조 키워드를 포함하지 않는 경우 상기 제2 제품 제조 메시지를 폐기하도록 추가로 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  5. 제4항에 있어서, 상기 제1 제품 제조 메시지는 로트 제품 제조 메시지를 포함하고, 상기 제2 제품 제조 메시지는 단일 제품 제조 메시지를 포함하는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  6. 제1항에 있어서, 상기 제품 제조 메시지들에 따라 상기 제품 결함 분석 작업들을 생성하는 단계는
    상기 제품 제조 메시지에 따라 상기 제품 타입에 대응하는 결함 식별 모델이 존재하는지를 결정하는 단계;
    상기 제품 타입에 대응하는 결함 식별 모델이 존재하면 상기 제1 결함 식별 작업을 생성하는 단계; 및
    상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 상기 제1 결함 분석 작업을 전송하는 단계를 포함하는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  7. 제6항에 있어서, 상기 제품 제조 메시지들에 따라 상기 제품 결함 분석 작업들을 생성하는 단계는
    상기 제품 타입에 대응하는 결함 식별 모델이 없는 경우 제2 결함 식별 작업을 생성하는 단계; 및
    제2 결함 분석 작업을 상기 클라이언트 디바이스에 전송하는 단계를 더 포함하는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  8. 제1항에 있어서, 상기 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는
    복수의 제품 결함 분석 작업들을 생성하는 시간 시퀀스, 제품들의 우선순위 순서, 및 제품 스케줄링 계획 중 하나 이상에 기초하여 복수의 제품 결함 분석 작업들을 소팅함으로써 제품 결함 분석 작업 큐를 확립하도록 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  9. 제8항에 있어서, 상기 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는
    상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터의 부하 상태에 따라 상기 제품 결함 분석 작업 큐에서 상기 제품 결함 분석 작업들을 전송하는 속도를 제어하도록 추가로 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  10. 제1항에 있어서, 상기 결함 식별 모델은 피드포워드 신경망 결함 식별 모델, 컨볼루션 신경망 모델, 순환 신경망 모델, 및 생성적 적대 네트워크 모델 중 어느 하나 이상을 포함하는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  11. 제1항에 있어서, 상기 클라이언트 디바이스는 디스플레이를 포함하고; 상기 제품 결함 식별 결과를 출력하는 단계는
    상기 디스플레이에 의해, 상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함이 식별되는 제품 이미지를 디스플레이하는 단계를 더 포함하는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  12. 제11항에 있어서, 상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함이 식별되는 제품 이미지는 제품 결함 내용 라벨로 라벨링되고, 상기 제품 결함 내용 라벨은 결함 마크 박스, 결함 마크 박스 좌표, 결함 카테고리 라벨, 및 결함 카테고리 스코어 중 어느 하나 이상을 포함하는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  13. 제11항에 있어서, 상기 디스플레이는 상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함이 식별될 수 없는 제품 이미지를 디스플레이하도록 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  14. 제13항에 있어서, 상기 클라이언트 디바이스는 또한
    사용자가 입력한 제품 결함 식별 명령을 획득하도록; 및
    상기 제품 결함 식별 명령에 기초하여 상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터에 의해 제품 결함이 식별될 수 없는 상기 제품 이미지들의 상기 제품 결함 내용 라벨을 디스플레이하도록 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  15. 제12항 또는 제14항에 있어서, 상기 클라이언트 디바이스는
    사용자가 입력한 제품 결함 재검사 명령을 획득하도록; 및
    상기 제품 결함 재검사 명령에 기초하여 재검사될 제품 이미지 내의 상기 제품 결함 내용 라벨을 확인 또는 수정하도록 추가로 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  16. 제11항에 있어서, 상기 디스플레이는
    복수의 제품 결함 분석 작업들에 대응하는 작업 목록을 디스플레이하도록 추가로 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  17. 제15항에 있어서, 상기 클라이언트 디바이스는
    상기 사용자가 입력한 복수의 제품 결함 분석 작업의 실행 우선순위 조정 명령을 획득하도록; 및
    상기 실행 우선순위 조정 명령에 기초하여 상기 작업 목록에서의 상기 제품 결함 분석 작업들의 소팅을 수정하도록 추가로 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  18. 제1항에 있어서,
    상기 제품 제조 메시지들을 처리하기 위한 컴퓨팅 클러스터는 결함 식별 모델 훈련 작업을 생성하도록 추가로 구성되고;
    상기 제품 결함을 식별하기 위한 컴퓨팅 클러스터는 상기 결함 식별 모델 훈련 작업에 기초하여 결함 식별 모델을 훈련시키도록 추가로 구성되는, 제품 결함 분석을 위한 분산 컴퓨팅 시스템.
  19. 분산 시스템에 기초한 제품 결함 분석 방법으로서,
    제품 제조 메시지에 따라 제품 결함 분석 작업들을 생성하는 단계- 제품 결함 분석 작업들은 제1 결함 식별 작업을 포함함 -;
    상기 제1 결함 식별 작업에 기초하여 결함 식별 모델에 의해 제품 이미지 내의 제품 결함 내용을 식별하는 단계- 상기 제품 결함 내용은 제품들의 결함 타입, 결함 위치, 및 결함 크기 중 어느 하나 이상을 포함함 -; 및
    제품 결함 식별 결과를 출력하는 단계를 포함하는, 분산 시스템에 기초한 제품 결함 분석 방법.
  20. 제19항에 있어서, 상기 제품 제조 메시지들에 따라 상기 제품 결함 분석 작업들을 생성하는 단계는
    상기 제품 제조 메시지들에 따라 결함 식별 모델이 상기 제품 타입에 대응하는지를 결정하는 단계;
    결함 식별 모델이 상기 제품 타입에 대응하는 경우 상기 제1 결함 식별 작업을 생성하는 단계; 및
    상기 제품 타입에 대응하는 결함 식별 모델이 없는 경우 제2 결함 식별 작업을 생성하는 단계를 포함하는, 분산 시스템에 기초한 제품 결함 분석 방법.
  21. 컴퓨터 프로그램들이 저장되어 있는 컴퓨터 판독가능 저장 매체로서, 상기 프로그램들이 프로세서에 의해 실행될 때, 제19항 또는 제20항에 따른 제품 결함 분석 방법이 구현되는, 컴퓨터 판독가능 저장 매체.
KR1020217040637A 2019-12-20 2019-12-20 분산형 제품 결함 분석 시스템 및 방법, 및 컴퓨터 판독가능 저장 매체 KR20220117126A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/127071 WO2021120186A1 (zh) 2019-12-20 2019-12-20 分布式产品缺陷分析系统、方法及计算机可读存储介质

Publications (1)

Publication Number Publication Date
KR20220117126A true KR20220117126A (ko) 2022-08-23

Family

ID=76476705

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217040637A KR20220117126A (ko) 2019-12-20 2019-12-20 분산형 제품 결함 분석 시스템 및 방법, 및 컴퓨터 판독가능 저장 매체

Country Status (6)

Country Link
US (1) US11880968B2 (ko)
EP (1) EP4080406A4 (ko)
JP (1) JP7393515B2 (ko)
KR (1) KR20220117126A (ko)
CN (1) CN113632099A (ko)
WO (1) WO2021120186A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI707137B (zh) * 2020-01-13 2020-10-11 憶象有限公司 智能產線監測系統及監測方法
CN111796576B (zh) * 2020-06-16 2023-03-31 北京工业大学 一种基于双核t分布随机近邻嵌入的过程监测可视化方法
US20220189005A1 (en) * 2020-12-16 2022-06-16 Baker Hughes Holdings Llc Automatic inspection using artificial intelligence models
CN114118878B (zh) * 2022-01-21 2022-05-24 深圳市信润富联数字科技有限公司 一种基于轮毂检测评审框架的在线集中质量分析决策系统
WO2023151919A1 (en) * 2022-02-11 2023-08-17 Asml Netherlands B.V. Active learning to improve wafer defect classification
CN114418458A (zh) * 2022-03-17 2022-04-29 深圳市爱云信息科技有限公司 基于数字孪生DaaS平台的工艺调参方法
CN114463331A (zh) * 2022-04-12 2022-05-10 四川英创力电子科技股份有限公司 印制电路板aoi检修报表自动生成方法及装置
CN114996310A (zh) * 2022-05-25 2022-09-02 京东方科技集团股份有限公司 一种数据处理方法、装置、服务器及存储介质
CN115239198A (zh) * 2022-06-17 2022-10-25 希望知舟技术(深圳)有限公司 工单分配方法及相关装置、电子设备、介质和程序产品
DE102022115997A1 (de) * 2022-06-28 2023-12-28 TRUMPF Werkzeugmaschinen SE + Co. KG Verfahren und System zur Unterstützung bei der Unterscheidung von Blech-Werkstücken
CN115438805B (zh) * 2022-11-08 2023-01-24 江苏智云天工科技有限公司 基于工业质检领域机器学习模型的产品缺陷检测方法
CN117491391B (zh) * 2023-12-29 2024-03-15 登景(天津)科技有限公司 基于芯片计算的玻璃基板光三维健康检测方法及设备

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69738979D1 (de) 1996-03-19 2008-10-23 Hitachi Ltd Prozesssteuerungssystem
JP3978098B2 (ja) 2002-08-12 2007-09-19 株式会社日立製作所 欠陥分類方法及びその装置
US7346470B2 (en) * 2003-06-10 2008-03-18 International Business Machines Corporation System for identification of defects on circuits or other arrayed products
US9953282B2 (en) * 2007-09-04 2018-04-24 International Business Machines Corporation System and method for providing automatic task assignment and notification
JP6948547B2 (ja) 2017-03-29 2021-10-13 富士通株式会社 プログラム、情報処理システム、及び情報処理方法
CN108564104A (zh) 2018-01-09 2018-09-21 北京百度网讯科技有限公司 产品缺陷检测方法、装置、系统、服务器及存储介质
JP6981352B2 (ja) 2018-04-20 2021-12-15 オムロン株式会社 検査管理システム、検査管理装置及び検査管理方法
US10706525B2 (en) * 2018-05-22 2020-07-07 Midea Group Co. Ltd. Methods and systems for improved quality inspection
CN108776808A (zh) * 2018-05-25 2018-11-09 北京百度网讯科技有限公司 一种用于检测钢包溶蚀缺陷的方法和装置
US11062618B2 (en) * 2018-06-28 2021-07-13 Unitedhealth Group Incorporated Self-training machine-learning system for generating and providing action recommendations
CN108921839A (zh) * 2018-07-02 2018-11-30 北京百度网讯科技有限公司 连铸坯质量检测方法、装置、电子设备及存储介质
CN110059631B (zh) * 2019-04-19 2020-04-03 中铁第一勘察设计院集团有限公司 接触网非接触式监测缺陷识别方法
CN110441312A (zh) 2019-07-30 2019-11-12 上海深视信息科技有限公司 一种基于多光谱成像的产品表面缺陷检测系统
CN110554047B (zh) * 2019-09-06 2021-07-02 腾讯科技(深圳)有限公司 产品缺陷检测数据处理方法、装置、系统和设备
US20210097673A1 (en) * 2019-10-01 2021-04-01 Carl Zeiss Smt Gmbh Root cause analysis for fabrication processes of semiconductor structures
CN111127571B (zh) * 2019-12-03 2023-12-29 歌尔股份有限公司 一种小样本缺陷分类方法和装置
US20230142383A1 (en) * 2019-12-20 2023-05-11 Boe Technology Group Co., Ltd. Method and device for processing product manufacturing messages, electronic device, and computer-readable storage medium
CN111143577B (zh) * 2019-12-27 2023-06-16 北京百度网讯科技有限公司 数据标注方法、装置和系统
US11232550B2 (en) * 2020-06-29 2022-01-25 Applied Materials Israel Ltd. Generating a training set usable for examination of a semiconductor specimen
CN111768386B (zh) 2020-06-30 2024-02-20 北京百度网讯科技有限公司 产品缺陷检测方法、装置、电子设备和存储介质
US11328410B2 (en) * 2020-08-03 2022-05-10 KLA Corp. Deep generative models for optical or other mode selection
US20230092247A1 (en) * 2021-09-22 2023-03-23 Rockwell Automation Technologies, Inc. Automated monitoring using image analysis

Also Published As

Publication number Publication date
JP2023514891A (ja) 2023-04-12
CN113632099A (zh) 2021-11-09
JP7393515B2 (ja) 2023-12-06
WO2021120186A1 (zh) 2021-06-24
EP4080406A4 (en) 2022-12-28
US11880968B2 (en) 2024-01-23
US20230153974A1 (en) 2023-05-18
EP4080406A1 (en) 2022-10-26

Similar Documents

Publication Publication Date Title
US11880968B2 (en) Distributed computing system for product defect analysis
US11314576B2 (en) System and method for automating fault detection in multi-tenant environments
JP2021108127A (ja) 知識集約型データ処理システム
JP2020528996A (ja) ディスプレイスクリーン品質検査方法、装置、電子機器及び記憶媒体
WO2021143155A1 (zh) 模型训练方法及装置
US10353762B2 (en) Hierarchical fault determination in an application performance management system
JP2018142097A (ja) 情報処理装置、情報処理方法及びプログラム
JP7442550B2 (ja) 推論演算装置、モデル訓練装置、及び推論演算システム
US10942801B2 (en) Application performance management system with collective learning
US11080159B2 (en) Monitor-mine-manage cycle
WO2022135539A1 (zh) 设备配置参数处理方法和装置、数据分析方法和装置、计算设备、计算机可读存储介质、以及计算机程序产品
US11138060B2 (en) Application performance management system with dynamic discovery and extension
WO2023226682A1 (zh) 一种数据处理方法、装置、服务器及存储介质
US20230142383A1 (en) Method and device for processing product manufacturing messages, electronic device, and computer-readable storage medium
US20230060307A1 (en) Systems and methods for processing user concentration levels for workflow management
JP6995909B2 (ja) 1以上のプロセスを監視しセンサデータを提供する複数のセンサを含むシステムのための方法
US20230145376A1 (en) Data processing system
CN115546218B (zh) 置信度阈值确定方法和装置、电子设备和存储介质
WO2020001427A1 (zh) 一种分析任务执行方法、装置、系统及电子设备
US10817396B2 (en) Recognition of operational elements by fingerprint in an application performance management system
US11914665B2 (en) Multi-modal machine-learning model training for search
US11830105B2 (en) Service request processing utilizing modified versions of images of computing devices
US11947504B1 (en) Multi-cloud data processing and integration
US20230108313A1 (en) Data triage in microscopy systems
US20220405617A1 (en) Artificial intelligence collectors