KR20220058189A - 뉴럴 네트워크를 이용한 분류 방법 및 장치 - Google Patents

뉴럴 네트워크를 이용한 분류 방법 및 장치 Download PDF

Info

Publication number
KR20220058189A
KR20220058189A KR1020200143677A KR20200143677A KR20220058189A KR 20220058189 A KR20220058189 A KR 20220058189A KR 1020200143677 A KR1020200143677 A KR 1020200143677A KR 20200143677 A KR20200143677 A KR 20200143677A KR 20220058189 A KR20220058189 A KR 20220058189A
Authority
KR
South Korea
Prior art keywords
noise
loss value
defensive
image
training image
Prior art date
Application number
KR1020200143677A
Other languages
English (en)
Inventor
박성진
송현오
안가온
한승주
Original Assignee
삼성전자주식회사
서울대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사, 서울대학교산학협력단 filed Critical 삼성전자주식회사
Priority to KR1020200143677A priority Critical patent/KR20220058189A/ko
Priority to US17/322,976 priority patent/US11967124B2/en
Publication of KR20220058189A publication Critical patent/KR20220058189A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/30Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/772Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

뉴럴 네트워크를 이용한 분류 방법 및 장치가 제시된다. 일 실시예에 따른 분류 장치는, 적어도 하나의 프로세서 및 메모리를 포함한다. 메모리는 방어적 노이즈 생성기를 포함하는 전처리기 및 분류기를 저장한다. 프로세서는 전처리기의 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성하고, 입력 이미지와 방어적 노이즈를 결합하여 결합 이미지를 생성하고, 결합 이미지를 분류기에 입력하여 분류 결과를 출력한다.

Description

뉴럴 네트워크를 이용한 분류 방법 및 장치{METHOD AND APPARATUS FOR CLASSIFYING USING NEURAL NETWORK}
뉴럴 네트워크를 이용한 분류 기술에 관한 것으로 노이즈에 강인한 분류 기술에 관한 것이다.
뉴럴 네트워크 기술은 이미지 분류, 음성 인식 등의 많은 분야에서 사용되고 있다. 입력 데이터를 잘 분류하도록 뉴럴 네트워크는 다량의 학습 데이터로 미리 학습된다. 하지만, 학습 데이터와 유사하지 않은 입력 데이터가 입력될 경우 분류 결과의 정확도는 낮아질 수 있다. 특히, 뉴럴 네트워크는 미세한 입력 데이터의 교란(perturbation)을 통해 예측 결과값을 바꾸는 적대적 공격(adversarial attack)에 취약하다.
위에서 설명한 배경기술은 발명자가 본원의 개시 내용을 도출하는 과정에서 보유하거나 습득한 것으로서, 반드시 본 출원 전에 일반 공중에 공개된 공지기술이라고 할 수는 없다.
일 실시예에 따른 분류 방법은, 방어적 노이즈 생성기를 포함하는 전처리기에 있어서, 상기 전처리기의 상기 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성하는 단계; 상기 입력 이미지와 상기 방어적 노이즈를 결합하여 결합 이미지를 생성하는 단계; 및 상기 결합 이미지를 분류기에 입력하여 분류 결과를 출력하는 단계를 포함한다.
상기 방어적 노이즈 생성기는 학습 과정의 전체 손실값이 작아지도록 학습되고, 적대적 노이즈 생성기는 상기 전체 손실값이 커지도록 학습되고, 상기 전체 손실값은 디노이징된 노이징된 학습 이미지 및 디노이징된 학습 이미지로부터 계산되고, 상기 디노이징된 노이징된 학습 이미지는 상기 학습 이미지에 상기 적대적 노이즈 생성기에 의해 생성된 적대적 노이즈와 상기 방어적 노이즈에 의해 생성된 방어적 노이즈가 반영된 결과이고, 상기 디노이징된 학습 이미지는 상기 학습 이미지에 상기 방어적 노이즈가 반영된 결과일 수 있다.
상기 전체 손실값은 제1 손실값 및 제2 손실값을 기초로 계산되고, 상기 제1 손실값은 제1 손실 함수를 이용하여 상기 디노이징된 노이징된 학습 이미지로부터 계산되고, 상기 제2 손실값은 제2 손실 함수를 이용하여 상기 디노이징된 학습 이미지로부터 계산될 수 있다.
상기 전체 손실값은 상기 제1 손실값에 제1 가중치를 적용하고 상기 제2 손실값에 제2 가중치를 적용하여 가중 평균을 통해 계산될 수 있다.
상기 전처리기는 노이즈 판별기를 더 포함하고, 상기 분류 방법은, 상기 노이즈 판별기는 상기 입력 이미지에 적대적 노이즈가 반영되어 있는지 여부를 판별하는 단계; 및 상기 입력 이미지에 상기 적대적 노이즈가 반영되지 않은 경우, 상기 입력 이미지를 상기 분류기에 입력하여 분류 결과를 출력하는 단계를 더 포함할 수 있다.
일 실시예에 따른 전처리기 학습 방법은, 방어적 노이즈 생성기를 포함하는 전처리기에 있어서, 적대적 노이즈 생성기를 통해 학습 이미지로부터 적대적 노이즈를 생성하는 단계; 상기 학습 이미지와 상기 적대적 노이즈를 결합하여 노이징된 학습 이미지를 생성하는 단계; 상기 방어적 노이즈 생성기를 통해 상기 노이징된 학습 이미지로부터 방어적 노이즈를 생성하는 단계; 상기 노이징된 학습 이미지와 상기 방어적 노이즈를 결합하여 디노이징된 노이징된 학습 이미지를 생성하는 단계; 상기 디노이징된 노이징된 학습 이미지를 분류기에 입력하여 전체 손실값을 계산하는 단계; 및 상기 전체 손실값을 기초로 상기 적대적 노이즈 생성기 및 상기 방어적 노이즈 생성기를 학습시키는 단계를 포함한다.
상기 학습시키는 단계는, 상기 전체 손실값이 커지도록 상기 적대적 노이즈 생성기를 학습시키고, 상기 전체 손실값이 작아지도록 상기 방어적 노이즈 생성기를 학습시킬 수 있다.
상기 방법은, 상기 학습 이미지와 상기 방어적 노이즈를 결합하여 디노이징된 학습 이미지를 생성하는 단계를 더 포함할 수 있다.
상기 전체 손실값을 계산하는 단계는, 전체 손실 함수를 이용하여 상기 디노이징된 노이징된 학습 이미지 및 상기 디노이징된 학습 이미지로부터 전체 손실값을 계산하는 단계를 포함할 수 있다.
상기 전체 손실값을 계산하는 단계는, 제1 손실 함수를 이용하여 상기 디노이징된 노이징된 학습 이미지에 대한 제1 손실값을 계산하는 단계; 제2 손실 함수를 이용하여 상기 디노이징된 학습 이미지에 대한 제2 손실값을 계산하는 단계; 및 상기 제1 손실값과 상기 제2 손실값을 기초로 전체 손실값을 계산하는 단계를 포함할 수 있다.
상기 제1 손실값과 상기 제2 손실값을 합산하여 전체 손실값을 계산하는 단계는, 상기 제1 손실값에 제1 가중치를 적용하고 상기 제2 손실값에 제2 가중치를 적용하여 가중 평균을 계산함으로써 상기 전체 손실값을 계산하는 단계를 포함할 수 있다.
상기 전처리기는 노이즈 판별기를 더 포함하고, 상기 학습 방법은, 상기 노이즈 판별기를 통해 상기 노이징된 학습 이미지에 상기 적대적 노이즈가 반영되어 있는지 여부를 판단하는 단계; 및 상기 판단 결과를 기초로 상기 노이즈 판별기를 학습시키는 단계를 더 포함할 수 있다.
일 실시예에 따른 컴퓨터 프로그램은 하드웨어와 결합되어 상기 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.
일 실시예에 따른 분류 장치는, 적어도 하나의 프로세서; 및 메모리를 포함하고, 상기 메모리는 방어적 노이즈 생성기를 포함하는 전처리기 및 분류기를 저장하고, 상기 프로세서는, 상기 전처리기의 상기 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성하고, 상기 입력 이미지와 상기 방어적 노이즈를 결합하여 결합 이미지를 생성하고, 상기 결합 이미지를 분류기에 입력하여 분류 결과를 출력한다.
도 1은 일 실시예에 따른 분류 장치가 동작하는 과정을 설명하기 위한 블록도이다.
도 2는 일 실시예에 따른 학습 장치가 동작하는 과정을 설명하기 위한 블록도이다.
도 3은 PGD 방식에 의해 분류기를 학습하는 과정을 설명하기 위한 블록도이다.
도 4는 적대적 노이즈 생성기만을 이용하여 분류기를 학습하는 과정을 설명하기 위한 블록도이다.
도 5는 PGD 방식과 적대적 노이즈를 결합하여 분류기를 학습하는 과정을 설명하기 위한 블록도이다.
도 6은 일 실시예에 따른 분류 방법의 동작을 도시한 순서도이다.
도 7은 일 실시예에 따른 학습 방법의 동작을 도시한 순서도이다.
도 8은 일 실시예에 따른 분류 장치의 구성을 도시한 도면이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 일 실시예에 따른 분류 장치가 동작하는 과정을 설명하기 위한 블록도이다.
일 실시예에 따르면, 분류 장치(100)는 입력 이미지를 전처리하여 입력 이미지의 노이즈를 완화하여 입력 이미지를 분류할 수 있다. 분류 장치(100)는 입력 이미지의 노이즈를 완화하는 전처리를 수행할 수 있다. 분류 장치(100)는 입력 이미지를 기초로 방어적 노이즈를 생성하고, 방어적 노이즈를 입력 이미지에 반영하여 노이즈를 완화할 수 있다. 이를 통해, 분류 장치(100)는 분류 결과의 정확도를 높일 수 있다.
분류 장치(100)는 의료 산업, 보안 산업 등의 인간의 생명 또는 보안과 직접적으로 연관이 있는 산업 분야의 인공지능 시스템에 적용하여 안정성을 높일 수 있다. 분류 장치(100)는 무인 드론, 자율주행차와 같이 다양한 환경 속에서도 잘 동작해야 하는 인공지능 시스템에 적용될 수 있다. 다만, 이들은 예시에 불과하며 분류 장치(100)는 이미지 인식 뿐만 아니라 음성 인식을 비롯한 생체 인식과 관련된 모든 인공지능 시스템에 적용될 수 있다.
일 실시예에 따르면, 분류 장치(100)는 뉴럴 네트워크에 대한 미세한 입력값 변화에 대한 내성 또는 강건성(robustness)을 높일 수 있다. 이를 위하여, 분류 장치(100)는 방어적 노이즈 생성기를 포함하는 전처리기(preprocessor)를 포함할 수 있다. 분류 장치(100)는 전처리기의 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성한다. 분류 장치(100)는 입력 이미지와 방어적 노이즈를 결합하여 결합 이미지를 생성한다. 분류 장치(100)는 결합 이미지를 분류기에 입력하여 손실값을 계산한다. 분류 장치(100)는 손실값을 기초로 결합 이미지를 분류한다.
학습 과정은 추론(inference) 과정과 달리 방어적 노이즈 생성기 뿐만 아니라 적대적 노이즈 생성기를 사용한다. 방어적 노이즈 생성기(defensive noise generator) 및 적대적 노이즈 생성기(adversarial noise generator)는 GAN(Generative Adversarial Networks)을 포함할 수 있다.
학습 과정에서 전처리기는 이미 학습된 분류기의 강건성을 키우도록 학습될 수 있다. 학습 과정에서 적대적 생성기와 방어적 생성기는 동시에 학습될 수 있다. 적대적 생성기는 어떤 입력값이 주어졌을 때 그 입력값에 작은 노이즈를 더해 분류기가 잘못된 추론을 하도록 학습될 수 있다. 방어적 생성기는 적대적 노이즈가 반영된 학습 이미지를 입력 받고 적대적 노이즈를 제거하여 분류기가 올바른 판단을 하도록 학습될 수 있다. 방어적 노이즈 생성기는 학습 과정의 전체 손실값이 작아지도록 학습되고, 적대적 노이즈 생성기는 전체 손실값이 커지도록 학습될 수 있다.
전체 손실값은 적대적 노이즈가 반영된 후 방어적 노이즈가 반영된 학습 이미지 및 방어적 노이즈만 반영된 학습 이미지를 기초로 계산될 수 있다. 적대적 노이즈가 반영된 후 방어적 노이즈가 반영된 학습 이미지는 적대적 노이즈가 반영되어 노이징된(noised) 학습 이미지가 방어적 노이즈에 의해 디노이징된(denoised) 결과이다. 이처럼, 학습 이미지에 적대적 노이즈 생성기에 의해 생성된 적대적 노이즈와 방어적 노이즈에 의해 생성된 방어적 노이즈가 반영된 결과는 디노이징된 노이징된 학습 이미지로 지칭될 수 있다. 방어적 노이즈만 반영된 학습 이미지는 노이징되지 않은 학습 이미지가 디노이징된 결과이다. 이처럼, 학습 이미지에 방어적 노이즈가 반영된 결과는 디노이징된 학습 이미지로 지칭될 수 있다.
전체 손실값은 제1 손실값 및 제2 손실값을 기초로 계산될 수 있다. 여기서, 제1 손실값은 제1 손실 함수를 이용하여 디노이징된 노이징된 학습 이미지로부터 계산될 수 있다. 제2 손실값은 제2 손실 함수를 이용하여 디노이징된 학습 이미지로부터 계산될 수 있다.
디노이징된 노이징된 학습 이미지 및 디노이징된 학습 이미지 각각의 손실값을 반영하는 이유는, 학습 과정과 달리 추론 과정에서는 입력 이미지에 적대적 노이즈가 적용되었는지 여부를 알 수 없기 때문이다. 단순히 디노이징된 노이징된 학습 이미지에 대해서만 학습 과정이 수행되는 경우, 적대적 노이즈가 적용되지 않은 입력 이미지의 분류의 정확도가 낮아질 우려가 있다. 분류 장치(100)는 학습 과정에서 디노이징된 학습 이미지에 대해서도 학습되기 때문에 적대적 노이즈가 적용되지 않은 입력 이미지에 대해서도 높은 정확도를 나타낼 수 있다.
전체 손실값은 제1 손실값에 제1 가중치를 적용하고 제2 손실값에 제2 가중치를 적용하여 가중 평균을 통해 계산될 수 있다. 여기서, 제1 가중치는 적대적 노이즈를 더 잘 방어하는 것에 대한 가중치이다. 제2 가중치는 적대적 노이즈가 없는 경우에 방어적 노이즈에 의해 입력 이미지가 훼손되는 것을 방지하는 것에 대한 가중치이다. 분류 장치(100)는 제1 가중치 및 제2 가중치를 조정함으로써 양자의 정확도를 조정할 수 있다.
학습 과정이 끝나면 방어적 생성기는 분류기에 연결되어 분류 장치에 포함된다. 분류 장치는 입력 이미지를 전처리하여 분류기로 보내고 분류기를 통해 분류 결과를 출력할 수 있다. 도 1을 참조하면, 분류 장치(100)는 미리 학습된 방어적 노이즈 생성기(110)과 미리 학습된 분류기(120)를 포함할 수 있다.
분류 장치(100)는 입력 이미지(101) x를 입력 받을 수 있다. 방어적 노이즈 생성기(110)는 입력 이미지(101) x를 입력 받아 입력 이미지(101) x에 적합한 방어적 노이즈를 생성할 수 있다. 분류 장치(100)는 방어적 노이즈와 입력 이미지(101) x를 결합하여 결합 이미지(103) xd를 생성할 수 있다.
입력 이미지(101) x에 적대적 노이즈가 반영된 경우, 결합 이미지(103) xd는 적대적 노이즈가 완화된 이미지일 수 있다. 입력 이미지(101) x에 적대적 노이즈가 반영되지 않은 경우, 결합 이미지(103) xd는 입력 이미지(101) x가 크게 왜곡되지 않은 이미지일 수 있다. 학습 과정에서 전체 손실값은 적대적 노이즈가 반영된 후 방어적 노이즈가 반영된 학습 이미지 및 방어적 노이즈만 반영된 학습 이미지를 기초로 계산되므로, 분류 장치(100)는 적대적 노이즈가 반영되는지에 상관없이 높은 정확도를 나타낼 수 있다.
다른 실시예에 따르면, 분류 장치(100)의 전처리기는 노이즈 판별기를 더 포함할 수 있다. 추론 과정에서, 노이즈 판별기는 방어적 노이즈 생성에 앞서 입력 이미지에 노이즈가 반영되어 있는지 여부를 판별하고, 노이즈가 반영되어 있지 않으면 방어적 노이즈를 생략하고 입력 이미지로부터 분류 결과를 출력할 수 있다. 이를 통해 방어적 노이즈에 의한 오류 가능성을 낮출 수 있다.
이를 위하여, 학습 과정에서 노이즈 판별기를 통해 노이징된 학습 이미지에 적대적 노이즈가 반영되어 있는지 여부가 판단될 수 있다. 판단 결과를 기초로 노이즈 판별기는 학습될 수 있다. 노이즈 판별기의 학습을 위해 노이즈 판별 손실값이 도입될 수 있다. 노이즈 판별 손실값은 제3 손실값과 제4 손실값을 합산하여 계산될 수 있다. 제3 손실값은 적대적 생성기가 노이즈 판별기를 잘 속이는지를 반영하고 제4 손실값은 노이즈 판별기가 적대적 노이즈 반영 여부를 잘 판단하는지를 반영할 수 있다.
Figure pat00001
표 1은 다양한 공격 기법과 방어 기법을 조합한 실험의 결과를 나타낸다. 표 1의 실험에서, 데이터셋은 MNIST (0~9 사이의 숫자가 적혀진 데이터셋)이다. 방어 기법의 '없음'과 '
Figure pat00002
'의 경우 분류기는 2개의 컨벌루셔널 레이어(convolutional layer)와 1개의 풀 커넥티드 레이어(fully connected layer)를 포함하고 이미 학습된 뉴럴 네트워크이다. 방어 기법의 'PGD'의 경우 분류기는 2개의 컨벌루셔널 레이어(convolutional layer)와 1개의 풀 커넥티드 레이어(fully connected layer)를 포함하고 PGD 적대적 학습 기법을 통해 미리 학습된 뉴럴 네트워크이다. 적대적 생성기와 방어적 생성기에는 모두 같은 아키텍처 사용되었다. 공격기법의 '
Figure pat00003
'의 경우 분류기는 2개의 컨벌루셔널 레이어(convolutional layer)와 2 개의 디컨벌루셔널 레이어(deconvolutional layer)로 이루어진 뉴럴 네트워크이다. 학습 방법은 아담 옵티마이저(Adam optimizer)로 60 에포크(epoch) 동안 학습하는 방식이 적용되었다.
표 1의 각 열은 다양한 방어 기법을 나타낸다. '없음'의 경우 적대적 학습이 되어있지 않은 뉴럴 네트워크를 사용하고 별도의 전처리 과정을 거치지 않는다. '
Figure pat00004
'는 적대적 학습이 안 된 뉴럴 네트워크를 사용하되 방어적 생성기를 통한 전처리를 거친다. 'PGD'는 PGD 적대적 학습 기법으로 학습된 뉴럴 네트워크를 사용하며 별도의 전처리는 사용하지 않는다.
표 1의 각 행은 다양한 공격 기법을 나타낸다. '없음'은 공격을 하지 않은 경우이고, 'PGD'는 PGD 적대적 학습 기법을 사용해 생성한 적대적 예시를 나타낸다. '
Figure pat00005
'는 적대적 생성기를 통해 생성한 적대적 예시를 나타낸다. 표 1의 각 값은 테스트셋 이미지 1 만장에 대한 분류 정확도를 %로 표현한 것이다.
표 1에 따르면, 분류 장치(100)의 방어적 생성기는 적대적 생성기에 의한 공격에 높은 정확도(98.85%)를 보인다. 분류 장치(100)는 공격이 없는 경우에도 원본 이미지를 크게 왜곡하지 않음으로써 정확도(98.94%)를 높게 유지한다. 또한, PGD에서 생성되는 적대적 예시의 경우 방어적 생성기가 학습된 바가 없음에도 불구하고 분류 장치(100)는 상당한 정확도(86.74%)를 나타낸다. 분류 장치(100)는 PGD를 기반으로 학습된 분류기의 정확도(97.32%, 96.45%, 87%) 보다 모든 경우에서 더 높은 정확도를 나타낸다.
Figure pat00006
표 2는 방어적 생성기가 함께 학습된 적대적 생성기를 사용하여 공격하는 경우와 방어적 생성기가 함께 학습되지 않은 적대적 생성기를 사용하여 공격하는 경우를 비교하는 표이다. 표 2의 각 행에서, '
Figure pat00007
'는 방어적 생성기와 적대적 생성기가 함께 학습된 경우의 적대적 생성기에 의해 생성된 적대적 예시에 의해 공격하는 경우를 나타낸다. '
Figure pat00008
*'는 방어적 생성기와 적대적 생성기가 함께 학습되지 않은 경우의 적대적 생성기에 의해 생성된 적대적 예시에 의해 공격하는 경우를 나타낸다.
표 2를 참조하면, 함께 학습되지 않은 적대적 생성기를 사용하는 경우의 정확도(98.91%)는 함께 학습된 적대적 생성기를 사용하는 경우의 정확도(98.85%) 보다 오히려 더 높다. 이처럼, 분류 장치(100)는 별도로 학습된 적대적 생성기에 의한 공격에도 강인한 결과를 보인다.
Figure pat00009
표 3은 PGD 기반 적대적 훈련 기법을 이용한 학습 시간과 일 실시예에 따른 분류 장치(100)의 학습 시간을 비교한 것이다. 분류 장치(100)의 학습의 경우 적대적 예시 생성 과정에서 PGD 알고리즘을 사용하지 않기 때문에 요구되는 연산량이 줄어 학습 속도가 크게 향상된다. 표 3에 따르면, 분류 장치(100)의 학습은 PGD 기반 적대적 훈련 기법에 비해 3~4 배 정도 빠른 학습 속도를 나타낸다.
도 2는 일 실시예에 따른 학습 장치가 동작하는 과정을 설명하기 위한 블록도이다.
도 2를 참조하면, 일 실시예에 따르면, 학습 장치(200)는 방어적 노이즈 생성기를 포함하는 전처리기를 학습시킬 수 있다. 학습 장치(200)는 적대적 노이즈 생성기(210)
Figure pat00010
, 방어적 노이즈 생성기(110)
Figure pat00011
및 분류기(120)
Figure pat00012
을 포함할 수 있다. 여기서, 분류기(120)는 미리 학습된 것일 수 있다.
적대적 노이즈 생성기(210)는 학습 이미지로부터 적대적 노이즈를 생성한다. 적대적 노이즈 생성기(210)는 학습 입력 이미지(201) x를 입력 받을 수 있다. 적대적 노이즈 생성기(210)는 분류기(120)가 학습 입력 이미지(201) x를 잘못 분류하도록 적대적 노이즈를 생성할 수 있다.
학습 장치(200)는 학습 이미지와 적대적 노이즈를 결합하여 노이징된 학습 이미지를 생성한다. 적대적 노이즈와 학습 입력 이미지(201) x가 결합되면 노이징된 이미지(202)
Figure pat00013
가 생성될 수 있다.
방어적 노이즈 생성기(110)는 노이징된 학습 이미지로부터 방어적 노이즈를 생성한다. 방어적 노이즈 생성기(110)는 노이징된 이미지(202)
Figure pat00014
를 입력 받을 수 있다. 방어적 노이즈 생성기(110)는 노이징된 이미지(202)
Figure pat00015
를 기초로 방어적 노이즈를 생성할 수 있다. 방어적 노이즈 생성기(110)는 노이징된 이미지(202)
Figure pat00016
가 분류기에 의해 다시 잘 분류될 수 있도록 방어적 노이즈를 생성할 수 있다.
학습 장치(200)는 노이징된 학습 이미지와 방어적 노이즈를 결합하여 디노이징된 노이징된 학습 이미지를 생성한다. 방어적 노이즈와 노이징된 이미지(202)
Figure pat00017
가 결합되어 디노이징된 노이징된 이미지(203)
Figure pat00018
가 생성될 수 있다. 학습 장치(200)는 학습 이미지와 방어적 노이즈를 결합하여 디노이징된 학습 이미지를 생성할 수 있다.
학습 장치(200)는 디노이징된 노이징된 학습 이미지를 분류기에 입력하여 전체 손실값을 계산한다. 학습 장치(200)는 전체 손실값이 커지도록 적대적 노이즈 생성기를 학습시키고, 전체 손실값이 작아지도록 방어적 노이즈 생성기를 학습시킬 수 있다. 학습 장치(200)는 전체 손실값을 기초로 적대적 노이즈 생성기 및 방어적 노이즈 생성기를 학습시킨다.
분류기(120)는 디노이징된 노이징된 이미지(203)
Figure pat00019
를 입력 받을 수 있다. 분류기(120)는 분류 결과(204)를 출력할 수 있다. 분류 결과(204)는 전체 손실 함수에 입력되어 전체 손실값이 출력될 수 있다. 학습 장치(200)는 전체 손실 함수를 이용하여 디노이징된 노이징된 학습 이미지 및 디노이징된 학습 이미지로부터 전체 손실값을 계산할 수 있다. 학습 장치(200)는 제1 손실 함수를 이용하여 디노이징된 노이징된 학습 이미지에 대한 제1 손실값을 계산할 수 있다. 학습 장치(200)는 제2 손실 함수를 이용하여 디노이징된 학습 이미지에 대한 제2 손실값을 계산할 수 있다. 학습 장치(200)는 제1 손실값과 제2 손실값을 기초로 전체 손실값을 계산할 수 있다. 전체 손실 함수는 식 1과 같다.
Figure pat00020
Figure pat00021
Figure pat00022
는 각각 학습 입력 이미지(201)와 그에 해당하는 레이블을 나타낸다.
Figure pat00023
는 데이터셋의 분포이고,
Figure pat00024
Figure pat00025
는 적대적 노이즈 생성기(210)와 방어적 노이즈 생성기(110)의 학습 가능한 파라미터이다. 또한
Figure pat00026
Figure pat00027
은 각각 적대적 예시를 전처리 했을 때의 제1 손실값과, 원본 이미지를 전처리 했을 때의 제2 손실값을 나타내며, 각각 수학식 2 및 수학식 3을 따른다.
수학식 2에서
Figure pat00028
는 노이징된 이미지(202)
Figure pat00029
를 나타내고,
Figure pat00030
는 방어적 노이즈를 나타내며,
Figure pat00031
는 디노이징된 노이징된 이미지(203)
Figure pat00032
를 나타낸다. 수학식 3에서
Figure pat00033
는 적대적 노이즈가 반영되지 않고 방어적 노이즈만 반영된 학습 입력 이미지를 나타낸다. 한편, 학습 장치(200)는 제1 손실값에 제1 가중치를 적용하고 제2 손실값에 제2 가중치를 적용하여 가중 평균을 계산함으로써 전체 손실값을 계산할 수도 있다.
Figure pat00034
Figure pat00035
도 3은 PGD 방식에 의해 분류기를 학습하는 과정을 설명하기 위한 블록도이다.
강건성을 높이기 위해 가장 널리 쓰이는 방법인 PGD 기반 적대적 학습 기법(Madry et al., Towards Deep Learning Models Resistant to Adversarial Attacks, ICLR'18)은 데이터 확장 기법(data augmentation)의 하나이다. PGD 기반 적대적 학습 기법은 학습 데이터로부터 적대적 예시를 생성한 후 이에 대한 손실 함수값이 0에 가까워지도록 뉴럴 네트워크를 학습한다.
도 3을 참조하면, 학습 과정에서 PGD 공격기(310)는 입력 이미지(301) x를 입력 받는다. PGD 공격기(310)는 입력 이미지(301) x에 노이즈를 적용할 수 있다. PGD 공격기(310)는 노이징된 이미지(302) xa를 출력할 수 있다. 노이징된 이미지(302) xa는 분류기(320)에 입력될 수 있다. 분류기(320)
Figure pat00036
는 노이징된 이미지(302) xa로부터 분류 결과(304)를 출력할 수 있다. PGD 공격기(310)는 분류 결과(304)를 기초로 노이즈를 최적화할 수 있다. 이러한 최적화 과정은 보통 10회 이상 반복된다. 분류기(320)
Figure pat00037
는 분류 결과(404)를 기초로 학습된다.
PGD 기반 적대적 학습 기법은 적대적 예시를 생성하는 과정에서 PGD 방식으로 적대적 예시를 최적화하는 과정을 거치기 때문에 학습 시간이 길다. 예를 들어, PGD 기반 적대적 학습 기법은 일반적인 뉴럴 네트워크 학습 기법에 비해 필요한 연산량이 보통 10배 이상이다. 또한 이미 학습된 뉴럴 네트워크에 PGD 기반 적대적 학습 기법을 적용하기 위해서는 이미 학습된 뉴럴 네트워크 전체가 다시 학습되어야 한다.
일 실시예에 따르면, 분류 장치(100)는 PGD 공격기(310) 대신 적대적 노이즈 생성기를 사용한다. PGD 공격기(310)는 모든 샘플 별로 10회 이상의 최적화 과정을 거치지만, 적대적 노이즈 생성기는 입력 이미지에 대한 별도의 최적화 과정을 거치지 않기 때문에 학습에 걸리는 시간이 현저하게 줄어든다.
도 4는 적대적 노이즈 생성기만을 이용하여 분류기를 학습하는 과정을 설명하기 위한 블록도이다.
적대적 예시를 생성하는 생성기(generator) 기반 적대적 학습 기법(Wang et al., A Direct Approach to Robust Deep Learning Using Adversarial Networks, ICLR'19), (Liu et al., Rob-GAN: Generator, Discriminator, and Adversarial Attacker, CVPR'19)에서는 데이터 확장 기법을 쓰되 적대적 예시를 생성하기 위해 뉴럴 네트워크로 구성된 생성기를 학습시킨다.
도 4를 참조하면, 학습 과정에서 입력 이미지(401) x는 적대적 노이즈 생성기(410)에 입력된다. 적대적 노이즈 생성기(410)는 입력 이미지(401) x에 대응하여 적대적 노이즈를 생성한다. 적대적 노이즈와 입력 이미지(401) x가 결합되어 결합 이미지(402) xa가 생성된다. 결합 이미지(402) xa는 분류기(420)
Figure pat00038
에 입력되고, 분류기(420)
Figure pat00039
는 분류 결과(404)를 출력한다. 분류기(420)
Figure pat00040
는 분류 결과(404)를 기초로 손실값이 작아지는 방향으로 학습된다.
생성기 기반 적대적 학습 기법은 PGD 기반 적대적 학습 기법에 비해 적대적 예시를 생성하는 비용이 줄어든다는 장점은 있으나, 방어 성능이 크게 떨어진다. 또한 이미 학습된 뉴럴 네트워크에 생성기 기반 적대적 학습 기법을 적용하기 위해서는 이미 학습된 뉴럴 네트워크 전체가 다시 학습되어야 한다.
일 실시예에 따르면, 분류 장치(100)는 학습 과정에 적대적 노이즈 생성기(410)와 함께 방어적 노이즈 생성기를 도입한다. 학습 과정에서, 생성기 기반 적대적 학습 기법은 적대적 노이즈 생성기(410)와 분류기(420)
Figure pat00041
를 학습시키는데 반해, 분류 장치(100)의 경우 분류기(420)
Figure pat00042
는 이미 학습된 상태이며 적대적 노이즈 생성기와 방어적 노이즈 생성기가 학습된다.
분류 장치(100)는 방어적 노이즈 생성기를 이용하여 생성기 기반 적대적 학습 기법에 비해 보다 높은 정확도를 달성한다. 또한, 분류 장치(100)는 이미 학습된 분류기에 방어적 노이즈 생성기를 전처리기로서 연결하기 때문에 학습 시간을 줄일 수 있다.
도 5는 PGD 방식과 적대적 노이즈를 결합하여 분류기를 학습하는 과정을 설명하기 위한 블록도이다.
도 5를 참조하면, 적대적 노이즈 생성기(511)는 가우시안 노이즈(502) z를 입력 받아 노이징된 이미지(504) xa,g를 출력한다. PGD 공격기(512)는 입력 이미지(501) x를 입력 받아 노이징된 이미지(503) xa,p를 생성한다. 분류기(520)는 노이징된 이미지(503, 504)를 입력 받아 분류 결과(505)를 출력한다. PGD 공격기(512)는 분류 결과(505)를 기초로 노이징된 이미지(503) xa,p를 최적화한다. 최적화가 완료되면 최종적인 분류 결과(505)가 출력되고, 이를 기초로 적대적 노이즈 생성기(511)과 분류기(520)이 학습된다.
도 5의 융합 기법의 경우 생성기 기반 적대적 학습 기법에 비해 높은 정확도를 달성할 수 있다. 하지만, 적대적 예시를 생성하는 과정에서 PGD 방식으로 적대적 예시를 최적화하는 과정을 거치기 때문에 학습 시간이 길다. 또한 이미 학습된 분류기(520) 전체가 다시 학습되어야 한다.
일 실시예에 따르면, 분류 장치(100)는 학습 과정에 적대적 노이즈 생성기(410)와 함께 방어적 노이즈 생성기를 도입한다. 분류 장치(100)의 경우 분류기(420)
Figure pat00043
는 이미 학습된 상태이며 적대적 노이즈 생성기와 방어적 노이즈 생성기가 학습되므로 학습 시간은 적게 소요된다. 또한, PGD 최적화 과정을 거치지 않으므로 학습 시간은 더욱 줄어들게 된다.
도 6은 일 실시예에 따른 분류 방법의 동작을 도시한 순서도이다.
일 실시예에 따르면, 단계(601)에서, 분류 장치(100)는 전처리기의 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성한다. 방어적 노이즈 생성기는 적대적 노이즈 생성기와 함께 학습 과정에서 미리 학습될 수 있다. 학습 과정에서 적대적 노이즈 생성기는 손실값을 높이는 방향으로 학습되고, 방어적 노이즈 생성기는 손실값을 낮추는 방향으로 학습될 수 있다. 적대적 노이즈 생성기와 방어적 노이즈 생성기는 GAN으로 형성될 수 있다.
단계(602)에서, 분류 장치(100)는 입력 이미지와 방어적 노이즈를 결합하여 결합 이미지를 생성한다. 입력 이미지에 적대적 노이즈가 적용된 경우 방어적 노이즈에 의해 노이즈 효과가 완화될 수 있다. 한편, 학습 과정에서 학습 입력 이미지에 대해 방어적 노이즈만 반영된 경우에 대해서도 학습이 수행되므로, 추론 과정에서 적대적 노이즈가 적용되지 않은 경우에도 높은 수준의 정확도가 달성될 수 있다.
단계(603)에서, 분류 장치(100)는 결합 이미지를 분류기에 입력하여 분류 결과를 출력할 수 있다. 분류 장치(100)는 전처리된 결합 이미지를 분류기에 입력하여 출력 벡터를 획득할 수 있다. 분류 장치(100)는 출력 벡터를 기초로 분류 결과를 획득할 수 있다.
도 7은 일 실시예에 따른 학습 방법의 동작을 도시한 순서도이다.
일 실시예에 따르면, 단계(701)에서, 학습 장치는 적대적 노이즈 생성기를 통해 학습 이미지로부터 적대적 노이즈를 생성한다. 추론 과정과 달리 학습 과정에는 방어적 노이즈 생성기와 함께 적대적 노이즈 생성기가 도입된다. 적대적 노이즈 생성기와 방어적 노이즈 생성기는 GAN으로 구성될 수 있다.
단계(702)에서, 학습 장치는 학습 이미지와 적대적 노이즈를 결합하여 노이징된 학습 이미지를 생성한다. 다른 경로로, 학습 장치는 적대적 노이즈를 결합하지 않은 학습 이미지를 바로 방어적 노이즈 생성기로 전달할 수 있다.
단계(703)에서, 학습 장치는 방어적 노이즈 생성기를 통해 노이징된 학습 이미지로부터 방어적 노이즈를 생성한다. 방어적 노이즈는 적대적 노이즈를 완화하도록 생성될 수 있다.
단계(704)에서, 학습 장치는 노이징된 학습 이미지와 방어적 노이즈를 결합하여 디노이징된 노이징된 학습 이미지를 생성한다. 학습 장치는 노이징된 학습 이미지에 방어적 노이즈를 결합하여 디노이징된 노이징된 학습 이미지를 출력할 수 있다. 한편, 학습 장치는 학습 이미지에 방어적 노이즈를 결합하여 디노이징된 학습 이미지를 출력할 수 있다.
단계(705)에서, 학습 장치는 디노이징된 노이징된 학습 이미지를 분류기에 입력하여 전체 손실값을 계산한다. 학습 장치는 디노이징된 노이징된 학습 이미지와 디노이징된 학습 이미지를 분류기에 입력하여 전체 손실값을 계산할 수 있다. 학습 장치는 디노이징된 노이징된 학습 이미지로부터 제1 손실값을 계산하고, 디노이징된 학습 이미지로부터 제2 손실값을 계산할 수 있다. 학습 장치는 제1 손실값과 제2 손실값을 결합하여 전체 손실값을 계산할 수 있다. 학습 장치는 제1 손실값과 제2 손실값을 가중 평균하여 전체 손실값을 계산할 수도 있다.
단계(706)에서, 학습 장치는 전체 손실값을 기초로 적대적 노이즈 생성기 및 방어적 노이즈 생성기를 학습시킨다. 적대적 노이즈 생성기는 전체 손실값을 증가시키도록 학습되고 방어적 노이즈 생성기는 전체 손실값을 감소시키도록 학습될 수 있다.
도 8은 일 실시예에 따른 분류 장치의 구성을 도시한 도면이다.
일 실시예에 따르면, 분류 장치(100)는 적어도 하나의 프로세서(801) 및 메모리(802)를 포함한다. 메모리(802)는 방어적 노이즈 생성기를 포함하는 전처리기 및 분류기를 저장한다.
프로세서(801)는 전처리기의 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성한다. 프로세서(801)는 입력 이미지와 방어적 노이즈를 결합하여 결합 이미지를 생성한다. 프로세서(801)는 결합 이미지를 분류기에 입력하여 분류 결과를 출력한다.
방어적 노이즈 생성기는 적대적 노이즈 생성기와 함께 학습될 수 있다. 방어적 노이즈 생성기와 적대적 노이즈 생성기의 학습은 입력 이미지에 대한 별도의 최적화 과정을 거치지 않기 때문에 학습에 걸리는 시간이 현저하게 줄어든다. 또한, 이미 학습된 분류기에 방어적 노이즈 생성기를 전처리기로서 연결하기 때문에 학습 시간은 더욱 줄어들 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (14)

  1. 방어적 노이즈 생성기를 포함하는 전처리기에 있어서,
    상기 전처리기의 상기 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성하는 단계;
    상기 입력 이미지와 상기 방어적 노이즈를 결합하여 결합 이미지를 생성하는 단계; 및
    상기 결합 이미지를 분류기에 입력하여 분류 결과를 출력하는 단계
    를 포함하는, 분류 방법.
  2. 제1항에 있어서,
    상기 방어적 노이즈 생성기는 학습 과정의 전체 손실값이 작아지도록 학습되고, 적대적 노이즈 생성기는 상기 전체 손실값이 커지도록 학습되고, 상기 전체 손실값은 디노이징된 노이징된 학습 이미지 및 디노이징된 학습 이미지로부터 계산되고, 상기 디노이징된 노이징된 학습 이미지는 상기 학습 이미지에 상기 적대적 노이즈 생성기에 의해 생성된 적대적 노이즈와 상기 방어적 노이즈에 의해 생성된 방어적 노이즈가 반영된 결과이고, 상기 디노이징된 학습 이미지는 상기 학습 이미지에 상기 방어적 노이즈가 반영된 결과인,
    분류 방법.
  3. 제2항에 있어서,
    상기 전체 손실값은 제1 손실값 및 제2 손실값을 기초로 계산되고,
    상기 제1 손실값은 제1 손실 함수를 이용하여 상기 디노이징된 노이징된 학습 이미지로부터 계산되고,
    상기 제2 손실값은 제2 손실 함수를 이용하여 상기 디노이징된 학습 이미지로부터 계산되는,
    분류 방법.
  4. 제3항에 있어서,
    상기 전체 손실값은 상기 제1 손실값에 제1 가중치를 적용하고 상기 제2 손실값에 제2 가중치를 적용하여 가중 평균을 통해 계산되는,
    분류 방법.
  5. 제1항에 있어서,
    상기 전처리기는 노이즈 판별기를 더 포함하고,
    상기 노이즈 판별기는 상기 입력 이미지에 적대적 노이즈가 반영되어 있는지 여부를 판별하는 단계; 및
    상기 입력 이미지에 상기 적대적 노이즈가 반영되지 않은 경우, 상기 입력 이미지를 상기 분류기에 입력하여 분류 결과를 출력하는 단계
    를 더 포함하는, 분류 방법.
  6. 방어적 노이즈 생성기를 포함하는 전처리기에 있어서,
    적대적 노이즈 생성기를 통해 학습 이미지로부터 적대적 노이즈를 생성하는 단계;
    상기 학습 이미지와 상기 적대적 노이즈를 결합하여 노이징된 학습 이미지를 생성하는 단계;
    상기 방어적 노이즈 생성기를 통해 상기 노이징된 학습 이미지로부터 방어적 노이즈를 생성하는 단계;
    상기 노이징된 학습 이미지와 상기 방어적 노이즈를 결합하여 디노이징된 노이징된 학습 이미지를 생성하는 단계;
    상기 디노이징된 노이징된 학습 이미지를 분류기에 입력하여 전체 손실값을 계산하는 단계; 및
    상기 전체 손실값을 기초로 상기 적대적 노이즈 생성기 및 상기 방어적 노이즈 생성기를 학습시키는 단계
    를 포함하는, 전처리기 학습 방법.
  7. 제6항에 있어서,
    상기 학습시키는 단계는,
    상기 전체 손실값이 커지도록 상기 적대적 노이즈 생성기를 학습시키고, 상기 전체 손실값이 작아지도록 상기 방어적 노이즈 생성기를 학습시키는,
    전처리기 학습 방법.
  8. 제6항에 있어서,
    상기 학습 이미지와 상기 방어적 노이즈를 결합하여 디노이징된 학습 이미지를 생성하는 단계를 더 포함하는,
    전처리기 학습 방법.
  9. 제8항에 있어서,
    상기 전체 손실값을 계산하는 단계는,
    전체 손실 함수를 이용하여 상기 디노이징된 노이징된 학습 이미지 및 상기 디노이징된 학습 이미지로부터 전체 손실값을 계산하는 단계를 포함하는,
    전처리기 학습 방법.
  10. 제9항에 있어서,
    상기 전체 손실값을 계산하는 단계는,
    제1 손실 함수를 이용하여 상기 디노이징된 노이징된 학습 이미지에 대한 제1 손실값을 계산하는 단계;
    제2 손실 함수를 이용하여 상기 디노이징된 학습 이미지에 대한 제2 손실값을 계산하는 단계; 및
    상기 제1 손실값과 상기 제2 손실값을 기초로 전체 손실값을 계산하는 단계를 포함하는,
    전처리기 학습 방법.
  11. 제10항에 있어서,
    상기 제1 손실값과 상기 제2 손실값을 합산하여 전체 손실값을 계산하는 단계는,
    상기 제1 손실값에 제1 가중치를 적용하고 상기 제2 손실값에 제2 가중치를 적용하여 가중 평균을 계산함으로써 상기 전체 손실값을 계산하는 단계를 포함하는,
    전처리기 학습 방법.
  12. 제6항에 있어서,
    상기 전처리기는 노이즈 판별기를 더 포함하고,
    상기 노이즈 판별기를 통해 상기 노이징된 학습 이미지에 상기 적대적 노이즈가 반영되어 있는지 여부를 판단하는 단계; 및
    상기 판단 결과를 기초로 상기 노이즈 판별기를 학습시키는 단계를 더 포함하는,
    전처리기 학습 방법.
  13. 하드웨어와 결합되어 제1항 내지 제12항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  14. 적어도 하나의 프로세서; 및
    메모리를 포함하고,
    상기 메모리는 방어적 노이즈 생성기를 포함하는 전처리기 및 분류기를 저장하고,
    상기 프로세서는,
    상기 전처리기의 상기 방어적 노이즈 생성기를 통해 입력 이미지로부터 방어적 노이즈를 생성하고,
    상기 입력 이미지와 상기 방어적 노이즈를 결합하여 결합 이미지를 생성하고,
    상기 결합 이미지를 분류기에 입력하여 분류 결과를 출력하는,
    분류 장치.




KR1020200143677A 2020-10-30 2020-10-30 뉴럴 네트워크를 이용한 분류 방법 및 장치 KR20220058189A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200143677A KR20220058189A (ko) 2020-10-30 2020-10-30 뉴럴 네트워크를 이용한 분류 방법 및 장치
US17/322,976 US11967124B2 (en) 2020-10-30 2021-05-18 Method and apparatus for classification using neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200143677A KR20220058189A (ko) 2020-10-30 2020-10-30 뉴럴 네트워크를 이용한 분류 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20220058189A true KR20220058189A (ko) 2022-05-09

Family

ID=81379023

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200143677A KR20220058189A (ko) 2020-10-30 2020-10-30 뉴럴 네트워크를 이용한 분류 방법 및 장치

Country Status (2)

Country Link
US (1) US11967124B2 (ko)
KR (1) KR20220058189A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023249184A1 (ko) * 2022-06-22 2023-12-28 숭실대학교 산학협력단 적대적 학습 시스템 및 적대적 학습 방법
KR102633937B1 (ko) * 2023-07-06 2024-02-07 (주)트루엔 전자 장치 및 이를 이용한 오브젝트와 관련된 속성정보 획득 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202017102381U1 (de) 2017-04-21 2017-05-11 Robert Bosch Gmbh Vorrichtung zum Verbessern der Robustheit gegen "Adversarial Examples"
US10944767B2 (en) * 2018-02-01 2021-03-09 International Business Machines Corporation Identifying artificial artifacts in input data to detect adversarial attacks
CN108322349B (zh) 2018-02-11 2021-04-06 浙江工业大学 基于对抗式生成网络的深度学习对抗性攻击防御方法
US20200372301A1 (en) * 2019-05-21 2020-11-26 Retrace Labs Adversarial Defense Platform For Automated Dental Image Classification
CN111047006B (zh) 2019-10-28 2023-04-21 浙江工业大学 一种基于对偶式生成网络的对抗攻击防御模型及应用
US20210141926A1 (en) * 2019-11-13 2021-05-13 Facebook, Inc. Enabling the Sharing of Privacy-safe Data with Deep Poisoning Functions
KR102159052B1 (ko) * 2020-05-12 2020-09-23 주식회사 폴라리스쓰리디 영상 분류 방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023249184A1 (ko) * 2022-06-22 2023-12-28 숭실대학교 산학협력단 적대적 학습 시스템 및 적대적 학습 방법
KR102633937B1 (ko) * 2023-07-06 2024-02-07 (주)트루엔 전자 장치 및 이를 이용한 오브젝트와 관련된 속성정보 획득 방법

Also Published As

Publication number Publication date
US20220138494A1 (en) 2022-05-05
US11967124B2 (en) 2024-04-23

Similar Documents

Publication Publication Date Title
KR102641116B1 (ko) 데이터 증강에 기초한 인식 모델 트레이닝 방법 및 장치, 이미지 인식 방법 및 장치
US10896370B2 (en) Triage of training data for acceleration of large-scale machine learning
Liu et al. Security analysis and enhancement of model compressed deep learning systems under adversarial attacks
CN106415594B (zh) 用于面部验证的方法和系统
CN111753881B (zh) 一种基于概念敏感性量化识别对抗攻击的防御方法
KR20200129639A (ko) 모델 학습 방법 및 장치
KR20200128938A (ko) 모델 학습 방법 및 장치
US11817103B2 (en) Pattern recognition apparatus, pattern recognition method, and storage medium
KR20170038622A (ko) 영상으로부터 객체를 분할하는 방법 및 장치
KR102570070B1 (ko) 일반화된 사용자 모델을 이용한 사용자 인증 방법 및 장치
KR20220058189A (ko) 뉴럴 네트워크를 이용한 분류 방법 및 장치
KR20220052838A (ko) 개인 정보 보호를 위하여 원본 데이터를 변조하는 변조 네트워크를 학습하는 방법 및 테스팅하는 방법, 그리고, 이를 이용한 학습 장치 및 테스팅 장치
CN113792289B (zh) 一种后门攻击的防御方法和系统
KR20190107984A (ko) 샘플링 및 적응적으로 변경되는 임계치에 기초하여 뉴럴 네트워크를 학습하는데 이용되는 하드 네거티브 샘플을 추출하는 영상 학습 장치 및 상기 장치가 수행하는 방법
KR20200110064A (ko) 변환 모델을 이용한 인증 방법 및 장치
KR20220025455A (ko) 적대적 공격에 대한 방어 방법 및 그 장치
CN113822443A (zh) 一种对抗攻击和生成对抗样本的方法
US11507670B2 (en) Method for testing an artificial intelligence model using a substitute model
CN112926574A (zh) 图像识别方法、图像识别装置和系统
JP2023527228A (ja) 情報処理装置、情報処理方法及びプログラム
CN110889316B (zh) 一种目标对象识别方法、装置及存储介质
Yin et al. Adversarial attack, defense, and applications with deep learning frameworks
US11475304B2 (en) Variational gradient flow
KR20220076952A (ko) 이미지 인식 방법, 이미지 인식 장치, 이미지 전처리 장치 및 뉴럴 네트워크의 학습 방법
KR102186767B1 (ko) 학습을 이용한 얼굴 특징점 검출 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination