KR20230075261A - Apparatus for anomaly detection using attention mechanism and method therefor - Google Patents
Apparatus for anomaly detection using attention mechanism and method therefor Download PDFInfo
- Publication number
- KR20230075261A KR20230075261A KR1020210161702A KR20210161702A KR20230075261A KR 20230075261 A KR20230075261 A KR 20230075261A KR 1020210161702 A KR1020210161702 A KR 1020210161702A KR 20210161702 A KR20210161702 A KR 20210161702A KR 20230075261 A KR20230075261 A KR 20230075261A
- Authority
- KR
- South Korea
- Prior art keywords
- input data
- detection
- learning
- network
- data
- Prior art date
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 210
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000007246 mechanism Effects 0.000 title description 21
- 230000002159 abnormal effect Effects 0.000 claims description 39
- 230000005856 abnormality Effects 0.000 claims description 26
- 239000010410 layer Substances 0.000 claims description 25
- 238000005457 optimization Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 239000011229 interlayer Substances 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 20
- 238000003860 storage Methods 0.000 description 15
- 230000015654 memory Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000013480 data collection Methods 0.000 description 9
- 238000004519 manufacturing process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000001931 thermography Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
Description
본 발명은 이상 탐지를 위한 기술에 관한 것으로, 더욱 상세하게는, 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치 및 이를 위한 방법에 관한 것이다. The present invention relates to a technology for detecting anomalies, and more particularly, to an apparatus for detecting anomalies using an attention mechanism and a method therefor.
이상 탐지는 데이터에서 예상과는 다른 패턴을 보이는 비정상 데이터를 찾는 기법이다.Anomaly detection is a technique for finding abnormal data in data that exhibits a different pattern than expected.
이상 탐지를 위해 기계학습(machine learning) 또는 심층기계학습(deep learning) 기법을 도입하는 사례가 늘고 있다. Machine learning or deep learning techniques are increasingly being introduced to detect anomalies.
대표적인 예로 제조업체에서는 생산품에 대한 양품/불량품 판정을 고속화, 자동화하기 위한 목적으로 상기 이상 탐지 기법을 도입하고 있다. As a representative example, manufacturers are introducing the above abnormality detection technique for the purpose of speeding up and automating the determination of good/defective products for products.
본 발명의 목적은 어텐션 메커니즘을 이용하여 이상이 발생한 위치를 정확하게 인지할 수 있도록 탐지 결과를 제공할 수 있는 이상 탐지를 위한 장치 및 이를 위한 방법을 제공함에 있다. An object of the present invention is to provide a device and method for detecting an anomaly capable of providing a detection result so that a location where an anomaly occurs can be accurately recognized using an attention mechanism.
본 발명의 실시예에 따른 이상 탐지를 위한 방법은 탐지부가 입력 데이터를 탐지망에 입력하는 단계와, 상기 탐지망이 상기 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 통해 어텐션맵 및 출력 데이터를 산출하는 단계와, 상기 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하면, 상기 탐지부가 입력 데이터에 어텐션맵을 오버랩하여 검출맵을 생성하는 단계와, 상기 탐지부가 상기 출력 데이터에 따라 입력 데이터에 대한 이상 여부를 검출하는 단계와, 상기 탐지부가 상기 입력 데이터에 대한 이상 여부를 나타내는 이상 검출 결과 및 상기 검출맵을 출력하는 단계를 포함한다. A method for anomaly detection according to an embodiment of the present invention includes the step of inputting input data to a detection network by a detection unit, and the detection network performing an attention map through a plurality of calculations in which weights between a plurality of layers are applied to the input data. and calculating output data; if an attention region having an attention value equal to or greater than a preset threshold exists in the attention map, generating a detection map by the detection unit by overlapping the attention map with the input data; The method includes detecting whether input data is abnormal according to output data, and outputting, by the detection unit, an abnormality detection result indicating whether or not there is an abnormality in the input data and the detection map.
상기 입력 데이터에 대한 이상 여부를 검출하는 단계는 상기 탐지망이 생성형 네트워크인 경우, 상기 탐지부가 상기 입력 데이터와 상기 출력 데이터의 차이를 나타내는 복원 손실에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 한다. In the detecting of whether the input data is abnormal, if the detection network is a generative network, the detection unit determines whether the input data is abnormal according to a restoration loss representing a difference between the input data and the output data. to be characterized
상기 방법은 상기 탐지망이 생성형 네트워크인 경우, 상기 탐지부가 입력 데이터를 탐지망에 입력하는 단계 전, 상기 학습부가 정상 상태의 데이터만 선별하여 학습용 입력 데이터를 마련하는 단계와, 상기 학습부가 상기 학습용 입력 데이터를 탐지망에 입력하는 단계와, 상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터를 모사하는 학습용 출력 데이터를 도출하는 단계와, 상기 학습부가 상기 학습용 입력 데이터와 상기 학습용 출력 데이터 간의 차이를 나타내는 복원 손실을 산출하고, 복원 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 단계를 더 포함한다. The method includes, when the detection network is a generative network, preparing input data for learning by the learning unit selecting only data in a normal state before the detection unit inputs the input data to the detection network; The step of inputting input data for learning to a detection network, and the detection network calculating an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the input data for learning, and for learning that simulates the input data for learning. The step of deriving output data, the optimization of which the learning unit calculates a restoration loss representing the difference between the input data for learning and the output data for learning, and updates the weights of the detection network through a backpropagation algorithm so that the restoration loss is minimized. Further steps are included.
상기 입력 데이터에 대한 이상 여부를 검출하는 단계는 상기 탐지망이 분류형 네트워크인 경우, 상기 탐지부가 상기 출력 데이터의 정상 상태일 확률과 이상 상태일 확률에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 한다. In the detecting of whether the input data is abnormal, if the detection network is a classified network, the detector determines whether the input data is abnormal according to the normal state probability and the abnormal state probability of the output data. to be characterized
상기 방법은 상기 탐지망이 분류형 네트워크인 경우, 상기 탐지부가 입력 데이터를 탐지망에 입력하는 단계 전, 상기 학습부가 레이블이 부여된 학습용 입력 데이터를 마련하는 단계와, 상기 학습부가 상기 학습용 입력 데이터를 탐지망에 입력하는 단계와, 상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터가 정상 상태일 확률과 학습용 입력 데이터가 이상 상태일 확률을 포함하는 학습용 출력 데이터를 산출하는 단계와, 상기 학습부가 상기 레이블과 상기 학습용 출력 데이터 간의 차이를 나타내는 분류 손실을 산출하고, 분류 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 단계를 더 포함한다. In the case where the detection network is a classified network, the learning unit prepares labeled input data for learning before the detection unit inputs the input data to the detection network, and the learning unit prepares the learning input data. inputting to a detection network, and the detection network calculates an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the learning input data, and the probability that the learning input data is in a steady state and the learning Calculating output data for learning including a probability that input data is in an abnormal state; The learning unit calculates a classification loss representing a difference between the label and the output data for learning, and the classification loss is minimized through a backpropagation algorithm. The step of performing optimization of updating the weights of the detection network is further included.
본 발명의 실시예에 따른 이상 탐지를 위한 장치는 입력 데이터를 학습된 탐지망에 입력하고, 상기 탐지망이 상기 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 통해 어텐션맵 및 출력 데이터를 산출하고, 상기 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하면, 입력 데이터에 어텐션맵을 오버랩하여 검출맵을 생성하고, 상기 출력 데이터에 따라 입력 데이터에 대한 이상 여부를 검출하고, 상기 입력 데이터에 대한 이상 여부를 나타내는 이상 검출 결과 및 상기 검출맵을 출력하는 탐지부를 포함한다. An apparatus for anomaly detection according to an embodiment of the present invention inputs input data to a learned detection network, and the detection network outputs an attention map and output through a plurality of calculations in which weights between a plurality of layers are applied to the input data. Data is calculated, and if there is an attention region having an attention value equal to or greater than a preset threshold in the attention map, a detection map is generated by overlapping the attention map with the input data, and an abnormality in the input data is detected according to the output data. and a detection unit outputting an abnormality detection result indicating whether there is anomaly in the input data and the detection map.
상기 탐지망이 생성형 네트워크인 경우, 상기 탐지부는 상기 입력 데이터와 상기 출력 데이터의 차이를 나타내는 복원 손실에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 한다. When the detection network is a generative network, the detection unit determines whether the input data is abnormal according to a restoration loss indicating a difference between the input data and the output data.
상기 장치는 상기 탐지망이 생성형 네트워크인 경우, 정상 상태의 데이터만 선별하여 학습용 입력 데이터를 마련하고, 상기 학습용 입력 데이터를 탐지망에 입력하고, 상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터를 모사하는 학습용 출력 데이터를 도출하면, 상기 학습용 입력 데이터와 상기 학습용 출력 데이터 간의 차이를 나타내는 복원 손실을 산출하고, 복원 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 학습부를 더 포함한다. When the detection network is a generative network, the device selects only data in a steady state to prepare input data for learning, inputs the input data for learning to the detection network, and then the detection network selects a plurality of data for the input data for learning. When an attention map is calculated by performing a plurality of operations to which weights between layers are applied, and output data for learning that mimics the input data for learning is derived, a restoration loss representing a difference between the input data for learning and the output data for learning is calculated, , and a learning unit that performs optimization of updating the weights of the detection network through a backpropagation algorithm so that restoration loss is minimized.
상기 탐지망이 분류형 네트워크인 경우, 상기 탐지부는 상기 출력 데이터의 정상 상태일 확률과 이상 상태일 확률에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 한다. When the detection network is a classified network, the detection unit determines whether the input data is abnormal according to a probability of being in a normal state and a probability of being in an abnormal state of the output data.
상기 장치는 상기 탐지망이 분류형 네트워크인 경우, 레이블이 부여된 학습용 입력 데이터를 마련하고, 상기 학습용 입력 데이터를 탐지망에 입력하고, 상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터가 정상 상태일 확률과 학습용 입력 데이터가 이상 상태일 확률을 포함하는 학습용 출력 데이터를 산출하면, 상기 레이블과 상기 학습용 출력 데이터 간의 차이를 나타내는 분류 손실을 산출하고, 분류 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 학습부를 더 포함한다. When the detection network is a classified network, the device prepares input data for learning to which labels are assigned, inputs the input data for learning to the detection network, and the detection network sets a plurality of inter-layer weights for the input data for learning. When an attention map is calculated by performing a plurality of operations to which is applied, and output data for learning including a probability that the input data for learning is in a normal state and a probability that the input data for learning is in an abnormal state is calculated, the label and the output data for learning are calculated. and a learning unit that calculates a classification loss representing a difference between the detection networks and performs optimization of updating the weights of the detection network through a backpropagation algorithm so that the classification loss is minimized.
본 발명에 따르면, 어텐션맵을 이용하여 이상이 발생한 위치를 보다 정확하게 제공할 수 있다. 이에 따라, 이상 발생 원인을 보다 명확하게 인식할 수 있다. According to the present invention, it is possible to more accurately provide a location where an abnormality occurs by using an attention map. Accordingly, the cause of the abnormality can be recognized more clearly.
도 1은 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치의 세부적인 구성을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 제어부를 구현하기 위한 하드웨어 시스템의 예시도이다.
도 4는 본 발명의 일 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 탐지망을 학습시키기 위한 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 탐지망을 학습시키기 위한 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 실시예에 따른 입력 데이터를 추출하고 어텐션맵과 입력 데이터를 오버랩하는 방법을 설명하기 위한 도면이다.
도 8은 본 발명의 실시예에 따른 이상 탐지를 위한 어텐션맵과 입력 데이터를 오버랩하는 방법을 설명하기 위한 도면이다. 1 is a diagram for explaining the configuration of an apparatus for anomaly detection using an attention mechanism according to an embodiment of the present invention.
2 is a diagram for explaining a detailed configuration of an apparatus for detecting an anomaly using an attention mechanism according to an embodiment of the present invention.
3 is an exemplary diagram of a hardware system for implementing a control unit for anomaly detection using an attention mechanism according to an embodiment of the present invention.
4 is a flowchart illustrating a method for training a detection network for anomaly detection using an attention mechanism according to an embodiment of the present invention.
5 is a flowchart illustrating a method for training a detection network for anomaly detection using an attention mechanism according to another embodiment of the present invention.
6 is a flowchart illustrating a method for anomaly detection using an attention mechanism according to an embodiment of the present invention.
7 is a diagram for explaining a method of extracting input data and overlapping an attention map and input data according to an embodiment of the present invention.
8 is a diagram for explaining a method of overlapping an attention map and input data for anomaly detection according to an embodiment of the present invention.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다. In order to clarify the characteristics and advantages of the problem solving means of the present invention, the present invention will be described in more detail with reference to specific embodiments of the present invention shown in the accompanying drawings.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다. However, detailed descriptions of well-known functions or configurations that may obscure the gist of the present invention will be omitted in the following description and accompanying drawings. In addition, it should be noted that the same components are indicated by the same reference numerals throughout the drawings as much as possible.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. The terms or words used in the following description and drawings should not be construed as being limited to a common or dictionary meaning, and the inventor may appropriately define the concept of terms for explaining his/her invention in the best way. It should be interpreted as a meaning and concept consistent with the technical idea of the present invention based on the principle that there is. Therefore, the embodiments described in this specification and the configurations shown in the drawings are only one of the most preferred embodiments of the present invention, and do not represent all of the technical ideas of the present invention. It should be understood that there may be equivalents and variations.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다. In addition, terms including ordinal numbers, such as first and second, are used to describe various components, and are used only for the purpose of distinguishing one component from other components, and to limit the components. Not used. For example, a second element may be termed a first element, and similarly, a first element may be termed a second element, without departing from the scope of the present invention.
더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다. Additionally, when an element is referred to as being “connected” or “connected” to another element, it means that it is logically or physically connected or capable of being connected. In other words, it should be understood that a component may be directly connected or connected to another component, but another component may exist in the middle, or may be indirectly connected or connected.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. In addition, terms used in this specification are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In addition, terms such as "include" or "having" described in this specification are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or the other It should be understood that the above does not preclude the possibility of the presence or addition of other features, numbers, steps, operations, components, parts, or combinations thereof.
또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. In addition, terms such as “… unit”, “… unit”, and “module” described in the specification mean a unit that processes at least one function or operation, which may be implemented as hardware or software or a combination of hardware and software. there is.
또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다. Also, "a or an", "one", "the" and similar words in the context of describing the invention (particularly in the context of the claims below) indicate otherwise in this specification. may be used in the sense of including both the singular and the plural, unless otherwise clearly contradicted by the context.
아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다. In addition, embodiments within the scope of the present invention include computer-readable media having or conveying computer-executable instructions or data structures stored thereon. Such computer readable media can be any available media that can be accessed by a general purpose or special purpose computer system. By way of example, such computer readable media may be in the form of RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage, or computer executable instructions, computer readable instructions or data structures. physical storage media such as, but not limited to, any other medium that can be used to store or convey any program code means in a computer system and which can be accessed by a general purpose or special purpose computer system. .
아울러, 본 발명은 퍼스널 컴퓨터, 랩탑 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 페이저(pager) 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서 적용될 수 있다. 본 발명은 또한 네트워크를 통해 유선 데이터 링크, 무선 데이터 링크, 또는 유선 및 무선 데이터 링크의 조합으로 링크된 로컬 및 원격 컴퓨터 시스템 모두가 태스크를 수행하는 분산형 시스템 환경에서 실행될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치에 위치될 수 있다. In addition, the present invention relates to personal computers, laptop computers, handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile phones, PDAs, pagers It can be applied in a network computing environment having various types of computer system configurations including (pager) and the like. The invention may also be practiced in distributed system environments where tasks are performed by both local and remote computer systems linked by wired data links, wireless data links, or a combination of wired and wireless data links through a network. In a distributed system environment, program modules may be located in local and remote memory storage devices.
먼저, 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치에 대해서 설명하기로 한다. 도 1은 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치의 구성을 설명하기 위한 도면이다. 도 2는 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치의 세부적인 구성을 설명하기 위한 도면이다. 도 3은 본 발명의 일 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 제어부를 구현하기 위한 하드웨어 시스템의 예시도이다. First, an apparatus for anomaly detection using an attention mechanism according to an embodiment of the present invention will be described. 1 is a diagram for explaining the configuration of an apparatus for anomaly detection using an attention mechanism according to an embodiment of the present invention. 2 is a diagram for explaining a detailed configuration of an apparatus for detecting an anomaly using an attention mechanism according to an embodiment of the present invention. 3 is an exemplary diagram of a hardware system for implementing a control unit for anomaly detection using an attention mechanism according to an embodiment of the present invention.
먼저, 도 1을 참조하면, 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치(10: 이하, '이상탐지장치'로 칭함)는 데이터수집부(11), 입력부(12), 표시부(13), 저장부(14) 및 제어부(15)를 포함한다. First, referring to FIG. 1 , a device for detecting an anomaly using an attention mechanism according to an embodiment of the present invention (hereinafter, referred to as an “anomaly detection device”) 10 includes a
데이터수집부(11)는 입력 데이터 혹은 학습용 입력 데이터로 활용될 데이터를 수집하기 위한 것이다. 본 발명의 실시예에서, 데이터는 스마트팩토리 등의 생산 시설에서 생산된 제품에 대한 양품 혹은 불량품 판정을 위해 카메라 등을 통해 생산된 제품을 촬영한 영상을 예시로 설명될 것이다. 하지만, 본 발명의 실시예에서 데이터는 영상에 한정되는 것은 아니다. 본 발명의 실시예서 데이터는 스마트팩토리 등의 생산 시설에서 생산된 제품에 대한 양품 혹은 불량품 판정을 위해 각 종 센서를 통해 수집되는 다양한 형식의 것을 포함한다. 이러한 데이터는, 센서 신호, 오디오 신호, 영상 등을 포함한다. 예를 들면, 센서 신호는 센서가 진동 센서인 경우, 진동 주파수가 될 수 있다. 또한, 오디오 신호는 센서가 마이크로폰인 경우, 제품에서 발생하는 잡음이 될 수 있다. 그리고 영상은 센서가 일반 카메라, 뎁스(depth) 카메라, 적외선카메라, 열화상 카메라 등인 경우, 카메라를 통해 촬영된 그레이 스캐일(Gray-scale) 또는 RGB로 표현되는 영상, 뎁스(depth) 카메라, 적외선카메라, 열화상 카메라 등을 통해 촬영된 영상이 될 수 있다. 더욱이, 이러한 영상은 시간 순서를 가지는 동영상이 될 수 있다. 데이터수집부(11)는 제어부(15)의 제어에 따라 수집된 데이터를 저장부(14)에 저장한다. The
입력부(12)는 이상탐지장치(10)를 제어하기 위한 사용자의 키 조작을 입력 받고 입력 신호를 생성하여 제어부(15)로 전달한다. 입력부(12)는 전원 on/off를 위한 전원 키, 숫자 키, 방향키 중 어느 하나를 포함할 수 있으며, 이상탐지장치(10)의 일면에 소정의 기능키로 형성될 수 있다. 표시부(13)가 터치스크린으로 이루어진 경우, 입력부(12)의 각 종 키들의 기능이 표시부(13)에서 이루어질 수 있으며, 터치스크린만으로 모든 기능을 수행할 수 있는 경우, 입력부(12)는 생략될 수도 있다. The
표시부(13)는 화면 표시를 위한 것으로, 이상탐지장치(10)의 메뉴, 입력된 데이터, 기능 설정 정보 및 기타 다양한 정보를 사용자에게 시각적으로 제공할 수 있다. 표시부(13)는 액정표시장치(LCD, Liquid Crystal Display), 유기 발광 다이오드(OLED, Organic Light Emitting Diodes), 능동형 유기 발광 다이오드(AMOLED, Active Matrix Organic Light Emitting Diodes) 등으로 형성될 수 있다. 한편, 표시부(13)는 터치스크린으로 구현될 수 있다. 이러한 경우, 표시부(13)는 터치센서를 포함한다. 터치센서는 사용자의 터치 입력을 감지한다. 터치센서는 정전용량 방식(capacitive overlay), 압력식, 저항막 방식(resistive overlay), 적외선 감지 방식(infrared beam) 등의 터치 감지 센서로 구성되거나, 압력 감지 센서(pressure sensor)로 구성될 수도 있다. 상기 센서들 이외에도 물체의 접촉 또는 압력을 감지할 수 있는 모든 종류의 센서 기기가 본 발명의 터치센서로 이용될 수 있다. 터치센서는 사용자의 터치 입력을 감지하고, 터치된 위치를 나타내는 입력 좌표를 포함하는 감지 신호를 발생시켜 제어부(15)로 전송할 수 있다. The
저장부(14)는 이상탐지장치(10)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 이상탐지장치(10)의 전반적인 동작을 제어하는 프로그램 및 이상탐지장치(10)를 부팅시키는 운영체제(OS, Operating System), 응용 프로그램 등을 저장할 수 있다. 데이터 영역은 이상탐지장치(10)의 사용 및 동작에 따라 발생하는 데이터가 저장되는 영역이다. 특히, 데이터수집부(11)가 수집한 데이터를 저장할 수 있다. 저장부(14)에 저장되는 각 종 데이터는 삭제, 변경, 추가될 수 있다. The
제어부(15)는 이상탐지장치(10)의 전반적인 동작 및 이상탐지장치(10)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 또한, 제어부(15)는 기본적으로, 이상탐지장치(10)의 각 종 기능을 제어하는 역할을 수행한다. 제어부(15)는 중앙처리장치(CPU: Central Processing Unit), 디지털신호처리기(DSP: Digital Signal Processor) 등을 예시할 수 있다.The
도 2를 참조하면, 제어부(15)는 학습부(100) 및 탐지부(200)를 포함한다. Referring to FIG. 2 , the
학습부(100)는 탐지망(DN: Detection Network)을 학습시키기 위한 것이다. 탐지망(DN)은 입력 데이터를 모사하는 출력 데이터를 생성하는 생성형 네트워크이거나, 입력 데이터를 확률에 따라 분류하는 출력 데이터를 산출하는 분류형 네트워크가 될 수 있다. 생성형 네트워크는 오토인코더(Auto-Encoder), 생성적 적대 신경망(GAN: Generative Adversarial Networks) 등을 예시할 수 있다. 분류형 네트워크는 합성곱신경망(CNN: Convolutional Neural Network)을 예시할 수 있다. 이러한 탐지망(DN)은 복수의 계층 간 가중치가 적용되는 복수의 연산을 포함한다. 여기서, 복수의 계층은 완전연결계층(Fully-connected layer), 컨벌루션계층(Convolutional layer), 순환계층(Recurrent layer), 그래프계층(Graph layer) 등을 포함한다. 컨벌루션계층은 1D-convolution, 2D-convolution, 3D-convolution, depth-wise convolution 등을 포함한다. 순환계층은 일반적인 순환계층 뿐만 아니라 LSTM(Long Short-Term Memory), GRU(Gated Recurrent Unit) 등 계층을 포함한다. 그래프계층은 그래프컨벌루션계층(graph convolution layer)을 비롯한 다양한 형태의 그래프 구조의 계층이 될 수 있다. The
특히, 본 발명의 탐지망(DN)은 어텐션 메커니즘(Attention Mechanism)을 포함한다. 이에 따라, 탐지망(DN)은 어텐션 메커니즘을 통해 탐지망(DN)에 입력되는 데이터에 대해 어텐션 연산을 수행하여 데이터의 개별 원소에 대한 어텐션값을 산출하여 어텐션맵을 생성할 수 있다. 예컨대, 탐지망(DN)에 입력된 데이터(입력 데이터 혹은 학습용 입력 데이터)가 영상인 경우, 데이터의 개별 원소는 픽셀이 될 수 있다. 이러한 경우, 탐지망(DN)은 어텐션 연산을 통해 각 픽셀에 대한 어텐션값을 산출하여 복수의 어텐션값으로 이루어진 어텐션맵을 생성할 수 있다. 이때, 탐지망(DN)은 어텐션값을 정규화(normalization)하여 예컨대, 최소값이 0, 최대값이 1을 유지하도록 할 수 있다. 이러한 정규화 방법은 min-max normalization을 예시할 수 있다. In particular, the detection network (DN) of the present invention includes an attention mechanism. Accordingly, the detection network DN may generate an attention map by performing an attention operation on data input to the detection network DN through the attention mechanism to calculate attention values for individual elements of the data. For example, when data (input data or input data for learning) input to the detection network DN is an image, individual elements of the data may be pixels. In this case, the detection network DN may generate an attention map composed of a plurality of attention values by calculating an attention value for each pixel through an attention operation. At this time, the detection network DN may normalize the attention value so that, for example, the minimum value is 0 and the maximum value is 1. This normalization method may exemplify min-max normalization.
탐지부(200)는 탐지망(DN)을 이용하여 이상 여부를 탐지한다. 탐지부(200)는 탐지망(DN)에 입력 데이터를 입력할 수 있다. 그러면, 탐지망(DN)은 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 통해 어텐션맵 및 출력 데이터를 산출할 수 있다. 그러면, 탐지부(200)는 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역을 검출하고, 입력 데이터에 검출된 어텐션 영역을 오버랩하여 검출맵을 생성한다. 그런 다음, 탐지부(200)는 출력 데이터에 따라 입력 데이터에 대한 이상 여부를 검출하고, 입력 데이터에 대한 이상 여부를 나타내는 이상 검출 결과 및 검출맵을 표시부(13)를 통해 출력할 수 있다. The
한편, 도 3을 참조하면, 이상 설명한 제어부(15) 내 각 구성은 프로세서에 의해 실행되는 소프트웨어 모듈 또는 하드웨어 모듈 형태로 구현되거나, 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태로도 구현될 수 있다. Meanwhile, referring to FIG. 3 , each component in the
이와 같이, 프로세서에 의해 실행되는 소프트웨어 모듈, 하드웨어 모듈, 내지는 소프트웨어 모듈과 하드웨어 모듈이 조합된 형태는 실제 하드웨어 시스템(예: 컴퓨터 시스템)으로 구현될 수 있을 것이다. As such, a software module executed by a processor, a hardware module, or a combination of software modules and hardware modules may be implemented as an actual hardware system (eg, a computer system).
따라서, 이하에서는 도 3을 참조하여 본 발명의 일 실시예에 따른 주행 소음 기반의 교통 정보를 제공하기 위한 제어부를 하드웨어 형태로 구현한 하드웨어 시스템(2000)에 대해서 설명하기로 한다. Accordingly, a
도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 하드웨어 시스템(2000)은, 프로세서부(2100), 메모리 인터페이스부(2200), 및 주변장치 인터페이스부(2300)를 포함하는 구성을 가질 수 있다. As shown in FIG. 3 , a
이러한, 하드웨어 시스템(2000) 내 각 구성은, 개별 부품이거나 하나 이상의 집적 회로에 집적될 수 있으며, 이러한 각 구성들은 버스 시스템(도시 안됨)에 의해서 결합될 수 있다. Each component in the
여기서, 버스 시스템의 경우, 적절한 브리지들, 어댑터들, 및/또는 제어기들에 의해 연결된 임의의 하나 이상의 개별적인 물리 버스들, 통신 라인들/인터페이스들, 및/또는 멀티 드롭(multi-drop) 또는 포인트 투 포인트(point-to-point) 연결들을 나타내는 추상화(abstraction)이다.where, in the case of a bus system, any one or more individual physical buses, communication lines/interfaces, and/or multi-drop or point-to-point communication lines connected by suitable bridges, adapters, and/or controllers; It is an abstraction representing point-to-point connections.
프로세서부(2100)는 하드웨어 시스템에서 다양한 기능들을 수행하기 위해 메모리 인터페이스부(2200)를 통해 메모리부(2210)와 통신함으로써, 메모리부(2210)에 저장된 다양한 소프트웨어 모듈들을 실행하는 역할을 수행하게 된다. The
여기서, 메모리부(2210)에는 앞서 도 2를 참조하여 설명한 제어부(15) 내 각 구성인 학습부(100), 탐지부(200) 및 결과처리부(300)가 소프트웨어 모듈 형태로 저장될 수 있으며, 그 외 운영 체계(OS)가 추가로 저장될 수 있다. Here, in the
운영 체계(예: I-OS, Android, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, 또는 VxWorks와 같은 임베디드 운영 체계)의 경우, 일반적인 시스템 작업들(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)을 제어 및 관리하는 다양한 절차, 명령어 세트, 소프트웨어 컴포넌트 및/또는 드라이버를 포함하고 있으며 다양한 하드웨어 모듈과 소프트웨어 모듈 간의 통신을 용이하게 하는 역할을 수행하게 된다. For operating systems (e.g. embedded operating systems such as I-OS, Android, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or VxWorks), general system tasks (e.g. memory management, storage control) , power management, etc.) and includes various procedures, command sets, software components and/or drivers that control and manage, and plays a role in facilitating communication between various hardware modules and software modules.
참고로, 메모리부(2210)는 캐쉬, 메인 메모리 및 보조 기억장치(secondary memory)를 포함하지만 이에 제한되지 않는 메모리 계층구조가 포함할 수 있는데, 이러한 메모리 계층구조의 경우 예컨대 RAM(예: SRAM, DRAM, DDRAM), ROM, FLASH, 자기 및/또는 광 저장 장치[예: 디스크 드라이브, 자기 테이프, CD(compact disk) 및 DVD(digital video disc) 등]의 임의의 조합을 통해서 구현될 수 있다.For reference, the
주변장치 인터페이스부(2300)는 프로세서부(2100)와 주변장치 간에 통신을 가능하게 하는 역할을 수행한다. The peripheral
여기서 주변장치의 경우, 하드웨어 시스템(2000)에 상이한 기능을 제공하기 위한 것으로서, 본 발명의 일 실시예에서는, 예컨대, 통신부(2310)가 포함될 수 있다.Here, in the case of a peripheral device, it is for providing different functions to the
여기서, 통신부(2310)는 다른 장치와의 통신 기능을 제공하는 역할을 수행하는 수행하게 되며, 이를 위해 예컨대, 안테나 시스템, RF 송수신기, 하나 이상의 증폭기, 튜너, 하나 이상의 발진기, 디지털 신호 처리기, 코덱(CODEC) 칩셋, 및 메모리 등을 포함하지만 이에 제한되지는 않으며, 이 기능을 수행하는 공지의 회로를 포함할 수 있다. Here, the
이러한, 통신부(2310)가 지원하는 통신 프로토콜로는, 예컨대, 무선랜(Wireless LAN: WLAN), DLNA(Digital Living Network Alliance), 와이브로(Wireless Broadband: Wibro), 와이맥스(World Interoperability for Microwave Access: Wimax), 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), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution: LTE), LTE-A(Long Term Evolution-Advanced), 5G 통신시스템, 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service: WMBS), 블루투스(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) 등이 포함될 수 있다. 또한, 유선 통신망으로는 유선 LAN(Local Area Network), 유선 WAN(Wide Area Network), 전력선 통신(Power Line Communication: PLC), USB 통신, 이더넷(Ethernet), 시리얼 통신(serial communication), 광/동축 케이블 등이 포함될 수 있으며, 이제 제한되는 것이 아닌, 다른 장치와의 통신 환경을 제공할 수 있는 프로토콜은 모두 포함될 수 있다. Such communication protocols supported by the
본 발명의 일 실시예에 따른 하드웨어 시스템(2000)에서 메모리부(2210)에 소프트웨어 모듈 형태로 저장되어 있는 제어부(15) 내 각 구성은 프로세서부(2100)에 의해 실행되는 명령어의 형태로 메모리 인터페이스부(2200)와 주변장치 인터페이스부(2300)를 매개로 통신부(2310)와의 인터페이스를 수행한다. In the
다음으로, 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 방법에 대해서 설명하기로 한다. 본 발명의 실시예에 따르면, 이상 탐지를 위해 탐지망(DN: Detection Network)을 학습시켜야 한다. 먼저, 탐지망(DN)이 입력 데이터를 모사하는 출력 데이터를 생성하는 생성형 네트워크인 경우의 학습 방법에 대해서 설명하기로 한다. 도 4는 본 발명의 일 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 탐지망을 학습시키기 위한 방법을 설명하기 위한 흐름도이다. Next, a method for anomaly detection using an attention mechanism according to an embodiment of the present invention will be described. According to an embodiment of the present invention, a detection network (DN) needs to be trained to detect an anomaly. First, a learning method in the case where the detection network DN is a generative network that generates output data that mimics input data will be described. 4 is a flowchart illustrating a method for training a detection network for anomaly detection using an attention mechanism according to an embodiment of the present invention.
도 4의 실시예는 데이터수집부(11)가 스마트팩토리 등의 생산 시설에서 생산되는 제품을 촬영한 영상을 수집하여 저장부(14)에 저장한 상태를 가정한다. The embodiment of FIG. 4 assumes a state in which the
도 4를 참조하면, 학습부(100)는 S110 단계에서 저장부(200)에 저장된 데이터(예컨대, 제품을 촬영한 영상)를 순차로 추출하고, S120 단계에서 추출된 데이터가 정상 상태인지 여부를 확인한 후, S130 단계에서 정상 상태의 데이터만 선별하여 학습용 입력 데이터로 버퍼에 누적한다. 본 발명의 실시예에서, 이상 상태는 데이터(입력 데이터 및 학습용 입력 데이터)의 영상에 포함된 제품에 이상이 있는 것을 나타내며, 정상 상태는 데이터(입력 데이터 및 학습용 입력 데이터)의 영상에 포함된 제품이 정상인 것을 나타낸다. Referring to FIG. 4, the
이어서, 학습부(100)는 S140 단계에서 기 설정된 개수(N)의 학습용 입력 데이터가 누적되었는지 여부를 확인한다. Subsequently, the
S140 단계의 확인 결과, 기 설정된 개수(N) 미만의 학습용 입력 데이터가 누적되면, 전술한 S120 단계 및 S130 단계를 반복한다. 반면, S140 단계의 확인 결과, 기 설정된 개수(N)의 학습용 입력 데이터가 누적되면, S150 단계에서 누적된 개수(N)의 학습용 입력 데이터를 초기화 상태이거나, 학습이 완료되지 않은 상태의 탐지망(DN)에 입력한다. As a result of checking in step S140, when learning input data less than the preset number (N) is accumulated, steps S120 and S130 described above are repeated. On the other hand, as a result of checking in step S140, when the predetermined number (N) of input data for learning is accumulated, the number (N) of input data for learning accumulated in step S150 is initialized or the detection network in a state where learning is not completed ( DN).
그러면, 탐지망(DN)은 S160 단계에서 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 학습용 입력 데이터를 모사하는 학습용 출력 데이터를 도출한다. Then, the detection network DN calculates an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the input data for learning in step S160, and derives output data for learning that simulates the input data for learning.
그러면, 학습부(100)는 S170 단계에서 학습용 입력 데이터와 학습용 입력 데이터를 모사한 학습용 출력 데이터 간의 차이를 나타내는 복원 손실을 산출하고, 복원 손실이 최소화되도록 역전파(Backpropagation) 알고리즘을 통해 탐지망(DN)의 가중치(w)를 갱신하는 최적화를 수행한다. Then, the
다음으로, 학습부(100)는 S180 단계에서 학습 종료를 위해 필요한 조건을 만족하는지 여부를 판별한다. 여기서, 조건은 앞서(S170) 산출된 복원 손실이 기 설정된 목표치 미만인지 여부가 될 수 있다. S180 단계의 판별 결과, 학습 종료를 위해 필요한 조건을 만족하지 않으면, 즉, 앞서(S170) 산출된 복원 손실이 목표치 이상이면, S110 단계로 진행하여 전술한 S110 단계 내지 S180 단계를 반복한다. 이는 학습이 서로 다른 복수의 학습용 입력 데이터를 이용하여 반복되는 것을 의미한다. 반면, S180 단계의 판별 결과, 학습 종료를 위해 필요한 조건을 만족하면, 즉, 앞서(S170) 산출된 복원 손실이 목표치 미만이면, S190 단계로 진행하여 학습을 종료한다. Next, the
다음으로, 탐지망(DN)이 입력 데이터를 분류하는 출력 데이터를 산출하는 분류형 네트워크인 경우의 학습 방법에 대해서 설명하기로 한다. 도 5는 본 발명의 다른 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 탐지망을 학습시키기 위한 방법을 설명하기 위한 흐름도이다. Next, a learning method in the case where the detection network DN is a classification network that classifies input data and calculates output data will be described. 5 is a flowchart illustrating a method for training a detection network for anomaly detection using an attention mechanism according to another embodiment of the present invention.
도 5의 실시예 역시 도 4의 실시예와 마찬가지로 데이터수집부(11)가 스마트팩토리 등의 생산 시설에서 생산되는 제품을 촬영한 영상을 수집하여 저장부(14)에 저장한 상태를 가정한다. In the embodiment of FIG. 5, as in the embodiment of FIG. 4, it is assumed that the
도 5를 참조하면, 학습부(100)는 S210 단계에서 저장부(200)에 저장된 데이터(예컨대, 제품을 촬영한 영상)를 순차로 추출하고, S220 단계에서 추출된 데이터에 레이블이 부여되어 있는 여부를 확인한 후, S230 단계에서 레이블이 부여된 데이터만 선별하여 학습용 입력 데이터로 버퍼에 누적한다. 여기서, 레이블은 학습용 입력 데이터가 정상 상태인지 혹은 이상 상태인지 여부를 나타낸다. Referring to FIG. 5, the
이어서, 학습부(100)는 S240 단계에서 기 설정된 개수(N)의 학습용 입력 데이터가 누적되었는지 여부를 확인한다. Next, the
S240 단계의 확인 결과, 기 설정된 개수(N) 미만의 학습용 입력 데이터가 누적되면, 전술한 S210 단계 및 S230 단계를 반복한다. 반면, S240 단계의 확인 결과, 기 설정된 개수(N)의 학습용 입력 데이터가 누적되면, S250 단계에서 누적된 개수(N)의 학습용 입력 데이터를 초기화 상태이거나, 학습이 완료되지 않은 상태의 탐지망(DN)에 입력한다. As a result of checking in step S240, if the input data for learning less than the preset number (N) is accumulated, steps S210 and S230 described above are repeated. On the other hand, as a result of checking in step S240, when the predetermined number (N) of input data for learning is accumulated, the number (N) of input data for learning accumulated in step S250 is initialized or the detection network in a state where learning is not completed ( DN).
그러면, 탐지망(DN)은 S260 단계에서 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 학습용 입력 데이터를 기 설정된 분류(정상 상태/이상 상태)에 따라 분류하는 학습용 출력 데이터를 도출한다. 여기서, 학습용 출력 데이터는 확률값이며, 학습용 입력 데이터가 정상 상태일 확률과 학습용 입력 데이터가 이상 상태일 확률을 포함한다. Then, the detection network (DN) calculates an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the input data for learning in step S260, and classifies the input data for learning in advance (normal state/abnormal state). Derive output data for learning that is classified according to Here, the output data for learning is a probability value, and includes a probability that the input data for learning is in a normal state and a probability that the input data for learning is in an abnormal state.
그러면, 학습부(100)는 S270 단계에서 학습용 입력 데이터에 대응하는 레이블과, 학습용 입력 데이터에 대응하는 학습용 출력 데이터 간의 차이를 나타내는 분류 손실을 산출하고, 분류 손실이 최소화되도록 역전파(Backpropagation) 알고리즘을 통해 탐지망(DN)의 가중치(w)를 갱신하는 최적화를 수행한다. Then, in step S270, the
다음으로, 학습부(100)는 S280 단계에서 학습 종료를 위해 필요한 조건을 만족하는지 여부를 판별한다. 여기서, 조건은 앞서(S270) 산출된 분류 손실이 기 설정된 목표치 미만인지 여부가 될 수 있다. S280 단계의 판별 결과, 학습 종료를 위해 필요한 조건을 만족하지 않으면, 즉, 앞서(S270) 산출된 분류 손실이 목표치 이상이면, S210 단계로 진행하여 전술한 S210 단계 내지 S280 단계를 반복한다. 이는 학습이 서로 다른 복수의 학습용 입력 데이터를 이용하여 반복되는 것을 의미한다. 반면, S280 단계의 판별 결과, 학습 종료를 위해 필요한 조건을 만족하면, 즉, 앞서(S270) 산출된 분류 손실이 목표치 미만이면, S290 단계로 진행하여 학습을 종료한다. Next, the
전술한 바와 같이, 탐지망(DN)에 대한 학습이 완료되면, 탐지망(DN)은 탐지부(200)에 제공되며, 탐지부(200)는 탐지망(DN)을 이용하여 데이터의 이상 여부를 판별할 수 있다. 이러한 방법에 대해 설명하기로 한다. 도 6은 본 발명의 실시예에 따른 어텐션 메커니즘을 이용한 이상 탐지를 위한 방법을 설명하기 위한 흐름도이다. 도 7은 본 발명의 실시예에 따른 입력 데이터를 추출하고 어텐션맵과 입력 데이터를 오버랩하는 방법을 설명하기 위한 도면이다. 도 8은 본 발명의 실시예에 따른 이상 탐지를 위한 어텐션맵과 입력 데이터를 오버랩하는 방법을 설명하기 위한 도면이다. As described above, when the learning of the detection network (DN) is completed, the detection network (DN) is provided to the
도 6을 참조하면, 데이터수집부(11)는 S310 단계에서 생산 시설에서 생산되는 제품을 촬영한 영상을 수집하여 탐지부(200)에 입력한다. 다른 말로, 탐지부(200)는 데이터수집부(11)를 통해 S310 단계에서 생산 시설에서 생산되는 제품을 촬영한 영상을 입력 받는다. 예컨대, 도 7에 도시된 바와 같이, 컨베이어벨트와 같은 이송 수단(V)에 의해 이동 중인 제품의 일 영역(r)을 촬영한 영상이 입력될 수 있다. Referring to FIG. 6 , the
그러면, 탐지부(200)는 S320 단계에서 해당 영상을 입력 데이터로 탐지망(DN)에 입력한다. 이러한 입력 데이터는 예컨대, 도 7의 (A) 혹은 도 8의 (A)와 같은 영상이 될 수 있다. Then, the
이에 따라, 탐지망(DN)은 S330 단계에서 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 통해 어텐션맵 및 출력 데이터를 산출한다. 도 7의 (B) 및 도 8의 (B)는 어텐션맵을 나타낸다. 도 7의 (B)의 경우, 산출된 어텐션값이 기 설정된 임계치 이상인 경우만 빨간색으로 표현되었고, 도 8의 (B)는 산출된 어텐션값에 비례하여 서로 다른 색으로 표현되었다. 즉, 도 8의 (B)의 경우, 어텐션값이 높을수록 색상환에서 빨간색에 가까운 색으로 표현되었으며, 어텐션값이 낮을수록 색상환에서 파란색에 가까운 색으로 표현되었다. Accordingly, the detection network DN calculates the attention map and output data through a plurality of calculations in which a plurality of inter-layer weights are applied to the input data in step S330. 7(B) and 8(B) show an attention map. In the case of (B) of FIG. 7, only when the calculated attention value is equal to or greater than a predetermined threshold value is expressed in red, and in (B) of FIG. 8, different colors are expressed in proportion to the calculated attention value. That is, in the case of (B) of FIG. 8 , the higher the attention value, the color closer to red is represented on the color wheel, and the lower the attention value, the color closer to blue is represented on the color wheel.
어텐션맵 및 출력 데이터가 산출되면, 탐지부(200)는 S340 단계에서 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하는지 여부를 확인한다. After the attention map and the output data are calculated, the
S340 단계의 확인 결과, 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하면, S350 단계로 진행한다. 반면, S340 단계의 확인 결과, 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하지 않으면, S260 단계로 진행한다. As a result of checking in step S340, if an attention area having an attention value equal to or greater than a preset threshold exists in the attention map, the process proceeds to step S350. On the other hand, as a result of checking in step S340, if there is no attention area having an attention value equal to or greater than the preset threshold in the attention map, the process proceeds to step S260.
S350 단계에서 탐지부(200)는 입력 데이터에 어텐션맵을 오버랩하여 검출맵을 생성한다. 입력 데이터, 어텐션맵 및 검출맵은 동일한 스케일을 가진다. 예를 들면, 도 7의 (B) 및 도 8의 (B)는 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역(AT)을 가지는 어텐션맵을 나타낸다. 이에 따라, 도 7의 (A) 및 도 8의 (A)와 같은 입력 데이터에 도 7의 (B) 및 도 8의 (B)과 같은 어텐션맵을 오버랩하여 도 7의 (C) 및 도 8의 (C)와 같은 검출맵을 생성한다. 도 7의 (C) 및 도 8의 (C)에 도시된 바와 같이, 생성된 검출맵은 입력 데이터에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역(AT)이 표시된다. 이를 위하여, 탐지부(200)는 어텐션맵의 어텐션 영역(AT)을 검출하여 입력 데이터의 대응하는 위치에 오버랩 할 수 있다. In step S350, the
S360 단계에서, 탐지부(200)는 탐지망(DN)의 출력 데이터에 따라 입력 데이터에 대한 이상 여부를 검출한다. In step S360, the
S360 단계의 일 실시예에 따르면, 탐지망(DN)이 입력 데이터를 모사하는 출력 데이터를 생성하는 생성형 네트워크인 경우, 탐지부(200)는 입력 데이터와 출력 데이터의 차이를 나타내는 복원 손실에 따라 입력 데이터의 이상 여부를 판단한다. 보다 구체적으로 설명하면, 탐지부(200)는 입력 데이터와 출력 데이터의 차이를 나타내는 복원 손실을 산출한다. 그런 다음, 탐지부(200)는 복원 손실이 기 설정된 임계치 이상인지 여부를 판단한다. 판단 결과, 복원 손실이 기 설정된 임계치 이상이면, 입력 데이터에 이상이 있는 것으로 판단한다. 즉, 입력 데이터의 영상에 포함된 제품에 이상이 있는 것으로 판단한다. 반면, 판단 결과, 복원 손실이 기 설정된 임계치 미만이면, 입력 데이터가 정상인 것으로 판단한다. 즉, 입력 데이터의 영상에 포함된 제품이 정상인 것으로 판단한다. According to an embodiment of step S360, if the detection network (DN) is a generative network that generates output data that simulates the input data, the
S360 단계의 다른 실시예에 따르면, 탐지망(DN)이 입력 데이터를 분류하는 출력 데이터를 산출하는 분류형 네트워크인 경우, 탐지부(200)는 출력 데이터의 정상 상태일 확률과 이상 상태일 확률에 따라 입력 데이터의 이상 여부를 판단한다. 즉, 탐지부(200)는 출력 데이터의 이상 상태일 확률이 정상 상태일 확률 보다 높으면서, 기 설정된 임계치 이상인 경우, 입력 데이터에 이상이 있는 것으로 판단한다. 즉, 입력 데이터의 영상에 포함된 제품에 이상이 있는 것으로 판단한다. 반면, 탐지부(200)는 출력 데이터의 이상 상태일 확률이 기 설정된 임계치 미만이거나, 정상 상태일 확률이 이상 상태일 확률 보다 높으면, 입력 데이터가 정상인 것으로 판단한다. 즉, 입력 데이터의 영상에 포함된 제품이 정상인 것으로 판단한다. According to another embodiment of step S360, if the detection network DN is a classification network that calculates output data for classifying input data, the
다음으로, 탐지부(200)는 S370 단계에서 입력 데이터에 대한 이상 여부를 나타내는 이상 검출 결과와 검출맵이 존재하는 경우, 검출맵을 함께 출력한다. Next, in step S370, the
이와 같이, 본 발명은 이상이 발생한 경우, 검출맵을 함께 출력하며, 검출맵은 도 7의 (C) 및 도 8의 (C)에 도시된 바와 같이, 입력 데이터에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역(AT)이 표시되기 때문에 단순히 이상 발생 여부뿐만 아니라, 이상의 원인이 되는 영역을 알 수 있다. In this way, the present invention outputs a detection map together when an abnormality occurs, and the detection map, as shown in FIG. 7(C) and FIG. Since the attention area (AT) is displayed, it is possible to know not only whether or not an abnormality has occurred, but also an area causing the abnormality.
더욱이, 본 발명은 별도의 알고리즘을 구축하지 않고 이상 탐지, 이상 유형 분류 모델을 그대로 활용하여 객체 인식을 수행할 수 있다. 그리고 객체 인식 알고리즘을 구축하는데 필요한 노력을 포함한 비용을 줄일 수 있다. 또한, 이상 탐지, 이상 유형 분류 모델을 객체 인식에 통합으로 사용할 수 있기 때문에 연산량을 줄일 수 있다. 이와 같이, 연산량을 줄일 수 있기 때문에 시스템 운영에 사용되는 장비 구축의 효율성을 증대시킬 수 있다. 게다가, 전술한 바와 같이, 이상 탐지, 이상 유형 분류의 결과와 함께 판단의 근거를 제공할 수 있다. 사용자, 예컨대, 공정 관리자 등의 입장에서 이상 탐지, 이상 유형 분류 결과만 받는다면 해당 판정의 근거를 직접 찾아야 하는 번거로움이 있지만, 본 발명은 판정의 근거를 함께 제공함으로서 앞서 언급한 판정 근거를 직접 수동으로 찾아야 하는 번거로움을 최소화할 수 있다. Moreover, the present invention can perform object recognition by utilizing an anomaly detection and an anomaly type classification model as it is without constructing a separate algorithm. And it can reduce the cost, including the effort required to build an object recognition algorithm. In addition, since anomaly detection and anomaly type classification models can be integrated into object recognition, the amount of computation can be reduced. In this way, since the amount of computation can be reduced, the efficiency of constructing equipment used for system operation can be increased. In addition, as described above, a basis for judgment can be provided together with the results of abnormality detection and abnormality type classification. From the point of view of a user, for example, a process manager, if only an abnormality detection or abnormal type classification result is received, it is inconvenient to directly find the basis for the determination. You can minimize the hassle of manually finding it.
또한, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안 되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다. Further, while this specification contains details of a number of specific implementations, they should not be construed as limiting on the scope of any invention or claim, but rather on features that may be unique to a particular embodiment of a particular invention. should be understood as an explanation of Certain features that are described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable subcombination. Further, while features may operate in particular combinations and are initially depicted as such claimed, one or more features from a claimed combination may in some cases be excluded from that combination, and the claimed combination is a subcombination. or sub-combination variations.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.Similarly, while actions are depicted in the drawings in a particular order, it should not be construed as requiring that those actions be performed in the specific order shown or in the sequential order, or that all depicted actions must be performed to obtain desired results. In certain cases, multitasking and parallel processing can be advantageous. Further, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and the program components and systems described may generally be integrated together into a single software product or packaged into multiple software products. You have to understand that you can.
본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.Specific embodiments of the subject matter described herein have been described. Other embodiments are within the scope of the following claims. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results. As an example, the processes depicted in the accompanying drawings do not necessarily require the specific depicted order or sequential order in order to obtain desirable results. In certain implementations, multitasking and parallel processing may be advantageous.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.The present description presents the best mode of the invention and provides examples to illustrate the invention and to enable those skilled in the art to make and use the invention. The specification thus prepared does not limit the invention to the specific terms presented. Therefore, although the present invention has been described in detail with reference to the above-described examples, those skilled in the art may make alterations, changes, and modifications to the present examples without departing from the scope of the present invention.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정해져야 한다. Therefore, the scope of the present invention should not be defined by the described embodiments, but by the claims.
본 발명은 어텐션 메커니즘을 이용한 이상 탐지를 위한 장치 및 이를 위한 방법에 관한 것이다. 이러한 본 발명에 따르면, 본 발명은 이상이 발생한 경우, 검출맵을 함께 출력하며, 검출맵은 입력 데이터에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 표시되기 때문에 단순히 이상 발생 여부 뿐만 아니라, 이상의 원인이 되는 영역을 알 수 있다. 즉, 본 발명은 어텐션맵을 이용하여 이상이 발생한 위치를 보다 정확하게 제공할 수 있다. 이에 따라, 이상 발생 원인을 보다 명확하게 인식할 수 있다. 따라서 본 발명은 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다. The present invention relates to an apparatus for detecting anomaly using an attention mechanism and a method therefor. According to the present invention, when an abnormality occurs, the present invention outputs a detection map together, and since the detection map displays an attention area having an attention value equal to or higher than a predetermined threshold value in the input data, it is not only simply whether or not an abnormality has occurred, but also the cause of the abnormality. area can be identified. That is, the present invention can more accurately provide a location where an abnormality has occurred by using the attention map. Accordingly, the cause of the abnormality can be recognized more clearly. Therefore, the present invention has industrial applicability because it is not only sufficiently commercially available or commercially viable, but also to the extent that it can be clearly practiced in reality.
10: 이상탐지장치
11: 데이터수집부
12: 입력부
13: 표시부
14: 저장부
15: 제어부
100: 학습부
200: 탐지부 10: anomaly detection device 11: data collection unit
12: input unit 13: display unit
14: storage unit 15: control unit
100: learning unit 200: detection unit
Claims (10)
상기 탐지망이 상기 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 통해 어텐션맵 및 출력 데이터를 산출하는 단계;
상기 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하면, 상기 탐지부가 입력 데이터에 어텐션맵을 오버랩하여 검출맵을 생성하는 단계;
상기 탐지부가 상기 출력 데이터에 따라 입력 데이터에 대한 이상 여부를 검출하는 단계; 및
상기 탐지부가 상기 입력 데이터에 대한 이상 여부를 나타내는 이상 검출 결과 및 상기 검출맵을 출력하는 단계;
를 포함하는 것을 특징으로 하는
이상 탐지를 위한 방법. inputting the input data to the detection network by the detection unit;
calculating, by the detection network, an attention map and output data through a plurality of calculations in which weights between a plurality of layers are applied to the input data;
generating a detection map by overlapping the attention map with the input data, if an attention region having an attention value equal to or greater than a preset threshold exists in the attention map;
detecting whether the input data is abnormal according to the output data by the detection unit; and
outputting, by the detection unit, an abnormality detection result indicating whether or not there is an anomaly in the input data and the detection map;
characterized in that it includes
Methods for anomaly detection.
상기 입력 데이터에 대한 이상 여부를 검출하는 단계는
상기 탐지망이 생성형 네트워크인 경우,
상기 탐지부가 상기 입력 데이터와 상기 출력 데이터의 차이를 나타내는 복원 손실에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 하는
이상 탐지를 위한 방법. According to claim 1,
The step of detecting whether the input data is abnormal
If the detection network is a generative network,
Characterized in that the detection unit determines whether the input data is abnormal according to a restoration loss representing a difference between the input data and the output data
Methods for anomaly detection.
상기 탐지망이 생성형 네트워크인 경우,
상기 탐지부가 입력 데이터를 탐지망에 입력하는 단계 전,
상기 학습부가 정상 상태의 데이터만 선별하여 학습용 입력 데이터를 마련하는 단계;
상기 학습부가 상기 학습용 입력 데이터를 탐지망에 입력하는 단계;
상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터를 모사하는 학습용 출력 데이터를 도출하는 단계;
상기 학습부가 상기 학습용 입력 데이터와 상기 학습용 출력 데이터 간의 차이를 나타내는 복원 손실을 산출하고, 복원 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 단계;
를 더 포함하는 것을 특징으로 하는
이상 탐지를 위한 방법. According to claim 1,
If the detection network is a generative network,
Before the detection unit inputs the input data to the detection network,
preparing input data for learning by the learning unit selecting only data in a normal state;
inputting the learning input data to a detection network by the learning unit;
calculating an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the learning input data by the detection network, and deriving learning output data that simulates the learning input data;
performing optimization in which the learning unit calculates a restoration loss representing a difference between the input data for learning and the output data for learning, and updates weights of the detection network through a backpropagation algorithm so that the restoration loss is minimized;
characterized in that it further comprises
Methods for anomaly detection.
상기 입력 데이터에 대한 이상 여부를 검출하는 단계는
상기 탐지망이 분류형 네트워크인 경우,
상기 탐지부가 상기 출력 데이터의 정상 상태일 확률과 이상 상태일 확률에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 하는
이상 탐지를 위한 방법. According to claim 1,
The step of detecting whether the input data is abnormal
If the detection network is a classification network,
Characterized in that the detection unit determines whether the input data is abnormal according to the probability that the output data is in a normal state and the probability of an abnormal state
Methods for anomaly detection.
상기 탐지망이 분류형 네트워크인 경우,
상기 탐지부가 입력 데이터를 탐지망에 입력하는 단계 전,
상기 학습부가 레이블이 부여된 학습용 입력 데이터를 마련하는 단계;
상기 학습부가 상기 학습용 입력 데이터를 탐지망에 입력하는 단계;
상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고,
상기 학습용 입력 데이터가 정상 상태일 확률과 학습용 입력 데이터가 이상 상태일 확률을 포함하는 학습용 출력 데이터를 산출하는 단계;
상기 학습부가 상기 레이블과 상기 학습용 출력 데이터 간의 차이를 나타내는 분류 손실을 산출하고, 분류 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 단계;
를 더 포함하는 것을 특징으로 하는
이상 탐지를 위한 방법. According to claim 1,
If the detection network is a classification network,
Before the detection unit inputs the input data to the detection network,
preparing, by the learning unit, input data for learning to which labels are assigned;
inputting the learning input data to a detection network by the learning unit;
The detection network calculates an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the learning input data;
Calculating output data for learning including a probability that the input data for learning is in a normal state and a probability that the input data for learning is in an abnormal state;
performing optimization in which the learning unit calculates a classification loss representing a difference between the label and the training output data and updates weights of the detection network through a backpropagation algorithm so that the classification loss is minimized;
characterized in that it further comprises
Methods for anomaly detection.
상기 탐지망이 상기 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 통해 어텐션맵 및 출력 데이터를 산출하고, 상기 어텐션맵에 기 설정된 임계치 이상의 어텐션값을 가지는 어텐션 영역이 존재하면, 입력 데이터에 어텐션맵을 오버랩하여 검출맵을 생성하고,
상기 출력 데이터에 따라 입력 데이터에 대한 이상 여부를 검출하고,
상기 입력 데이터에 대한 이상 여부를 나타내는 이상 검출 결과 및 상기 검출맵을 출력하는 탐지부;
를 포함하는 것을 특징으로 하는
이상 탐지를 위한 장치. Enter the input data into the learned detection network,
The detection network calculates an attention map and output data through a plurality of operations in which a plurality of inter-layer weights are applied to the input data, and if an attention region having an attention value equal to or higher than a preset threshold exists in the attention map, the input data is input. Create a detection map by overlapping the attention map on the data,
detecting abnormalities in the input data according to the output data;
a detection unit outputting an abnormality detection result indicating whether there is anomaly in the input data and the detection map;
characterized in that it includes
A device for anomaly detection.
상기 탐지망이 생성형 네트워크인 경우,
상기 탐지부는
상기 입력 데이터와 상기 출력 데이터의 차이를 나타내는 복원 손실에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 하는
이상 탐지를 위한 장치. According to claim 6,
If the detection network is a generative network,
the detecting unit
Characterized in that determining whether the input data is abnormal according to the restoration loss representing the difference between the input data and the output data
A device for anomaly detection.
상기 탐지망이 생성형 네트워크인 경우,
정상 상태의 데이터만 선별하여 학습용 입력 데이터를 마련하고,
상기 학습용 입력 데이터를 탐지망에 입력하고,
상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터를 모사하는 학습용 출력 데이터를 도출하면,
상기 학습용 입력 데이터와 상기 학습용 출력 데이터 간의 차이를 나타내는 복원 손실을 산출하고, 복원 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 학습부;
를 더 포함하는 것을 특징으로 하는
이상 탐지를 위한 장치. According to claim 6,
If the detection network is a generative network,
Select only data in a steady state to prepare input data for learning,
Enter the learning input data into a detection network,
When the detection network calculates an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the learning input data, and derives learning output data that simulates the learning input data,
a learning unit calculating a restoration loss representing a difference between the input data for learning and the output data for learning, and performing optimization to update weights of the detection network through a backpropagation algorithm so that the restoration loss is minimized;
characterized in that it further comprises
A device for anomaly detection.
상기 탐지망이 분류형 네트워크인 경우,
상기 탐지부는
상기 출력 데이터의 정상 상태일 확률과 이상 상태일 확률에 따라 상기 입력 데이터의 이상 여부를 판단하는 것을 특징으로 하는
이상 탐지를 위한 장치. According to claim 6,
If the detection network is a classification network,
the detecting unit
Characterized in that it determines whether the input data is abnormal according to the probability that the output data is in a normal state and the probability of an abnormal state
A device for anomaly detection.
상기 탐지망이 분류형 네트워크인 경우,
레이블이 부여된 학습용 입력 데이터를 마련하고,
상기 학습용 입력 데이터를 탐지망에 입력하고,
상기 탐지망이 상기 학습용 입력 데이터에 대해 복수의 계층 간 가중치가 적용되는 복수의 연산을 수행하여 어텐션맵을 산출하고, 상기 학습용 입력 데이터가 정상 상태일 확률과 학습용 입력 데이터가 이상 상태일 확률을 포함하는 학습용 출력 데이터를 산출하면,
상기 레이블과 상기 학습용 출력 데이터 간의 차이를 나타내는 분류 손실을 산출하고, 분류 손실이 최소화되도록 역전파 알고리즘을 통해 상기 탐지망의 가중치를 갱신하는 최적화를 수행하는 학습부;
를 더 포함하는 것을 특징으로 하는
이상 탐지를 위한 장치. According to claim 6,
If the detection network is a classification network,
prepare labeled input data for training;
Enter the learning input data into a detection network,
The detection network calculates an attention map by performing a plurality of operations to which weights between a plurality of layers are applied to the learning input data, and includes a probability that the learning input data is in a normal state and a probability that the learning input data is in an abnormal state. If you calculate the output data for learning that
a learning unit calculating a classification loss representing a difference between the label and the training output data, and performing optimization of updating weights of the detection network through a backpropagation algorithm so that the classification loss is minimized;
characterized in that it further comprises
A device for anomaly detection.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210161702A KR20230075261A (en) | 2021-11-22 | 2021-11-22 | Apparatus for anomaly detection using attention mechanism and method therefor |
US17/894,641 US20230065385A1 (en) | 2021-08-26 | 2022-08-24 | Apparatus and method for anomaly detection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210161702A KR20230075261A (en) | 2021-11-22 | 2021-11-22 | Apparatus for anomaly detection using attention mechanism and method therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230075261A true KR20230075261A (en) | 2023-05-31 |
Family
ID=86544056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210161702A KR20230075261A (en) | 2021-08-26 | 2021-11-22 | Apparatus for anomaly detection using attention mechanism and method therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230075261A (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102297232B1 (en) | 2020-11-18 | 2021-09-03 | 주식회사 파인브이티 | Anomaly Detection via Morphological Transformations |
-
2021
- 2021-11-22 KR KR1020210161702A patent/KR20230075261A/en unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102297232B1 (en) | 2020-11-18 | 2021-09-03 | 주식회사 파인브이티 | Anomaly Detection via Morphological Transformations |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11341375B2 (en) | Image processing apparatus and method based on deep learning and neural network learning | |
US20220237469A1 (en) | Self-Learning in Distributed Architecture for Enhancing Artificial Neural Network | |
US11842282B2 (en) | Neural networks for coarse- and fine-object classifications | |
US20190205744A1 (en) | Distributed Architecture for Enhancing Artificial Neural Network | |
US10318848B2 (en) | Methods for object localization and image classification | |
US20200160034A1 (en) | Method and apparatus for recognizing object | |
EP3425873A1 (en) | Method and system for processing data in an internet of things (iot) environment | |
CN111670357A (en) | Visual inspection management method and visual inspection system | |
US11537881B2 (en) | Machine learning model development | |
KR102521313B1 (en) | Method and apparatus training artificial neural network for identifying object in image | |
US11904853B2 (en) | Apparatus for preventing vehicle collision and method thereof | |
US20210357767A1 (en) | Automated knowledge infusion for robust and transferable machine learning | |
US11586844B2 (en) | Method and system for detecting and tracking objects in a rotational environment | |
US11378407B2 (en) | Electronic apparatus and method for implementing simultaneous localization and mapping (SLAM) | |
US20220084234A1 (en) | Method and electronic device for identifying size of measurement target object | |
US20230229918A1 (en) | Method and Apparatus for Continuous Learning of Object Anomaly Detection and State Classification Model | |
US20220254075A1 (en) | Systems and Methods for Training an Image Colorization Model | |
KR20230069892A (en) | Method and apparatus for identifying object representing abnormal temperatures | |
US20230120933A1 (en) | Electronic device mounted on vehicle and operating method of the electronic device | |
US11430137B2 (en) | Electronic device and control method therefor | |
KR102380541B1 (en) | Apparatus for diagnosing fault of facilities using sound spectrogram image and method thereof | |
US20230065385A1 (en) | Apparatus and method for anomaly detection | |
US20240153059A1 (en) | Method and system for anomaly detection using multimodal knowledge graph | |
CN110574041A (en) | Collaborative activation for deep learning domains | |
KR20230075261A (en) | Apparatus for anomaly detection using attention mechanism and method therefor |