KR102611403B1 - 수리 파트 결정 기능 및 수리 완성도 평가 기능을 포함하는 이상 탐지 장치 - Google Patents

수리 파트 결정 기능 및 수리 완성도 평가 기능을 포함하는 이상 탐지 장치 Download PDF

Info

Publication number
KR102611403B1
KR102611403B1 KR1020220098999A KR20220098999A KR102611403B1 KR 102611403 B1 KR102611403 B1 KR 102611403B1 KR 1020220098999 A KR1020220098999 A KR 1020220098999A KR 20220098999 A KR20220098999 A KR 20220098999A KR 102611403 B1 KR102611403 B1 KR 102611403B1
Authority
KR
South Korea
Prior art keywords
abnormal
abnormality
data
equipment
repair
Prior art date
Application number
KR1020220098999A
Other languages
English (en)
Other versions
KR20230126626A (ko
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 KR20230126626A publication Critical patent/KR20230126626A/ko
Application granted granted Critical
Publication of KR102611403B1 publication Critical patent/KR102611403B1/ko

Links

Images

Classifications

    • 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
    • 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/0221Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
    • 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/0224Process history based detection method, e.g. whereby history implies the availability of large amounts of data
    • G05B23/0227Qualitative history assessment, whereby the type of data acted upon, e.g. waveforms, images or patterns, is not relevant, e.g. rule based assessment; if-then decisions
    • G05B23/0237Qualitative history assessment, whereby the type of data acted upon, e.g. waveforms, images or patterns, is not relevant, e.g. rule based assessment; if-then decisions based on parallel systems, e.g. comparing signals produced at the same time by same type systems and detect faulty ones by noticing differences among their responses
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 이상 탐지 장치에 관한 것이다. 상기 이상 탐지 장치는, 검사 대상 장비의 이상동작여부를 판단하는 이상 탐지 장치에 있어서, 상기 검사 대상 장비의 동작 이미지를 수신하는 데이터 수신부, 상기 동작 이미지 중 정상 동작 여부가 레이블된 동작 데이터셋을 저장하는 데이터베이스부, 상기 데이터베이스부에 미리 저장된 동작 데이터셋을 기초로, 이상동작 데이터셋을 생성하는 이상 데이터 생성부, 상기 데이터베이스부에 저장된 상기 동작 데이터셋을 기초로 미리 학습되고, 상기 동작 이미지를 이용하여 변환 이미지를 생성하는 제1 오토인코더, 상기 제1 오토인코더에서 생성된 변환 이미지와 상기 동작 이미지를 이용하여, 상기 검사 대상 장비의 이상 점수를 결정하는 이상 판별부 및 상기 동작 이미지에서 반복 동작 주기를 검출하고, 상기 검사 대상 장비가 이상 동작을 발생시키는 이상 공정 단계를 분류하는 이상 분석부를 포함한다.

Description

수리 파트 결정 기능 및 수리 완성도 평가 기능을 포함하는 이상 탐지 장치{Abnormal detection device including repair part determination function and repair completeness evaluation function}
본 발명은 오토인코더(autoencoder)를 이용한 이상 탐지 장치에 관한 것이다. 구체적으로, 본 발명은 오토인코더를 이용하여 이상동작 데이터를 생성하고, 이를 기초로 딥러닝 모듈을 학습시킴으로써, 이상동작 판단의 정확도를 높일 수 있는 이상 탐지 장치에 관한 것이다. 또한 본 발명은 데이터 주기 분석을 통해 이상이 발생된 공정 단계를 결정하고, 이를 통해 수리가 필요한 파트를 결정할 수 있는 이상 탐지 장치에 관한 것이다. 또한, 본 발명은 수리 전후 데이터 비교를 통해 수리 완성도를 평가할 수 있는 이상 탐지 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
반도체 등과 같은 초 기술 집약적 상품은 기계장치의 미세한 오작동에 의해서도 완제품의 품질이 굉장히 저하될 수 있다. 다만, 사람의 눈으로 기계장치의 오작동을 계속해서 감시하는 것은 실질적으로 어려우므로, 각종 센서를 활용하여 기계장치에 대한 이상탐지를 수행하고 있다. 이상탐지에는 진동센서, 음향센서에서 감지된 센싱 데이터가 이용될 수 있으며, 카메라를 통해 획득한 이미지 분석을 통해서도 이상탐지가 가능하다.
최근에는 AI 및 머신러닝 기술을 이용하여 실시간으로 기계장치의 이상탐지를 수행할 수 있는 기술들이 개발 중에 있다. 이때, 이상탐지는 새로운 현상 발견과 밀접한 관련이 있다. 즉, 머신러닝에서 정상 패턴을 학습 후, 정상이 아닌 새로운 패턴이 보였을 때 이상으로 판단하는 것이다.
이러한, 머신러닝은 크게 지도학습과 비지도학습으로 나뉘는데, 정답 레이블(label)을 학습셋에 포함시켜 제공해주는 지도학습의 성능이 훨씬 뛰어나다고 알려져 있다. 다만, 지도학습을 위해서는 정답 레이블이 이미 포함된 학습 데이터셋을 사전에 준비하여야 하는데, 일반적으로 이러한 학습 데이터셋을 준비하는 것은 쉽지 않다. 특히, 이상탐지 알고리즘의 경우 정상/비정상 학습 데이터셋 모두를 준비해야 하는데, 비정상 학습 데이터셋의 경우 기계장치를 일부러 오작동을 일으켜야 하기에 준비하기 더욱 어려운 문제가 있다.
또한, 기계장치의 이상동작 여부를 탐지하는 경우, 이상여부만을 감지하는 경우가 대부분이나, 다양한 부품으로 연결된 로봇기계의 경우 작업자가 일일이 이상여부를 하나씩 검사하기가 쉽지 않기에, 이상여부 뿐만 아니라 이상부위까지 함께 판단하는 기능에 대한 니즈가 존재하였다.
또한, 이상여부 및 이상부위를 판단한 후, 해당 기계장치에 대한 수리가 진행되어야 하나, 수리 전/후로 해당 기계장치의 수리가 얼마나 잘 수행되었는지에 대한 정량적인 평가 방법이 존재하지 않아, 이를 판단하기 위한 방법론적인 니즈가 존재하였다.
본 발명의 목적은, 검사 대상 장비를 촬영한 이미지를 이용하여 검사 대상 장비의 이상동작 여부를 판단할 수 있는 이상 탐지 장치를 제공하는 것이다.
또한, 본 발명의 목적은, 이상동작에 관한 데이터셋을 자동으로 생성하여 저장하고, 이를 이용하여 이상 판별부를 학습시킴으로써, 검사 대상 장비에 대한 이상유무의 판단의 정확도를 향상시킬 수 있는 이상 탐지 장치를 제공하는 것이다.
또한, 본 발명의 목적은, 검사 대상 장비의 이상여부 뿐만 아니라 이상부위까지 함께 판단할 수 있는 이상 탐지 장치를 제공하는 것이다.
또한, 본 발명의 목적은, 검사 대상 장비의 수리 완성도에 대한 정량적인 평가 수단을 포함하는 이상 탐지 장치를 제공하는 것이다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 발명의 몇몇 실시예에 따른 이상 탐지 장치는 검사 대상 장비의 동작 이미지를 수신하는 데이터 수신부, 상기 동작 이미지 중 정상 동작 여부가 레이블된 동작 데이터셋을 저장하는 데이터베이스부, 상기 데이터베이스부에 미리 저장된 동작 데이터셋을 기초로, 이상동작 데이터셋을 생성하는 이상 데이터 생성부, 상기 데이터베이스부에 저장된 상기 동작 데이터셋을 기초로 미리 학습되고, 상기 동작 이미지를 이용하여 변환 이미지를 생성하는 제1 오토인코더, 상기 제1 오토인코더에서 생성된 변환 이미지와 상기 동작 이미지를 이용하여, 상기 검사 대상 장비의 이상 점수를 결정하는 이상 판별부 및 상기 동작 이미지에서 반복 동작 주기를 검출하고, 상기 검사 대상 장비가 이상 동작을 발생시키는 이상 공정 단계를 분류하는 이상 분석부를 포함한다.
몇몇 실시예에서, 상기 이상 분석부는, 상기 동작 이미지에서 반복 동작 주기를 검출하여 상기 검사 대상 장비의 제1 공정을 검출하는 주기 탐색 모듈 및 상기 제1 공정에서, 데이터의 유사성을 기초로 공정 단계를 분류하는 공정 분류 모듈을 포함하고, 상기 공정 분류 모듈은 상기 검사 대상 장비가 정상 동작할 때의 공정 단계별 데이터와, 상기 제1 공정에서의 공정 단계별 데이터를 비교하여, 상기 이상 공정 단계를 분류할 수 있다.
몇몇 실시예에서, 상기 이상 공정 단계를 기초로, 상기 검사 대상 장비의 수리가 필요한 파트를 결정하는 수리 분석부를 더 포함할 수 있다.
몇몇 실시예에서, 상기 수리 분석부는, 상기 검사 대상 장비의 수리 이후, 상기 이상 공정 단계와 대응되는 제1 공정 단계에 대한 이상 점수를 결정하고, 상기 제1 공정 단계에 대한 이상 점수를 기초로 상기 검사 대상 장비의 수리 완료 여부를 결정할 수 있다.
몇몇 실시예에서, 상기 수리 분석부는, 상기 제1 공정 단계에 대한 이상 점수가 미리 정한 제1 기준치를 초과하는지 여부를 기초로, 상기 검사 대상 장비의 수리 완료 여부를 결정할 수 있다.
몇몇 실시예에서, 상기 수리 분석부는, 상기 검사 대상 장비의 상기 이상 공정 단계에서의 이상 점수와, 상기 검사 대상 장비의 수리 이후 상기 검사 대상 장비의 제1 공정 단계에 대한 이상 점수를 이용하여, 상기 검사 대상 장비에 대한 수리 완성도를 결정하되, 상기 제1 공정 단계는 상기 이상 공정 단계와 대응될 수 있다.
몇몇 실시예에서, 상기 제1 오토인코더는 상기 데이터베이스부에 저장된 상기 동작 데이터셋 중 정상 동작으로 레이블된 정상동작 데이터셋을 기초로 미리 학습될 수 있다.
몇몇 실시예에서, 상기 이상 판별부는 상기 검사 대상 장비의 이상 점수값을 기초로, 상기 검사 대상 장비의 이상 동작 여부를 결정할 수 있다.
몇몇 실시예에서, 상기 이상 판별부는 상기 데이터베이스부에 저장된 상기 동작 데이터셋 중 정상 동작으로 레이블된 정상 동작 데이터셋과, 상기 동작 데이터셋 중 이상 동작으로 레이블된 이상 동작 데이터셋을 기초로 미리 학습되되, 상기 이상 동작 데이터셋은 상기 정상 동작 데이터셋을 이용하여 생성될 수 있다.
몇몇 실시예에서, 상기 제1 오토인코더는, 입력 노드에 인가된 데이터를 압축시켜 입력 데이터를 축소시키는 인코더 신경망과, 상기 인코더 신경망에서 축소된 데이터를 상기 입력 노드에 인가된 입력 데이터와 동일한 크기로 변환하는 디코더 신경망과, 상기 인코더 신경망 및 상기 디코더 신경망 사이에 배치되는 중간 레이어를 포함할 수 있다.
본 발명의 이상 탐지 장치는, 검사 대상 장비를 촬영한 이미지를 이용하여 검사 대상 장비의 이상동작 여부를 판단함으로써, 작업자가 계속해서 검사 대상 장비의 이상 유무를 체크해야 하는 이상탐지업무의 비효율적인 측면을 개선시키고, 이상동작 여부 판단에 대한 정확도를 향상시킬 수 있다.
또한, 본 발명은, 이상동작에 관한 데이터셋을 자동으로 생성하고, 이를 이용하여 이상 판별부를 학습시킴으로써, 충분한 이상동작 데이터를 확보할 수 있어 검사 대상 장비에 대한 이상여부 판단의 정확도를 향상시킬 수 있다. 또한, 본 발명은 이상동작에 관한 데이터셋을 확보하는 어려움을 감소시키고, 이상동작 패턴의 다양성을 확보함으로써, 사용자가 예상하지 못한 경우에 대한 이상동작 여부 판단도 가능할 수 있어, 이상탐지성능의 향상과, 제품 수율 및 기업의 이익을 극대화시킬 수 있는 효과를 나타낸다.
또한, 본 발명은, 검사 대상 장비의 이상여부 뿐만 아니라 이상부위까지 함께 판단할 수 있으므로, 검사 대상 장비에 대한 빠른 수리 및 유지보수가 가능하다. 따라서, 본 발명은 기계장비 유지보수에 필요한 리소스를 최소화할 수 있으며, 제품생산라인이 기계 오작동으로 인하여 중단됨에 따라 발생할 수 있는 손해를 최소화할 수 있다.
또한, 본 발명은 수리 전/후 데이터를 이용하여, 수리 완료 여부를 정량적으로 평가할 수 있을 뿐만 아니라, 수리 완성도에 대한 정량적인 평가가 가능하므로 수리 행위 및/또는 수리 업체별 평가를 통해 수리 업체의 효율적인 관리가 가능하다.
상술한 내용과 더불어 본 발명의 구체적인 효과는 이하 발명을 실시하기 위한 구체적인 사항을 설명하면서 함께 기술한다.
도 1은 본 발명의 몇몇 실시예에 따른 이상 탐지 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 이상 탐지 장치를 설명하기 위한 도면이다.
도 3은 본 발명의 몇몇 실시예들에 따른 이상 탐지 장치의 데이터 흐름을 설명하기 위한 블럭도이다.
도 4 및 도 5는 도 3의 오토인코더를 나타내는 블록도이다.
도 6은 도 3의 이상 판별부를 나타내는 블록도이다.
도 7 및 도 8은 학습 데이터셋을 이용하여 이상 판별부를 학습시키는 동작을 설명하기 위한 도면이다.
도 9는 이상 데이터 생성부에서 이상동작 데이터셋을 생성하는 동작을 설명하기 위한 블록도이다.
도 10은 이상 탐지 장치에서 동작시 발생되는 데이터의 예시를 나타내는 도면이다.
도 11은 본 발명의 일 실시예에 따른 이상 탐지 장치에서 이상여부판단을 위한 동작을 설명하기 위한 블럭도이다.
도 12는 본 발명의 몇몇 실시예에 따른 이상 분석부의 개략적인 구성을 설명하기 위한 도면이다.
도 13은 본 발명의 몇몇 실시예에 따른 주기 탐색 모듈 및 공정 분류 모듈의 동작을 보조적으로 설명하기 위한 도면이다.
도 14는 본 발명의 몇몇 실시예에 따른 수리 분석부의 개략적인 구성을 설명하기 위한 도면이다.
도 15는 본 발명의 몇몇 실시예들에 따른 이상 탐지 방법을 설명하기 위한 순서도이다.
도 16은 본 발명의 몇몇 실시예에 따른 이상 분석부 및 수리 분석부에 대한 동작을 추가적으로 설명하기 위한 도면이다.
도 17은 본 발명의 몇몇 실시예에 따른 이상 탐지 방법을 수행하는 시스템의 하드웨어 구현을 설명하기 위한 도면이다.
본 명세서 및 특허청구범위에서 사용된 용어나 단어는 일반적이거나 사전적인 의미로 한정하여 해석되어서는 아니된다. 발명자가 그 자신의 발명을 최선의 방법으로 설명하기 위해 용어나 단어의 개념을 정의할 수 있다는 원칙에 따라, 본 발명의 기술적 사상과 부합하는 의미와 개념으로 해석되어야 한다. 또한, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명이 실현되는 하나의 실시예에 불과하고, 본 발명의 기술적 사상을 전부 대변하는 것이 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 및 응용 가능한 예들이 있을 수 있음을 이해하여야 한다.
본 명세서 및 특허청구범위에서 사용된 제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. '및/또는' 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
본 명세서 및 특허청구범위에서 사용된 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서 "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해서 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 본 발명의 각 실시예에 포함된 각 구성, 과정, 공정 또는 방법 등은 기술적으로 상호 간 모순되지 않는 범위 내에서 공유될 수 있다.
머신러닝(Machine Learning)은 AI의 한 분야로 데이터를 바탕으로 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야이며, 데이터 처리, 영상 인식, 음성 인식, 인터넷 검색 등의 다양한 분야의 핵심 기술로 예측(prediction) 및 이상 탐지(anomaly detection)에 탁월한 성과를 나타낸다.
이 중에서, 이상 탐지란, 데이터에서 예상과는 다른 패턴을 보이는 개체 또는 데이터를 찾는 것을 말하는 것을 의미하며, 머신러닝 기반의 이상 탐지 모델은 실제 데이터와 예측 데이터의 차이를 계산하고, 차이가 임계값 이상인 경우 이상이 있는 데이터로 판단할 수 있다.
인공 신경망이 다양한 분야에서 우수한 성능을 보임에 따라, 스마트 팩토리에 구비된 장비들에 대한 이상탐지방법에서 대해서도 점차 인공 신경망을 이용하는 연구가 이루어지고 있다. 해당 연구가 이루어지는 한 분야로 오토인코더(autoencoder)를 이용한 방식이 있다.
오토인코더는 입력단의 데이터를 더 적은 차원의 매니폴드(manifold) 공간으로 매핑하는 동작을 수행한다. 이와 같은 매핑 동작을 통해 도출된 잠재 벡터(latent vector)와, 오토인코더의 입력 데이터 및 출력 데이터의 차이값인 재구성 오류(Reconstruction Error)는 파생변수로써 이상탐지의 정확도를 높이는 데 활용될 수 있다.
이하에서, 도 1 내지 도 14를 참조하여 본 발명의 몇몇 실시예에 따른 이상동작 데이터 생성을 이용한 이상 탐지 시스템 및 이상 탐지 방법에 대해 살펴보도록 한다.
도 1은 본 발명의 몇몇 실시예에 따른 이상 탐지 시스템을 설명하기 위한 도면이다. 도 2는 도 1의 이상 탐지 장치를 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명의 몇몇 실시예에 따른 이상 탐지 시스템은, 이상 탐지 장치(100), 카메라(200), 및 검사 대상 장비(300)를 포함할 수 있다.
이때, 검사 대상 장비(300)는 반도체 제조 공정에서 이용되는 반도체 장비일 수 있다. 다만, 본 발명이 이에 제한되는 것은 아니고, 검사 대상 장비(300)는 예를 들어 정상 동작 상태일 때 일정한 패턴 및/또는 주기를 갖는 동작을 수행하는 발생시키는 장비일 수 있다.
카메라(200)는 검사 대상 장비(300)에 대한 이미지(image) 또는 동영상(video)을 촬영하는 장치이다. 카메라(200)는 검사 대상 장비(300)를 특정 각도로 촬영하여, 연속되는 이미지들로 구성되는 모션 영상 데이터를 생성할 수 있다. 이하에서는, 설명의 편의를 위하여 카메라(200)가 검사 대상 장비(300)의 동작에 관한 이미지(이하, 동작 이미지)를 촬영하여 이상 탐지 장치(100)에 전달하는 것을 예로 들어 설명하도록 한다.
이상 탐지 장치(100)는 카메라(200)로부터 수신한 검사 대상 장비(300)의 동작 이미지를 수신하고, 수신된 동작 이미지를 기초로 검사 대상 장비(300)의 이상동작 여부를 판단한다.
한편, 통신망(400)은 이상 탐지 장치(100) 및 카메라(200)를 연결하는 역할을 수행한다. 즉, 통신망(400)은 이상 탐지 장치(100)가 카메라(200)로부터 데이터를 송수신할 수 있도록 접속 경로를 제공하는 통신망을 의미한다. 통신망(400)은 예컨대 LANs(Local Area Networks), WANs(Wide Area Networks), MANs(Metropolitan Area Networks), ISDNs(Integrated Service Digital Networks) 등의 유선 네트워크나, 무선 LANs, CDMA, 블루투스, 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
도 2를 참조하면, 이상 탐지 장치(100)는 데이터 수신부(110), 이상 데이터 생성부(120), 데이터베이스부(130), 학습부(140), 이상 판별부(150), 이상 분석부(160), 수리 분석부(170) 및 제어부(180)를 포함할 수 있다.
구체적으로, 데이터 수신부(110)는 카메라(200)로부터 검사 대상 장비(300)의 동작 이미지를 수신하고, 수신된 동작 이미지를 이상 탐지 장치(100) 내의 다른 구성요소에 전달할 수 있다. 데이터 수신부(110)는 다양한 통신 모듈이 이용될 수 있으며, 통신망(400)을 통해 외부 장비와 이상 탐지 장치(100) 사이의 데이터 교환을 수행할 수 있다.
데이터베이스부(130)는 이상 탐지 장치(100)의 적어도 하나의 구성요소에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다.
또한, 데이터베이스부(130)는 검사 대상 장비(300)에 대한 동작 이미지를 저장하고, 관리할 수 있다. 예를 들어, 데이터베이스부(130)는 검사 대상 장비(300)에 대한 정상동작에 관한 이미지(이하, 정상동작 이미지)들을 포함하는 정상동작 데이터셋과, 이상동작에 관한 이미지(이하, 이상동작 이미지)들로 구성된 이상동작 데이터셋을 저장 관리할 수 있다.
이때, 정상동작 데이터셋은 검사 대상 장비(300)의 동작 이미지에 정상동작에 관한 레이블(label)이 함께 포함될 수 있으며, 이상동작 데이터셋은 검사 대상 장비(300)의 동작 이미지에 이상동작에 관한 레이블(label)이 함께 포함될 수 있다. 즉, 데이터베이스부(130)에 저장된 동작 이미지를 포함하는 동작 데이터셋에는, 검사 대상 장비(300)의 정상 동작 여부에 대한 레이블이 포함될 수 있다. 다만, 이는 하나의 예시에 불과하며, 본 발명이 이에 한정되는 것은 아니다.
이상 데이터 생성부(120)는 데이터베이스부(130)에 저장된 동작 이미지를 포함하는 동작 데이터셋을 기초로 이상동작 데이터셋을 생성할 수 있다. 이때, 이상 데이터 생성부(120)는 학습부(140)에 포함된 제1 오토인코더(141) 및 제2 오토인코더(143)를 이용하여 이상동작 데이터셋을 생성할 수 있다. 이상동작 데이터셋을 생성하기 위한 구체적인 이상 데이터 생성부(120)의 동작에 대한 설명은 도 9를 참조하여 후술하도록 한다. 이상 데이터 생성부(120)에서 생성된 이상동작 데이터셋은 데이터베이스부(130)에 저장되어, 이상 판별부(150)를 학습하는데 이용될 수 있다.
학습부(140)는 이상 판별부(150)를 학습시키는 동작을 수행한다. 학습부(140)는 이상 판별부(150)의 학습을 위해 제1 오토인코더(141) 및 제2 오토인코더(143)를 이용한다.
여기에서, 오토인코더(즉, 제1 오토인코더(141) 또는 제2 오토인코더(143))는 인코더를 통해 입력 받은 데이터(즉, 입력 데이터)를 압축시켜 데이터를 축소시킨 후, 디코더를 이용하여 축소된 데이터를 인코더에서 입력 데이터와 동일한 크기로 변환하여 출력함으로써, 오토인코더의 출력 데이터를 입력 데이터와 동일하도록 만드는 일종의 딥 뉴럴 네트워크 모델(Deep Neural Network Model)이다. 오토인코더는 입력 데이터의 특징을 비지도(unsupervised) 방식으로 학습한다. 이를 위해, 오토인코더는 인코더를 통해 입력 받은 데이터를, 해당 특징을 잘 표현하는 저차원의 데이터로 변환하고, 변환된 데이터는 이후 디코더를 통해 다시 원 데이터로 복원될 수 있다. 오토인코더에 대한 자세한 설명은 도 4 및 도 5를 기초로 아래에서 자세히 설명하도록 한다.
제1 오토인코더(141)와 제2 오토인코더(143)는 검사 대상 장비(300)의 동작 이미지들을 이용하여 학습이 이루어질 수 있다. 이때, 제1 오토인코더(141)의 학습 횟수는 제2 오토인코더(143)의 학습 횟수보다 많을 수 있다. 예를 들어, 제1 오토인코더(141)가 검사 대상 장비(300)의 동작 이미지들을 이용하여 약 500~1000회 반복학습을 하는 경우, 제2 오토인코더(143)는 약 1~10회 반복학습을 수행할 수 있다. 다만, 이는 하나의 예시에 불과하고 본 발명이 이에 한정되는 것은 아니다.
미리 학습된 제1 오토인코더(141) 및 제2 오토인코더(143)는 검사 대상 장비(300)의 동작 이미지를 입력받고, 이에 대한 복원 이미지를 출력할 수 있다. 이에 대한 자세한 설명도 이하에서 후술하도록 한다.
이상 판별부(150)는 뉴럴 네트워크를 이용한 머신 러닝을 통하여 입력된 동작 이미지의 이상 여부를 판단한다. 이때, 이상 판별부(150)는 학습 인자로 입력되는 파라미터들에 대하여 머신 러닝(Machine Learning)을 수행할 수 있다. 데이터베이스부(130)에는 이상 판별부(150)의 머신 러닝에 사용되는 데이터, 결과 데이터 등을 저장할 수 있다.
보다 자세히 설명하자면, 머신 러닝(Machine Learning)의 일종인 딥러닝(Deep Learning) 기술은 데이터를 기반으로 다단계로 깊은 수준까지 내려가 학습하는 것이다.
딥러닝(Deep learning)은, 단계를 높여가면서 복수의 데이터들로부터 핵심적인 데이터를 추출하는 머신 러닝(Machine Learning) 알고리즘의 집합을 나타낸다.
이상 판별부(150)는 공지된 다양한 딥러닝 구조를 이용할 수 있다. 예를 들어, 이상 판별부(150)는 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), DBN(Deep Belief Network), GNN(Graph Neural Network) 등의 구조를 이용할 수 있다.
구체적으로, CNN(Convolutional Neural Network)은 사람이 물체를 인식할 때 물체의 기본적인 특징들을 추출한 다음 뇌 속에서 복잡한 계산을 거쳐 그 결과를 기반으로 물체를 인식한다는 가정을 기반으로 만들어진 사람의 뇌 기능을 모사한 모델이다.
RNN(Recurrent Neural Network)은 자연어 처리 등에 많이 이용되며, 시간의 흐름에 따라 변하는 시계열 데이터(Time-series data) 처리에 효과적인 구조로 매 순간마다 레이어를 쌓아올려 인공신경망 구조를 구성할 수 있다.
DBN(Deep Belief Network)은 딥러닝 기법인 RBM(Restricted Boltzman Machine)을 다층으로 쌓아 구성되는 딥러닝 구조이다. RBM(Restricted Boltzman Machine) 학습을 반복하여 일정 수의 레이어가 되면, 해당 개수의 레이어를 가지는 DBN(Deep Belief Network)이 구성될 수 있다.
GNN(Graphic Neural Network, 그래픽 인공신경망, 이하, GNN)는 특정 파라미터 간 매핑된 데이터를 기초로 모델링된 모델링 데이터를 이용하여, 모델링 데이터 간의 유사도와 특징점을 도출하는 방식으로 구현된 인공신경망 구조를 나타낸다.
한편, 이상 판별부(150)의 인공신경망 학습은 주어진 입력에 대하여 원하는 출력이 나오도록 노드간 연결선의 웨이트(weight)를 조정(필요한 경우 바이어스(bias) 값도 조정)함으로써 이루어질 수 있다. 또한, 인공신경망은 학습에 의해 웨이트(weight) 값을 지속적으로 업데이트 시킬 수 있다. 또한, 인공신경망의 학습에는 역전파(Back Propagation) 등의 방법이 사용될 수 있다.
한편, 데이터베이스부(130)에는 머신 러닝으로 미리 학습된 인공신경망(Artificial Neural Network)이 탑재될 수 있다.
이상 판별부(150)는 도출된 파라미터에 대한 모델링 데이터를 입력 데이터로 하는 머신 러닝(machine learning) 기반의 개선 프로세스 추천 동작을 수행할 수 있다. 이때, 인공신경망의 머신 러닝 방법으로는 비지도학습(unsupervised learning)과 지도학습(supervised learning)이 모두 사용될 수 있다. 다만, 이하에서는 설명의 편의를 위하여, 이상 판별부(150)가 지도학습을 통해 미리 학습된 CNN을 이용하여 검사 대상 장비(300)의 이상 동작 여부를 판단하는 것을 예로 들어 설명하도록 한다.
이상 분석부(160)는 이상 판별부(150)에서 검사 대상 장비(300)에 이상이 있는 것으로 판별된 경우, 검사 대상 장비(300)의 어느 공정 단계에서 이상이 발생하였는지 여부를 분석할 수 있다. 몇몇 실시예에 따르면, 이상 분석부(160)는 수신하는 이미지 데이터의 반복 동작 주기를 검출하고, 검출된 반복 동작 주기 내에서 각 공정 단계를 분류할 수 있다. 이상 분석부(160)는 이상 탐지된 이미지 데이터와, 미리 저장된 정상 상태의 이미지 데이터를 비교하여, 이상이 발생된 검사 대상 장비(300)의 공정 단계(이하, 이상 공정 단계)를 결정할 수 있다. 이상 분석부(160)는 예를 들어, RepNet을 이용하여 반복 동작 주기를 검출할 수 있으나, 실시예들이 이에 제한되는 것은 아니다. 구체적인 설명은 후술한다.
수리 분석부(170)는 이상 분석부(160)에서 결정된 이상 공정 단계를 기초로, 수리가 필요한 검사 대상 장비(300)의 파트(part)를 결정할 수 있다. 수리 분석부(170)는 검사 대상 장비(300)의 파트에 대한 수리가 완료된 후, 이상 공정 단계에 대한 이상 점수를 기초로 수리 완성도를 평가할 수 있다. 구체적인 설명은 후술한다.
제어부(180)는 이상 탐지 장치(100)에 포함된 각 구성요소의 동작을 제어하는 기능을 수행한다. 제어부(180)는 각 구성요소 간의 연결, 데이터 교환, 명령 수행 등의 동작을 수행할 수 있다. 따라서, 이상 탐지 장치(100)에서 수행되는 이상 탐지 동작의 수행주체는 제어부(180)일 수 있다.
이하에서는, 본 발명의 이상 탐지 장치(100)에서 포함된 각 구성요소의 구조 및 동작에 대해 자세히 설명하도록 한다.
도 3은 본 발명의 몇몇 실시예들에 따른 이상 탐지 장치의 데이터 흐름을 설명하기 위한 블럭도이다. 도 4 및 도 5는 도 3의 오토인코더를 나타내는 블록도이다. 도 6은 도 3의 이상 판별부를 나타내는 블록도이다.
도 3을 참조하면, 데이터베이스부(130)에 미리 저장된 검사 대상 장비(300)에 관한 정상동작 데이터셋(NDS)은 제1 오토인코더(141) 또는 제2 오토인코더(143)에 인가될 수 있다.
제1 오토인코더(141) 및 제2 오토인코더(143)에서 동작 이미지를 입력으로 출력된 변환 이미지는 이상 판별부(150)에 전달될 수 있다.
한편, 이상 데이터 생성부(120)는 데이터베이스부(130)에 저장된 정상동작 데이터셋(NDS)을 이용하여 이상동작 데이터셋(ABDS)을 생성할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니며, 이상 데이터 생성부(120)는 외부에서 수신한 임의의 이미지를 이용하여 이상동작 데이터셋(ABDS)을 생성할 수 있다.
이상 데이터 생성부(120)에서 생성된 이상동작 데이터셋(ABDS)은 데이터베이스부(130)에 저장될 수 있으며, 이상동작 데이터셋(ABDS)은 이상 판별부(150)에 전달될 수 있다.
이때, 이상 판별부(150)에 전달되는 데이터는 학습부(140)를 통해 전달될 수 있다. 즉, 데이터베이스부(130)에 저장된 정상동작 데이터셋(NDS) 또는 이상동작 데이터셋(ABDS)과, 제1 오토인코더(141) 및 제2 오토인코더(143)의 출력으로 도출된 변환 이미지는 학습부(140)를 통해 이상 판별부(150)의 입력 노드에 인가될 수 있다.
이하에서는, 제1 오토인코더(141) 및 제2 오토인코더(143)의 몇몇 실시예에 따른 구조를 살펴보도록 한다. 제1 오토인코더(141)와 제2 오토인코더(143)의 구조는 실질적으로 동일할 수 있기에, 이하에서는 제1 오토인코더(141)를 예로 들어 설명하도록 한다.
구체적으로, 도 4를 참조하면, 본 발명의 일 예에 따른 오토인코더(141a)는 인코더 신경망(Encoder Network; 이하, 인코더(EN))와 디코더 신경망(Decoder Network; 이하, 디코더(DN))을 포함하며, 인코더(EN)와 디코더(DN) 사이에 배치되는 중간 레이어(Middle Layer; ML)를 포함한다.
오토인코더는 인코더(EN)를 통해 입력 받은 데이터(즉, 입력 데이터)를 압축시켜 데이터를 축소시킨 후, 디코더(DN)를 이용하여 축소된 데이터를 인코더(EN)에서 입력 데이터와 동일한 크기로 변환하여 출력함으로써, 오토인코더의 출력 데이터를 입력 데이터와 동일하도록 만드는 일종의 딥 뉴럴 네트워크 모델(Deep Neural Network Model)이다. 오토인코더는 입력 데이터의 특징을 비지도(unsupervised) 방식으로 학습한다. 이를 위해, 오토인코더는 인코더(EN)를 통해 입력 받은 데이터를, 해당 특징을 잘 표현하는 저차원의 데이터(즉, 잠재 벡터(Latent Vector; LV))로 변환하고, 변환된 데이터는 이후 디코더(DN)를 통해 다시 원 데이터로 복원될 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니며, 오토인코더는 양단에 입력 데이터 및 출력 데이터를 각각 인가함으로써 지도(supervised) 방식으로 학습할 수 있다.
오토인코더의 중간 레이어의 노드의 개수는, 입력 레이어의 입력노드 및 출력 레이어의 출력노드의 개수보다 작을 수 있다. 이때, 입력노드와 출력노드 사이의 노드 및 에지의 가중치는, 오토인코더의 학습 과정에 의해 업데이트될 수 있다.
또한, 오토인코더는 원 데이터(X1, X2, X3, X4; 즉, 입력 데이터)와 복원된 데이터(X1', X2', X3', X4'; 즉, 출력 데이터) 간의 차이에 해당하는 재구성 오류(Reconstruction Error; 이하 RE)를 최소화하는 것을 목표로 원 데이터에 내재되어 있는 패턴들을 학습할 수 있다. 오토인코더를 기반으로 한 이상 탐지 기법들은 이러한 오토인코더의 학습 목표를 역으로 이용한다.
즉, 오토인코더는 극히 적은 빈도로 발생하는 이상 데이터(즉, 이상 동작을 나타내는 검사 대상 장비(300)의 데이터)의 특징을 제대로 학습하지 못할 것이므로, 오토인코더는 이상 데이터의 원 데이터를 제대로 복원할 수 없게 된다. 따라서, 오토인코더가 복원한 데이터와 원 데이터 간의 차이가 매우 크거나 일정 임계값 이상인 데이터를 출력하는 경우를 감지함으로써, 동작 이미지의 이상여부(즉, 이상동작여부)를 효과적으로 탐지할 수 있다.
또한, 본 발명의 실시예에서는 오토인코더의 이상여부 감지 성능을 극대화하기 위해 오토인코더를 학습시키기 위한 학습 데이터를 정상동작 데이터셋(NDS)으로만 구성할 수 있다. 즉, 오토인코더를 학습시키기 위한 학습 데이터셋은 정상동작 데이터셋(NDS)으로 구성되고, 이상동작 데이터셋(ABDS)의 데이터는 제외하도록 구성될 수 있다.
추가적으로, 본 발명의 오토인코더는 입력값의 이상여부를 탐지하기 위해 다양한 오토인코더 모델 중에서도 시퀀스를 다루기에 가장 적합한 LSTM 오토인코더를 사용할 수 있다.
도 5를 참조하면, 본 발명의 일 예에 따른 오토인코더(141b)는 인코더(EN)와 디코더(DN)로 구성되는 LSTM(Long Short Term Memory) 오토인코더를 포함한다.
구체적으로, LSTM 오토인코더는 인코더(EN)를 통해 입력 받은 데이터(즉, 입력 데이터)를 압축시켜 데이터를 축소시킨 후, 디코더(DN)를 이용하여 축소된 데이터를 인코더(EN)에서 입력 데이터와 동일한 크기로 변환하여 출력함으로써, LSTM 오토인코더의 출력 데이터를 입력 데이터와 동일하도록 만드는 일종의 딥 뉴럴 네트워크 모델(Deep Neural Network Model)이다.
본 발명의 LSTM 오토인코더는 입력값의 이상여부를 탐지하기 위해 다양한 LSTM 오토인코더 모델 중에서도 시계열적으로 연속되는 시퀀스 데이터를 다루기에 가장 적합한 LSTM 오토인코더를 사용할 수 있다. LSTM 오토인코더는 시계열 데이터를 학습하는 딥러닝 모델인 순환 신경망(Recurrent Neural Network; 이하, RNN)에 상태 정보를 지니는 셀 상태(cell state) 개념을 추가하고 상태(state) 계산에 필요한 데이터들을 어느 정도 반영할지 여부를 게이트 연산을 통해 정함으로써 오래된 정보를 유지할 수 있도록 한 모델이다. 참고적으로, RNN은 현재 들어온 입력 데이터와 과거에 입력 받았던 데이터를 학습에 동시에 고려한다.
따라서, LSTM 오토인코더는 RNN으로 구성될 수 있다. LSTM 오토인코더는 여러 게이트(gate)가 붙어있는 셀(cell)로 이루어질 수 있으며, 해당 셀에 연결된 게이트의 값 또는 가중치를 확인하여 어떤 값을 저장할지, 언제 정보를 내보내거나 삭제할지를 결정한다. 각 셀 마다 이 가중치 값을 학습함으로써 학습 성능을 높일 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니며, 오토인코더는 다른 인공신경망 네트워크(예를 들어, CNN, DNN, GNN)를 채용하거나, 다른 구성요소를 추가하여 동작할 수 있음은 물론이다.
한편, 도 3 및 도 6을 참조하면, 이상 판별부(150)의 출력 노드에는, 이상 판별부(150)의 입력 노드에 인가된 데이터에 대응되는 이상 동작 여부에 대한 값이 인가될 수 있다.
구체적으로, 이상 판별부(150)는 비교 대상이 되는 이상여부 판단대상이 되는 동작 이미지와, 해당 동작 이미지를 입력으로 제1 오토인코더(141) 또는 제2 오토인코더(143)에서 출력된 복원 이미지를 입력노드로 하는 입력 레이어(input)와, 이상여부판단에 관한 값을 출력노드로 하는 출력 레이어(Output)와, 입력 레이어와 출력 레이어 사이에 배치되는 M 개의 히든 레이어를 포함한다.
여기서 각 레이어들의 노드를 연결하는 에지(edge)에는 가중치가 설정될 수 있다. 이러한 가중치 혹은 에지의 유무는 학습 과정에서 추가, 제거, 또는 업데이트 될 수 있다. 따라서, 학습 과정을 통하여, k개의 입력노드와 i개의 출력노드 사이에 배치되는 노드들 및 에지들의 가중치는 업데이트될 수 있다.
이상 판별부(150)가 학습을 수행하기 전에는 모든 노드와 에지는 초기값으로 설정될 수 있다. 그러나, 누적하여 정보가 입력될 경우, 노드 및 에지들의 가중치는 변경되고, 이 과정에서 학습인자로 입력되는 파라미터들(즉, 동작 이미지 및 복원 이미지)과 출력노드로 할당되는 값(즉, 이상여부판단에 관한 값) 사이의 매칭이 이루어질 수 있다.
추가적으로, 이상 탐지 장치(100)에서 클라우드 서버(미도시)를 이용하는 경우, 이상 판별부(150)는 많은 수의 파라미터들을 수신하여 처리할 수 있다. 따라서, 이상 판별부(150)는 방대한 데이터에 기반하여 학습을 수행할 수 있다.
또한, 이상 판별부(150)를 구성하는 입력노드와 출력노드 사이의 노드 및 에지의 가중치는 이상 판별부(150)의 학습 과정에 의해 업데이트될 수 있다. 이상 판별부(150)에서 출력되는 이상여부판단에 관한 값은 검사 대상 장비(300)의 이상여부 및 이상부위를 도출하는데 이용될 수 있다. 이때, 이상여부판단에 관한 값은 0 내지 1 사이의 확률값, Grad-CAM(Gradient-weighted CAM) 이미지, 및 CAM(Class Activation Mapping) 이미지 중 어느 하나를 포함할 수 있다. 이에 대한 자세한 설명은 도 11 및 도 12를 참조하여 후술하도록 한다.
이하에서는, 학습 데이터셋을 이용하여 이상 판별부(150)를 학습시키는 동작에 대해 자세히 살펴보도록 한다.
도 7 및 도 8은 학습 데이터셋을 이용하여 이상 판별부를 학습시키는 동작을 설명하기 위한 도면이다. 이하에서는, 전술한 내용과 중복되는 내용은 생략하고 차이점을 위주로 기술하도록 한다.
우선 도 7은 정상동작 데이터셋(NDS)을 이용하여 이상 판별부(150)를 학습하는 동작을 나타낸다.
도 7을 참조하면, 데이터베이스부(130)에 저장된 동작 이미지 중 정상 동작으로 레이블된 동작 이미지로 구성된 정상동작 데이터셋(NDS)은 제1 오토인코더(141)에 인가된다. 이때, 제1 오토인코더(141)는 정상동작 데이터셋(NDS)에 포함된 정상동작 이미지(NI1)를 입력으로 수신하고, 이에 대한 출력으로 제1 정상변환 이미지(NI1a)를 출력하여 이상 판별부(150)에 전달한다.
이어서, 이상 판별부(150)의 입력 노드에는 제1 오토인코더(141)의 입력으로 인가된 정상동작 이미지(NI1)와, 제1 오토인코더(141)에서 출력된 제1 정상변환 이미지(NI1a)가 인가된다.
또한, 이상 판별부(150)의 출력 노드에는 이상 판별부(150)에 입력된 데이터의 이상여부판단에 관한 값이 인가된다. 이때, 이상 판별부(150)의 입력 노드에 정상동작 이미지(NI1)와 이에 대한 제1 정상변환 이미지(NI1a)가 인가되었기에, 출력 노드에는 정상 상태를 나타내는 값(예를 들어, '1')이 인가될 수 있다.
이어서, 이상 판별부(150)에서는 입력 노드와 출력 노드에 인가된 값에 의해서 정상동작에 대한 지도학습(supervised learning)이 이루어지고, 이에 따라, 이상 판별부(150)에 포함된 뉴럴 네트워크(예를 들어, CNN)를 구성하는 각 노드 간 웨이트(weight) 값은 업데이트 될 수 있다.
반면, 도 8은 이상동작 데이터셋(ABDS)을 이용하여 이상 판별부(150)를 학습하는 동작을 나타낸다.
도 8을 참조하면, 데이터베이스부(130)에 저장된 동작 이미지 중 정상 동작으로 레이블된 동작 이미지로 구성된 정상동작 데이터셋(NDS)은 제2 오토인코더(143)에 인가된다. 제2 오토인코더(143)는 정상동작 데이터셋(NDS)에 포함된 정상동작 이미지(NI1)를 입력으로 수신하고, 이에 대한 출력으로 제2 정상변환 이미지(NI1b)를 출력하여 이상 판별부(150)에 전달한다.
이때, 제2 오토인코더(143)는, 제1 오토인코더(141)와 실질적으로 동일한 구조 및 동작방식을 지니나, 제1 오토인코더(141)보다 적은 횟수로 사전학습이 수행된다. 따라서, 제2 오토인코더(143)에서 출력된 제2 정상변환 이미지(NI1b)는 제1 오토인코더(141)에서 출력된 제1 정상변환 이미지(NI1a) 보다 품질이 낮을 수 있다.
이어서, 이상 판별부(150)의 입력 노드에는 제2 오토인코더(143)에서 출력된 제2 정상변환 이미지(NI1b)와, 이상동작 데이터셋(ABDS)에 포함된 이상동작 이미지(ABI)가 인가된다.
또한, 이상 판별부(150)의 출력 노드에는 이상 판별부(150)에 입력된 데이터의 이상여부판단에 관한 값이 인가된다. 이때, 이상 판별부(150)의 입력 노드에 제2 정상변환 이미지(NI1b)와 이상동작 이미지(ABI)가 인가되었기에, 출력 노드에는 이상 상태(즉, 비정상 상태)를 나타내는 값(예를 들어, '0')이 인가될 수 있다.
따라서, 이상 판별부(150)는 입력 노드와 출력 노드에 인가된 값에 의해서 이상동작에 대한 지도학습(supervised learning)이 이루어지고, 이에 따라, 이상 판별부(150)에 포함된 뉴럴 네트워크(예를 들어, CNN)를 구성하는 각 노드 간 웨이트(weight) 값은 업데이트 될 수 있다.
이를 통해, 이상 판별부(150)는 입력 노드에 인가된 데이터들의 이상여부판단에 관한 값을 출력할 수 있으며, 이때 출력되는 값의 이상판단에 대한 정확도는 학습이 진행될수록 높아질 수 있다.
실제 검사 대상 장비의 운용사례에서는 정상동작 데이터셋(NDS)의 수가 이상동작 데이터셋(ABDS)의 수보다 압도적으로 많은 경우가 대부분이기에, 이상 판별부(150)에서 출력되는 이상여부판단의 정확도를 향상시키기 위해서는 충분한 수의 이상동작 데이터셋(ABDS)을 확보하는 것이 중요하다.
다만, 이상동작 데이터셋(ABDS)을 의도적으로 생성하는 것은 상당한 시간과 노력이 요구되기에, 본 발명의 이상 데이터 생성부(120)는 정상동작 데이터셋(NDS) 또는 다른 외부 데이터(또는, 이미지)를 기초로 이상동작 데이터셋(ABDS)을 생성하여 이상 판별부(150)의 학습에 이용한다. 이하에서는, 이상동작 데이터셋(ABDS)을 생성하는 이상 데이터 생성부(120)의 동작에 대해 자세히 살펴보도록 한다.
도 9는 이상 데이터 생성부에서 이상동작 데이터셋을 생성하는 동작을 설명하기 위한 블록도이다.
도 9를 참조하면, 이상 데이터 생성부(120)는 제1 오토인코더(141) 및 제2 오토인코더(143)를 이용하여 이상동작 데이터셋(ABDS)을 생성한다. 전술한 바와 같이, 제2 오토인코더(143)는 제1 오토인코더(141)보다 적은 수의 동작 데이터셋을 이용하여 학습될 수 있다.
우선, 이상 데이터 생성부(120)는 복수의 랜덤 이미지(random image)를 제2 오토인코더(143)에 각각 인가하여 변환 이미지를 출력한다. 이때, 랜덤 이미지는 정상동작 데이터셋(NDS)에 포함된 정상동작 이미지이거나, 외부에서 수집된 별개의 이미지 일 수 있다.
예를 들어, 제1 랜덤 이미지(RI1)는 제2 오토인코더(143)에 인가되고, 이에 대한 출력으로 제1 변환 이미지(RI1b)가 출력될 수 있다. 또한, 제2 랜덤 이미지(RI2)는 제2 오토인코더(143)에 인가되고, 이에 대한 출력으로 제2 변환 이미지(RI2b)가 출력될 수 있다. 이때, 제1 랜덤 이미지(RI1)와 제2 랜덤 이미지(RI2)는 서로 다른 방식으로 선정될 수 있으며, 제1 랜덤 이미지(RI1)와 제2 랜덤 이미지(RI2)는 서로 다른 이미지일 수 있다.
이어서, 이상 데이터 생성부(120)는 제2 오토인코더(143)에서 각각 출력된 변환 이미지를 병합하여 중간 이미지(MI)를 생성한다. 예를 들어, 이상 데이터 생성부(120)는 제1 변환 이미지(RI1b)와 제2 변환 이미지(RI2b)를 병합하여 중간 이미지(MI)를 생성할 수 있다. 이때, 이상 데이터 생성부(120)는 병합 로직으로 이미지 데이터의 평균값(average value)을 이용할 수 있다. 다만, 병합 로직은 평균에 한정되는 것은 아니며, 다른 다양한 연산 로직이 이용될 수 있음은 물론이다.
이어서, 이상 데이터 생성부(120)는 제1 오토인코더(141)에 중간 이미지(MI)를 입력하고, 이에 대한 출력으로 이상동작 이미지(ABI; 또는, MIa)를 생성할 수 있다.
이를 통해, 이상동작 데이터셋(ABDS)을 구성하는 이상동작 이미지(ABI)에는 제2 오토인코더(143)의 특성과 제1 오토인코더(141)의 특성이 부여될 수 있다. 본 발명의 이상 탐지 장치(100)는 전술한 과정을 통해 많은 수의 이상동작 데이터셋(ABDS)을 생성하여 이용할 수 있다.
도 10은 이상 탐지 장치에서 동작시 발생되는 데이터의 예시를 나타내는 도면이다.
도 10을 참조하면, <NI1>은 정상동작 데이터셋(NDS)에 포함된 정상동작 이미지를 나타내고, <NI1a>는 정상동작 이미지를 입력으로 제1 오토인코더(141)에서 출력된 제1 정상변환 이미지를 나타낸다. 전술한 바와 같이, 이상 판별부(150)는 검사 대상 장비(300)의 정상동작에 대해, <NI1>의 이미지 및 <NI1a>의 이미지와, 정상동작을 나타내는 값을 이용하여 학습될 수 있다.
한편, <NI1b>는 정상동작 이미지를 입력으로 제2 오토인코더(143)에서 출력된 제2 정상변환 이미지를 나타내고, <MI>는 이상 데이터 생성부(120)에서 복수의 랜덤 이미지를 기초로 생성된 중간 이미지를 나타낸다. <ABI>는 이상 데이터 생성부(120)에서 생성된 이상동작 이미지를 나타낸다. 마찬가지로 전술한 바와 같이, 이상 판별부(150)는 검사 대상 장비(300)의 이상동작에 대해, <NI1b>의 이미지 및 <ABI>의 이미지와, 이상동작을 나타내는 값을 이용하여 학습될 수 있다.
이하에서는, 전술한 과정을 통하여 도출된 데이터셋을 이용하여 학습된 이상 판별부(150)를 기초로, 검사 대상 장비(300)의 이상여부를 판단하는 방법에 대해 도 11을 참조하여 설명하도록 한다.
도 11은 본 발명의 일 실시예에 따른 이상 탐지 장치에서 이상여부판단을 위한 동작을 설명하기 위한 블럭도이다.
도 11을 참조하면, 이상 탐지 장치(100)는 검사 대상 장비(300)에 대한 이상동작여부를 판단할 대상 이미지를 수신한다. 여기에서, 대상 이미지는 현재 검사 대상 장비(300)의 상태를 카메라(200)를 통해 촬영한 이미지일 수 있다.
이때, 이상 탐지 장치(100)는 제1 오토인코더(141)와, 전술한 방법으로 미리 학습된 이상 판별부(150)를 이용하여 대상 이미지의 이상여부를 판단할 수 있다.
이상 판별부(150)는 검사 대상 장비(300)에 관한 대상 이미지와, 대상 이미지를 입력으로 제1 오토인코더(141)에서 출력한 복원 이미지를 입력받는다.
이어서, 이상 판별부(150)는 대상 이미지와 복원 이미지에 대한 출력으로 이상여부판단에 관한 값과, 이상 점수를 출력할 수 있다.
여기에서, 이상 점수는 0 내지 1 사이의 확률값일 수 있으나, 실시예들이 이에 제한되는 것은 아니다. 또한, 이상여부판단에 관한 값은, 이상 점수를 기초로 판단된 검사 대상 장비(300)의 이상 탐지 여부를 의미한다. 몇몇 실시예에 따르면, 이상 판별부(150)는 이상 점수가 미리 정해진 기준값보다 큰지 여부를 판단한다.
만약, 이상 점수가 미리 정해진 기준값보다 큰 경우, 이상 판별부(150)는 검사 대상 장비(300)에 대한 대상 이미지가 정상(즉, 정상동작상태)이라고 판단할 수 있다. 반대로, 이상 점수가 미리 정해진 기준값보다 작은 경우, 이상 판별부(150)는 검사 대상 장비(300)에 대한 대상 이미지가 비정상(즉, 이상동작상태)이라고 판단할 수 있다. 다만, 이는 예시적인 설명일 뿐 본 발명의 실시예들이 이에 제한되는 것은 아니다. 즉, 이상 판별부(150)의 학습 형태에 따라, 이상 점수가 미리 정해진 기준값보다 큰 경우, 이상 판별부(150)는 검사 대상 장비(300)에 대한 대상 이미지가 이상동작상태라고 판단할 수 있다. 마찬가지로, 이상 판별부(150)의 학습 형태에 따라, 이상 점수가 미리 정해진 기준값보다 작은 경우, 이상 판별부(150)는 검사 대상 장비(300)에 대한 대상 이미지가 정상동작상태라고 판단할 수 있다. 다시 말해서, 이상 판별부(150)는 도출된 이상 점수에 기초하여, 검사 대상 장비(300)의 이상여부에 대해 판단할 수 있다.
도 12는 본 발명의 몇몇 실시예에 따른 이상 분석부의 개략적인 구성을 설명하기 위한 도면이다. 도 13은 본 발명의 몇몇 실시예에 따른 주기 탐색 모듈 및 공정 분류 모듈의 동작을 보조적으로 설명하기 위한 도면이다.
도 12를 참조하면, 이상 분석부(160)는 주기 탐색 모듈(161) 및 공정 분류 모듈(162)을 포함할 수 있다.
주기 탐색 모듈(161)은 이상 탐지 장치(100)에서 수신하는 검사 대상 장비(300)에 대한 이미지 데이터에서, 반복되는 동작에 대한 주기를 검출할 수 있다. 예를 들어, 주기 탐색 모듈(161)은 이미지 데이터의 각 프레임에 대한 임베딩을 생성하고, 각 프레임의 임베딩을 이미지 데이터의 다른 모든 프레임과 비교하여 TSM(Temporal Self-similarity Matrix)를 계산하고, TSM의 유사성 시퀀스에 대한 반복 기간 및 주기성을 예측할 수 있다. 몇몇 실시예에 따르면, 주기 탐색 모듈(161)은 RepNet을 이용하여, 검사 대상 장비(300)의 반복 동작에 대한 주기를 검출할 수 있으나, 실시예들이 이에 제한되는 것은 아니다.
예를 들어, 도 13의 <A1>을 더 참조하면, 주기 탐색 모듈(161)은 검사 대상 장비(300)의 동작에 대한 이미지 데이터에 대해, 반복되는 동작들을 검출하고, 이들에 대한 주기(T1)를 검출할 수 있다. 검사 대상 장비(300)는 제1 공정을 반복적으로 수행할 수 있다. 따라서, 주기 탐색 모듈(161)이 검사 대상 장비(300)의 반복 동작에 대한 주기(T1)를 검출하는 것은, 검사 대상 장비(300)의 제1 공정에 대한 사이클(cycle)을 검출하는 것으로 이해될 수 있다. 다시 말해서, 주기 탐색 모듈(161)은 검사 대상 장비(300)가 수행하는 제1 공정의 시작 단계와 종료 단계를 하나의 주기(T1)로 검출할 수 있다. 즉, 주기 탐색 모듈(161)은 검사 대상 장비(300)가 수행하는 동작 중, 반복되는 제1 공정을 분류할 수 있다.
다시 도 12를 참조하면, 공정 분류 모듈(162)은 주기 탐색 모듈(161)에서 검출된 검사 대상 장비(300)의 제1 공정 내에서, 공정 단계를 분류할 수 있다. 몇몇 실시예에 따르면, 공정 분류 모듈(162)은 검사 대상 장비(300)의 데이터의 유사성을 기초로, 주기 탐색 모듈(161)에서 검출된 제1 공정을 복수의 공정 단계로 분류할 수 있다. 다시 말해서, 공정 분류 모듈(162)은 유사한 데이터가 연속되는 경우 이를 하나의 공정 단계로 분류할 수 있다. 다만, 이는 하나의 실시예이며, 본 발명이 공정 분류 모듈(162)이 공정 단계를 분류하는 방식에 대해 제한되는 것은 아니다.
예를 들어, 도 13의 <A2>를 참조하면, 공정 분류 모듈(162)은 주기 탐색 모듈(161)에서 데이터의 유사성을 기초로, 검출된 검사 대상 장비(300)의 제1 공정을 제1 단계(S1), 제2 단계(S2), 제3 단계(S3), 제4 단계(S4) 및 제5 단계(S5)로 분류할 수 있다. 도 13의 <A2>는 주기 탐색 모듈(161)에서 검출된 제1 공정을 5개의 단계로 분류하는 것으로 설명하였으나, 실시예들이 이에 제한되지는 않는다. 공정 분류 모듈(162)이 공정 단계를 분류하는 조건에 따라, 공정 분류 모듈(162)이 분류하는 공정 단계는 얼마든지 변경될 수 있다.
본 발명의 몇몇 실시예에 따른 이상 분석부(160)는 검사 대상 장비(300)가 정상 동작을 할 때의 반복 동작에 대한 주기 및 공정 단계를 미리 분류해 놓을 수 있다. 다시 말해서, 이상 분석부(160)는 검사 대상 장비(300)가 정상 동작할 때의 제1 공정과, 제1 공정에 대한 공정 단계를 미리 분석하고, 이를 저장해둘 수 있다. 만약 이상 탐지 장치(100)에서 검사 대상 장비(300)의 이상이 탐지되면, 이상 분석부(160)는 미리 저장된 정상 동작에서의 주기 및 공정 단계와, 이상 동작을 수행할 때의 주기 및 공정 단계를 비교 및 분석할 수 있다. 다시 말해서, 이상 분석부(160)는 정상 동작에서의 주기 및 공정 단계와, 이상 동작에서의 주기 및 공정 단계를 분석하여, 이상 동작이 발생된 공정 단계를 결정할 수 있다. 즉, 이상 분석부(160)는 검사 대상 장비(300)가 정상 동작할 때의 공정 단계별 데이터와, 검사 대상 장비(300)가 이상 동작할 때의 공정 단계별 데이터를 비교하여, 이상 동작이 발생된 공정 단계(이하, 이상 공정 단계)를 특정할 수 있다.
도 14는 본 발명의 몇몇 실시예에 따른 수리 분석부의 개략적인 구성을 설명하기 위한 도면이다.
도 14를 참조하면, 본 발명의 몇몇 실시예에 따른 수리 분석부(170)는 수리 위치 판별 모듈(171), 수리 완성도 판별 모듈(172) 및 수리 평가 모듈(173)을 포함할 수 있다.
수리 위치 판별 모듈(171)은 이상 분석부(160)에서 결정된 이상 공정 단계를 수신할 수 있다. 수리 위치 판별 모듈(171)은 이상 공정 단계를 기초로, 검사 대상 장비(300)에 수리가 필요한 파트(part)를 결정할 수 있다. 예를 들어, 이상 분석부(160)가 검사 대상 장비(300)의 제1 공정 중 '웨이퍼 이송 단계'를 이상 공정 단계로 결정한 경우, 수리 위치 판별 모듈(171)은 검사 대상 장비(300)의 이송 암(transfer arm)에 수리가 필요한 것으로 결정할 수 있다. 다시 말해서, 수리 위치 판별 모듈(171)은 이상 공정 단계를 기초로, 해당 공정 단계에 이상을 발생시킬 수 있는 원인을 분석하여, 수리가 필요한 파트를 결정할 수 있다. 이때, 결정된 파트는 하나 이상일 수 있다.
수리 완성도 판별 모듈(172)은 수리 위치 판별 모듈(171)에서 결정된 수리 필요 파트에 대한 수리가 종료된 후, 검사 대상 장비(300)에 대한 수리가 어느정도 수행되었는지를 정량화할 수 있다. 다시 말해서, 수리 완성도 판별 모듈(172)은 검사 대상 장비(300)에 대한 수리 완성도를 결정할 수 있다.
수리 완성도 판별 모듈(172)은 이상 판별부(150) 및 이상 분석부(160)를 이용하여, 검사 대상 장비(300)에 대한 수리가 완료되었는지 여부를 평가하고, 수리 완성도에 대한 정량 평가를 수행할 수 있다. 먼저, 수리 완성도 판별 모듈(172)은 이상 분석부(160)를 이용하여, 수리 행위가 수행된 이후의 검사 대상 장비(300)의 동작에서, 제1 공정 단계를 분류할 수 있다. 여기에서 제1 공정 단계는, 이전에 이상이 탐지된 이상 공정 단계와 대응되는 공정 단계일 수 있다. 수리 완성도 판별 모듈(172)은 이상 판별부(150)를 이용하여 수리 행위가 수행된 이후의 제1 공정 단계에 대한 이상 점수를 도출할 수 있다. 다시 말해서, 수리 완성도 판별 모듈(172)은 수리 이후의 검사 대상 장비(300)의 제1 공정 단계에 대한 이상 점수를 도출할 수 있다.
수리 완성도 판별 모듈(172)은 수리 이후의 제1 공정 단계에 대한 이상 점수를 기초로, 검사 대상 장비(300)에 대한 수리가 완료되었는지 여부를 결정할 수 있다. 예를 들어, 수리 완성도 판별 모듈(172)은 수리 이후의 검사 대상 장비(300)의 제1 공정 단계에 대한 이상 점수가, 미리 정한 제1 기준치를 초과하는지 여부를 기초로, 검사 대상 장비(300)에 대한 수리가 완료되었는지 여부를 결정할 수 있다. 예를 들어, 수리가 완료되었는지 여부는 바이너리 코드로 표현될 수 있다.
또한, 수리 완성도 판별 모듈(172)은 수리 이후의 검사 대상 장비(300)의 제1 공정 단계에 대한 이상 점수와, 수리 이전의 검사 대상 장비(300)의 이상 공정 단계에 대한 이상 점수를 기초로, 수리 행위에 대한 수리 완성도를 결정할 수 있다. 수리 완성도는, 예를 들어, 아래 수학식 1에 의해서 결정될 수 있다. 다만, 아래 수학식 1은 수리 완성도를 표현하기 위한 하나의 예시일 뿐이며, 실시예들이 이에 제한되는 것은 아니다. 수리 완성도 판별 모듈(172)은 아래 수학식 1 외에도 다양한 공식으로 수리 완성도를 계산할 수 있을 것이다.
[수학식 1]
수리 평가 모듈(173)은 수리 완성도 판별 모듈(172)에서 결정한 수리 완료 여부 및 수리 완성도를 기초로, 수리 행위에 대한 평가를 수행할 수 있다. 예를 들어, 수리 평가 모듈(173)은 수리 행위를 수행한 담당자 및/또는 수리 기업의 복수의 수리 행위들에 대해, 수리 완료 여부 및 수리 완성도를 평균하여, 수리 행위를 수행한 담당자 및/또는 수리 기업에 대한 수리 만족도를 평가할 수 있다. 사용자는 이러한 수리 만족도를 기초로, 수리 담당자 및/또는 수리 기업을 지정하여 이후 발생할 이상 동작에 대한 수리를 의뢰할 수 있을 것이다.
도 15는 본 발명의 몇몇 실시예들에 따른 이상 탐지 방법을 설명하기 위한 순서도이다. 이하에서는 이상 탐지 방법의 동작주체가 이상 탐지 장치(100)인 것을 예로 들어 설명하도록 한다. 또한, 이하에서는 전술한 내용과 중복되는 내용은 생략하여 기술하도록 한다.
도 15를 참조하면, 이상 탐지 장치(100)는 데이터베이스부(130)에 미리 저장된 정상동작 데이터셋(NDS)을 기초로 제1 오토인코더(141) 및 제2 오토인코더(143)를 서로 다른 횟수로 학습시킨다(S110). 이때, 이상 탐지 장치(100)는 제1 오토인코더(141)의 학습 횟수가 제2 오토인코더(143)보다 많아지도록 할 수 있다.
이어서, 이상 탐지 장치(100)는 제1 오토인코더(141) 및 제2 오토인코더(143)를 이용하여 정상동작 데이터셋(NDS)을 기초로 이상동작 데이터셋(ABDS)을 생성한다(S120). 또한, 이상동작 데이터셋(ABDS)은 복수의 랜덤 이미지를 기초로 생성될 수 있으며, 랜덤 이미지는 정상동작 데이터셋(NDS) 뿐만 아니라 외부에서 수집된 이미지가 이용될 수 있음은 물론이다.
이어서, 이상 탐지 장치(100)는 정상동작 데이터셋(NDS)과 이상동작 데이터셋(ABDS)을 기초로 이상 판별부(150)의 뉴럴 네트워크를 학습시킨다(S130). 이때, 이상 탐지 장치(100)는 S120 단계에서 충분한 수가 확보된 이상동작 데이터셋(ABDS)을 이용하여 이상 판별부(150)를 학습시킬 수 있다.
이어서, 이상 탐지 장치(100)는 검사 대상 장비(300)의 동작 이미지(즉, 대상 이미지)를 수신한다(S210).
이어서, 이상 탐지 장치(100)는 미리 학습된 이상 판별부(150)에 동작 이미지(즉, 대상 이미지)를 인가하여 이상여부판단에 관한 값을 출력시킨다(S220). 이때, 이상 판별부(150)에는 제1 오토인코더(141) 또는 제2 오토인코더(143)에 대상 이미지를 인가하여 나온 출력값과, 대상이미지가 동시에 입력될 수 있으며, 이에 대한 출력으로 이상여부판단에 관한 값을 출력한다.
이어서, 이상 탐지 장치(100)는 출력된 이상여부판단에 관한 값을 이용하여 검사 대상 장비(300)의 이상동작 여부 및 이상부위를 판단한다(S230).
전술한 이상 탐지 방법에서, S110 내지 S130 단계는 이상 판별부(150)에 포함된 뉴럴 네트워크의 학습 단계로써 동작하고, S210 내지 S230 단계는 학습된 이상 판별부(150)를 이용하여 검사 대상 장비(300)의 이상여부를 판단하는 수행단계를 나타낸다.
도 16은 본 발명의 몇몇 실시예에 따른 이상 분석부 및 수리 분석부에 대한 동작을 추가적으로 설명하기 위한 도면이다.
도 16을 참조하면, 이상 탐지 장치(100)는 이상 동작이 발생된 공정 단계를 분류할 수 있다(S310). 예를 들어, 이상 탐지 장치(100)는 먼저, 이상 동작이 발생되었는지 여부를 결정하고, 이상 동작이 발생된 경우 이를 정상 동작에서의 데이터와 비교하여, 어떤 공정 단계에서 이상 동작이 발생되었는지 여부를 결정할 수 있다. 다시 말해서, 이상 탐지 장치(100)는 검사 대상 장비(300)의 동작 이미지에 대한 분석을 통해, 이상 공정 단계를 결정할 수 있다.
이상 탐지 장치(100)는 이상 공정 단계에 대한 정보를 기초로, 수리가 필요한 파트를 결정할 수 있다(S320). 예를 들어, 이상 탐지 장치(100)는 이상 공정 단계에, 이상 동작을 야기하는 주요한 파트들을 선별하고, 이를 수리가 필요한 파트로 결정할 수 있다.
수리 행위를 수행한 후, 이상 탐지 장치(100)는 수리 전/후 데이터를 비교하여 수리 완료 여부 및 수리 완성도를 결정할 수 있다(S330). 예를 들어, 이상 탐지 장치(100)는 수리 후의 제1 공정 단계에 대한 이상 점수를 기초로 수리 완료 여부를 결정할 수 있다. 즉, 이상 탐지 장치(100)는 수리 후의 제1 공정 단계에 대한 이상 점수가 제1 기준치를 초과하는지 여부를 기초로, 수리 완료 여부를 결정할 수 있다. 또한, 예를 들어, 이상 탐지 장치(100)는 수리 후의 이상 점수와, 수리 전의 이상 점수를 비교하여 수리 완성도를 결정할 수 있다. 다시 말해서, 이상 탐지 장치(100)는 수리 전 이상 공정 단계에 대한 이상 점수와, 수리 후 제1 공정 단계에 대한 이상 점수를 비교하여, 수리 완성도를 결정할 수 있다. 수리 완성도는 전술한 수학식 1에 의해서 결정될 수 있으나, 실시예들이 이에 제한되지는 않는다.
도 17은 본 발명의 몇몇 실시예에 따른 이상 탐지 방법을 수행하는 시스템의 하드웨어 구현을 설명하기 위한 도면이다.
도 17을 참조하면, 본 발명의 몇몇 실시예들에 따른 이상 탐지 장치(100)는 전자 장치(1000)로 구현될 수 있다. 전자 장치(1000)는 컨트롤러(1010, controller), 입출력 장치(1020, I/O), 메모리 장치(1030, memory device), 인터페이스(1040, interface) 및 버스(1050, bus)를 포함할 수 있다. 컨트롤러(1010), 입출력 장치(1020), 메모리 장치(1030) 및/또는 인터페이스(1040)는 버스(1050)를 통하여 서로 결합될 수 있다. 이때, 버스(1050)는 데이터들이 이동되는 통로(path)에 해당한다.
구체적으로, 컨트롤러(1010)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit), 마이크로프로세서, 디지털 신호 프로세스, 마이크로컨트롤러, 어플리케이션 프로세서(AP, application processor) 및 이들과 유사한 기능을 수행할 수 있는 논리 소자들 중에서 적어도 하나를 포함할 수 있다.
입출력 장치(1020)는 키패드(keypad), 키보드, 터치스크린 및 디스플레이 장치 중 적어도 하나를 포함할 수 있다.
메모리 장치(1030)는 데이터 및/또는 프로그램 등을 저장할 수 있다.
인터페이스(1040)는 통신 네트워크로 데이터를 전송하거나 통신 네트워크로부터 데이터를 수신하는 기능을 수행할 수 있다. 인터페이스(1040)는 유선 또는 무선 형태일 수 있다. 예컨대, 인터페이스(1040)는 안테나 또는 유무선 트랜시버 등을 포함할 수 있다. 도시하지 않았지만, 메모리 장치(1030)는 컨트롤러(1010)의 동작을 향상시키기 위한 동작 메모리로서, 고속의 디램 및/또는 에스램 등을 더 포함할 수도 있다. 메모리 장치(1030)는 내부에 프로그램 또는 어플리케이션을 저장할 수 있다.
본 발명의 실시예들에 따른 이상 탐지 장치(100)는 각각 복수의 전자 장치(1000)가 네트워크를 통해서 서로 연결되어 형성된 시스템일 수 있다. 이러한 경우에는 각각의 모듈 또는 모듈의 조합들이 전자 장치(1000)로 구현될 수 있다. 단, 본 실시예가 이에 제한되는 것은 아니다.
추가적으로, 이상 탐지 장치(100)는 워크스테이션(workstation), 데이터 센터, 인터넷 데이터 센터(internet data center(IDC)), DAS(direct attached storage) 시스템, SAN(storage area network) 시스템, NAS(network attached storage) 시스템, RAID(redundant array of inexpensive disks, or redundant array of independent disks) 시스템, 및 EDMS(Electronic Document Management) 시스템 중 적어도 하나로 구현될 수 있으나, 본 실시예가 이에 제한되는 것은 아니다.
또한, 이상 탐지 장치(100)는 네트워크를 통해서 카메라(200) 또는 검사 대상 장비(300)에 데이터를 전송할 수 있다. 네트워크는 유선 인터넷 기술, 무선 인터넷 기술 및 근거리 통신 기술에 의한 네트워크를 포함할 수 있다. 유선 인터넷 기술은 예를 들어, 근거리 통신망(LAN, Local area network) 및 광역 통신망(WAN, wide area network) 중 적어도 하나를 포함할 수 있다.
무선 인터넷 기술은 예를 들어, 무선랜(Wireless LAN: WLAN), DMNA(Digital Living Network Alliance), 와이브로(Wireless Broadband: Wibro), 와이맥스(World Interoperability for Microwave Access: Wimax), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution: LTE), LTE-A(Long Term Evolution-Advanced), 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service: WMBS) 및 5G NR(New Radio) 기술 중 적어도 하나를 포함할 수 있다. 단, 본 실시예가 이에 제한되는 것은 아니다.
근거리 통신 기술은 예를 들어, 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association: IrDA), UWB(Ultra-Wideband), 지그비(ZigBee), 인접 자장 통신(Near Field Communication: NFC), 초음파 통신(Ultra Sound Communication: USC), 가시광 통신(Visible Light Communication: VLC), 와이 파이(Wi-Fi), 와이 파이 다이렉트(Wi-Fi Direct), 5G NR (New Radio) 중 적어도 하나를 포함할 수 있다. 단, 본 실시예가 이에 제한되는 것은 아니다.
네트워크를 통해서 통신하는 이상 탐지 장치(100)는 이동통신을 위한 기술표준 및 표준 통신 방식을 준수할 수 있다. 예를 들어, 표준 통신 방식은 GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTEA(Long Term Evolution-Advanced) 및 5G NR(New Radio) 중 적어도 하나를 포함할 수 있다. 단, 본 실시예가 이에 제한되는 것은 아니다.
정리하면, 본 발명의 이상 탐지 장치는, 검사 대상 장비를 촬영한 이미지를 이용하여 검사 대상 장비의 이상동작 여부를 판단함으로써, 작업자가 계속해서 검사 대상 장비의 이상 유무를 체크해야 하는 이상탐지업무의 비효율적인 측면을 개선시키고, 이상동작 여부 판단에 대한 정확도를 향상시킬 수 있다.
또한, 본 발명은, 이상동작에 관한 데이터셋을 자동으로 생성하고, 이를 이용하여 이상 판별부를 학습시킴으로써, 충분한 이상동작 데이터를 확보할 수 있어 검사 대상 장비에 대한 이상여부 판단의 정확도를 향상시킬 수 있다. 또한, 본 발명은 이상동작에 관한 데이터셋을 확보하는 어려움을 감소시키고, 이상동작 패턴의 다양성을 확보함으로써, 사용자가 예상하지 못한 경우에 대한 이상동작 여부 판단도 가능할 수 있어, 이상탐지성능의 향상과, 제품 수율 및 기업의 이익을 극대화시킬 수 있는 효과를 나타낸다.
또한, 본 발명은, 검사 대상 장비의 이상여부 뿐만 아니라 이상부위까지 함께 판단할 수 있으므로, 검사 대상 장비에 대한 빠른 수리 및 유지보수가 가능하다. 따라서, 본 발명은 기계장비 유지보수에 필요한 리소스를 최소화할 수 있으며, 제품생산라인이 기계 오작동으로 인하여 중단됨에 따라 발생할 수 있는 손해를 최소화할 수 있다.
또한, 본 발명은 수리 전/후 데이터를 이용하여, 수리 완료 여부를 정량적으로 평가할 수 있을 뿐만 아니라, 수리 완성도에 대한 정량적인 평가가 가능하므로 수리 행위 및/또는 수리 업체별 평가를 통해 수리 업체의 효율적인 관리가 가능하다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (10)

  1. 검사 대상 장비의 이상동작여부를 판단하는 이상 탐지 장치에 있어서,
    상기 검사 대상 장비의 동작 이미지를 수신하는 데이터 수신부;
    상기 동작 이미지 중 정상 동작 여부가 레이블된 동작 데이터셋을 저장하는 데이터베이스부;
    상기 데이터베이스부에 미리 저장된 동작 데이터셋을 기초로, 이상동작 데이터셋을 생성하는 이상 데이터 생성부;
    상기 데이터베이스부에 저장된 상기 동작 데이터셋 및 상기 이상동작 데이터셋을 기초로 미리 학습되고, 상기 동작 이미지를 이용하여 변환 이미지를 생성하는 제1 오토인코더;
    상기 제1 오토인코더보다 적은 횟수로 미리 학습되고, 상기 이상동작 데이터셋을 생성하는데 이용되는 제2 오토인코더;
    상기 제1 오토인코더에서 생성된 변환 이미지와 상기 동작 이미지를 이용하여, 상기 검사 대상 장비의 이상 점수를 결정하는 이상 판별부; 및
    상기 동작 이미지에서 반복 동작 주기를 검출하고, 상기 검사 대상 장비가 이상 동작을 발생시키는 이상 공정 단계를 분류하는 이상 분석부를 포함하되,
    상기 이상 데이터 생성부는 상기 동작 데이터셋 중 임의의 제1 랜덤 이미지 및 제2 랜덤 이미지를 결정하고, 상기 제2 오토인코더를 이용하여 상기 제1 랜덤 이미지를 제1 랜덤 변환 이미지로 변환하고, 상기 제2 오토인코더를 이용하여 상기 제2 랜덤 이미지를 제2 랜덤 변환 이미지로 변환하고, 상기 제1 랜덤 변환 이미지 및 상기 제2 랜덤 변환 이미지를 결합하여 상기 이상동작 데이터셋을 생성하는,
    이상 탐지 장치.
  2. 제1 항에 있어서,
    상기 이상 분석부는,
    상기 동작 이미지에서 반복 동작 주기를 검출하여 상기 검사 대상 장비의 제1 공정을 검출하는 주기 탐색 모듈; 및
    상기 제1 공정에서, 데이터의 유사성을 기초로 공정 단계를 분류하는 공정 분류 모듈을 포함하고,
    상기 공정 분류 모듈은 상기 검사 대상 장비가 정상 동작할 때의 공정 단계별 데이터와, 상기 제1 공정에서의 공정 단계별 데이터를 비교하여, 상기 이상 공정 단계를 분류하는,
    이상 탐지 장치.
  3. 제1 항에 있어서,
    상기 이상 공정 단계를 기초로, 상기 검사 대상 장비의 수리가 필요한 파트를 결정하는 수리 분석부를 더 포함하는,
    이상 탐지 장치.
  4. 제3 항에 있어서,
    상기 수리 분석부는,
    상기 검사 대상 장비의 수리 이후, 상기 이상 공정 단계와 대응되는 제1 공정 단계에 대한 이상 점수를 결정하고, 상기 제1 공정 단계에 대한 이상 점수를 기초로 상기 검사 대상 장비의 수리 완료 여부를 결정하는,
    이상 탐지 장치.
  5. 제4 항에 있어서,
    상기 수리 분석부는, 상기 제1 공정 단계에 대한 이상 점수가 미리 정한 제1 기준치를 초과하는지 여부를 기초로, 상기 검사 대상 장비의 수리 완료 여부를 결정하는,
    이상 탐지 장치.
  6. 제3 항에 있어서,
    상기 수리 분석부는,
    상기 검사 대상 장비의 상기 이상 공정 단계에서의 이상 점수와, 상기 검사 대상 장비의 수리 이후 상기 검사 대상 장비의 제1 공정 단계에 대한 이상 점수를 이용하여, 상기 검사 대상 장비에 대한 수리 완성도를 결정하되,
    상기 제1 공정 단계는 상기 이상 공정 단계와 대응되는,
    이상 탐지 장치.
  7. 제1 항에 있어서,
    상기 제1 오토인코더는 상기 데이터베이스부에 저장된 상기 동작 데이터셋 중 정상 동작으로 레이블된 정상동작 데이터셋을 기초로 미리 학습되는,
    이상 탐지 장치.
  8. 제1 항에 있어서,
    상기 이상 판별부는 상기 검사 대상 장비의 이상 점수값을 기초로, 상기 검사 대상 장비의 이상 동작 여부를 결정하는,
    이상 탐지 장치.
  9. 제8 항에 있어서,
    상기 이상 판별부는 상기 데이터베이스부에 저장된 상기 동작 데이터셋 중 정상 동작으로 레이블된 정상 동작 데이터셋과, 상기 동작 데이터셋 중 이상 동작으로 레이블된 이상 동작 데이터셋을 기초로 미리 학습되되,
    상기 이상 동작 데이터셋은 상기 정상 동작 데이터셋을 이용하여 생성되는,
    이상 탐지 장치.
  10. 제1 항에 있어서,
    상기 제1 오토인코더는,
    입력 노드에 인가된 데이터를 압축시켜 입력 데이터를 축소시키는 인코더 신경망과,
    상기 인코더 신경망에서 축소된 데이터를 상기 입력 노드에 인가된 입력 데이터와 동일한 크기로 변환하는 디코더 신경망과,
    상기 인코더 신경망 및 상기 디코더 신경망 사이에 배치되는 중간 레이어를 포함하는,
    이상 탐지 장치.
KR1020220098999A 2022-02-21 2022-08-09 수리 파트 결정 기능 및 수리 완성도 평가 기능을 포함하는 이상 탐지 장치 KR102611403B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20220021949 2022-02-21
KR1020220021949 2022-02-21

Publications (2)

Publication Number Publication Date
KR20230126626A KR20230126626A (ko) 2023-08-30
KR102611403B1 true KR102611403B1 (ko) 2023-12-08

Family

ID=87846363

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220098999A KR102611403B1 (ko) 2022-02-21 2022-08-09 수리 파트 결정 기능 및 수리 완성도 평가 기능을 포함하는 이상 탐지 장치

Country Status (1)

Country Link
KR (1) KR102611403B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013191185A (ja) * 2012-03-15 2013-09-26 Mitsubishi Electric Corp 異変検知装置
JP2018138327A (ja) * 2017-02-24 2018-09-06 ファナック株式会社 工具状態推定装置及び工作機械
JP2020191050A (ja) 2019-05-24 2020-11-26 Kyb株式会社 異常検知装置及び異常検知方法
JP2021053772A (ja) * 2019-10-01 2021-04-08 株式会社日立製作所 工作機械のツール摩耗診断装置
KR102271740B1 (ko) 2020-09-11 2021-07-02 주식회사 뉴로클 이상 탐지 방법 및 이를 위한 장치
JP2021143884A (ja) 2020-03-11 2021-09-24 株式会社Screenホールディングス 検査装置、検査方法、プログラム、学習装置、学習方法、および学習済みデータセット
JP2021157303A (ja) 2020-03-25 2021-10-07 東京エレクトロン株式会社 異常検出装置及び異常検出方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210141060A (ko) * 2020-05-15 2021-11-23 에스케이하이닉스 주식회사 머신러닝 기반의 이미지 이상 탐지 시스템

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013191185A (ja) * 2012-03-15 2013-09-26 Mitsubishi Electric Corp 異変検知装置
JP2018138327A (ja) * 2017-02-24 2018-09-06 ファナック株式会社 工具状態推定装置及び工作機械
JP2020191050A (ja) 2019-05-24 2020-11-26 Kyb株式会社 異常検知装置及び異常検知方法
JP2021053772A (ja) * 2019-10-01 2021-04-08 株式会社日立製作所 工作機械のツール摩耗診断装置
JP2021143884A (ja) 2020-03-11 2021-09-24 株式会社Screenホールディングス 検査装置、検査方法、プログラム、学習装置、学習方法、および学習済みデータセット
JP2021157303A (ja) 2020-03-25 2021-10-07 東京エレクトロン株式会社 異常検出装置及び異常検出方法
KR102271740B1 (ko) 2020-09-11 2021-07-02 주식회사 뉴로클 이상 탐지 방법 및 이를 위한 장치

Also Published As

Publication number Publication date
KR20230126626A (ko) 2023-08-30

Similar Documents

Publication Publication Date Title
CN111079646A (zh) 基于深度学习的弱监督视频时序动作定位的方法及***
CN115688035A (zh) 一种基于自监督学习的时序电力数据异常检测方法
US20230085991A1 (en) Anomaly detection and filtering of time-series data
KR20210107458A (ko) 모델의 성능 테스트를 위한 컴퓨터 프로그램
KR102469871B1 (ko) 반복 사이클을 보유한 기계장비에 대한 이상 탐지 장치
Jian et al. Faulty data detection and classification for bridge structural health monitoring via statistical and deep‐learning approach
CN110851654A (zh) 基于张量化数据降维的工业设备故障检测分类方法
CN116934304A (zh) 智能配电房设备运行维护管理***及其方法
CN115587335A (zh) 异常值检测模型的训练方法、异常值检测方法及***
Liu et al. Infrared image combined with cnn based fault diagnosis for rotating machinery
CN117349583A (zh) 用于低温液体储罐的智能检测方法及***
Xu et al. Global attention mechanism based deep learning for remaining useful life prediction of aero-engine
CN117155706B (zh) 网络异常行为检测方法及其***
KR102611403B1 (ko) 수리 파트 결정 기능 및 수리 완성도 평가 기능을 포함하는 이상 탐지 장치
CN116402777B (zh) 基于机器视觉的电力设备检测方法及***
Martinez et al. Novelty detection with deep learning
KR102608977B1 (ko) 전처리된 모션 이미지를 이용한 이상 탐지 장치
KR102557850B1 (ko) 실시간 모션 센싱 데이터를 이용한 이상 탐지 장치
Manju et al. Early action prediction using 3DCNN with LSTM and bidirectional LSTM
JP7006724B2 (ja) 分類装置、分類方法、及び、プログラム
KR20230120183A (ko) 이상동작 데이터 생성을 이용한 이상 탐지 장치
CN116484513A (zh) 基于多级抽象时间特征融合的滚动轴承故障诊断方法
CN116861962A (zh) 一种数据处理方法及装置
KR102611399B1 (ko) 1차원 오토인코더를 이용한 이상 탐지 장치
CN113887363A (zh) 基于序列识别的视频异常事件检测方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant