KR102143593B1 - 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템 - Google Patents
오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템 Download PDFInfo
- Publication number
- KR102143593B1 KR102143593B1 KR1020190130183A KR20190130183A KR102143593B1 KR 102143593 B1 KR102143593 B1 KR 102143593B1 KR 1020190130183 A KR1020190130183 A KR 1020190130183A KR 20190130183 A KR20190130183 A KR 20190130183A KR 102143593 B1 KR102143593 B1 KR 102143593B1
- Authority
- KR
- South Korea
- Prior art keywords
- traffic data
- autoencoder
- encoder
- traffic
- data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G06N3/0454—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명의 일 실시 예는, 측정대상가정에 배치된 복수의 IoT기기로부터 제1기간에 대한 정상트래픽데이터를 수신하고 분할하는 트래픽분할단계; 기저장된 범용트래픽데이터로 학습된 오토인코더 중 인코더 부분을 채택하고, SVDD(Support Vector Data Description)함수를 손실함수로 적용하여 상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시키는 모델학습단계; 상기 정상트래픽데이터로 학습된 오토인코더에 상기 복수의 IoT기기의 제2기간에 대한 트래픽데이터를 적용하는 이상판단모델구축단계; 및 상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용한 결과로 이상점수를 산출하고, 상기 산출된 이상점수가 0을 초과하는지 여부를 기초로 하여 상기 복수의 IoT기기의 트래픽 이상징후를 감지하는 이상판단단계;를 포함하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법을 개시한다.
Description
본 발명은 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템에 관한 발명으로서, 보다 구체적으로는, 오토인코더의 기능을 이용하여 가정에서 사용되는 다양한 IoT기기의 트래픽데이터를 분석하여 이상징후를 탐지하는 방법 및 그 시스템에 관한 것이다.
인터넷에 연결되어 동작하는 것을 특징으로 하는 사물인터넷 장치(이하, IoT기기)가 널리 보급되면서, IoT기기로부터 출력되는 데이터의 처리에 대한 다양한 방법론이 제시되고 있다.
IoT기기의 정상적인 동작을 보장하고, IoT기기의 보안을 유지하기 위해서, 관리자는 방화벽을 통해 IoT기기의 트래픽데이터를 감시하고, 보안 취약성을 주기적으로 검사하여 이상징후가 발견되면, 즉각적으로 처리하여 IoT기기가 안정적인 서비스를 제공할 수 있도록 해야 한다.
위와 같이 IoT기기의 일관성 있는 성능을 보장하고, 진화하는 보안위협에 신속하게 대응하기 위해서는, IoT기기의 정보를 짧은 주기를 통해서 수집할 필요가 있다. 즉, 42억개의 IP 주소(Internet Protocol Address)를 포함하는 IPv4 공간에서 실제 유효한 37억개의 인터넷 장치의 정보를 초고속으로 수집해야만 하고, 높은 탐지 성능을 유지하면서 실시간에 준하는 트래픽 데이터의 분석이 가능한 기술이 필요하나, 기존에 사용되어 왔던 시그니쳐(signiture) 기반 탐지 방법은 알려진 위협 탐지에만 원활하게 동작할 뿐, 수시로 변화되고 진화하는 새로운 보안 위협에 대응하기 어려운 단점이 있다.
위와 같은 한계점을 극복하기 위해 IoT기기들로부터 발생되는 트래픽들을 머신러닝 알고리즘(Machine Learning Algorithm)을 활용해 정상데이터로만 학습시키고 이후 정상적인 트래픽 대비 이상치(anomaly)가 발생되었는지 판단하는 반지도(semi-supervised)학습 방법이 다수 제안되었으나, 그 방법들은 모두 IoT기기 트래픽 이상징후 탐지에 최적화가 되지 않은 방법으로서, 그 효용성은 높지 않은 수준이다.
IoT기기 트래픽 이상징후 탐지 시스템의 경우, 각 가정별로 발생되는 트래픽 패턴의 차이가 있을 수 있기 때문에, 가정별로 탐지 모델을 다르게 만들어야 하는 필요성이 있다. 또한, IoT기기별로 트래픽 패턴이 차이가 발생될 수 밖에 없어서, 기기 별 탐지 모델도 각각 만들어야 할 필요가 있다. 기존 방법의 경우, 사용자가 각 가정과 기기에서 발생하는 이상치 스코어(anomaly score)를 확인하고 이상징후를 판단하기 위한 임계값을 설정해야 하는 불편함이 있기 때문에 이와 같은 불편함을 최소화시키는 탐지 시스템이 필요하다.
또한, 기존 방법들은 탐지 모델을 실행하게 될 공유기 디바이스의 성능을 고려하지 못하였다. 일반적으로 모델의 크기와 복잡도는 탐지 성능과 양의 상관관계를 가지고 있으나 모델의 크기와 복잡도가 커질수록 성능에 제한이 있는 공유기 디바이스의 부하가 생길 수 있다. 따라서 탐지 성능을 일정 이상으로 유지하면서 성능에 제한이 있는 공유기 디바이스의 부하를 최소화하고 빠른 주기로 발생하는 트래픽을 효율적으로 처리할 수 있는 방법론에 대한 필요성이 대두된다.
Electronics and Telecommunications Trends. Vol. 30, No. 2, April 2015, pp. 87-94, 최강일 선임연구원 외 1인 저술(14-000-05-001, 스마트 네트워킹 핵심 기술개발).
본 발명이 해결하고자 하는 기술적 과제는, 각 가정별, 각 기기별로 하나의 탐지 모델로 IoT기기의 트래픽 이상을 탐지할 수 있는, 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템을 제공하는 데에 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 실시 예에 따른 방법은, 측정대상가정에 배치된 복수의 IoT기기로부터 제1기간에 대한 정상트래픽데이터를 수신하고 분할하는 트래픽분할단계; 기저장된 범용트래픽데이터로 학습된 오토인코더 중 인코더 부분을 채택하고, SVDD(Support Vector Data Description)함수를 손실함수로 적용하여 상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시키는 모델학습단계; 상기 정상트래픽데이터로 학습된 오토인코더에 상기 복수의 IoT기기의 제2기간에 대한 트래픽데이터를 적용하는 이상판단모델구축단계; 및 상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용한 결과로 이상점수를 산출하고, 상기 산출된 이상점수가 0을 초과하는지 여부를 기초로 하여 상기 복수의 IoT기기의 트래픽 이상징후를 감지하는 이상판단단계;를 포함한다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 일 실시 예에 따른 시스템은, 측정대상가정에 배치된 복수의 IoT기기로부터 제1기간에 대한 정상트래픽데이터를 수신하고 분할하는 트래픽분할부; 기저장된 범용트래픽데이터로 학습된 오토인코더 중 인코더 부분을 채택하고, SVDD(Support Vector Data Description)함수를 손실함수로 적용하여 상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시키는 제1모델학습부; 상기 정상트래픽데이터로 학습된 오토인코더에 상기 복수의 IoT기기의 제2기간에 대한 트래픽데이터를 적용하는 제2모델학습부; 및 상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용한 결과로 이상점수를 산출하고, 상기 산출된 이상점수가 0을 초과하는지 여부를 기초로 하여 상기 복수의 IoT기기의 트래픽 이상징후를 감지하는 이상데이터판단부;를 포함한다.
본 발명의 일 실시 예는, 상기 방법을 실행시키기 위한 프로그램을 저장하고 있는 컴퓨터 판독가능한 기록매체를 제공할 수 있다.
본 발명에 따르면, 다수의 IoT기기를 운용하고 있는 여러 가정을 통합적으로 관리할 때, 각 가정 또는 각 기기마다 서로 다른 임계치를 설정하고 트래픽을 탐지하는 모델을 구축할 필요가 없을 뿐만 아니라, 학습과정에서 최적화를 수행함으로써, 성능에 제한이 있는 공유기 디바이스의 메모리 사용량 및 대역폭 낭비 문제를 최소화할 수 있다.
도 1은 본 발명에 따른 시스템이 동작하는 전체 시스템 환경을 도식적으로 나타낸 도면이다.
도 2는 본 발명에 따른 IoT기기의 이상징후 탐지 시스템의 일 예의 블록도를 도시한다.
도 3은 오토인코더의 구조를 설명하기 위한 도면이다.
도 4는 본 발명에 따른 IoT기기의 이상징후 탐지 방법의 일 예를 흐름도로 나타낸 도면이다.
도 2는 본 발명에 따른 IoT기기의 이상징후 탐지 시스템의 일 예의 블록도를 도시한다.
도 3은 오토인코더의 구조를 설명하기 위한 도면이다.
도 4는 본 발명에 따른 IoT기기의 이상징후 탐지 방법의 일 예를 흐름도로 나타낸 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
이하의 실시 예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다.
이하의 실시 예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하의 실시 예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징을 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
어떤 실시 예가 달리 구현 가능한 경우에 특정한 공정 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 공정이 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.
도 1은 본 발명에 따른 시스템이 동작하는 전체 시스템 환경을 도식적으로 나타낸 도면이다.
도 1을 참조하면, 본 발명에 따른 전체시스템(1)이 IoT기기의 이상징후 탐지 시스템(200)이 통신망(20)을 통해서, 카메라(11), 냉장고(13), 에어컨(15) 및 드론(17)과 각종 정보를 송수신하는 것을 알 수 있다.
본 발명에서 IoT기기의 이상징후 탐지 시스템(200)은 카메라(11), 냉장고(13), 에어컨(15) 및 드론(17)에 패킷을 송신하고, 그에 따른 응답패킷을 수신하여, 카메라(11), 냉장고(13), 에어컨(15) 및 드론(17)의 장치정보를 파악하고, 패킷송신에 이상성(anomality)이 있는지 파악한다.
카메라(11), 냉장고(13), 에어컨(15) 및 드론(17)은 모두 IoT기기로서, IoT기기의 이상징후 탐지 시스템(200)으로부터 패킷을 수신하면, 그에 따라 응답패킷을 생성하여 송신할 수 있는 통신장치를 포함하고 있다. 실시 예에 따라, 도 1의 전체시스템(1)은 도 1에 도시된 카메라(11), 냉장고(13), 에어컨(15) 및 드론(17) 외에도 통신망(20)을 통해서 각종 정보를 송수신할 수 있는 다른 장치를 더 포함할 수 있다.
통신망(20)은 장치정보를 수집하는 시스템(200)과 IoT기기들을 연결시켜주는 기능을 수행하고, 데이터망, 이동통신망, 인터넷 등 각종 무선 통신망을 포함한다.
도 1에서는 생략되었으나, 전체 시스템(1)에 ISP(Internet Service Provider)에서 할당해주는 하나의 IP를 이용하여 여러 대의 IoT기기가 인터넷에 접속할 수 있도록 해 주는 공유기(router) 및 패킷을 감시하고 선택적으로 차단하는 방화벽(firewall)과 같은 일반적인 구성이 포함된다는 것을 이 분야의 통상의 지식을 가진 자에게 자명할 것이다.
도 2는 본 발명에 따른 IoT기기의 이상징후 탐지 시스템의 일 예의 블록도를 도시한다.
도 2를 참조하면, 본 발명에 따른 IoT기기의 이상징후 탐지 시스템(200)은 트래픽수집부(210), 트래픽분할부(220), 제1모델학습부(230), 제2모델학습부(240), 이상데이터판단부(250), 제1최적화수행부(260) 및 제2최적화수행부(270)를 포함하는 것을 알 수 있다. 실시 예에 따라서, 제1최적화수행부(260) 및 제2최적화수행부(270)는 생략될 수도 있으며, 제1모델학습부(230) 및 제2모델학습부(240)는 모델학습부(미도시)로 통합될 수도 있다. 도 2에서 IoT기기의 이상징후 탐지 시스템(200)은 도 1에서 설명한 것과 동일한 구성으로서, 이하에서는 설명의 편의를 위해서 도 1을 참조하여 설명하기로 한다.
먼저, 트래픽수집부(210)는 복수의 IoT기기로부터 트래픽데이터를 수집하여 저장하는 데이터베이스(Database)기능을 수행한다. 구체적으로 트래픽수집부(210)는 측정가정대상 내의 공유기에서 트래픽데이터를 수집하며, 이하에서, 측정대상가정은 본 발명에 따른 탐지 시스템이 IoT기기들의 이상 트래픽을 탐지하는 대상이 된 특정한 가정을 간결하게 호칭하는 것으로 간주한다.
트래픽수집부(210)는 여러 시점에 대한 트래픽데이터를 수신하여 저장할 뿐만 아니라, 글로벌(global) 트래픽 데이터를 추가로 저장하고 있다. 여기서, 글로벌 트래픽 데이터는, 모든 가정에 배치되어 있는 IoT기기의 평균적인 트래픽 데이터의 특성을 보이는 트래픽 데이터를 의미한다. 글로벌 트래픽 데이터는 새로운 데이터에 대해서 학습이 끝나지 않은 오토인코더(autoencoder)를 학습시켜서, 새로운 데이터에 대해 학습이 끝날 때까지 임시적으로 측정대상가정의 IoT기기의 트래픽 데이터의 이상징후를 탐지하는 모델을 구축하는 데에 활용된다.
이어서, 트래픽분할부(220)는 수집된 전체 트래픽 데이터를 개별 IoT기기의 맥 주소(MAC Address)를 기준으로 분할한다. IP 주소는 DHCP(Dynamic Host Configuration Protocol)를 통해 할당되기 때문에, IP주소를 기준으로 전체 트래픽 데이터를 분할할 경우, 데이터의 일관성을 확보할 수 없으므로, 본 발명에서는 맥 주소를 기준으로 전체 트래픽 데이터를 분할한다.
트래픽분할부(220)가 분할하는 데이터는 제1기간에 대한 정상트래픽데이터이다. 예를 들어, 도 1에서 카메라(11), 냉장고(13), 에어컨(15) 및 드론(17)에서 수집된 트래픽 데이터로서, 트래픽 이상이 전혀 발생되지 않은 상태에서 수집된 데이터를 정상트래픽데이터라고 호칭할 수 있다. 제1기간은 트래픽을 수집하기 시작한 시점부터 수집을 종료한 시점사이의 시간 간격을 의미하고, 제2기간, 제3기간은 제1기간 이후의 특정 시간 간격을 의미한다.
IoT기기별로 트래픽 데이터가 분할되면, 트래픽분할부(220)는 분석을 위한 단위시간을 설정하고, 분할된 트래픽 데이터 각각에 대해서 특정 시간에 대한 통계량을 추출한 후, 통계량에 대한 트래픽통계벡터를 생성한다.
수학식 1은 트래픽분할부(220)가 생성한 트래픽통계벡터의 일 예를 나타내고 있다. 수학식 1을 참조하면, IoT기기의 트래픽 데이터가 수집된 첫 시점은 12시 10분 12초이고, 단위시간이 1초이며, 제1기간이 5초라는 것을 알 수 있다. 수학식 1에서, 트래픽통계벡터의 각 행은 시간, 아웃바운드패킷(outbound packet)의 총계(total sum), 아웃바운드패킷의 최댓값과 최솟값의 차이, 아웃바운드패킷의 수(number of outbound packet), 인바운드패킷의 총계, 인바운드패킷의 최댓값과 최솟값의 차이, 인바운드패킷의 수를 순차적으로 기재하고 있다. 수학식 1은 트래픽통계벡터의 일 예이므로, 실시 예에 따라서, 트래픽데이터가 수집된 첫 시점, 단위시간, 제1기간이 달라질 수 있다는 것은 자명하다.
트래픽분할부(220)에 의해서 IoT기기별로 분할된 트래픽 데이터가 트래픽통계벡터로 변환되면, 트래픽통계벡터는 제1모델학습부(230)에 전달된다.
제1모델학습부(230) 및 제2모델학습부(240)는 기저장된 범용트래픽데이터로 학습된 오토인코더 중 인코더 부분을 채택하고, SVDD(Support Vector Data Description)함수를 손실함수(loss function)로 적용하여, 오토인코더를 정상트래픽데이터로 학습시킨다. 기저장된 범용트래픽데이터는 전술한 글로벌 트래픽 데이터의 별칭으로서, 오토인코더를 보편적인 IoT기기의 트래픽데이터로 학습시키기 위해 트래픽수집부(210), 제1모델학습부(230), 또는 상위 레벨의 클라우드(cloud)에 미리 저장되어 있는 데이터를 의미한다.
제1모델학습부(230)는 제1기간의 정상트래픽데이터들의 트래픽통계벡터를 이용하여, 네트워크 트래픽 압축을 처리한다. 구체적으로, 트래픽 압축이란, 신경망의 일종인 오토인코더의 구조를 이용하여 압축처리를 하는 것을 의미한다. 오토인코더(autoencoder)는 인코더와 디코더 네트워크로 구성된 비지도학습(Unsupervised Learning)신경망의 일종으로서, 도 3과 같은 구조를 갖는다.
도 3은 오토인코더의 구조를 설명하기 위한 도면이다.
도 3의 오토인코더는 입력레이어(input layer), 히든레이어(hidden layer), 출력레이어(output layer)로 구성되고, 입력레이어 및 히든레이어를 인코더(encoder)로 총칭하고, 히든레이어 및 출력레이어를 디코더(decoder)로 총칭한다. 도 3은 개략도로서 실시 예에 따라 인코더 또는 디코더를 구성하는 여러 층(multi-layer)일 수 있다.
오토인코더는 인코더와 디코더 네트워크를 활용하여 데이터의 잠재적인 표현을 학습한다. 인코더는 입력되는 데이터를 압축하여 특성을 추출하고, 이 과정에서 추출된 특성은 디코더 네트워크에 다시 입력되어 원래의 데이터를 재현하도록 학습된다. 오토인코더는 다량의 데이터를 입력데이터로 받아서 반복적으로 학습을 수행하며, 내부적으로 정의된 손실함수(loss function)의 크기가 최소화되는 방향으로 학습을 반복하게 된다. 본 발명에서는 손실함수를 전술한 SVDD함수를 사용하며, SVDD함수는 수학식 2와 같이 표현될 수 있다.
수학식 2는 SVDD함수를 나타내는 수학식이다.
수학식 2에 따른 SVDD함수는 오토인코더가 데이터를 초구체(hypersphere)공간에 위치시키도록 학습시키며, 중심부에서 초구체공간에 위치한 데이터까지의 거리가 일정거리 R을 갖도록 최적화시키기 위한 수학식이다.
수학식 2에서 R은 초구체공간에서 초구체의 중심부와 트래픽통계벡터의 거리이자 초구체의 반지름이며, υ은 정상 데이터에 대해 얼마만큼의 제약 정도를 가질지 여부를 설정하는 설정값으로서, 0과 같거나 0보다 크면서 1보다는 작은 범위의 임의의 수가 될 수 있다. 예를 들어, υ가 1이면 입력으로 사용된 모든 데이터를 정상이라고 판단하는 최적의 값으로 오토인코더의 학습이 진행되고, υ이 0.8이라면, 초구체공간에 있는 80%의 데이터 포인트들에 대해서 정상이라고 판단하는 최적의 값으로 오토인코더의 학습이 진행된다. 또한, φ(x, W)는 신경망을 통해 변환된 트래픽통계벡터이고, c는 정상트래픽데이터로부터 변환된 트래픽통계벡터의 중심점이 되는 벡터를 의미한다. c는 인코더를 거친 트래픽통계벡터들의 중심점(centroid)을 구하는 방식으로 얻어질 수 있다. 오토인코더의 학습이 진행됨에 따라서, 신경망 내부의 가중치인 W의 값이 최적화된다.
이하에서는, 도 2에 대한 설명을 이어서 하기로 한다.
제1모델학습부(230)는 기저장된 범용트래픽데이터로 오토인코더를 학습시키고, 제2모델학습부(240)는 기저장된 범용트래픽데이터로 학습된 오토인코더에서 인코더(encoder) 부분만 채택하고, 채택된 오토인코더를 정상트래픽데이터(트래픽통계벡터)로 학습시킨다.
측정대상가정에 본 발명에 따른 탐지 시스템(1)이 처음 도입되면, 데이터가 일정 이상 쌓이기 전까지는 이상트래픽 탐지 성능이 안정적이지 못하고, 잡음에 취약할 수 있으나, 본 발명에서는 위와 같은 문제를 해결하기 위한 일환으로, 제1모델학습부(230)에서 기저장된 범용트래픽데이터로 오토인코더를 선학습(pre-train)시키고, 제2모델학습부(240)가 기학습된 오토인코더의 가중치들을 이전(transfer)시켜서, 측정대상가정의 로컬트래픽(local traffic) 데이터로 파인튜닝(fine-tuning)하게 된다.
이상데이터판단부(250)는 정상트래픽데이터로 학습된 오토인코더에 IoT기기의 제2기간에 대한 트래픽데이터를 적용하고, 이상징후를 판단하는 기능을 수행한다. 여기서, 제2기간은 제1기간 이후에 복수의 IoT기기에서 발생된 트래픽데이터로서, 이상징후를 판단할 수도 있는 실제 데이터(real data)를 의미하며, 오토인코더를 학습시키기 위한 목적으로 준비된 정상트래픽데이터와는 명확히 구별되는 데이터이다.
이상데이터판단부(250)는 제2기간에 대한 트래픽데이터를 수신하여 이상징후를 판단하기 위해서, 이상 탐지를 위한 MLP모델을 설계한다. MLP모델은 복층으로 구성된 인공신경망을 의미하고, 빠른 학습을 위해서 기존의 학습된 오토인코더 중 인코더의 구조를 이전받는다. 이상데이터판단부(250)는 인코더의 구조를 이전받기 위해서 학습이 완료된 오토인코더의 구조와 동일하게 MLP를 구성하고, 측정대상가정만의 특성에 따라 달라지는 구조를 추가로 구현하기 위해서, 인코더 구조에 임의의 레이어를 더 추가하여 MLP를 구성하게 된다. 이때 구성되는 MLP모델도 SVDD함수를 손실함수로 이용한다.
SVDD함수에 의해서 오토인코더가 최적된 이후에는, 이상데이터판단부(250)는 입력되는 제2기간의 트래픽 데이터의 이상징후를 탐지하기 위해서, 분류기에 들어간 데이터의 중심부로부터의 거리를 계산하여 일정 거리인 R보다 길면 이상트래픽으로 판단하게 된다.
수학식 3은 이상데이터판단부(250)가 학습이 완료된 오토인코더를 기초로 한 MLP모델에 제2기간 이후(제3기간부터)에 수집된 트래픽데이터가 입력되었을 때, 이상성을 판단하기 위해 사용하는 수학식을 나타낸다. 수학식 3에서 c는 오토인코더를 통한 데이터 압축시에 만들어진 중심부 벡터를 사용하며, R은 학습과정에서 마지막으로 업데이트된 값을 사용하게 된다. 전술한 것과 같이, 이상점수(Anomaly score)는 분류기에 들어간 데이터의 중심부로부터 거리를 계산하여 일정 거리인 R보다 긴 지 여부를 수치화한 것으로서, 이상데이터판단부(250)는 이상점수가 0보다 크면 입력된 트래픽데이터에 이상징후가 존재하는 것으로 판단한다.
위와 같이, 본 발명에 따르면, 트래픽데이터의 분포와 상관없이 이상점수와 0과의 비교를 통해서, 트래픽데이터의 정상 또는 비정상을 판단할 수 있기 때문에, 각 가정별 또는 각 기기별 탐지 모델을 개별적으로 구축하고, 각 모델에 대응되는 임계값을 설정하지 않더라도, 측정대상가정에 있는 모든 IoT기기의 트래픽데이터의 이상징후를 탐지할 수 있게 된다.
이어서, 제1최적화수행부(260)는 제2기간에 대한 트래픽데이터를 오토인코더에 적용하면서 수반되는 반복과정에서, 손실함수의 값이 기설정된 임계값을 초과할 때까지 가중치 W의 크기가 가장 낮은 연결을 제거하는 프루닝(Pruning)을 수행한다. 신경망모델은 복잡하고 크기가 클수록 더 정확한 성능을 갖지만, 신경망모델의 크기가 커지면 커질수록 추론시 가중치의 계산에 과도한 메모리를 사용하거나 지나치게 많은 대역폭을 차지하는 문제가 발생된다. 이상징후를 탐지하는 시스템을 동작시키는 공유기의 성능은 제한적이기 때문에, 공유기의 성능을 충분하게 높이지 않으면, 메모리 부족현상은 치명적일 수 있다. 그러므로, 크기가 큰 신경망모델을 유지하면서, 빠른 주기로 발생되는 트래픽을 효율적으로 처리할 수 있는 모델 경량화 과정이 필요하며, 제1최적화수행부(260)는 프루닝과정을 통해서 오토인코더가 학습되는 과정에서 경량화처리까지 수행한다. 제1최적화수행부(260)가 수행하는 프루닝처리는 다음과 같은 방식으로 진행된다.
먼저, 제1최적화수행부(260)는 프루닝을 통해 신경망의 가중치가 가장 낮은 연결을 순차적으로 제거한다. 구체적으로, 오토인코더가 학습되는 과정에서 필수적으로 수반되는 반복과정(iteration)마다 각 레이어 별로 가중치의 크기가 가장 낮은 연결을 제거하면서, 희소성이 높은(sparse) 연결만을 별도로 재학습(fine-tune)하는 과정을 반복한다. 본 발명에 따른 탐지모델은 MLP모델로서 복층 레이어로 구성되어 있으므로, 각 레이어의 층이 달라질 때마다 가장 가중치가 낮은 연결이 하나씩 제거되고, 반복과정이 진행될 수록 두번째로 가중치가 낮은 연결, 세번째로 가중치가 낮은 연결 순서로 신경망 연결이 제거된다.
미리 설정된 반복횟수에 도달하거나, 손실함수의 값이 특정 임계값을 초과하면, 제1최적화수행부(260)는 오토인코더의 학습 및 프루닝을 위한 반복과정을 종료할 수 있다. 제1최적화수행부(260)는 본 발명에 따른 탐지 시스템의 성능에 큰 영향이 없는 연결을 선택적으로 제거하는 기능을 수행함으로써, 시스템의 탐지 성능은 일정 이상 유지하면서 시스템을 구성하는 신경망모델의 크기(size)와 복잡도(complexity)를 현저하게 줄일 수 있다.
제2최적화수행부(270)는 본 발명에 따른 탐지 시스템의 오토인코더의 신경망의 부동 소수점 산술과정을 고정 소수점 산술과정으로 변환하는 양자화(quantization)과정을 수행한다. 이때 오토인코더는 제2기간에 대한 트래픽데이터를 학습한 오토인코더로 간주한다. 본 발명에 따른 방법이 프로그램으로 구현되는 경우, 방법을 구성하는 각 단계는 스크립트로 구현될 수 있으며, 스크립트에서 다루어지는 자료들은 고유한 자료형(Data Type)으로 표현되고 산술된다. 제2최적화수행부(270)는 오토인코더를 구성하는 신경망의 부동 소수점(floating-point)산술을 고정 소수점(fixed-point)으로 변환함으로써, 실시간에 준하는 추론이 가능하도록 탐지 시스템의 전체적인 속도를 향상시킬 수 있다. 구체적으로, 제2최적화수행부(270)는 FLOAT32로 저장된 가중치 W의 자료형을 INT8로 변환하는 양자화처리를 수행할 수 있다. 여기서, FLOAT32는 32비트(4바이트)의 부동 소수점 자료형을 의미하고, INT8은 8비트(1바이트)의 고정 소수점 자료형을 의미한다.
수학식 4 내지 수학식 6은 제2최적화수행부(270)가 신경망의 가중치를 양자화하기 위해 사용하는 수학식을 나타낸다. 수학식 4 내지 수학식 6에서, xquantized 는 고정 소수점으로 표현된 값으로서, INT8이 일 예가 될 수 있고, xfloat는 부동 소수점으로 표현한 값으로서, FLOAT32가 일 예가 될 수 있다. 또한, 수학식 4 내지 수학식 6에서 xzero_point는 실수 0에 대응하는 양자화된 값으로 변환하기 위한 기준값이고, xscale은 양자화된 값에서 1단위 값을 의미한다.
일 예로서, 제2최적화수행부(270)가 FLOAT32로 표현된 -1이상 1이하의 범위를 INT8로 양자화시켜서 0이상 255미만으로 변환한다고 가정하면, 수학식 4 내지 수학식 6에 따라서, xscale은 2/255가 되고, xzero_point는 127.5(=255-1/(2/255))가 된다. 활성 함수를 거쳐서 나온 출력값들에 대해서 수학식 4 내지 수학식 6을 활용하여 동일한 변환을 적용할 수 있다.
본 발명에 따른 IoT기기의 이상징후 탐지 시스템(200)은 제1최적화수행부(260) 및 제2최적화수행부(270)를 더 포함함으로써, 실시간으로 수집되는 트래픽데이터에 대한 대응력을 더 높일 수 있다. 구체적으로, 트래픽수집부(210)에서 이상데이터판단부(250)의 동작을 통해서, 제2기간의 트래픽데이터에 대한 이상징후 탐지 결과가 출력될 수 있으며, 이어서 제1최적화수행부(260) 및 제2최적화수행부(270)의 동작에 따라서 전체 시스템이 경량화되어, 제2기간 이후(제3기간 등)에 입력되는 트래픽데이터에 대해서는 훨씬 빠른 속도로 이상징후를 탐지할 수 있게 된다. 실시 예에 따라, 제1최적화수행부(260) 및 제2최적화수행부(270) 중 하나 이상은 생략될 수도 있다는 것은 이미 설명한 바 있다.
도 4는 본 발명에 따른 IoT기기의 이상징후 탐지 방법의 일 예를 흐름도로 나타낸 도면이다.
도 4는 도 2의 IoT기기의 이상징후 탐지 시스템(200)에 의해 구현될 수 있으므로, 이하에서는 도 2를 참조하여 설명하기로 하고, 도 2에서 설명한 것과 중복되는 설명은 생략하기로 한다.
트래픽수집부(210) 및 트래픽분할부(220)는 수집된 복수의 IoT 트래픽데이터를 IoT기기별로 분류하고, 기설정된 기준에 따라 단일통계벡터로 변환한다(S410).
제1모델학습부(230)는 글로벌트래픽데이터로 오토인코더를 학습한다(S420).
제2모델학습부(240)는 학습된 오토인코더 중 인코더부분을 채택하고, 측정대상가정의 로컬데이터로 활용하고(S430), 정상트래픽데이터를 기초로 하여 단계 S420, S430에서 수집된 정보로 오토인코더를 파인튜닝한다.
이상데이터판단부(250)는 SVDD를 손실함수로 하여 제1기간의 측정대상가정의 IoT기기 트래픽데이터를 학습하고(S450), 학습된 신경망 모델에 측정대상가정에 존재하는 IoT기기의 트래픽데이터(제2기간의 트래픽)를 실시간으로 입력하여, 트래픽데이터에서 이상징후를 파악한다(S460).
제1최적화수행부(260) 및 제2최적화수행부(270)는 데이터 메모리 사용량과 대역폭 낭비를 낮추기 위한 프루닝 및 양자화과정을 순차적으로 수행할 수 있다(S470). 도 2에서 설명한 IoT기기의 이상징후 탐지 시스템(200)은 독립적인 시스템으로 존재할 수 있을 뿐만 아니라, 측정대상가정의 공유기 디바이스 내부에 포함되는 형태로 구현될 수도 있다.
IoT기기의 이상탐지를 위해서는 신속성과 정확성이 필요하다. 본 발명에 따르면, 정확한 탐지 성능을 유지하면서 공유기 디바이스의 부하를 줄여 빠른 주기로 발생하는 트래픽을 효율적으로 처리할 수 있으며 각 기기 별 이상치 임계 값 설정에 사용자 개입을 최소화 할 수 있다. IoT기기의 분석 경량화 및 성능을 확보한 본 발명은 가정 내의 네트워크에서 각 기기 사용자들에게 자동화된 이상 트래픽 탐지에 큰 도움을 줄 것이다.
이상 설명된 본 발명에 따른 실시 예는 컴퓨터상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 “상기”의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
Claims (15)
- 측정대상가정에 배치된 복수의 IoT기기로부터 제1기간에 대한 정상트래픽데이터를 수신하고 분할하는 트래픽분할단계;
기저장된 범용트래픽데이터로 학습된 오토인코더 중 인코더 부분을 채택하고, SVDD(Support Vector Data Description)함수를 손실함수로 적용하여 상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시키는 모델학습단계;
상기 정상트래픽데이터로 학습된 오토인코더에 상기 복수의 IoT기기의 제2기간에 대한 트래픽데이터를 적용하는 이상판단모델구축단계; 및
상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용한 결과로 이상점수를 산출하고, 상기 산출된 이상점수가 0을 초과하는지 여부를 기초로 하여 상기 복수의 IoT기기의 트래픽 이상징후를 감지하는 이상판단단계;를 포함하고,
상기 모델학습단계는,
상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시켜서, 상기 정상트래픽데이터가 기준반경을 갖는 초구체(hypersphere)내에 위치하도록 하고,
상기 기준반경은,
상기 채택된 오토인코더가 상기 정상트래픽데이터로 학습되는 과정에서 계속적으로 변하다가 상기 학습이 완료된 시점에 확정되는 값이고,
상기 이상판단단계는,
상기 기준반경을 기초로, 상기 초구체가 있는 공간에 배치된 상기 제2기간에 대한 트래픽데이터 중 적어도 하나가 상기 초구체내에 위치하지 않으면, 0을 초과하는 이상점수를 산출하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법. - 제1항에 있어서,
상기 트래픽분할단계는,
상기 복수의 IoT기기로부터 수신한 트래픽데이터를 각 IoT기기의 MAC주소를 기초로 하여, 기기별로 분할하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법. - 제1항에 있어서,
상기 트래픽분할단계는,
상기 분할된 정상트래픽데이터를 단위시간별로 분할된 트래픽통계벡터로 변환하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법. - 제3항에 있어서,
상기 트래픽통계벡터는,
아웃바운드패킷의 총계, 아웃바운드패킷의 최댓값과 최솟값의 차이, 아웃바운드패킷의 수, 인바운드패킷의 총계, 인바운드패킷의 최댓값과 최솟값의 차이, 인바운드패킷의 수를 순차적으로 포함하고 있는 벡터인 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법. - 제1항에 있어서,
상기 채택된 오토인코더는, MLP(Multi-Layer Perceptron)모델이고,
상기 학습된 오토인코더 중 인코더의 구조와 동일한 구조를 포함하는 모델인 것을 특징으로 하는 오토인코더 기반 IoT기기 이상징후 탐지 방법. - 제1항에 있어서,
상기 방법은,
상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용하면서 수반되는 반복과정에서, 상기 손실함수의 값이 기설정된 임계값을 초과할 때까지, 가중치의 크기가 가장 낮은 연결을 제거하는 프루닝단계; 및
상기 제2기간의 트래픽데이터로 학습된 오토인코더를 구성하는 신경망의 부동 소수점 산술과정을 고정 소수점 산술과정으로 변환하는 양자화(quantization)단계를 더 포함하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법. - 제6항에 있어서,
상기 양자화단계는,
32비트 부동 소수점으로 저장된 가중치의 자료형(Data Type)을 8비트 고정 소수점으로 변환하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 방법. - 제1항 내지 제7항 중 어느 한 항에 따른 방법을 실행시키기 위한 프로그램을 저장하고 있는 컴퓨터 판독가능한 기록매체.
- 측정대상가정에 배치된 복수의 IoT기기로부터 제1기간에 대한 정상트래픽데이터를 수신하고 분할하는 트래픽분할부;
기저장된 범용트래픽데이터로 학습된 오토인코더 중 인코더 부분을 채택하고, SVDD(Support Vector Data Description)함수를 손실함수로 적용하여 상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시키는 제1모델학습부;
상기 정상트래픽데이터로 학습된 오토인코더에 상기 복수의 IoT기기의 제2기간에 대한 트래픽데이터를 적용하는 제2모델학습부; 및
상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용한 결과로 이상점수를 산출하고, 상기 산출된 이상점수가 0을 초과하는지 여부를 기초로 하여 상기 복수의 IoT기기의 트래픽 이상징후를 감지하는 이상데이터판단부;를 포함하고,
상기 제1모델학습부는,
상기 채택된 오토인코더를 상기 정상트래픽데이터로 학습시켜서, 상기 정상트래픽데이터가 기준반경을 갖는 초구체(hypersphere)내에 위치하도록 하고,
상기 기준반경은,
상기 채택된 오토인코더가 상기 정상트래픽데이터로 학습되는 과정에서 계속적으로 변하다가 상기 학습이 완료된 시점에 확정되는 값이고,
상기 이상데이터판단부는,
상기 기준반경을 기초로, 상기 초구체가 있는 공간에 배치된 상기 제2기간에 대한 트래픽데이터 중 적어도 하나가 상기 초구체내에 위치하지 않으면, 0을 초과하는 이상점수를 산출하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 시스템. - 제9항에 있어서,
상기 트래픽분할부는,
상기 복수의 IoT기기로부터 수신한 트래픽데이터를 각 IoT기기의 MAC주소를 기초로 하여, 기기별로 분할하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 시스템. - 제9항에 있어서,
상기 트래픽분할부는,
상기 분할된 정상트래픽데이터를 단위시간별로 분할된 트래픽통계벡터로 변환하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 시스템. - 제11항에 있어서,
상기 트래픽통계벡터는,
아웃바운드패킷의 총계, 아웃바운드패킷의 최댓값과 최솟값의 차이, 아웃바운드패킷의 수, 인바운드패킷의 총계, 인바운드패킷의 최댓값과 최솟값의 차이, 인바운드패킷의 수를 순차적으로 포함하고 있는 벡터인 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 시스템. - 제9항에 있어서,
상기 채택된 오토인코더는, MLP(Multi-Layer Perceptron)모델이고,
상기 학습된 오토인코더 중 인코더의 구조와 동일한 구조를 포함하는 모델인 것을 특징으로 하는 오토인코더 기반 IoT기기 이상징후 탐지 시스템. - 제9항에 있어서,
상기 시스템은,
상기 제2기간에 대한 트래픽데이터를 오토인코더에 적용하면서 수반되는 반복과정에서, 상기 손실함수의 값이 기설정된 임계값을 초과할 때까지, 가중치의 크기가 가장 낮은 연결을 제거하는 제1최적화수행부; 및
상기 제2기간의 트래픽데이터로 학습된 오토인코더를 구성하는 신경망의 부동 소수점 산술과정을 고정 소수점 산술과정으로 변환하는 제2최적화수행부를 더 포함하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 시스템. - 제14항에 있어서,
상기 제2최적화수행부는,
32비트 부동 소수점으로 저장된 가중치의 자료형(Data Type)을 8비트 고정 소수점으로 변환하는 것을 특징으로 하는 오토인코더 기반 IoT기기의 이상징후 탐지 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190130183A KR102143593B1 (ko) | 2019-10-18 | 2019-10-18 | 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190130183A KR102143593B1 (ko) | 2019-10-18 | 2019-10-18 | 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102143593B1 true KR102143593B1 (ko) | 2020-08-11 |
Family
ID=72048091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190130183A KR102143593B1 (ko) | 2019-10-18 | 2019-10-18 | 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102143593B1 (ko) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102290039B1 (ko) | 2020-12-16 | 2021-08-13 | 한국인터넷진흥원 | IoT 기기의 이상 행위 모니터링 방법 및 그 장치 |
KR102297290B1 (ko) * | 2020-10-19 | 2021-09-03 | (주)휴네시온 | 네트워크 트래픽의 양자화 분석 장치 및 방법 |
KR102343962B1 (ko) * | 2020-10-19 | 2021-12-24 | 주식회사 케이티 | 중계기의 이상 탐지를 위한 트레이닝 방법, 중계기의 이상 탐지 장치 및 방법 |
CN113884292A (zh) * | 2021-10-09 | 2022-01-04 | 西安西电开关电气有限公司 | 基于svdd的开关设备机械故障诊断方法和系统 |
KR102370661B1 (ko) | 2021-07-02 | 2022-03-07 | 주식회사 모비젠 | 각 세대에 배치된 IoT기기들의 이상트래픽 탐지 방법 및 그 시스템 |
KR102465676B1 (ko) * | 2022-03-31 | 2022-11-11 | 주식회사 에너자이(ENERZAi) | 시계열 이상 감지 모델의 경량화 방법, 및 경량화 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101767454B1 (ko) | 2015-11-12 | 2017-08-14 | 주식회사 엔젠소프트 | 다양한 웹 서비스 환경에서 사용자의 행위 패턴 분석을 통한 이상행위 탐지 방법과 그를 위한 장치 |
KR101880705B1 (ko) | 2017-11-08 | 2018-07-20 | 주식회사 모비젠 | 인터넷을 이용하여 장치정보를 수집하는 시스템 및 그 방법 |
US20190166144A1 (en) * | 2017-11-30 | 2019-05-30 | Nec Corporation Of America | Detection of malicious network activity |
-
2019
- 2019-10-18 KR KR1020190130183A patent/KR102143593B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101767454B1 (ko) | 2015-11-12 | 2017-08-14 | 주식회사 엔젠소프트 | 다양한 웹 서비스 환경에서 사용자의 행위 패턴 분석을 통한 이상행위 탐지 방법과 그를 위한 장치 |
KR101880705B1 (ko) | 2017-11-08 | 2018-07-20 | 주식회사 모비젠 | 인터넷을 이용하여 장치정보를 수집하는 시스템 및 그 방법 |
US20190166144A1 (en) * | 2017-11-30 | 2019-05-30 | Nec Corporation Of America | Detection of malicious network activity |
Non-Patent Citations (3)
Title |
---|
Electronics and Telecommunications Trends. Vol. 30, No. 2, April 2015, pp. 87-94, 최강일 선임연구원 외 1인 저술(14-000-05-001, 스마트 네트워킹 핵심 기술개발). |
Minh-Nghia Nguyen 외 1인, "Scalable and Interpretable One-class SVMs with Deep Learning and Random Fourier Features", Queen’s Uniuversity Belfast, UK (2018.10.14.)* * |
Tomas Lundin 외 1인, "Quantization and Pruning of Multilayer Perceptrons: Towards Compact Neural Networks", IDIAP Communication (1997.03.)* * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102297290B1 (ko) * | 2020-10-19 | 2021-09-03 | (주)휴네시온 | 네트워크 트래픽의 양자화 분석 장치 및 방법 |
KR102343962B1 (ko) * | 2020-10-19 | 2021-12-24 | 주식회사 케이티 | 중계기의 이상 탐지를 위한 트레이닝 방법, 중계기의 이상 탐지 장치 및 방법 |
KR102290039B1 (ko) | 2020-12-16 | 2021-08-13 | 한국인터넷진흥원 | IoT 기기의 이상 행위 모니터링 방법 및 그 장치 |
KR102370661B1 (ko) | 2021-07-02 | 2022-03-07 | 주식회사 모비젠 | 각 세대에 배치된 IoT기기들의 이상트래픽 탐지 방법 및 그 시스템 |
CN113884292A (zh) * | 2021-10-09 | 2022-01-04 | 西安西电开关电气有限公司 | 基于svdd的开关设备机械故障诊断方法和系统 |
CN113884292B (zh) * | 2021-10-09 | 2023-07-21 | 西安西电开关电气有限公司 | 基于svdd的开关设备机械故障诊断方法和系统 |
KR102465676B1 (ko) * | 2022-03-31 | 2022-11-11 | 주식회사 에너자이(ENERZAi) | 시계열 이상 감지 모델의 경량화 방법, 및 경량화 장치 |
KR102582737B1 (ko) * | 2022-03-31 | 2023-09-25 | 주식회사 에너자이 | 시계열 이상 감지 모델의 경량화 방법, 및 경량화 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102143593B1 (ko) | 오토인코더 기반 IoT기기의 이상징후 탐지 방법 및 그 시스템 | |
CN114257386B (zh) | 检测模型的训练方法、系统、设备及存储介质 | |
KR102135024B1 (ko) | IoT 디바이스에 대한 사이버 공격의 종류를 식별하는 방법 및 그 장치 | |
CN113364752B (zh) | 一种流量异常检测方法、检测设备及计算机可读存储介质 | |
CN105827472B (zh) | 网络数据流类型检测方法及装置 | |
CN114465962B (zh) | 一种数据流类型识别方法及相关设备 | |
CN113489619B (zh) | 一种基于时间序列分析的网络拓扑推断方法及装置 | |
CN113452676B (zh) | 一种检测器分配方法和物联网检测系统 | |
Ravi et al. | Deep learning feature fusion approach for an intrusion detection system in SDN-based IoT networks | |
Kolcun et al. | The case for retraining of ML models for IoT device identification at the edge | |
JP2018147172A (ja) | 異常検知装置、異常検知方法及びプログラム | |
US20220067484A1 (en) | Detecting network activity from sampled network metadata | |
CN113489711B (zh) | DDoS攻击的检测方法、系统、电子设备和存储介质 | |
CN111181923A (zh) | 流量检测方法、装置、电子设备及存储介质 | |
CN111935185B (zh) | 基于云计算构建大规模诱捕场景的方法及系统 | |
CN116347492A (zh) | 5g切片流量异常检测方法、装置、计算机设备及存储介质 | |
KR102526935B1 (ko) | 네트워크 침입 탐지 시스템 및 네트워크 침입 탐지 방법 | |
Taleb et al. | Hybrid machine learning classification and inference of stalling events in mobile videos | |
CN114362994A (zh) | 多层异粒度智能聚合铁路系统运行行为安全风险识别方法 | |
WO2023275599A1 (en) | Training a machine learning model to identify a relationship between data items | |
Tong et al. | Machine learning based root cause analysis for SDN network | |
Wanode et al. | Optimal feature set selection for IoT device fingerprinting on edge infrastructure using machine intelligence | |
CN116527307A (zh) | 一种基于社区发现的僵尸网络检测算法 | |
CN116451138A (zh) | 基于多模态学习的加密流量分类方法、装置及存储介质 | |
US20190334823A1 (en) | Device selection for providing an end-to-end network connection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |