KR101802096B1 - 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법 - Google Patents

반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법 Download PDF

Info

Publication number
KR101802096B1
KR101802096B1 KR1020160161632A KR20160161632A KR101802096B1 KR 101802096 B1 KR101802096 B1 KR 101802096B1 KR 1020160161632 A KR1020160161632 A KR 1020160161632A KR 20160161632 A KR20160161632 A KR 20160161632A KR 101802096 B1 KR101802096 B1 KR 101802096B1
Authority
KR
South Korea
Prior art keywords
sensor data
sensor
diagnosing
variable
data
Prior art date
Application number
KR1020160161632A
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 연세대학교 산학협력단
Priority to KR1020160161632A priority Critical patent/KR101802096B1/ko
Application granted granted Critical
Publication of KR101802096B1 publication Critical patent/KR101802096B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • H01L22/30Structural arrangements specially adapted for testing or measuring during manufacture or treatment, or specially adapted for reliability measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/95Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
    • G01N21/9501Semiconductor wafers
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • H01L22/20Sequence of activities consisting of a plurality of measurements, corrections, marking or sorting steps

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

본 발명은 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치 및 방법을 개시한다. 본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 센서 데이터의 입력층(input layer)에서, 수용 영역(receptive field)을 시간축에서만 순차적으로 이동시키면서 로컬 특징(local feature)들을 수집하는 로컬 특징 수집부; 상기 수집된 로컬 특징(local feature)들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층(convolution layer)을 생성하는 1차원의 특징 맵 추출부; 및 상기 생성된 콘볼루션층(convolution layer)에 기초하여 상기 센서 데이터를 분류하는 데이터 분류부를 포함하고, 상기 수용 영역(receptive field)의 일축은 상기 입력층(input layer)의 변수축에 상응하는 크기를 갖는다.

Description

반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법{APPARATUS AND METHOD FOR CLASSIFYING AND DIAGNOSING FAULT IN SEMICONDUCTOR PROCESSING}
본 발명은 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법에 관한 것으로, 보다 상세하게, 수용 영역(receptive field)을 센서 데이터 스트림(sensor data stream)의 시간축 상에서만 순차적으로 이동시키면서, 로컬 특징을 수집하고, 로컬 특징으로부터 1차원의 특징 맵을 추출하여 콘볼루션(convolution) 층을 생성함으로써, 콘볼루션층에 기초하여 센서 데이터를 분류하고, 센서 데이터 상의 불량을 진단하는 장치 및 방법에 관한 것이다.
반도체 공정에서 불량 탐지 및 분류(fault detection and classification, FDC)는 기계학습이나 데이터 마이닝 기법을 이용해 각 웨이퍼의 공정 상황을 반영하는 센서 데이터 스트림을 기반으로 공정 결과를 판단하는 모델을 수립할 수 있다.
정확한 불량 탐지 및 분류 모델을 수립하는 것은 웨이퍼(wafer) 제조 공정 중 발생하는 불량을 조기에 발견하여 불량을 포함한 불량 제품이 후속 공정으로 유출되는 것을 방지하고, 공정에 대한 지속적인 모니터링을 통해 수율 향상에 기여할 수 있다. 따라서, 반도체 분야에서는 효과적인 불량 탐지 및 분류 모델 수립에 대한 중요성의 인식 및 수요가 꾸준히 존재해왔다.
기존 콘볼루션 신경 네트워크(convolutional neural network, CNN)는 입력층(input layer)에 분류할 데이터 또는 이미지를 입력받고, 콘볼루션층(convolution layer)에 입력 이미지에 대한 로컬 특징을 찾아 특징 맵으로 겹겹이 저장한다.
기존 콘볼루션 신경 네트워크의 수용 영역(receptive field)은 입력 이미지상에서 가로축과 세로축으로 이동해가며 콘볼루션 연산을 수행한다.
즉, 기존 콘볼루션 신경 네트워크에 따른 특징 맵 생성 방법은 수용 영역을 입력 이미지보다 작은 임의의 크기로 설정하여, 입력층을 이동하면서, 로컬 특징을 추출하여 특징 맵을 생성하고, 특징 맵에서 가중치(weight) 정방행렬로, 특징 맵의 각 노드(node)들이 입력 데이터와 연결된 영역을 나타낸다.
또한, 특징 맵에 추출된 특징 정보들을 입력으로 전달받는 완전 접속 층(fully-connected layer)에서는 특징 맵을 구성하는 모든 노드들과 개별적으로 연결관계를 맺는 다층(multi-layer) 퍼셉트론(perceptron)의 히든층(hidden layer)이 위치한다.
마지막으로, 출력 층(output layer)은 분류하게 될 class의 수만큼의 노드들로 구성되어 class에 대한 점수를 출력하여 출력점수가 높은 클래스를 분류한다.
반도체 공정에서 수집되는 센서 데이터 스트림은 공정 진행 시간과 센서 변수의 종류를 두 축으로 하는 다변량 시계열(multivariate-time series) 데이터로 2차원 행렬의 데이터 구조를 갖기 때문에 콘볼루션 신경 네트워크의 수용 영역을 활용한 특징 맵을 추출할 수 있다.
그러나, 기존 콘볼루션 신경 네트워크의 수용 영역을 이용한 데이터 분류는 이미지와 센서 데이터 스트림에 적용되는 위치(locality) 개념은 차이가 있어, 기존 콘볼루션 신경 네트워크의 수용 영역을 센서 데이터 스트림에 적용하는데 문제점이 있다.
이미지의 경우, 픽셀간의 위치가 멀어질수록 데이터의 연관성(relationship)이 점차 감소하는 특성으로 인해, 특정 픽셀의 이웃은 그 픽셀을 중심으로 하는 정사각형의 수용 영역이 정의되고, 이용된다.
반면에, 센서 데이터 스트림의 경우, 센서 변수축에서의 거리가 연관성의 감소를 나타내지 않는다.
예를 들어, 제1 센서와 제2 센서에 의해 저장된 관측 값의 연관성이, 제1 센서와 제3 센서 간의 연관성보다 크다고 볼 수 없다.
만약 이를 무시하고 수용 영역의 크기를 임의로 설정한다면, 특징을 추출하는 과정에서 수용 영역의 크기보다 먼 거리에 위치한 센서 변수들간의 연관성을 고려하지 못하는 상황이 발생한다.
다시 말해, 다변량 시계열 데이터 구조를 갖는 센서 데이터 스트림에서 센서 변수축에 대한 거리는 무의미할 수 있다.
따라서, 정사각형 및 작은 크기의 수용 영역을 센서 변수 축으로 이동시키는 기존의 콘볼루션 신경 네트워크의 특징 추출 방식을 다변량 시계열 데이터에 그대로 적용할 경우, 해석이 불가능한 특징 맵을 생성할 수 있다.
그러므로, 모든 센서 변수들을 동시에 반영하여 로컬 특징을 생성할 수 있도록 제조 공정에서 불량 탐지 및 분류에 특화된 콘볼루션 신경 네트워크(FDC-CNN)에 대한 연구가 요구된다.
한국등록특허 제10-1348817호, "인공신경망을 이용한 불량 계측값 추정 방법 및 시스템" 한국등록특허 제10-1040883호, "전산지능을 이용한 플라즈마 장비의 감시 및 제어 방법" 미국공개특허 제6650422호, "Scatterometry techniques to ascertain asymmetry profile of features and generate a feedback or feedforward process control data associated therewith" 미국공개특허 제20160163035호, "Automatic Defect Classification Without Sampling and Feature Selection"
본 발명은 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법을 제공하고자 한다.
본 발명은 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치 및 방법을 제공하고자 한다.
본 발명은 수용 영역을 다변량 시계열 데이터 구조를 갖는 센서 데이터의 시간축에서만 순차적으로 이동시키면서, 로컬 특징을 수집하는 장치 및 방법을 제공하고자 한다.
본 발명은 로컬 특징으로부터 1차원의 특징 맵들을 추출하여 콘볼루션층을 생성하고, 콘볼루션층에 기초하여 센서 데이터를 분류하는 장치 및 방법을 제공하고자 한다.
본 발명은 센서 데이터로부터 추출된 1차원의 특징 맵들을 풀링 영역을 이용하여 시간축으로 축소함으로써 풀링층을 생성하는 장치 및 방법을 제공하고자 한다.
본 발명은 콘볼루션층과 풀링층을 누적하여 전역 특징을 학습하는 장치 및 방법을 제공하고자 한다.
본 발명은 센서 데이터의 로컬 특징들을 시간축을 따라 1차원 1차원의 특징 맵들로 콘볼루션층에 추출하여 콘볼루션층을 생성하는 장치 및 방법을 제공하고자 한다.
본 발명은 콘볼루션층에 기초하여 분류된 센서 데이터에 기초하여 센서 데이터의 불량을 진단하는 장치 및 방법을 제공하고자 한다.
본 발명은 각 수용 영역 별로 센서 변수의 기여도를 계산하는 장치 및 방법을 제공하고자 한다.
본 발명은 각 수용 영역의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 센서 변수의 기여도를 계산하는 장치 및 방법을 제공하고자 한다.
본 발명은 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 가중치 분포 상의 양의 축으로 이상치를 나타내는 경우, 어느 하나 이상의 센서 변수의 기여도를 기준값 이상으로 계산하는 장치 및 방법을 제공하고자 한다.
본 발명은 정상 학습 데이터의 1차원의 특징 맵의 평균과 분산 정보를 활용하여 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된 1차원의 특징 맵들을 생성하는 장치 및 방법을 제공하고자 한다.
본 발명은 센서 데이터 구조의 원천 데이터에 대해 시간축으로 서로 다른 제1 클래스 및 제2 클래스 간에 정규화된 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 판단하고, 다르게 형성된 구간에서 높은 센서 변수의 기여도를 갖는 센서 변수를 이용하여 원천 데이터에서 불량을 진단하는 장치 및 방법을 제공하고자 한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 센서 데이터의 입력층(input layer)에서, 수용 영역(receptive field)을 시간축에서만 순차적으로 이동시키면서 로컬 특징(local feature)들을 수집하는 로컬 특징 수집부; 상기 수집된 로컬 특징(local feature)들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층(convolution layer)을 생성하는 1차원의 특징 맵 추출부; 및 상기 생성된 콘볼루션층(convolution layer)에 기초하여 상기 센서 데이터를 분류하는 데이터 분류부를 포함하고, 상기 수용 영역(receptive field)의 일축은 상기 입력층(input layer)의 변수축에 상응하는 크기를 갖는다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 1차원의 특징 맵들을 풀링 영역(pooling field)을 이용하여 시간축으로 축소하여 풀링층(pooling layer)을 생성한다.
본 발명의 일실시예에 따르면 상기 콘볼루션층(convolution layer)과 상기 풀링층(pooling layer)을 누적하여 전역 특징(global feature)들을 학습한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 상기 1차원의 특징 맵 추출부는, 상기 로컬 특징(local feature)들을 시간축을 따라 1차원 1차원의 특징 맵들로 상기 콘볼루션층(convolution layer)에 추출한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 분류된 센서 데이터에 기초하여 센서 데이터의 불량을 진단하는 불량 진단부를 더 포함한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 각 수용 영역(receptive field) 별로 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 상기 각 수용 영역(receptive field)의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 상기 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하고, 상기 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 상기 가중치 분포 상의 양의 축으로 이상치(outlier)을 나타내는 경우, 어느 하나 이상의 센서 변수의 기여도(Contribution Level of Variable, CLV)를 기준값 이상으로 계산한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용하여 시간축으로 서로 다른 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된(normalized) 1차원의 특징 맵들을 생성한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 장치는 원천(raw) 데이터에 대해 상기 제1 클래스 및 상기 제2 클래스 간에 정규화된(normalized) 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 계산하고, 상기 다르게 형성된 구간에서 센서 변수의 기여도(Contribution Level of Variable, CLV)에 기초하여 불량을 진단한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 방법은 센서 데이터의 입력층(input layer)에서, 수용 영역(receptive field)을 시간축에서만 순차적으로 이동시키면서 로컬 특징(local feature)들을 수집하는 단계; 상기 수집된 로컬 특징(local feature)들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층(convolution layer)을 생성하는 단계; 및 상기 생성된 콘볼루션층(convolution layer)에 기초하여 상기 센서 데이터를 분류하는 단계를 포함하고, 상기 수용 영역(receptive field)의 일축은 상기 입력층(input layer)의 변수축에 상응하는 크기를 갖는다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 방법은 상기 분류된 센서 데이터에 기초하여 상기 센서 데이터의 불량을 진단하는 단계를 더 포함한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 방법은 각 수용 영역(receptive field) 별로 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하는 단계를 포함한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 방법은 상기 각 수용 영역(receptive field)의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 상기 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하는 단계; 및 상기 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 상기 가중치 분포 상의 양의 축으로 이상치(outlier)을 나타내는 경우, 어느 하나 이상의 센서 변수의 기여도(Contribution Level of Variable, CLV)를 기준값 이상으로 계산하는 단계를 포함한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 방법은 정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용하여 시간축으로 서로 다른 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된(normalized) 1차원의 특징 맵들을 생성하는 단계를 포함한다.
본 발명의 일실시예에 따르면 반도체 공정에서 센서 데이터를 분류 및 진단하는 방법은 원천(raw) 데이터에 대해 상기 제1 클래스 및 상기 제2 클래스 간에 정규화된(normalized) 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 계산하고, 상기 다르게 형성된 구간에서 센서 변수의 기여도(Contribution Level of Variable, CLV)에 기초하여 불량을 진단하는 단계를 포함한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 수용 영역을 센서 데이터의 시간축에서만 순차적으로 이동시키면서, 센서 데이터의 로컬 특징을 추출할 수 있다.
또한, 센서 데이터를 분류 및 진단하는 장치는 센서 데이터의 변수축의 크기와 동일한 크기의 일축을 갖는 수용 영역을 통하여 특정 시간 변수에서 모든 센서 변수들이 반영된 로컬 특징을 추출할 수 있다.
또한, 센서 데이터를 분류 및 진단하는 장치는 센서 데이터의 다변량 시계열 데이터의 구조를 유지하면서, 특징 추출부의 변수들간의 상관관계를 모델링함으로써 학습 속도 및 분류 정확도를 높일 수 있다.
또한, 센서 데이터를 분류 및 진단하는 장치는 수용 영역의 가중치 정보를 활용하여 선택한 주요 변수를 불량 진단에 활용할 수 있다.
또한, 센서 데이터를 분류 및 진단하는 장치는 공정 기간 중에 웨이퍼 상에서 불량이 발생한 시간 정보를 제공할 수 있어 공정 모니터링에 유용할 수 있다.
도 1은 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치의 블록도를 도시한 것이다.
도 2는 본 발명의 일실시예에 따른 콘볼루션층에서 센서 데이터로부터 1차원의 특징 맵을 추출하는 구조를 도시한 것이다.
도 3은 본 발명의 일실시예에 따른 센서 데이터를 분류하는 동작의 흐름도이다.
도 4는 본 발명의 다른 실시 예에 따른 센서 데이터를 분류하는 동작의 흐름도이다.
도 5는 본 발명의 일실시예에 따른 센서 데이터의 불량을 진단하는 동작의 흐름도이다.
도 6은 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치의 학습 속도와 다른 데이터 학습 장치들의 속도를 비교하기 위한 그래프이다.
도 7은 본 발명의 일실시예에 따른 불량 검출 결과를 도시한 것이다.
도 8은 본 발명의 일실시예에 따른 다양한 불량 검출 결과들을 도시한 것이다.
이하, 본 문서의 다양한 실시 예들이 첨부된 도면을 참조하여 기재된다.
실시 예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다.
하기에서 다양한 실시 예들을 설명에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
그리고 후술되는 용어들은 다양한 실시 예들에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다.
본 문서에서, "A 또는 B" 또는 "A 및/또는 B 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다.
"제1," "제2," "첫째," 또는 "둘째," 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 명세서에서, "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다.
어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다.
예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 application processor)를 의미할 수 있다.
또한, '또는' 이라는 용어는 배타적 논리합 'exclusive or' 이기보다는 포함적인 논리합 'inclusive or' 를 의미한다.
즉, 달리 언급되지 않는 한 또는 문맥으로부터 명확하지 않는 한, 'x가 a 또는 b를 이용한다' 라는 표현은 포함적인 자연 순열들(natural inclusive permutations) 중 어느 하나를 의미한다.
도 1은 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치의 블록도를 도시한 것이다.
구체적으로, 도 1은 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치의 구성 요소들을 예시한다.
이하 사용되는 '..부', '..기' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는, 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1을 참고하면, 센서 데이터를 분류 및 진단하는 장치(100)는 로컬 특징 수집부(110), 1차원의 특징 맵 추출부(120), 데이터 분류부(130)를 포함할 수 있다.
센서 데이터를 분류 및 진단하는 장치는 프로세서에 의하여 제어될 수 있다.
프로세서는 운영 체제 또는 응용 프로그램을 구동하여 제어부(230)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다.
또한, 프로세서는 SOC(system on chip)로 구현될 수 있다. 제어부(230)는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
본 발명의 일실시예에 따르면 로컬 특징 수집부(110)는 센서 데이터의 입력층(input layer)에서 수용 영역(receptive field)을 시간축에서만 순차적으로 이동시키면서 로컬 특징(local feature)들을 수집할 수 있다.
본 발명의 일실시예에 따르면 로컬 특징 수집부(110)는 수용 영역을 센서 데이터를 포함하는 입력층의 시간축을 따라 순차적으로 이동시키면서, 로컬 특징을 수집할 수 있다.
예를 들어, 센서 데이터는 센서 데이터 스트림 및 다변량 시계열 데이터를 포함할 수 있다.
본 발명의 일실시예에 따르면 로컬 특징 수집부(110)는 수용 영역을 통하여 모든 센서 변수들의 센서 데이터에 해당하는 로컬 특징을 동시에 수집할 수 있다.
본 발명의 일실시예에 따르면 수용 영역의 일축은 입력층의 변수축에 상응하는 크기를 가질 수 있다.
본 발명의 일실시예에 따르면 로컬 특징 수집부(110)는 다수의 센서들에 의하여 수집된 센서 데이터를 포함하는 입력층에서 수용 영역을 시간축으로만 순차적으로 이동시키면서 센서 데이터의 로컬 특징들을 수집할 수 있다.
본 발명의 일실시예에 따르면 로컬 특징 수집부(110)는 다수의 센서들에 의하여 수집된 센서 데이터에서 모든 센서 변수들의 조합을 고려하여 센서 데이터로부터 로컬 특징을 수집할 수 있다.
본 발명의 일실시예에 따르면 1차원의 특징 맵 추출부(120)는 로컬 특징들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층을 생성할 수 있다.
본 발명의 일실시예에 따르면 1차원의 특징 맵 추출부(120)는 로컬 특징들을 센서 데이터의 시간축을 따라 1차원 신호들로 콘볼루션층에 추출할 수 있다.
본 발명의 일실시예에 따르면 1차원의 특징 맵 추출부(120)는 로컬 특징들을 센서 데이터의 시간축을 따라 1차원 신호들로 콘볼루션층으로 추출한 후, 시간축을 따라 구성된 1차원 신호들에 해당하는 노드들을 포함하는 1차원의 특징 맵(feature map)을 생성할 수 있다.
본 발명의 일실시예에 따르면 데이터 분류부(130)는 콘볼루션층에 기초하여 센서 데이터를 분류할 수 있다.
본 발명의 일실시예에 따르면 데이터 분류부(130)는 콘볼루션층에 추출된 1차원의 특징 맵들을 풀링 영역을 이용하여 시간축으로 축소 또는 압축된 풀링층을 생성할 수 있다.
본 발명의 일실시예에 따르면 데이터 분류부(130)는 콘볼루션층의 가로축은 고려하지 않고, 세로축만을 축소한 풀링층을 생성할 수 있다.
본 발명의 일실시예에 따르면 데이터 분류부(130)는 센서 데이터에 대하여 생성되는 콘볼루션층과 풀링층을 누적하여, 전체 특징을 학습할 수 있다.
다시 말해, 데이터 분류부(130)는 콘볼루션층과 풀링층을 다수 누적할 경우, 네트워크 층이 증가함에 따라, 콘볼루션층 측면에서 비선형성(non-linearity)이 점차 증가하는 복잡한 형태의 특징들을 추출할 수 있다.
또한, 데이터 분류부(130)는 풀링층 측면에서는 신호의 해상도(resolution)을 감소시켜 최종적으로는 분류에 유의한 전역 특징을 자동으로 학습할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치(100)는 불량 진단부(140)를 포함할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 분류된 센서 데이터에 기초하여 센서 데이터의 불량을 진단할 수 있다. 예를 들어, 분류된 센서 데이터는 분류된 적어도 하나 이상의 로컬 특징들을 포함할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 제1 콘볼루션층의 수용 영역과 1차원의 특징 맵의 정보를 동시에 고려하여 센서 데이터에서 분류에 주요하게(mainly) 사용된 센서 변수와 시간 정보를 확인할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 각 수용 영역의 긍정 가중치 평균, 전체 센서 변수의 수 및 가중치 분포의 편차에 기초하여 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 하기 수학식 1을 이용하여 센서 변수의 기여도를 계산할 수 있다.
[수학식 1]
Figure 112016117564757-pat00001
수학식 1에 따르면 CLVj는 센서 변수 j에 해당하는 센서 변수의 기여도를 나타낼 수 있고, ReLU는 긍정 가중치(positive weights)의 정보에 의거한 주요 변수를 선택하기 위해 이용되는 함수를 나타낼 수 있고,
Figure 112016117564757-pat00002
는 수용 영역의 긍정 가중치 평균을 나타낼 수 있고,
Figure 112016117564757-pat00003
는 긍정 가중치 평균의 중간값을 나타낼 수 있고, dc는 각 센서 변수 별 수용 영역의 긍정 가중치 평균값과 중앙값의 차이로 가중치 분산의 편차를 나타낼 수 있고,
Figure 112016117564757-pat00004
는 전체 센서 변수 개수의 루트값을 나타낼 수 있다.
수학식 1에 따르면 전체 센서 변수 개수에 루트값을 적용함으로써, 변수의 수가 많을수록 높은 센서 변수의 기여도를 갖는 변수의 수가 증가하는 것을 방지할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 수학식 1을 이용한 학습 과정에서 어떤 수용 영역에서 긍정 센서 변수의 기여도를 갖는 센서 변수가 하나만 존재할 경우, 해당 수용 영역의 단일의 주요 변수를 선택하였다고 판단할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 수학식 1을 이용한 학습 과정에서 어떤 수용 영역에서 긍정 센서 변수의 기여도를 갖는 센서 변수가 다수가 선택될 경우, 분류에 유효한 여러 센서 변수들의 조합을 계산할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 각 수용 영역의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 상기 센서 변수의 기여도를 계산할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 가중치 분포 상의 양의 축으로 이상치(outlier)을 나타내는 경우, 해당하는 어느 하나 이상의 센서 변수의 기여도를 기준값 이상으로 계산할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용하여 시간축으로 서로 다른 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된 1차원의 특징 맵들을 생성할 수 있다.
즉, 불량 진단부(140)는 이전에 불량 없이 학습된 데이터에 해당하는 1차원의 특징 맵의 가중치 평균 정보 및 분산 정보를 이용하여 불량 진단 대상이 되는 클래스들 각각에 대한 정규화된 1차원의 특징 맵들을 생성할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 하기 수학식 2를 이용하여 각 클래스 별 1차원의 특징 맵을 정규화할 수 있다.
[수학식 2]
Figure 112016117564757-pat00005
수학식 2에 따르면
Figure 112016117564757-pat00006
클래스 A를 정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용해 요소(element) 별로 정규화한 1차원의 특징 맵의 i번째 요소를 나타낼 수 있고,
Figure 112016117564757-pat00007
는 1차원의 특징 맵 y에 해당하는 클래스의 i번째 요소를 나타낼 수 있고,
Figure 112016117564757-pat00008
는 사용자 지정 파라미터를 나타낼 수 있고,
Figure 112016117564757-pat00009
는 원본 시그널에서 이상치(outlier)들이 제거된 시그널로 나타낼 수 있고, z는 각각의 클래스 별로 생성될 수 있고, 수용 영역에서 정의된 로컬 특징이 각 클래스를 다른 클래스로 구분을 위한 차이를 나타낼 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 정상과 불량 클래스 간의 차이가 존재하는 정규화된 1차원의 특징 맵을 이용하여 원 데이터 상에서 다른 패턴을 갖는 공정 시간을 계산할 수 있다.
본 발명의 일실시예에 따르면 불량 진단부(140)는 센서 데이터 구조의 원천 데이터에 대해 시간축으로 서로 다른 제1 클래스 및 제2 클래스 간에 정규화된 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 판단하고, 다르게 형성된 구간에서 높은 센서 변수의 기여도를 갖는 센서 변수를 불량으로 진단할 수 있다.
즉, 불량 진단부(140)는 다변량 시계열 구조의 원천 데이터에 대해, 시간축으로는 서로 다른 두 클래스 데이터에 대해 정규화된 1차원의 특징 맵의 패턴이 다르게 형성된 구간과, 변수축으로는 높은 센서 변수의 기여도를 갖는 주요 변수들을 이용하여 두 클래스들을 구분할 수 있다.
따라서, 불량 진단부(140)는 정규화된 1차원의 특징 맵들에서 정상과 다른 형태의 패턴을 갖는 구간을 탐색하고, 높은 센서 변수의 기여도 값을 갖는 센서 변수를 선택하면, 이를 원천 데이터에서 확인하여 불량을 진단할 수 있다.
도 2는 본 발명의 일실시예에 따른 콘볼루션층에서 센서 데이터로부터 1차원의 특징 맵을 추출하는 구조를 도시한 것이다.
구체적으로, 도 2는 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하기 위한 장치에 의해 센서 데이터를 분류하는 구성을 계층 구조를 통하여 예시한다.
도 2를 참고하면, 센서 데이터를 분류 및 진단하기 위한 구조는 입력층(210), 수용 영역(220), 콘볼루션층(230), 풀링 영역(240) 및 풀링층(250)을 포함한다.
입력층(210)은 다변량 시계열 구조를 갖고, 특정시간 동안 다수의 센서들에 의하여 수집된 센서 데이터를 수신한다.
예를 들어, 센서 데이터는 반도체 공정에서 어느 하나 이상의 웨이퍼의 센서 데이터 스트림을 포함할 수 있다.
본 발명의 일실시예에 따르면 세로축의 시간 변수(212)는 상에서 하로 증가될 수 있고, 가로축의 센서 변수(214)는 좌에서 우로 이동될수록 증가될 수 있다.
또한, 세로축의 시간 변수(212)는 하에서 상으로 증가될 수 있고, 가로축의 센서 변수(214)는 우에서 좌로 이동될수록 증가될 수 있다.
본 발명의 일실시예에 따르면 수용 영역(220)은 입력층(210)의 세로축을 따라 순차적으로 이동하면서, 입력층(210)에 수신된 센서 데이터의 로컬 특징을 수집할 수 있다.
본 발명의 일실시예에 따르면 콘볼루션층(230)는 수용 영역(220)을 통하여 수집된 로컬 특징에 해당하는 1차원의 특징 맵으로 구성될 수 있다.
예를 들어, 콘볼루션층(230)에 포함되는 1차원의 특징 맵은 노드로 구성될 수 있다.
본 발명의 일실시예에 따른 콘볼루션층(230)은 하기 수학식 3에 기초하여 생성될 수 있다.
[수학식 3]
Figure 112016117564757-pat00010
수학식 3에 따르면 yi는 i번째 노트의 출력값을 나타낼 수 있고, Fr은 세로축의 수용 영역의 크기를 나타낼 수 있고, Sr은 세로축의 보폭(stride)를 나타낼 수 있고, K는 입력층의 세로축을 나타낼 수 있고, J는 입력층의 가로축을 나타낼 수 있다.
본 발명의 일실시예에 따른 콘볼루션층(230)은 1차원의 특징 맵들로 표현된다.
본 발명의 일실시예에 따른 풀링 영역(240)은 콘볼루션층(230)에 각각의 1차원의 특징 맵 별로 시간축에 대하여 차원 축소를 수행할 수 있다.
본 발명의 일실시예에 따르면 풀링층(250)은 풀링 영역(240)에의하여 콘볼루션층(230)에 각각의 1차원의 특징 맵 별로 시간축에 대하여 차원 축소됨으로써 생성될 수 있다.
예를 들어, 콘볼루션층(230)과 풀링층(250)이 여러 층 쌓이게 될 경우, 네트워크의 층이 증가함에 따라, 콘볼루션층(230)의 비선형성이 점차 증가하여 복잡한 형태의 특징들이 추출되나, 풀링층(250)의 신호의 해상도가 감소하여 분류에 유의한 전역 특징이 자동으로 학습될 수 있다.
도 3은 본 발명의 일실시예에 따른 센서 데이터를 분류하는 동작의 흐름도이다.
구체적으로, 도 3은 센서 데이터를 분류 및 진단하는 장치가 센서 데이터를 분류하는 동작을 예시한다.
도 3을 참고하면, 단계 301에서 센서 데이터를 분류 및 진단하는 장치는 수용 영역을 센서 데이터의 시간축에서만 순차적으로 이동시키면서 로컬 특징들을 수집한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 입력층에 센서 데이터를 수신하고, 센서 데이터의 입력층에서 수용 영역을 시간축에서만 순차적으로 이동시키면서 로컬 특징들을 수집할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 일축을 센서 데이터의 변수축에 상응하는 크기를 갖는 수용 영역을 통하여 특정 시간 변수에서 모든 센서 변수들이 반영된 로컬 특징을 수집할 수 있다.
단계 303에서 센서 데이터를 분류 및 진단하는 장치는 로컬 특징들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층을 생성할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 수용 영역을 통하여 수집된 센서 데이터의 로컬 특징으로부터 1차원의 특징 맵을 추출하여 1차원의 특징 맵들로 구성된 콘볼루션층을 생성할 수 있다.
단계 305에서 센서 데이터를 분류 및 진단하는 장치는 콘볼루션층에 기초하여 센서 데이터를 분류할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 콘볼루션층을 참고하여 특정 센서 변수들과 특정 시간 변수에 해당하는 1차원의 특징 맵을 이용하여 다수의 센서들로부터 수집된 센서 데이터를 분류할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 콘볼루션층을 참고하여 모든 센서 변수들의 연관성을 고려한 특정 시간 변수에 해당하는 1차원의 특징 맵을 이용하여 다수의 센서들로부터 수집된 센서 데이터를 분류할 수 있다.
도 4는 본 발명의 다른 실시 예에 따른 센서 데이터를 분류하는 동작의 흐름도이다.
구체적으로, 도 4는 센서 데이터를 분류 및 진단하는 장치가 센서 데이터를 분류하는 동작을 보다 구체적으로 예시한다.
도 4를 참고하면, 단계 401에서 센서 데이터를 분류 및 진단하는 장치는 수용 영역을 센서 데이터의 시간축에서만 이동시키면서 로컬 특징들을 수집한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 다수의 센서들에 의하여 수집된 센서 데이터에 해당하는 입력층에서 수용 영역을 입력층의 시간축으로만 순차적으로 이동시키면서 센서 데이터의 로컬 특징들을 수집할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 다수의 센서들에 의하여 수집된 센서 데이터에서 모든 센서 변수들의 조합을 고려하여 수용 영역을 통하여 센서 데이터로부터 로컬 특징을 수집할 수 있다.
단계 403에서 센서 데이터를 분류 및 진단하는 장치는 로컬 특징들로부터 1차원의 특징 맵을 추출하여 콘볼루션층을 생성한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 로컬 특징들을 센서 데이터의 시간축을 따라 1차원 신호들로 콘볼루션층으로 추출한 후, 시간축을 따라 구성된 1차원 신호들에 해당하는 노드들을 포함하는 1차원의 특징 맵을 생성할 수 있다.
단계 405에서 센서 데이터를 분류 및 진단하는 장치는 풀링 영역을 이용하여 풀링층을 생성할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 콘볼루션층에 추출된 1차원의 특징 맵들을 풀링 영역을 이용하여 시간축으로 축소 또는 압축된 풀링층을 생성할 수 있다.
예를 들어, 센서 데이터를 분류 및 진단하는 장치는 콘볼루션층의 가로축은 고려하지 않고, 세로축만을 축소한 풀링층을 생성할 수 있다.
단계 407에서 센서 데이터를 분류 및 진단하는 장치는 콘볼루션층과 풀링 영역을 누적하여 센서 데이터를 분류한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 센서 데이터에 대하여 생성되는 콘볼루션층과 풀링층을 누적하여, 전체 특징을 학습할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치가 콘볼루션층과 풀링층을 다수 누적할 경우, 네트워크 층이 증가할 수 있다.
예를 들어, 네트워크층이 증가할 경우, 콘볼루션층 측면에서 비선형성이 점차 증가하는 복잡한 형태의 특징들이 추출되나, 센서 데이터를 분류 및 진단하는 장치는 풀링층 측면에서는 신호의 해상도(resolution)를 감소시켜 최종적으로는 분류에 유의한 전역 특징을 자동으로 학습할 수 있다.
도 5는 본 발명의 일실시예에 따른 센서 데이터의 불량을 진단하는 동작의 흐름도이다.
구체적으로 도 5는, 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치가 분류된 센서 데이터에 기초하여 센서 데이터에 포함된 불량을 진단하는 동작을 예시한다.
도 5를 참고하면, 단계 501에서 센서 데이터를 분류 및 진단하는 장치는 각 수용 영역 별로 센서 변수의 기여도를 계산한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 각 수용 영역의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 센서 변수의 기여도를 계산할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 가중치 분포 상의 양의 축으로 이상치를 나타내는 경우, 해당하는 어느 하나 이상의 센서 변수의 기여도를 기준값 이상으로 계산할 수 있다.
단계 503에서 센서 데이터를 분류 및 진단하는 장치는 각 클래스 별로 정규화된 1차원의 특징 맵들을 생성한다.
본 발명의 일실시예에 따르면 정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용하여 시간축으로 서로 다른 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된 1차원의 특징 맵들을 생성할 수 있다.
즉, 센서 데이터를 분류 및 진단하는 장치는 이전에 불량 없이 학습된 데이터에 해당하는 1차원의 특징 맵의 가중치 평균 정보 및 분산 정보를 이용하여 불량 진단 대상이 되는 클래스들 각각에 대한 정규화된 1차원의 특징 맵들을 생성할 수 있다.
단계 505에서 센서 데이터를 분류 및 진단하는 장치는 정규화된 특징신호들의 패턴 및 센서 변수의 기여도에 기초하여 불량을 진단한다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 정상과 불량 클래스 간의 차이가 존재하는 정규화된 1차원의 특징 맵을 이용하여 원 데이터 상에서 다른 패턴을 갖는 공정 시간을 계산할 수 있다.
본 발명의 일실시예에 따르면 센서 데이터를 분류 및 진단하는 장치는 원천(raw) 데이터에 대해 상기 제1 클래스 및 상기 제2 클래스 간에 정규화된(normalized) 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 계산하고, 상기 다르게 형성된 구간에서 센서 변수의 기여도에 기초하여 불량을 진단할 수 있다.
즉, 센서 데이터를 분류 및 진단하는 장치는 다변량 시계열 구조의 원천 데이터에 대해, 시간축으로는 서로 다른 두 클래스 데이터에 대해 정규화된 1차원의 특징 맵의 패턴이 다르게 형성된 구간과, 변수축으로는 높은 센서 변수의 기여도를 갖는 주요 변수들을 이용하여 두 클래스들을 구분할 수 있다.
따라서, 센서 데이터를 분류 및 진단하는 장치는 정규화된 1차원의 특징 맵들에서 정상과 다른 형태의 패턴을 갖는 구간을 탐색하고 높은 센서 변수의 기여도 값을 갖는 센서 변수를 이용하여 불량을 진단할 수 있다.
도 6은 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치의 학습 속도와 다른 데이터 학습 장치들의 속도를 비교하기 위한 그래프이다.
구체적으로, 도 6은 FDC-CNN(602), Standard CNN(604), Standard CNN drop (606), SAE(608), SdA(610) 및 ANN(612)의 손실함수 대비 시간을 나타내는 그래프를 통하여 각 학습 장치들의 학습 속도를 나타낸다.
도 6을 참고하면, 그래프의 세로축은 손실 함수(loss function)을 나타내고, 가로축은 시간(epoch)를 나타낸다. 예를 들어, 손실 함수는 softmax cross entropy 함수와 관련될 수 있다.
본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치는 FDC-CNN(602)를 포함한다.
Standard CNN(604), Standard CNN drop (606), SAE(608), SdA(610) 및 ANN(612)는 종래 기술에 따른 학습 장치들을 나타낸다.
도시된 그래프에 따르면 완전 연결 구조를 갖는 SAE(608), SdA(610) 및 ANN(612)의 경우 분류 성능은 우수하나, 학습과정에서 수집되는 정보들이 불량의 원인을 파악하는데 적절한 통찰력을 제공하지 못한다.
또한, SAE(608), SdA(610) 및 ANN(612)는 입력 값을 받아들이는 형태에서 신경 망 모델들이 데이터에 내재한 구조적 특징을 손실한다.
더하여, SAE(608), SdA(610) 및 ANN(612)는 히든층(hidden layer)에서 생성되는 새로운 특징들이 센서 변수들로부터 전체 공정 시간 동안 수집되는 관측 정보를 동시에 활용하기 때문에, 작은 규모의 신경망이라 하더라도 히든층의 정보를 해석하는 어려움이 존재하며, 학습시간이 상대적으로 오래 걸린다.
한편 Standard CNN(604) 및 Standard CNN drop(606)는 수용 영역에서 한번에 받아들이는 정보의 범위가 일부 센서 변수에 국한된다. 따라서 특징 추출하는 과정에서 모든 센서 변수의 조합을 고려하지 못하는 한계가 존재한다.
예를 들어, Standard CNN(604) 및 Standard CNN drop(606)는 센서 변수들이 데이터 구조상에서 멀리 위치한 경우, 이를 함께 고려하는 특징 맵을 생성하지 못하므로, 수용 영역의 크기를 늘리고, 패딩(padding)을 수행하여 수용 영역을 센서축으로 옮겨가며 로컬 특징을 추출하는 경우에도, 가중치 열이 특정 변수와 연관되지 않으므로, 변수 간의 중요성을 해석하기 어려우며, 학습시간이 상대적으로 오래 걸린다.
반면에, 본 발명에 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치는 수용 영역이 모든 변수 조합을 동시에 고려할 수 있게 설계되었을 뿐만 아니라, 각 가중치 열이 센서 변수와 일대일로 매칭되어 불량 탐지에서 각 센서 변수의 기여도를 측정하는데 이용될 수 있고, 모든 변수 조합을 동시에 고려하여, 연산량을 줄일 수 있어 학습 속도가 상대적으로 빠르다.
도 7은 본 발명의 일실시예에 따른 불량 검출 결과를 도시한 것이다.
구체적으로, 도 7은 본 발명의 일실시예에 따른 센서 데이터를 분류 및 진단하는 장치가 특정 불량에 대하여 불량 진단을 수행한 결과를 예시한다.
도 7을 참고하면, 불량 진단 결과는 특징 맵(710), 수용 영역(720), 센서 변수의 기여도, 센서 변수의 신호 그래프(730)를 표시한다.
특징 맵(710)은 정상 웨이퍼(712) 및 불량 웨이퍼(714)를 표시하여 각 특징 맵은 가로축은 처리 시간을 나타내고, 세로축은 웨이퍼 식별자를 나타낸다.
불량 웨이퍼(714)에 해당하는 특징 맵을 통하여 특정 시간에 불량의 존재를 확인할 수 있다.
즉, 정상 웨이퍼(712) 및 불량 웨이퍼(714)의 정규화된 1차원의 특징 맵들을 비교해 보면, 400-430초 부근에서 불량 웨이퍼(714)의 1차원의 특징 맵에 백색 잡음(white noise)가 발생하는 반면에, 정상 웨이퍼(712)에서는 잡음없는 이미지가 생성되는 것을 확인할 수 있다.
이에 대응하는 수용 영역(720)의 센서 변수 기여도는 제10 센서가 4.6, 제4 센서가 1.4 및 제7 센서가 1.0 순으로 나타나며 분류에 유의한 특징을 추출하는 데 가장 많은 기여를 한 것으로 나타낸다.
센서 변수의 신호 그래프(730)에서는 높은 센서 변수 기여도를 갖는 제10 센서의 관측치 및 제4 센서의 관측치를 정상 웨이퍼(712)를 검은색 선으로 표시하고, 불량 웨이퍼(714)를 회색선으로 구분하여 표시한다.
따라서, 센서 변수의 신호 그래프(730)는 정규화된 1차원의 특징 맵에 백색 잡음이 발생하는 구간에서 명확한 패턴 차이를 보인다.
도 8은 본 발명의 일실시예에 따른 다양한 불량 검출 결과들을 도시한 것이다.
구체적으로, 도 8은 센서 데이터를 분류 및 진단하는 장치가 다양한 불량들에 대하여 불량 진단을 수행한 결과를 예시한다.
도 8의 (a)를 참고하면, 불량 진단 결과는 특징 맵(810) 및 센서 변수의 신호 그래프(820)로 구성되고, 정상 웨이퍼(812)와 불량 웨이퍼(814)의 정규화된 1차원의 특징 맵들 비교하여 400-500초 사이에 불량 구간이 발생하였고, 이때, 제10 센서 변수의 기여도가 3.3으로 가장 높게 나타나는 것을 확인할 수 있다.
따라서, 400-500초 사이에 제10 센서에 의하여 수집된 센서 데이터에 불량 구간이 발생함을 확인할 수 있다.
도 8의 (b)를 참고하면, 불량 진단 결과는 특징 맵(830) 및 센서 변수의 신호 그래프(840)로 구성되고, 정상 웨이퍼(832)와 불량 웨이퍼(834)의 정규화된 1차원의 특징 맵들을 비교하여 제10 센서의 기여도가 1.8, 제1 센서의 기여도가 0.9로 가장 높았으며 100-200초 사이, 400-500초 사이에 이 센서들에 의하여 수집된 센서 데이터에서 불량 구간이 발생하였음을 확인할 수 있다.
도 8의 (c)를 참고하면, 불량 진단 결과는 특징 맵(870) 및 센서 변수의 신호 그래프(880)로 구성되고, 정상 웨이퍼(872) 및 불량 웨이퍼(874)의 정규화된 1차원의 특징 맵들을 비교하여 200-300초 사이에 제6 센서의 기여도가 2.0으로 가장 높아 200-300초 사이에 제6 센서에 의하여 수집된 센서 데이터에서 불량 구간이 발생하였음을 확인할 수 있다.
도 8의 (d)를 참고하면, 불량 진단 결과는 특징 맵(850) 및 센서 변수의 신호 그래프(850)로 구성되고, 정상 웨이퍼(852) 및 불량 웨이퍼(854)의 정규화된 1차원의 특징 맵들을 비교하여 제1 센서의 기여도가 3.6, 제3 센서의 기여도가 1.7로 가장 높았으며 200-300초 사이에 이 센서들에 의하여 수집된 센서 데이터에서 불량 구간이 발생하였음을 확인할 수 있다.
본 발명의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
그러한 소프트웨어는 컴퓨터 판독 가능 저장 매체에 저장될 수 있다. 컴퓨터 판독 가능 저장 매체는, 적어도 하나의 프로그램(소프트웨어 모듈), 전자 장치에서 적어도 하나의 프로세서에 의해 실행될 때 전자 장치가 본 발명의 방법을 실시하게 하는 명령어들(instructions)을 포함하는 적어도 하나의 프로그램을 저장한다.
이러한 소프트웨어는, 휘발성(volatile) 또는 (ROM: Read Only Memory)과 같은 불휘발성(non-volatile) 저장장치의 형태로, 또는 램(RAM: random access memory), 메모리 칩(memory chips), 장치 또는 집적 회로(integrated circuits)와 같은 메모리의 형태로, 또는 컴팩트 디스크 롬(CD-ROM: Compact Disc-ROM), 디지털 다목적 디스크(DVDs: Digital Versatile Discs), 자기 디스크(magnetic disk) 또는 자기 테이프(magnetic tape) 등과 같은 광학 또는 자기적 판독 가능 매체에, 저장될 수 있다.
저장 장치 및 저장 미디어는, 실행될 때 일 실시 예들을 구현하는 명령어들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적절한 기계-판독 가능 저장 수단의 실시 예들이다.
실시 예들은 본 명세서의 청구항들 중 어느 하나에 청구된 바와 같은 장치 또는 방법을 구현하기 위한 코드를 포함하는 프로그램, 및 그러한 프로그램을 저장하는 기계-판독 가능 저장 매체를 제공한다.
나아가, 그러한 프로그램들은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 어떠한 매체에 의해 전자적으로 전달될 수 있으며, 실시 예들은 동등한 것을 적절히 포함한다.
상술한 구체적인 실시 예들에서, 발명에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다.
그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 상술한 실시 예들이 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 다양한 실시 예들이 내포하는 기술적 사상의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다.
그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니되며 후술하는 청구범위뿐만 아니라 이 청구범위와 균등한 것들에 의해 정해져야 한다.
100: 센서 데이터를 분류 및 진단하는 장치
110: 로컬 특징 수집부 120: 1차원의 특징 맵 추출부
130: 데이터 분류부 140: 불량 진단부
210: 입력층 212: 시간 변수
212: 센서 변수 220: 수용 영역
230: 콘볼루션층 240: 풀링 영역
250: 풀링층

Claims (15)

  1. 센서 데이터의 입력층(input layer)에서, 수용 영역(receptive field)을 시간축에서만 순차적으로 이동시키면서 로컬 특징(local feature)들을 수집하는 로컬 특징 수집부;
    상기 수집된 로컬 특징(local feature)들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층(convolution layer)을 생성하는 1차원의 특징 맵 추출부; 및
    상기 생성된 콘볼루션층(convolution layer)에 기초하여 상기 센서 데이터를 분류하는 데이터 분류부; 및
    상기 분류된 센서 데이터에 기초하여 상기 센서 데이터의 불량을 진단하는 불량 진단부를 포함하고,
    상기 수용 영역(receptive field)의 일축은 상기 입력층(input layer)의 변수축에 상응하는 크기를 갖는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  2. 제1 항에 있어서,
    상기 데이터 분류부는, 상기 1차원의 특징 맵들을 풀링 영역(pooling field)을 이용하여 시간축으로 축소하여 풀링층(pooling layer)을 생성하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  3. 제2 항에 있어서,
    상기 데이터 분류부는, 상기 콘볼루션층(convolution layer)과 상기 풀링층(pooling layer)을 누적하여 전역 특징(global feature)들을 학습하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  4. 제1 항에 있어서,
    상기 1차원의 특징 맵 추출부는, 상기 로컬 특징(local feature)들을 상기 시간축을 따라 1차원 1차원의 특징 맵들로 상기 콘볼루션층(convolution layer)에 추출하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  5. 삭제
  6. 제1 항에 있어서,
    상기 불량 진단부는, 각 수용 영역(receptive field) 별로 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  7. 제6 항에 있어서,
    상기 불량 진단부는, 상기 각 수용 영역(receptive field)의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 상기 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하고,
    상기 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 상기 가중치 분포 상의 양의 축으로 이상치(outlier)을 나타내는 경우, 어느 하나 이상의 센서 변수의 기여도(Contribution Level of Variable, CLV)를 기준값 이상으로 계산하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  8. 제6 항에 있어서,
    상기 불량 진단부는, 정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용하여 시간축으로 서로 다른 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된(normalized) 1차원의 특징 맵들을 생성하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  9. 제8 항에 있어서,
    상기 불량 진단부는, 원천(raw) 데이터에 대해 상기 제1 클래스 및 상기 제2 클래스 간에 정규화된(normalized) 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 계산하고, 상기 다르게 형성된 구간에서 센서 변수의 기여도(Contribution Level of Variable, CLV)에 기초하여 불량을 진단하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 장치.
  10. 센서 데이터의 입력층(input layer)에서, 수용 영역(receptive field)을 시간축에서만 순차적으로 이동시키면서 로컬 특징(local feature)들을 수집하는 단계;
    상기 수집된 로컬 특징(local feature)들로부터 1차원의 특징 맵들을 추출하여 콘볼루션층(convolution layer)을 생성하는 단계;
    상기 생성된 콘볼루션층(convolution layer)에 기초하여 상기 센서 데이터를 분류하는 단계; 및
    상기 분류된 센서 데이터에 기초하여 상기 센서 데이터의 불량을 진단하는 단계를 포함하고,
    상기 수용 영역(receptive field)의 일축은 상기 입력층(input layer)의 변수축에 상응하는 크기를 갖는
    반도체 공정에서 센서 데이터의 불량을 진단하는 방법.
  11. 삭제
  12. 제10 항에 있어서,
    상기 센서 데이터의 불량을 진단하는 단계는,
    각 수용 영역(receptive field) 별로 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하는 단계를 포함하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 방법.
  13. 제12 항에 있어서,
    상기 센서 변수의 기여도를 계산하는 단계는,
    상기 각 수용 영역(receptive field)의 긍정 가중치 평균, 전체 센서 변수의 수, 가중치 분포의 편차, 각 센서 변수 별 긍정 가중치 평균 및 긍정 가중치 평균의 중간값에 기초하여 상기 센서 변수의 기여도(Contribution Level of Variable, CLV)를 계산하는 단계; 및
    상기 각 수용 영역의 센서 변수 중 어느 하나 이상의 긍정 가중치 평균이 상기 가중치 분포 상의 양의 축으로 이상치(outlier)을 나타내는 경우, 어느 하나 이상의 센서 변수의 기여도(Contribution Level of Variable, CLV)를 기준값 이상으로 계산하는 단계를 포함하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 방법.
  14. 제12 항에 있어서,
    상기 센서 데이터의 불량을 진단하는 단계는,
    정상 학습 데이터에 해당하는 1차원의 특징 맵의 평균과 분산 정보를 활용하여 시간축으로 서로 다른 제1 클래스 및 제2 클래스 각각에 해당하는 정규화된(normalized) 1차원의 특징 맵들을 생성하는 단계를 포함하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 방법.
  15. 제14 항에 있어서,
    상기 센서 데이터의 불량을 진단하는 단계는,
    원천(raw) 데이터에 대해 상기 제1 클래스 및 상기 제2 클래스 간에 정규화된(normalized) 1차원의 특징 맵의 패턴이 다르게 형성된 구간을 계산하고, 상기 다르게 형성된 구간에서 센서 변수의 기여도(Contribution Level of Variable, CLV)에 기초하여 불량을 진단하는 단계를 포함하는
    반도체 공정에서 센서 데이터의 불량을 진단하는 방법.
KR1020160161632A 2016-11-30 2016-11-30 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법 KR101802096B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160161632A KR101802096B1 (ko) 2016-11-30 2016-11-30 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160161632A KR101802096B1 (ko) 2016-11-30 2016-11-30 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101802096B1 true KR101802096B1 (ko) 2017-11-27

Family

ID=60810749

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160161632A KR101802096B1 (ko) 2016-11-30 2016-11-30 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101802096B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190117103A (ko) * 2018-04-06 2019-10-16 전자부품연구원 대규모 심층 신경망의 고속 저전력 처리를 위한 방법 및 장치
KR102184395B1 (ko) 2020-05-06 2020-11-30 호서대학교 산학협력단 결정트리 및 심층신경망을 이용한 대량의 데이터를 분류하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005251925A (ja) * 2004-03-03 2005-09-15 Toshiba Corp 製造装置管理システム、製造装置管理方法及びプログラム
US20160163035A1 (en) * 2014-12-03 2016-06-09 Kla-Tencor Corporation Automatic Defect Classification Without Sampling and Feature Selection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005251925A (ja) * 2004-03-03 2005-09-15 Toshiba Corp 製造装置管理システム、製造装置管理方法及びプログラム
US20160163035A1 (en) * 2014-12-03 2016-06-09 Kla-Tencor Corporation Automatic Defect Classification Without Sampling and Feature Selection

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190117103A (ko) * 2018-04-06 2019-10-16 전자부품연구원 대규모 심층 신경망의 고속 저전력 처리를 위한 방법 및 장치
KR102453370B1 (ko) 2018-04-06 2022-10-07 한국전자기술연구원 대규모 심층 신경망의 고속 저전력 처리를 위한 방법 및 장치
KR102184395B1 (ko) 2020-05-06 2020-11-30 호서대학교 산학협력단 결정트리 및 심층신경망을 이용한 대량의 데이터를 분류하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체

Similar Documents

Publication Publication Date Title
CN111126202B (zh) 基于空洞特征金字塔网络的光学遥感图像目标检测方法
Lee et al. Fault detection based on one-class deep learning for manufacturing applications limited to an imbalanced database
CN106682697B (zh) 一种基于卷积神经网络的端到端物体检测方法
US7930122B2 (en) Evaluating anomaly for one-class classifiers in machine condition monitoring
US11715190B2 (en) Inspection system, image discrimination system, discrimination system, discriminator generation system, and learning data generation device
JP2021140739A (ja) プログラム、学習済みモデルの生成方法、情報処理方法及び情報処理装置
KR20200137219A (ko) 비지도 학습 기반 웨이퍼 불량 패턴 검출 방법 및 그 장치
CN110059646B (zh) 训练动作规划模型的方法及目标搜索方法
Dimitriou et al. A deep learning framework for simulation and defect prediction applied in microelectronics
CN112906816B (zh) 基于光微分与双通道神经网络的目标检测方法和装置
CN109886964A (zh) 电路板缺陷检测方法、装置及设备
KR102417415B1 (ko) 딥러닝 이상 감지 기반 생산 제품 불량 검출 방법 및 시스템
CN103473540A (zh) 智能交通系统车辆轨迹增量式建模与在线异常检测方法
CN115343676B (zh) 密封电子设备内部多余物定位技术的特征优化方法
KR101802096B1 (ko) 반도체 공정에서 불량을 분류 및 진단하는 장치 및 방법
CN116593157A (zh) 少样本下基于匹配元学习的复杂工况齿轮故障诊断方法
Du et al. Convolutional neural network-based data anomaly detection considering class imbalance with limited data
CN117474918B (zh) 异常检测方法和装置、电子设备以及存储介质
Li et al. A defect detection method based on improved mask R-CNN for wafer maps
Lee et al. Recognizing yield patterns through hybrid applications of machine learning techniques
US11035666B2 (en) Inspection-guided critical site selection for critical dimension measurement
CN113763364A (zh) 一种基于卷积神经网络的图像缺陷检测方法
Li et al. Structural health monitoring data anomaly detection by transformer enhanced densely connected neural networks
Chuang et al. A deep learning-based screening method for improving the quality and reliability of integrated passive devices
CN115830302A (zh) 一种多尺度特征提取融合配电网设备定位识别方法

Legal Events

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