WO2022055099A1 - 이상 탐지 방법 및 이를 위한 장치 - Google Patents

이상 탐지 방법 및 이를 위한 장치 Download PDF

Info

Publication number
WO2022055099A1
WO2022055099A1 PCT/KR2021/008516 KR2021008516W WO2022055099A1 WO 2022055099 A1 WO2022055099 A1 WO 2022055099A1 KR 2021008516 W KR2021008516 W KR 2021008516W WO 2022055099 A1 WO2022055099 A1 WO 2022055099A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
embedded
embedded feature
learning
anomaly detection
Prior art date
Application number
PCT/KR2021/008516
Other languages
English (en)
French (fr)
Inventor
김광민
Original Assignee
주식회사 뉴로클
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 뉴로클 filed Critical 주식회사 뉴로클
Publication of WO2022055099A1 publication Critical patent/WO2022055099A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the technical idea of the present disclosure relates to an anomaly detection method and apparatus, and more particularly, to an anomaly detection method and apparatus using auxiliary data.
  • Machine Learning is a field of AI that develops algorithms and technologies that allow computers to learn based on data. It shows excellent performance in prediction and anomaly detection.
  • Anomaly detection refers to finding objects or data that show a pattern different from expected in data.
  • Conventional machine learning-based anomaly detection models calculate the difference between actual data and predicted data, and when the difference is greater than a threshold, anomaly judge that there is
  • An object of the anomaly detection method and apparatus for detecting an anomaly is to provide an anomaly detection method and apparatus capable of increasing the performance of anomaly detection by learning normal data and auxiliary data together.
  • the anomaly detection method comprises the steps of performing learning to map a first embedded feature corresponding to the learning data on an embedding space through a network function - the learning data is contains at least one normal data; inputting input data into the learned network function and mapping a second embedded feature corresponding to the input data to the embedding space; calculating an anomaly score based on a distance between the second embedded feature and at least one of the first embedded features proximate to the second embedded feature in the embedding space; and determining whether the input data is abnormal based on the abnormal score.
  • the training data may further include at least one piece of auxiliary data, and the auxiliary data may have a class that does not overlap with the normal data.
  • the network function maps the first embedded features generated from the training data including the same class to positions close to each other, and the network function maps the first embedded features including the different classes. It can be learned to map the first embedded features generated from training data to locations distant from each other.
  • the network function may perform learning based on at least one loss function among triplet loss, Max margin, NT-Xent, and NT-Logistic.
  • calculating the anomaly score may include: detecting at least one of the first embedded features according to a ranking close to the second embedded feature; and calculating a sum or average of distances between the second embedded feature and the detected first embedded feature.
  • the calculating of the anomaly score may include calculating the anomaly score based on a k nearest neighbor (KNN) function.
  • KNN k nearest neighbor
  • a memory for storing a program for detecting anomaly detection abnormality; and by executing the program, learning to map the first embedded feature corresponding to the learning data on an embedding space through a network function is performed, and inputting the input data into the learned network function to input the input data map a second embedded feature corresponding to to the embedding space, and determine an anomaly score based on a distance in the embedding space between the second embedded feature and at least one of the first embedded features proximate to the second embedded feature. and a processor that calculates and determines whether the input data is abnormal, based on the abnormal score, wherein the learning data may include at least one normal data.
  • the training data may further include at least one piece of auxiliary data, and the auxiliary data may have a class that does not overlap with the normal data.
  • the network function maps the first embedded features generated from the training data including the same class to positions close to each other, and the first embedded features generated from the training data including a different class Embedded features can be learned to map to locations distant from each other.
  • the network function may perform learning based on at least one loss function among triplet loss, Max margin, NT-Xent, and NT-Logistic.
  • the processor is configured to: detect at least one first embedded feature according to a ranking proximate to the second embedded feature, and a distance between the second embedded feature and the detected first embedded feature.
  • the abnormal score may be calculated based on the sum or average of .
  • the processor may calculate the anomaly score based on a k nearest neighbor (KNN) function.
  • KNN k nearest neighbor
  • the abnormality of the input data is accurately detected can do.
  • an anomaly detection method and an apparatus therefor according to embodiments according to the technical spirit of the present disclosure, by embedding learning of a large amount of auxiliary data together with normal data, features distinguishable from auxiliary data are also learned. It is possible to learn a feature extractor of better quality than when learning only normal data, and through this, the accuracy and efficiency of anomaly detection can be increased.
  • FIG. 1 is a flowchart illustrating an anomaly detection method according to an embodiment according to the spirit of the present disclosure.
  • 3 and 4 exemplarily show a learning process of a network function through learning data in an anomaly detection method according to an embodiment according to the technical spirit of the present disclosure.
  • 5 and 6 exemplarily show a process of classifying normal data and abnormal data in an abnormality detection apparatus according to an embodiment according to the technical spirit of the present disclosure.
  • FIG. 7 is a diagram for explaining an effect of using auxiliary data in an anomaly detection method according to an embodiment according to the technical spirit of the present disclosure.
  • FIG. 8 is a block diagram schematically illustrating a configuration of an anomaly detection apparatus according to an embodiment according to the technical spirit of the present disclosure.
  • a component when referred to as “connected” or “connected” with another component, the one component may be directly connected or directly connected to the other component, but in particular It should be understood that, unless there is a description to the contrary, it may be connected or connected through another element in the middle.
  • ⁇ unit means a unit that processes at least one function or operation, which is a processor, a micro Processor (Micro Processor), Micro Controller (Micro Controller), CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerate Processor Unit), DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array) may be implemented as hardware or software, or a combination of hardware and software.
  • a micro Processor Micro Processor
  • Micro Controller Micro Controller
  • CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • APU Accelerate Processor Unit
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • each constituent unit in the present disclosure is merely a division for each main function that each constituent unit is responsible for. That is, two or more components to be described below may be combined into one component, or one component may be divided into two or more for each more subdivided function.
  • each of the constituent units to be described below may additionally perform some or all of the functions of other constituent units in addition to the main function it is responsible for. Of course, it can also be performed by being dedicated to it.
  • a network function may be used synonymously with a neural network and/or a neural network.
  • a neural network may be generally composed of a set of interconnected computational units that may be referred to as nodes, and these nodes may be referred to as neurons.
  • a neural network is generally configured to include a plurality of nodes. Nodes constituting the neural network may be interconnected by one or more links.
  • Some of the nodes constituting the neural network may configure one layer based on distances from the initial input node. For example, a set of nodes having a distance of n from the initial input node may constitute n layers.
  • the neural network described herein may include a deep neural network (DNN) including a plurality of hidden layers in addition to an input layer and an output layer.
  • DNN deep neural network
  • FIG. 1 is a flowchart illustrating an anomaly detection method according to an embodiment according to the spirit of the present disclosure.
  • the anomaly detection method 100 is performed in a personal computer, a workstation, a server computer device, etc. having a computing capability, or in a separate device for this. can be performed.
  • the anomaly detection method 100 may be performed by one or more computing devices. For example, at least one or more steps of the anomaly detection method according to an embodiment of the present disclosure may be performed in a client device, and other steps may be performed in a server device. In this case, the client device and the server device may be connected to each other through a network to transmit/receive an operation result. Alternatively, the anomaly detection method 100 may be performed by distributed computing technology.
  • the anomaly detection apparatus may perform embedding learning through a network function.
  • embedding refers to transforming high-dimensional data into low-dimensional vectors
  • the network function transforms the dimensions of input data to find efficient embedded data (ie, low-dimensional vectors). It may be a network.
  • the network function may learn to map the first embedding feature corresponding to the training data on an embedding space.
  • the mapping of the low-dimensional embedding space is learned from the native space of the training data, the embedding space can be used to determine whether the input data is abnormal based on the proximity of embedded features, as described in detail below.
  • the training data may include at least one normal data and auxiliary data.
  • the normal data and the auxiliary data may be image data, and the auxiliary data may have a class that does not overlap with the normal data.
  • the anomaly detection method by learning a large amount of auxiliary data together with normal data, features distinguishable from auxiliary data are also learned, so that features of better quality than when only normal data are learned
  • the extractor can be learned.
  • the network function maps the first embedded features generated from training data including the same class to positions close to each other, and maps the first embedded features generated from training data including different classes to positions far from each other. can be learned to map. Accordingly, the network function may map normal data to positions close to each other on the embedding space, and to map auxiliary data having different classes to positions far from normal data.
  • the network function is based on a loss function of at least one of a triplet loss (eg, semi-hard triplet loss and/or hard triplet loss), Max margin, NT-Xent and NT-Logistic. It can be implemented to perform learning.
  • a triplet loss eg, semi-hard triplet loss and/or hard triplet loss
  • Max margin e.g., Max margin
  • NT-Xent e.g., Max margin
  • the anomaly detection method 100 may further include the step of preparing training data before step S110.
  • the anomaly detection apparatus may generate learning data based on at least one normal data input by a user or determined to be normal by a network function and auxiliary data input by the user or pre-stored.
  • the anomaly detection apparatus may input the input data into the network function learned in step S110 to map the second embedded feature corresponding to the input data to the embedding space.
  • the second embedded feature may be obtained by converting input data into a low-dimensional vector in the same way as the first embedded feature.
  • the anomaly detection apparatus may calculate an anomaly score based on a distance between the second embedded feature and at least one first embedded feature close to the second embedded feature in the embedding space.
  • step S130 comprises: detecting at least one said first embedded feature according to a ranking that approximates a second embedded feature; and summing or averaging a distance between the second embedded feature and the detected first embedded feature. It may include the step of calculating
  • the anomaly detection apparatus may calculate an anomaly score based on a k nearest neighbor (KNN) function. That is, for example, the anomaly detection device detects k (at least one) of the first embedded features according to the order of proximity to the second embedded feature based on the position of the second embedded feature in the embedding space through the KNN function, An anomaly score may be calculated based on a sum or average of distances between the second embedded feature and the detected k first embedded features.
  • KNN k nearest neighbor
  • the anomaly detection apparatus may determine whether the input data is abnormal based on the calculated anomaly score. That is, through step S110, since the first embedded features corresponding to the normal data included in the training data are clustered close to each other in the embedding space, the distance between the first embedded feature and the second embedded feature corresponding to the input data When the anomaly score is equal to or greater than the threshold value based on , the input data may be determined as abnormal data.
  • the user can find an optimal threshold for the threshold value for discriminating between normality and abnormality of input data through the calculated anomaly score and detect abnormal data based on this. For example, after inputting a plurality of verification data to the learned network function, an abnormal score having the highest f1 score value may be set as a threshold value.
  • 3 and 4 exemplarily show a learning process of a network function through learning data in an anomaly detection method according to an embodiment according to the technical spirit of the present disclosure.
  • learning data 310 including a plurality of normal images 311 and 312 and an auxiliary image 313 is input to the network function 320 to perform embedding learning.
  • a first embedded feature corresponding to the training data is output, and the first embedded feature may be a high-dimensional image feature converted into a low-dimensional vector.
  • the learning of such a network function may be performed based on a loss function such as a triplet loss.
  • a loss function such as a triplet loss
  • a relationship between a positive sample and a negative sample can be learned in the embedding space. That is, data having similar characteristics (or the same class) can be learned to be located close in the embedding space, and data having different characteristics (or different classes) to be located farther away from the embedding space.
  • the normal image (or first embedded features corresponding to the normal image) may be clustered by being disposed close to each other in the embedding space.
  • 5 and 6 exemplarily show a process of classifying normal data and abnormal data in an abnormality detection apparatus according to an embodiment according to the technical spirit of the present disclosure.
  • the second embedded feature when the input data is a normal image, the second embedded feature is located close to the first embedded feature of the normal image clustered on the embedding space by learning the network function, and when the input data is an abnormal image, the second embedded feature is The embedded feature may be positioned to be spaced apart from the first embedded feature of the normal image. Accordingly, an anomaly score of the input data may be calculated according to the distance (ie, the sum or average of distances) between the second embedded feature and the adjacent first embedded feature in the embedding space.
  • the anomaly score may be calculated as an average of 6 of them.
  • the abnormality detecting apparatus may determine that the first input data is a normal image and determine that the second input data is an abnormal image.
  • FIG. 7 is a diagram for explaining an effect of using auxiliary data in an anomaly detection method according to an embodiment according to the technical spirit of the present disclosure.
  • Fig. 7(a) shows the distribution of embedded characteristics in the embedding space when the network function is learned by embedding only with normal data
  • Fig. 7(b) is a network function using normal data and auxiliary data. It shows the distribution of embedded characteristics in the embedding space when learning is embedded.
  • the network function is learned with the auxiliary data 720 , it is learned in a direction to reduce the variance between the normal data 710 , and the differential feature for identifying the normal data 710 is further developed through the auxiliary data 720 .
  • the network function is learned with the auxiliary data 720 , it is learned in a direction to reduce the variance between the normal data 710 , and the differential feature for identifying the normal data 710 is further developed through the auxiliary data 720 .
  • FIG. 8 is a block diagram schematically illustrating a configuration of an anomaly detection apparatus according to an embodiment according to the technical spirit of the present disclosure.
  • the communication unit 810 may receive input data for determining whether there is an abnormality.
  • the communication unit 810 may include a wired/wireless communication unit.
  • the communication unit 810 is a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile communication network ( It may include one or more components that allow communication through a mobile radio communication network), a satellite communication network, and a combination thereof.
  • the communication unit 810 includes a wireless communication unit
  • the communication unit 810 wirelessly transmits and receives data or signals using cellular communication or a wireless LAN (eg, Wi-Fi).
  • the communication unit may transmit/receive data (eg, input data for determining whether an abnormality is present, etc.) or a signal with an external device or an external server under the control of the processor 840 .
  • the input unit 820 may receive various user commands through an external manipulation.
  • the input unit 820 may include or connect one or more input devices.
  • the input unit 820 may be connected to an interface for various inputs, such as a keypad and a mouse, to receive a user command.
  • the input unit 820 may include an interface such as a Thunderbolt as well as a USB port.
  • the input unit 820 may include or combine various input devices such as a touch screen and a button to receive an external user command.
  • the memory 830 may store a program for the operation of the processor 840 and may temporarily or permanently store input/output data.
  • the memory 830 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory, etc.), and a RAM (RAM).
  • SRAM, ROM, EEPROM, PROM, magnetic memory, a magnetic disk, and an optical disk may include at least one type of storage medium.
  • the memory 830 may store various network functions and algorithms, and may store various data, programs (one or more instructions), applications, software, commands, codes, etc. for driving and controlling the device 800 . there is.
  • the processor 840 may control the overall operation of the device 800 .
  • the processor 840 may execute one or more programs stored in the memory 830 .
  • the processor 840 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to the technical idea of the present disclosure are performed.
  • the processor 840 may learn to map the first embedded feature corresponding to the training data on an embedding space through a network function.
  • the training data may include at least one normal data and/or auxiliary data.
  • the processor 840 may input the input data into an embedding-learned network function to map the second embedded feature corresponding to the input data to the embedding space.
  • the processor 840 calculates an anomaly score based on a distance between the second embedded feature and at least one first embedded feature proximate to the second embedded feature in the embedding space, and based on the anomaly score, It is possible to determine whether the input data is abnormal.
  • the processor 840 detects the at least one first embedded feature according to a rank that approximates the second embedded feature in the embedding space, and a sum of the distance between the second embedded feature and the detected first embedded feature.
  • the anomaly score may be calculated based on the average.
  • the processor 840 may calculate an anomaly score of the input data based on a k nearest neighbor (KNN) function.
  • the anomaly detection method may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the medium may be specially designed and configured for the present disclosure, or may be known and available to those skilled in the art of computer software.
  • Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks.
  • - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
  • the anomaly detection method according to the disclosed embodiments may be provided as included in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product may include a S/W program and a computer-readable storage medium in which the S/W program is stored.
  • computer program products may include products (eg, downloadable apps) in the form of S/W programs distributed electronically through manufacturers of electronic devices or electronic markets (eg, Google Play Store, App Store). there is.
  • the S/W program may be stored in a storage medium or may be temporarily generated.
  • the storage medium may be a server of a manufacturer, a server of an electronic market, or a storage medium of a relay server temporarily storing a SW program.
  • the computer program product in a system consisting of a server and a client device, may include a storage medium of the server or a storage medium of the client device.
  • a third device eg, a smart phone
  • the computer program product may include a storage medium of the third device.
  • the computer program product may include the S/W program itself transmitted from the server to the client device or a third device, or transmitted from the third device to the client device.
  • one of the server, the client device and the third device may execute the computer program product to perform the method according to the disclosed embodiments.
  • two or more of a server, a client device, and a third device may execute a computer program product to distribute the method according to the disclosed embodiments.
  • a server eg, a cloud server or an artificial intelligence server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 개시는 이상 탐지 방법 및 이를 위한 장치에 관한 것으로, 본 개시의 일 실시예에 따른 이상 탐지 방법은, 네트워크 함수를 통해 학습 데이터에 대응하는 제 1 임베디드 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행하는 단계 - 상기 학습 데이터는 적어도 하나의 정상 데이터를 포함함 -; 입력 데이터를 학습된 상기 네트워크 함수에 입력하여 상기 입력 데이터에 대응하는 제 2 임베디드 특징을 상기 임베딩 공간에 매핑하는 단계; 상기 임베딩 공간에서 상기 제 2 임베디드 특징과 상기 제 2 임베디드 특징에 근접하는 적어도 하나의 상기 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출하는 단계; 및 상기 이상 스코어에 기초하여, 상기 입력 데이터의 이상 여부를 판별하는 단계를 포함할 수 있다.

Description

이상 탐지 방법 및 이를 위한 장치
본 개시(disclosure)의 기술적 사상은 이상 탐지 방법 및 그 장치에 대한 것으로, 더욱 상세하게는 보조 데이터를 활용한 이상 탐지 방법 및 그 장치에 관한 것이다.
머신러닝(Machine Learning)은 AI의 한 분야로 데이터를 바탕으로 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야이며, 이미지 처리, 영상 인식, 음성 인식, 인터넷 검색 등의 다양한 분야의 핵심 기술로 예측(prediction) 및 이상 탐지(anomaly detection)에 탁월한 성과를 나타낸다.
이상 탐지란 데이터에서 예상과는 다른 패턴을 보이는 개체 또는 데이터를 찾는 것을 말하는 것으로, 종래의 머신러닝 기반의 이상 탐지 모델은 실제 데이터와 예측 데이터의 차이를 계산하고, 차이가 임계값 이상인 경우 이상이 있는 것으로 판단한다.
종래 머신러닝에 기반한 이상 탐지 방법들이 개시되어 왔으나, 기존 지도학습 기반의 이상 탐지 모델의 경우 데이터 수집 시, 데이터에 일일이 레이블링 작업을 하기는 쉽지 않았다.
또한, 데이터의 양이 극히 적은 이상 데이터를 학습함에 있어서 소량의 이상 데이터만으로 분류 성능을 높이기 어려워 정상 데이터 및 이상 데이터를 구분할 만큼 훈련하기 어렵다는 문제가 있었다.
본 개시의 기술적 사상에 따른 이상 탐지 방법 및 이를 위한 장치가 이루고자 하는 기술적 과제는, 정상 데이터와 보조 데이터를 함께 학습시킴으로써 이상 탐지의 성능을 높일 수 있는 이상 탐지 방법 및 장치를 제공하는 데에 있다.
본 개시의 기술적 사상에 따른 이상 탐지 방법 및 이를 위한 장치가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제는 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 개시의 기술적 사상에 의한 일 양태에 따르면, 이상 탐지 방법은 네트워크 함수를 통해 학습 데이터에 대응하는 제 1 임베디드 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행하는 단계 - 상기 학습 데이터는 적어도 하나의 정상 데이터를 포함함 - ; 입력 데이터를 학습된 상기 네트워크 함수에 입력하여 상기 입력 데이터에 대응하는 제 2 임베디드 특징을 상기 임베딩 공간에 매핑하는 단계; 상기 임베딩 공간에서 상기 제 2 임베디드 특징과 상기 제 2 임베디드 특징에 근접하는 적어도 하나의 상기 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출하는 단계; 및 상기 이상 스코어에 기초하여, 상기 입력 데이터의 이상 여부를 판별하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 학습 데이터는 적어도 하나의 보조 데이터를 더 포함하고, 상기 보조 데이터는 상기 정상 데이터와 중첩되지 않는 클래스를 가질 수 있다.
예시적인 실시예에 따르면, 상기 학습을 수행하는 단계에서, 상기 네트워크 함수는, 동일 클래스를 포함하는 상기 학습 데이터로부터 생성된 상기 제 1 임베디드 특징을 서로 가까운 위치에 매핑하고, 상이한 클래스를 포함하는 상기 학습 데이터로부터 생성된 상기 제 1 임베디드 특징을 서로 먼 위치에 매핑하도록 학습될 수 있다.
예시적인 실시예에 따르면, 상기 학습을 수행하는 단계에서, 상기 네트워크 함수는, Triplet loss, Max margin, NT-Xent 및 NT-Logistic 중 적어도 하나의 손실 함수(loss function)에 기초하여 학습을 수행할 수 있다.
예시적인 실시예에 따르면, 상기 이상 스코어를 산출하는 단계는, 상기 제 2 임베디드 특징에 근접하는 순위에 따라 적어도 하나의 상기 제 1 임베디드 특징을 검출하는 단계; 및 상기 제 2 임베디드 특징과 검출된 상기 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 산출하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 이상 스코어를 산출하는 단계는, KNN(k nearest neighbor) 함수에 기초하여 상기 이상 스코어를 산출할 수 있다.
본 개시의 기술적 사상에 의한 따른 양태에 따르면, 이상 탐지 이상 탐지를 위한 프로그램을 저장하는 메모리; 및 상기 프로그램을 실행함으로써, 네트워크 함수를 통해 학습 데이터에 대응하는 제 1 임베디드 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행하며, 입력 데이터를 학습된 상기 네트워크 함수에 입력하여 상기 입력 데이터에 대응하는 제 2 임베디드 특징을 상기 임베딩 공간에 매핑하며, 상기 임베딩 공간에서 상기 제 2 임베디드 특징과 상기 제 2 임베디드 특징에 근접하는 적어도 하나의 상기 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출하고, 상기 이상 스코어에 기초하여, 상기 입력 데이터의 이상 여부를 판별하는 프로세서;를 포함하며, 상기 학습 데이터는 적어도 하나의 정상 데이터를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 학습 데이터는 적어도 하나의 보조 데이터를 더 포함하고, 상기 보조 데이터는 상기 정상 데이터와 중첩되지 않는 클래스를 가질 수 있다.
예시적인 실시예에 따르면, 상기 네트워크 함수는, 동일 클래스를 포함하는 상기 학습 데이터로부터 생성된 상기 제 1 임베디드 특징을 서로 가까운 위치에 매핑하고, 상이한 클래스를 포함하는 상기 학습 데이터로부터 생성된 상기 제 1 임베디드 특징을 서로 먼 위치에 매핑하도록 학습될 수 있다.
예시적인 실시예에 따르면, 상기 네트워크 함수는, Triplet loss, Max margin, NT-Xent 및 NT-Logistic 중 적어도 하나의 손실 함수(loss function)에 기초하여 학습을 수행할 수 있다.
예시적인 실시예에 따르면, 상기 프로세서는, 상기 제 2 임베디드 특징에 근접하는 순위에 따라 적어도 하나의 상기 제 1 임베디드 특징을 검출하고, 상기 제 2 임베디드 특징과 검출된 상기 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 기초로 상기 이상 스코어를 산출할 수 있다.
예시적인 실시예에 따르면, 상기 프로세서는, KNN(k nearest neighbor) 함수에 기초하여 상기 이상 스코어를 산출할 수 있다.
본 개시의 기술적 사상에 의한 실시예들에 따른 이상 탐지 방법 및 이를 위한 장치에 따르면, 임베팅 공간에서 학습 데이터(즉, 정상 데이터)와 입력 데이터 간의 거리에 기초하여 입력 데이터의 이상 여부를 정확하게 탐지할 수 있다.
또한, 본 개시의 기술적 사상에 의한 실시예들에 따른 이상 탐지 방법 및 이를 위한 장치에 따르면, 다량의 보조 데이터를 정상 데이터와 함께 임베딩 학습함으로 인해, 보조 데이터와의 구별 가능한 특징도 같이 학습하게 되어 정상 데이터만 학습할 때보다 더 좋은 품질의 특징 추출기를 학습할 수 있으며, 이를 통해, 이상 감지의 정확성 및 효율을 증대시킬 수 있다.
본 개시의 기술적 사상에 따른 이상 탐지 방법 및 이를 위한 장치가 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 개시에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법을 설명하기 위한 흐름도이다.
도 2는 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법에 있어서, 학습 데이터를 예시적으로 도시이다.
도 3 및 도 4는 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법에 있어서 학습 데이터를 통한 네트워크 함수의 학습 과정을 예시적으로 도시한다.
도 5 및 도 6은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 장치에 있어서, 정상 데이터 및 이상 데이터를 구분하는 과정을 예시적으로 도시한다.
도 7은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법에서 보조 데이터를 활용한 효과를 설명하기 위한 도면이다.
도 8은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 장치의 구성을 간략히 도시한 블록도이다.
본 개시의 기술적 사상은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 그러나, 이는 본 개시의 기술적 사상을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 기술적 사상의 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 개시의 기술적 사상을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 개시의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 개시에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 개시에 기재된 "~부", "~기", "~자", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 프로세서(Processor), 마이크로 프로세서(Micro Processer), 마이크로 컨트롤러(Micro Controller), CPU(Central Processing Unit), GPU(Graphics Processing Unit), APU(Accelerate Processor Unit), DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array) 등과 같은 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
그리고 본 개시에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.
이하, 본 개시의 실시예들을 차례로 상세히 설명한다.
본 명세서에 걸쳐, 네트워크 함수는 신경망 네트워크 및/또는 뉴럴 네트워크(neural network)와 동일한 의미로 사용될 수 있다. 여기서, 뉴럴 네트워크(신경망)는 일반적으로 노드라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있고, 이러한 노드들은 뉴런으로 지칭될 수 있다. 뉴럴 네트워크는 일반적으로 복수의 노드들을 포함하여 구성된다. 뉴럴 네트워크를 구성하는 노드들은 하나 이상의 링크에 의해 상호 연결될 수 있다.
뉴럴 네트워크를 구성하는 노드들 중 일부는 최초 입력 노드로부터의 거리들에 기초하여 하나의 레이어(layer)를 구성할 수 있다. 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은 n 레이어를 구성할 수 있다.
본 명세서에서 설명하는 뉴럴 네트워크는 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 딥 뉴럴 네트워크(Deep Neural Network, DNN)를 포함할 수 있다.
도 1은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법을 설명하기 위한 흐름도이다.
본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법(100)은 연산 능력을 구비한 개인용 컴퓨터(Personal Computer), 워크스테이션(work station), 서버용 컴퓨터 장치 등에서 수행되거나 이를 위한 별도의 장치에서 수행될 수 있다.
또한, 이상 탐지 방법(100)은 하나 이상의 연산 장치들에서 수행될 수도 있다. 예를 들어, 본 개시의 일 실시예에 따른 이상 탐지 방법 중 적어도 하나 이상의 단계들은 클라이언트 디바이스에서, 다른 단계들은 서버 디바이스에서 수행될 수 있다. 이러한 경우, 클라이언트 디바이스와 서버 디바이스는 네트워크로 연결되어 연산 결과를 송수신할 수 있다. 또는, 이상 탐지 방법(100)은 분산 컴퓨팅 기술에 의해 수행될 수도 있다.
S110 단계에서, 이상 탐지 장치는 네트워크 함수를 통해 임베딩 학습을 수행할 수 있다. 여기서 임베딩(embedding)은 고차원의 데이터를 저차원의 벡터로 변환하는 것을 지칭하며, 네트워크 함수는 입력된 데이터의 차원(dimension)을 변환하여 효율적인 임베디드 데이터(즉, 저차원의 벡터)를 찾기 위한 신경망 네트워크일 수 있다.
S110 단계에서, 네트워크 함수는 학습 데이터에 대응하는 제 1 임베딩 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행할 수 있다. 학습 데이터들의 네이티브 공간(native space)으로부터 저차원의 임베딩 공간의 매핑이 학습되면, 임베딩 공간은 이하 상술되는 바와 같이, 임베디드 특징들의 근접성에 기반하여 입력 데이터의 이상 여부를 결정하는 데 사용될 수 있다.
일 실시예에서, 학습 데이터는 적어도 하나의 정상 데이터와 보조 데이터를 포함할 수 있다. 예를 들어, 도 2에서 도시되는 바와 같이, 정상 데이터 및 보조 데이터는 이미지 데이터일 수 있으며, 보조 데이터는 정상 데이터와 중첩되지 않는 클래스를 가질 수 있다.
본 개시의 기술적 사상에 의한 이상 탐지 방법에 따르면, 다량의 보조 데이터를 정상 데이터와 함께 학습함으로 인해, 보조 데이터와의 구별 가능한 특징도 같이 학습하게 되어 정상 데이터만 학습할 때보다 더 좋은 품질의 특징 추출기를 학습할 수 있게 된다.
S110 단계에서, 네트워크 함수는 동일 클래스를 포함하는 학습 데이터로부터 생성되는 상기 제 1 임베디드 특징을 서로 가까운 위치에 매핑하고, 상이한 클래스를 포함하는 학습 데이터로부터 생성되는 상기 제 1 임베디드 특징을 서로 먼 위치에 매핑하도록 학습될 수 있다. 이에 따라, 네트워크 함수는 정상 데이터를 임베딩 공간 상의 서로 근접한 위치에 매핑하고, 상이한 클래스를 가지는 보조 데이터를 정상 데이터와 먼 위치에 매핑할 수 있다.
일 실시예에서, 네트워크 함수는 Triplet loss(예를 들어, Semi-hard triplet loss 및/또는 Hard triplet loss), Max margin, NT-Xent 및 NT-Logistic 중 적어도 하나의 손실 함수(loss function)에 기초하여 학습을 수행하도록 구현될 수 있다.
일 실시예에서, 이상 탐지 방법(100)은 S110 단계 이전에, 학습 데이터를 준비하는 단계를 더 포함할 수 있다. 예를 들어, 이상 탐지 장치는 사용자에 의해 입력되거나, 네트워크 함수에 의해 정상이라고 판별된 적어도 하나의 정상 데이터와 사용자에 의해 입력되거나, 기 저장된 보조 데이터를 기초로 학습 데이터를 생성할 수 있다.
S120 단계에서, 이상 탐지 장치는 입력 데이터를 S110 단계를 통해 학습된 네트워크 함수에 입력하여 입력 데이터에 대응하는 제 2 임베디드 특징을 임베딩 공간에 매핑할 수 있다. 제 2 임베디드 특징은 제 1 임베디드 특징과 동일하게 입력 데이터를 저차원의 벡터로 변환한 것일 수 있다.
S130 단계에서, 이상 탐지 장치는 임베딩 공간에서 제 2 임베디드 특징과 제 2 임베디드 특징에 근접하는 적어도 하나의 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출할 수 있다.
일 실시예에서, S130 단계는, 제 2 임베디드 특징에 근접하는 순위에 따라 적어도 하나의 상기 제 1 임베디드 특징을 검출하는 단계 및 제 2 임베디드 특징과 검출된 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 산출하는 단계를 포함할 수 있다.
일 실시예에서, 이상 탐지 장치는 KNN(k nearest neighbor) 함수에 기초하여 이상 스코어를 산출할 수 있다. 즉, 예를 들어, 이상 탐지 장치는 KNN 함수를 통해 임베딩 공간에서 제 2 임베디드 특징의 위치를 기준으로 제 2 임베디드 특징 근접하는 순위에 따라 k개(적어도 하나)의 제 1 임베디드 특징을 검출하고, 제 2 임베디드 특징과 검출된 k개의 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 기초로 이상 스코어를 산출할 수 있다.
S140 단계에서, 이상 탐지 장치는 산출된 이상 스코어에 기초하여 입력 데이터의 이상 여부를 판별할 수 있다. 즉, S110 단계를 통해, 학습 데이터에 포함된 정상 데이터들에 대응하는 제 1 임베디드 특징들은 임베딩 공간상에서 서로 근접하여 군집화되기 때문에, 이러한 제 1 임베디드 특징과 입력 데이터에 대응하는 제 2 임베디드 특징 간의 거리에 기초하여 이상 스코어가 임계값 이상인 경우, 입력 데이터를 이상 데이터로 판별할 수 있다.
여기서, 산출된 이상 스코어를 통해 입력 데이터의 정상 및 이상을 구분하는 임계값은 사용자가 최적의 임계치(threshold)를 찾아 이를 기준으로 이상 데이터를 탐지할 수 있다. 예를 들어, 복수의 검증 데이터를 학습된 네트워크 함수에 입력한 다음, 가장 높은 f1 score값을 가지게 되는 이상 스코어를 임계치로 설정할 수 있다.
도 3 및 도 4는 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법에 있어서 학습 데이터를 통한 네트워크 함수의 학습 과정을 예시적으로 도시한다.
먼저, 도 3을 참조하면, 복수의 정상 이미지(311, 312)와 보조 이미지(313)를 포함하는 학습 데이터(310)가 네트워크 함수(320)로 입력되어 임베딩 학습이 수행될 수 있다. 임베딩 학습에 따라, 학습 데이터에 대응하는 제 1 임베디드 특징이 출력되며, 이러한 제 1 임베디드 특징은 고차원의 이미지의 특징을 저차원의 벡터로 변환한 것일 수 있다.
도 4를 참조하면, 이러한 네트워크 함수의 학습은 Triplet loss 등의 손실 함수에 기반하여 수행될 수 있다. 이와 같이, Triplet loss 등의 손실 함수를 사용하여 학습을 진행하게 되면, 임베딩 공간에서 포지티브(positive) 샘플과 네거티브(negative) 샘플 간의 관계를 학습할 수 있다. 즉, 유사한 특징(또는, 동일 클래스)를 가지는 데이터를 임베딩 공간상에서 근접하게 위치시키고, 상이한 특징(또는, 다른 클래스)을 가지는 데이터를 임베딩 공간상에서 멀리 떨어지도록 위치시키도록 학습될 수 있다.
이러한 학습을 통해, 정상 이미지(또는, 정상 이미지에 대응하는 제 1 임베디드 특징들)은 임베딩 공간상에서 서로 근접 배치되어 군집화(clustering)될 수 있다.
도 5 및 도 6은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 장치에 있어서, 정상 데이터 및 이상 데이터를 구분하는 과정을 예시적으로 도시한다.
먼저, 도 5 및 도 6을 참조하면, 입력 데이터(예를 들어, 정상인지 이상인지 판별되어야 하는 이미지)가 학습 데이터에 의해 임베딩 학습된 네트워크 함수에 입력되면, 입력 데이터에 대응하는 제 2 임베디드 특징이 저차원의 임베딩 공간 상의 일정한 위치로 매핑될 수 있다.
이때, 입력 데이터가 정상 이미지인 경우, 제 2 임베디드 특징은 네트워크 함수의 학습에 의해 임베딩 공간 상에 군집화된 정상 이미지의 제 1 임베디드 특징과 근접하여 위치하며, 입력 데이터가 이상 이미지인 경우, 제 2 임베디드 특징은 정상 이미지의 제 1 임베디드 특징과 멀리 이격하도록 위치될 수 있다. 이에 따라, 임베딩 공간에서 제 2 임베디드 특징과 근접하는 제 1 임베디드 특징 사이에 거리(즉, 거리의 합 또는 평균)에 따라, 입력 데이터의 이상 스코어를 산출할 수 있다.
예를 들어, 도 6에 도시되는 바와 같이, 임베딩 공간이 2차원 공간이라고 가정하고, 제 1 입력 데이터에 대응하는 제 2 임베디드 특징에 근접하는 3개의 제 1 임베디드 특징 사이의 거리가 각각 2.7, 2, 1 인 경우, 이상 스코어는 이들의 평균인 1.9로 산출될 수 있다. 또한, 제 2 입력 데이터에 대응하는 제 2 임베디드 특징에 근접하는 3개의 제 1 임베디드 특징 사이의 거리가 각각 8, 6, 7 인 경우, 이상 스코어는 이들의 평균인 6으로 산출될 수 있다.
이때, 이상 스코어의 임계값이 3이라면, 이상 감지 장치는 제 1 입력 데이터를 정상 이미지라고 판단하고, 제 2 입력 데이터를 이상 이미지라고 판단할 수 있다.
도 7은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 방법에서 보조 데이터를 활용한 효과를 설명하기 위한 도면이다.
구체적으로, 도 7의 (a)는 정상 데이터만으로 네트워크 함수를 임베딩 학습시킨 경우의 임베딩 공간에서의 임베디드 특성의 분포를 도시하며, 도 7의 (b)는 정상 데이터와 보조 데이터를 활용하여 네트워크 함수를 임베딩 학습시킨 경우의 임베딩 공간에서의 임베디드 특성의 분포를 도시한다.
정상 데이터만으로 학습을 하게 되면, 먼저, 도 7의 (a)에 도시되는 바와 같이, 임베딩 공간에 매핑된 정상 데이터(710)의 군집도가 떨어지게 되는 반면, 보조 데이터(720)와 같이 학습시키는 경우에는, 도 7의 (b)에 도시되는 바와 같이, 임베딩 공간에 매핑된 정상 데이터(710)의 군집도를 보다 향상시킬 수 있다.
즉, 보조 데이터(720)를 같이 네트워크 함수를 학습시키면, 정상 데이터(710) 사이의 분산을 줄이는 방향으로 학습되며, 정상 데이터(710)를 식별하기 위한 차별적 특징을 보조 데이터(720)를 통해 더욱 풍부하게 학습하게 됨으로써, 이상 데이터의 판별 효율을 보다 향상시킬 수 있게 된다.
도 8은 본 개시의 기술적 사상에 의한 일 실시예에 따른 이상 탐지 장치의 구성을 간략히 도시한 블록도이다.
통신부(810)는 이상 여부를 판별하기 위한 입력 데이터를 수신할 수 있다. 통신부(810)는 유무선 통신부를 포함할 수 있다. 통신부(810)가 유선 통신부를 포함하는 경우, 통신부(810)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 통하여 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 또한, 통신부(810)가 무선 통신부를 포함하는 경우, 통신부(810)는 셀룰러 통신, 무선랜(예를 들어, 와이-파이(Wi-Fi)) 등을 이용하여 무선으로 데이터 또는 신호를 송수신할 수 있다. 일 실시예에서, 통신부는 프로세서(840)의 제어에 의해 외부 장치 또는 외부 서버와 데이터(예를 들어, 이상 여부 판별을 위한 입력 데이터 등) 또는 신호를 송수신할 수 있다.
입력부(820)는 외부의 조작을 통해 다양한 사용자 명령을 수신할 수 있다. 이를 위해, 입력부(820)는 하나 이상의 입력 장치를 포함하거나 연결할 수 있다. 예를 들어, 입력부(820)는 키패드, 마우스 등 다양한 입력을 위한 인터페이스와 연결되어 사용자 명령을 수신할 수 있다. 이를 위해, 입력부(820)는 USB 포트 뿐만 아니라 선더볼트 등의 인터페이스를 포함할 수도 있다. 또한, 입력부(820)는 터치스크린, 버튼 등의 다양한 입력 장치를 포함하거나 이들과 결합하여 외부의 사용자 명령을 수신할 수 있다.
메모리(830)는 프로세서(840)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들을 임시 또는 영구 저장할 수 있다. 메모리(830)는 플래시 메모리(flash memory) 타입, 하드디스크(hard disk) 타입, 멀티미디어 카드 마이크로(multimedia card micro) 타입, 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM), SRAM, 롬(ROM), EEPROM, PROM, 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
또한, 메모리(830)는 다양한 네트워크 함수 및 알고리즘을 저장할 수 있으며, 장치(800)를 구동하고 제어하기 위한 다양한 데이터, 프로그램(하나 이상이 인스트럭션들), 어플리케이션, 소프트웨어, 명령, 코드 등을 저장할 수 있다.
프로세서(840)는 장치(800)의 전반적인 동작을 제어할 수 있다. 프로세서(840)는 메모리(830)에 저장되는 하나 이상의 프로그램들을 실행할 수 있다. 프로세서(840)는 중앙 처리 장치(Central Processing Unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU) 또는 본 개시의 기술적 사상에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다.
일 실시예에서, 프로세서(840)는 네트워크 함수를 통해 학습 데이터에 대응하는 제 1 임베디드 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행할 수 있다. 이때, 학습 데이터는 적어도 하나의 정상 데이터 및/또는 보조 데이터를 포함할 수 있다.
일 실시예에서, 프로세서(840)는 입력 데이터를 임베딩 학습된 네트워크 함수에 입력하여 상기 입력 데이터에 대응하는 제 2 임베디드 특징을 임베딩 공간에 매핑할 수 있다.
일 실시예에서, 프로세서(840)는 임베딩 공간에서 제 2 임베디드 특징과 제 2 임베디드 특징에 근접하는 적어도 하나의 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출하고, 이상 스코어에 기초하여, 입력 데이터의 이상 여부를 판별할 수 있다.
일 실시예에서, 프로세서(840)는 임베딩 공간에서 제 2 임베디드 특징에 근접하는 순위에 따라 적어도 하나의 제 1 임베디드 특징을 검출하고, 제 2 임베디드 특징과 검출된 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 기초로 상기 이상 스코어를 산출할 수 있다.
일 실시예에서, 프로세서(840)는 KNN(k nearest neighbor) 함수에 기초하여 입력 데이터의 이상 스코어를 산출할 수 있다.
일 실시예에 따른 이상 탐지 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 개시를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
또한, 개시된 실시예들에 따른 이상 탐지 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 클라이언트 장치로 구성되는 시스템에서, 서버의 저장매체 또는 클라이언트 장치의 저장매체를 포함할 수 있다. 또는, 서버 또는 클라이언트 장치와 통신 연결되는 제 3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제 3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 클라이언트 장치 또는 제 3 장치로 전송되거나, 제 3 장치로부터 클라이언트 장치로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 클라이언트 장치 및 제 3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버, 클라이언트 장치 및 제 3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(예로, 클라우드 서버 또는 인공 지능 서버 등)가 서버에 저장된 컴퓨터 프로그램 제품을 실행하여, 서버와 통신 연결된 클라이언트 장치가 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 개시의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 개시의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 개시의 권리범위에 속한다.

Claims (13)

  1. 이상 탐지(anomaly detection) 방법에 있어서,
    네트워크 함수를 통해 학습 데이터에 대응하는 제 1 임베디드 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행하는 단계 - 상기 학습 데이터는 적어도 하나의 정상 데이터를 포함함 - ;
    입력 데이터를 학습된 상기 네트워크 함수에 입력하여 상기 입력 데이터에 대응하는 제 2 임베디드 특징을 상기 임베딩 공간에 매핑하는 단계;
    상기 임베딩 공간에서 상기 제 2 임베디드 특징과 상기 제 2 임베디드 특징에 근접하는 적어도 하나의 상기 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출하는 단계; 및
    상기 이상 스코어에 기초하여, 상기 입력 데이터의 이상 여부를 판별하는 단계를 포함하는, 이상 탐지 방법.
  2. 제 1 항에 있어서,
    상기 학습 데이터는 적어도 하나의 보조 데이터를 더 포함하고,
    상기 보조 데이터는 상기 정상 데이터와 중첩되지 않는 클래스를 가지는, 이상 탐지 방법.
  3. 제 1 항에 있어서,
    상기 학습을 수행하는 단계에서,
    상기 네트워크 함수는, 동일 클래스를 포함하는 상기 학습 데이터로부터 생성되는 상기 제 1 임베디드 특징을 서로 가까운 위치에 매핑하고, 상이한 클래스를 포함하는 상기 학습 데이터로부터 생성되는 상기 제 1 임베디드 특징을 서로 먼 위치에 매핑하도록 학습되는, 이상 탐지 방법.
  4. 제 3 항에 있어서,
    상기 학습을 수행하는 단계에서,
    상기 네트워크 함수는, Triplet loss, Max margin, NT-Xent 및 NT-Logistic 중 적어도 하나의 손실 함수(loss function)에 기초하여 학습을 수행하는, 이상 탐지 방법.
  5. 제 1 항에 있어서,
    상기 이상 스코어를 산출하는 단계는,
    상기 제 2 임베디드 특징에 근접하는 순위에 따라 적어도 하나의 상기 제 1 임베디드 특징을 검출하는 단계; 및
    상기 제 2 임베디드 특징과 검출된 상기 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 산출하는 단계를 포함하는, 이상 탐지 방법.
  6. 제 5 항에 있어서,
    상기 이상 스코어를 산출하는 단계는,
    KNN(k nearest neighbor) 함수에 기초하여 상기 이상 스코어를 산출하는, 이상 탐지 방법.
  7. 이상 탐지 장치에 있어서,
    이상 탐지를 위한 프로그램을 저장하는 메모리; 및
    상기 프로그램을 실행함으로써, 네트워크 함수를 통해 학습 데이터에 대응하는 제 1 임베디드 특징을 임베딩 공간(embedding space) 상에 매핑하는 학습을 수행하며, 입력 데이터를 학습된 상기 네트워크 함수에 입력하여 상기 입력 데이터에 대응하는 제 2 임베디드 특징을 상기 임베딩 공간에 매핑하며, 상기 임베딩 공간에서 상기 제 2 임베디드 특징과 상기 제 2 임베디드 특징에 근접하는 적어도 하나의 상기 제 1 임베디드 특징 사이의 거리에 기초하여 이상 스코어를 산출하고, 상기 이상 스코어에 기초하여, 상기 입력 데이터의 이상 여부를 판별하는 프로세서;를 포함하며,
    상기 학습 데이터는 적어도 하나의 정상 데이터를 포함하는, 장치.
  8. 제 7 항에 있어서,
    상기 학습 데이터는 적어도 하나의 보조 데이터를 더 포함하고,
    상기 보조 데이터는 상기 정상 데이터와 중첩되지 않는 클래스를 가지는, 장치.
  9. 제 7 항에 있어서,
    상기 네트워크 함수는, 동일 클래스를 포함하는 상기 학습 데이터로부터 생성되는 상기 제 1 임베디드 특징을 서로 가까운 위치에 매핑하고, 상이한 클래스를 포함하는 상기 학습 데이터로부터 생성되는 상기 제 1 임베디드 특징을 서로 먼 위치에 매핑하도록 학습되는, 장치.
  10. 제 9 항에 있어서,
    상기 네트워크 함수는, Triplet loss, Max margin, NT-Xent 및 NT-Logistic 중 적어도 하나의 손실 함수(loss function)에 기초하여 학습을 수행하는, 장치.
  11. 제 7 항에 있어서,
    상기 프로세서는, 상기 제 2 임베디드 특징에 근접하는 순위에 따라 적어도 하나의 상기 제 1 임베디드 특징을 검출하고, 상기 제 2 임베디드 특징과 검출된 상기 제 1 임베디드 특징 사이의 거리의 합 또는 평균을 기초로 상기 이상 스코어를 산출하는, 장치.
  12. 제 7 항에 있어서,
    상기 프로세서는, KNN(k nearest neighbor) 함수에 기초하여 상기 이상 스코어를 산출하는, 장치.
  13. 제 1 항 내지 제 6 항 중 어느 한 항의 방법을 실행하기 위하여 기록 매체에 저장된 컴퓨터 프로그램.
PCT/KR2021/008516 2020-09-11 2021-07-05 이상 탐지 방법 및 이를 위한 장치 WO2022055099A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0116988 2020-09-11
KR1020200116988A KR102255833B1 (ko) 2020-09-11 2020-09-11 이상 탐지 방법 및 이를 위한 장치

Publications (1)

Publication Number Publication Date
WO2022055099A1 true WO2022055099A1 (ko) 2022-03-17

Family

ID=76137397

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/008516 WO2022055099A1 (ko) 2020-09-11 2021-07-05 이상 탐지 방법 및 이를 위한 장치

Country Status (2)

Country Link
KR (1) KR102255833B1 (ko)
WO (1) WO2022055099A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115146718A (zh) * 2022-06-27 2022-10-04 北京华能新锐控制技术有限公司 基于深度表示的风电机组异常检测方法
CN116226778A (zh) * 2023-05-09 2023-06-06 水利部珠江水利委员会珠江水利综合技术中心 基于三维分析平台的挡土墙结构异常分析方法及系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102255833B1 (ko) * 2020-09-11 2021-05-26 주식회사 뉴로클 이상 탐지 방법 및 이를 위한 장치
KR102469219B1 (ko) * 2022-05-27 2022-11-23 국방과학연구소 이상 데이터 검출 방법 및 이를 위한 전자 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101563511B1 (ko) * 2015-07-10 2015-10-27 (주)유엠로직스 시계열 기반 서포트 벡터의 추세분석기법을 이용한 보안사고 이상 징후 탐지 시스템 및 그 방법
KR20190029083A (ko) * 2017-09-11 2019-03-20 삼성전자주식회사 신경망 학습 방법 및 이를 적용한 장치
KR102088509B1 (ko) * 2019-03-27 2020-03-12 국방과학연구소 컴퓨터 시스템의 이상 행위 탐지 방법 및 장치
KR102255833B1 (ko) * 2020-09-11 2021-05-26 주식회사 뉴로클 이상 탐지 방법 및 이를 위한 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101563511B1 (ko) * 2015-07-10 2015-10-27 (주)유엠로직스 시계열 기반 서포트 벡터의 추세분석기법을 이용한 보안사고 이상 징후 탐지 시스템 및 그 방법
KR20190029083A (ko) * 2017-09-11 2019-03-20 삼성전자주식회사 신경망 학습 방법 및 이를 적용한 장치
KR102088509B1 (ko) * 2019-03-27 2020-03-12 국방과학연구소 컴퓨터 시스템의 이상 행위 탐지 방법 및 장치
KR102255833B1 (ko) * 2020-09-11 2021-05-26 주식회사 뉴로클 이상 탐지 방법 및 이를 위한 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHEN WEIHUA; CHEN XIAOTANG; ZHANG JIANGUO; HUANG KAIQI: "Beyond Triplet Loss: A Deep Quadruplet Network for Person Re-identification", 2017 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), IEEE COMPUTER SOCIETY, US, 21 July 2017 (2017-07-21), US , pages 1320 - 1329, XP033249471, ISSN: 1063-6919, DOI: 10.1109/CVPR.2017.145 *
HWANG JUNSIK: "Image Embedding with Triplet Loss - jsideas", JSIDEAS.NET WEBPAGE, JSIDEAS.NET, 19 August 2019 (2019-08-19), XP055910990, Retrieved from the Internet <URL:https://jsideas.net/ImageEmbeddingWithTripletLoss/> [retrieved on 20220408] *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115146718A (zh) * 2022-06-27 2022-10-04 北京华能新锐控制技术有限公司 基于深度表示的风电机组异常检测方法
CN116226778A (zh) * 2023-05-09 2023-06-06 水利部珠江水利委员会珠江水利综合技术中心 基于三维分析平台的挡土墙结构异常分析方法及系统
CN116226778B (zh) * 2023-05-09 2023-07-07 水利部珠江水利委员会珠江水利综合技术中心 基于三维分析平台的挡土墙结构异常分析方法及系统

Also Published As

Publication number Publication date
KR102255833B1 (ko) 2021-05-26

Similar Documents

Publication Publication Date Title
WO2022055099A1 (ko) 이상 탐지 방법 및 이를 위한 장치
WO2019107614A1 (ko) 제조 공정에서 딥러닝을 활용한 머신 비전 기반 품질검사 방법 및 시스템
WO2019074195A1 (ko) 딥러닝 기반 이미지 비교 장치, 방법 및 컴퓨터 판독가능매체에 저장된 컴퓨터 프로그램
WO2017164478A1 (ko) 미세 얼굴 다이나믹의 딥 러닝 분석을 통한 미세 표정 인식 방법 및 장치
WO2014051246A1 (en) Method and apparatus for inferring facial composite
WO2015105239A1 (ko) 차량 및 차선 위치 검출 시스템 및 방법
WO2019235828A1 (ko) 투 페이스 질병 진단 시스템 및 그 방법
WO2022059969A1 (ko) 심전도 데이터 분류를 위한 심층 신경망 사전 학습 방법
WO2016068593A2 (ko) 3차원 형상의 모델링을 위한 블록 및 사용자 단말기와 이를 이용한 3차원 형상의 모델링 방법
WO2021075772A1 (ko) 복수 영역 검출을 이용한 객체 탐지 방법 및 그 장치
WO2022186461A1 (ko) 고급 심층 시간 클러스터링 모델 기반의 기계 고장 진단 시스템
WO2024090786A1 (ko) 레이더 데이터에 기반한 낙상 감지 모델의 학습 방법
WO2019147101A1 (ko) 악성 코드를 분류하는 전자 장치 및 그 동작 방법
WO2022055020A1 (ko) 자동화된 기계 학습 방법 및 그 장치
WO2020050456A1 (ko) 설비 데이터의 이상 정도 평가 방법
WO2022080582A1 (ko) 목표 지향적 강화학습 방법 및 이를 수행하기 위한 장치
WO2021085785A1 (en) Electronic apparatus and method for controlling thereof
US20220207863A1 (en) Object detection device, object detection method, program, and recording medium
WO2019225875A1 (ko) 재고 추적 방법 및 장치
WO2022139327A1 (en) Method and apparatus for detecting unsupported utterances in natural language understanding
WO2022270840A1 (ko) 외국어 학습자의 어휘 실력 예측과 향상을 위한 딥러닝 기반의 단어 추천 시스템
WO2023022406A1 (ko) 학습 실력 평가 방법, 학습 실력 평가 장치 및 학습 실력 평가 시스템
WO2022191424A1 (ko) 전자 장치 및 그 제어 방법
US20220215648A1 (en) Object detection device, object detection system, object detection method, program, and recording medium
WO2024053948A1 (ko) 변환 모델 구축 장치 및 방법과 이를 이용한 이미지 매칭 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21866967

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18026064

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21866967

Country of ref document: EP

Kind code of ref document: A1