KR20210076554A - 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체 - Google Patents

깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR20210076554A
KR20210076554A KR1020190167895A KR20190167895A KR20210076554A KR 20210076554 A KR20210076554 A KR 20210076554A KR 1020190167895 A KR1020190167895 A KR 1020190167895A KR 20190167895 A KR20190167895 A KR 20190167895A KR 20210076554 A KR20210076554 A KR 20210076554A
Authority
KR
South Korea
Prior art keywords
value
values
electronic device
dnn
normalized values
Prior art date
Application number
KR1020190167895A
Other languages
English (en)
Other versions
KR102421987B1 (ko
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 KR1020190167895A priority Critical patent/KR102421987B1/ko
Publication of KR20210076554A publication Critical patent/KR20210076554A/ko
Application granted granted Critical
Publication of KR102421987B1 publication Critical patent/KR102421987B1/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/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • G06N3/0481
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

다양한 실시예들에 따른, DNN(deep neural network)을 위한 전자 장치는, 인스트럭션들을 저장하도록 구성된 메모리와, 프로세서를 포함할 수 있고, 상기 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하고, 상기 특징값들의 평균값을 식별하고, 상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하도록 구성될 수 있다.

Description

깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체{ELECTRONIC DEVICE, METHOD, AND COMPUTER READABLE MEDIUM FOR ENHANCED BATCH NORMALIZATION IN DEEP NEURAL NETWORK}
후술되는 다양한 실시예들은 DNN(deep neural network) 내에서의 강화된 배치 정규화(enhanced batch normalization)를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체(computer readable medium)에 관한 것이다.
깊은 신경망(deep neural network, DNN)은 특정 수준의 복잡성을 가지고 2개 이상의 레이어들을 가지는 신경망이다. DNN들은 복잡한 방법들로 데이터를 처리하기 위해 정교한 수학적 모델링을 이용할 수 있다.
배치 정규화(batch normalization)는, 빠른 수렴 속도와 높은 일반화 성능을 DNN(deep neural network) 내에서 제공할 수 있다.
하지만, 적대적 취약성(adversarial vulnerability)의 측면에서 상기 배치 정규화를 위한 레이어를 상기 DNN으로부터 제거하고 트레이닝을 수행하는 것이 상기 배치 정규화를 위한 상기 레이어를 상기 DNN 내에 포함하고 트레이닝을 수행하는 것보다 강건할 수 있기 때문에, 상기 적대적 취약성에 강건한 상기 배치 정규화를 상기 DNN 내에서 수행하기 위한 방법이 요구될 수 있다.
본 문서에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
다양한 실시예들에 따른, DNN(deep neural network)을 위한 전자 장치는, 인스트럭션들을 저장하도록 구성된 메모리와, 프로세서를 포함할 수 있고, 상기 프로세서는, 상기 인스트럭션들을 실행할 시, 상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하고, 상기 특징값들의 평균값을 식별하고, 상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하도록 구성될 수 있다.
다양한 실시예들에 따른, DNN(deep neural network)을 위한 전자 장치를 동작하기 위한 방법은, 상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하는 동작과, 상기 특징값들의 평균값을 식별하는 동작과, 상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하는 동작을 포함할 수 있다.
다양한 실시예들에 따른 비일시적 컴퓨터 판독 가능 저장 매체(non-transitory computer readable storage medium)는, DNN(deep neural network)을 위한 전자 장치의 하나 이상의 프로세서들에 의해 실행될 시, 상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하고, 상기 특징값들의 평균값을 식별하고, 상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하도록, 상기 전자 장치를 야기하는 인스트럭션들을 포함하는 하나 이상의 프로그램들을 저장할 수 있다.
다양한 실시예들에 따른 전자 장치, 방법, 및 컴퓨터 판독 가능 매체는, DNN(deep neural network) 내에서 강화된 배치 정규화를 수행함으로써, 상기 DNN의 성능을 향상시킬 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 다양한 실시예들에 따른, 깊은 신경망(deep neural network, DNN)의 예를 도시한다.
도 2는 다양한 실시예들에 따른 DNN을 위한 전자 장치의 간소화된 블록도이다.
도 3은 다양한 실시예들에 따라 강화된 배치 정규화(enhanced batch normalization)을 수행하는 방법을 도시하는 흐름도이다.
도 4는 네츄럴 트레이닝(natural training)에서 강화된 배치 정규화의 성능을 나타내는 그래프이다.
도 5는 적대적 트레이닝(adversarial training)에서 강화된 배치 정규화의 성능을 나타내는 그래프이다.
본 개시에서 사용되는 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 개시에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 개시에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 개시에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 개시에서 정의된 용어일지라도 본 개시의 실시 예들을 배제하도록 해석될 수 없다.
이하에서 설명되는 본 개시의 다양한 실시 예들에서는 하드웨어적인 접근 방법을 예시로서 설명한다. 하지만, 본 개시의 다양한 실시 예들에서는 하드웨어와 소프트웨어를 모두 사용하는 기술을 포함하고 있으므로, 본 개시의 다양한 실시 예들이 소프트웨어 기반의 접근 방법을 제외하는 것은 아니다.
배치 정규화(batch normalization)는 신경망(neural network) 내에서 높은 학습률(learning rate), 빠른 컨버젼스(convergence), 높은 일반화 정확도(generalization accuracy)를 제공할 수 있다. 하지만, 상기 신경망 내에서 수행되는 상기 배치 정규화는, 적대적 취약성(adversarial vulnerability) 측면에서 단점을 가질 수 있다. 예를 들면, 상기 배치 정규화를 위한 레이어를 포함하는 상기 신경망은, 상기 배치 정규화를 위한 레이어를 제외한 상기 신경망보다 상기 적대적 취약성 측면에서 낮은 성능을 제공할 수 있다. 그러나, 상기 배치 정규화를 위한 레이어를 제외하는 것은, 상기 신경망 내에서 상술한 높은 학습률(learning rate), 빠른 컨버젼스(convergence), 높은 일반화 정확도(generalization accuracy)를 희생하는 것이 되기 때문에, 상기 적대적 취약성에 강건한(robust) 배치 정규화를 수행하는 방법이 상기 신경망 내에서 요구될 수 있다.
아래의 다양한 실시예들은, 상기 적대적 취약성에 강건한 강화된 배치 정규화를 제공할 수 있다.
도 1은 다양한 실시예들에 따른, 깊은 신경망(deep neural network, DNN)의 예를 도시한다.
도 1을 참조하면, DNN(10)은, 계층 구조(hierarchy structure)를 가질 수 있다. 예를 들면, DNN(10)은, 계층 구조로 구성된 복수의 노드들을 포함할 수 있다. 예를 들면, DNN(10)은, 입력 레이어, 출력 레이어, 및 상기 입력 레이어와 상기 출력 레이어 사이의 히든 레이어를 포함할 수 있다. 하지만, 이에 제한되지 않는다.
상기 복수의 노드들 중 상위 레이어 내에 포함된 적어도 하나의 노드는, 상기 복수의 노드들 중 하위 레이어 내에 포함된 적어도 하나의 노드로부터 특징(feature)들에 대한 정보를 획득하고, 상기 획득된 정보를 통합함으로써 모델링을 수행할 수 있다.
다양한 실시예들에서, DNN(10)은, 이미지의 분류, 이미지의 의미 분할 등을 위해 하나 이상의 전자 장치들에 의해 이용될 수 있다.
도 2는 다양한 실시예들에 따른 DNN을 위한 전자 장치의 간소화된 블록도이다. 이러한 간소화된 블록도는, 도 1에 도시된 DNN(10)을 위한 전자 장치(100)의 기능적 구성들을 나타낼 수 있다.
인공 신경망은 입력에 대하여 일반화된 출력(generalized output)을 제공하기 위한 하드웨어, 소프트웨어, 또는 이들의 조합을 의미할 수 있다.
예를 들어, 인공 신경망은, 합성곱 신경망(CNN, Convolutional Neural Network), 마르코프 체인(Markov Chain), 깊은 신경망(DNN, deep neural network), 또는 이진화 신경망(BNN, binarized neural network) 등을 시뮬레이션하기 위한 어플리케이션 및 상기 어플리케이션을 실행하기 위한 프로세서에 기반하여 작동할 수 있다.
도 2를 참조하면, 전자 장치(100)는 훈련(또는 트레이닝)을 통하여 기계 학습을 수행할 수 있는 장치로서, 인공 신경망으로 구성된 모델을 이용하여 학습하는 장치를 포함할 수 있다. 예를 들면, 전자 장치(100)는 데이터 마이닝, 데이터 분석, 및 기계 학습 알고리즘(예: 딥 러닝 알고리즘(deep learning algorithm))을 위해 이용되는 정보를 입력, 출력, 데이터 베이스 구축 및 저장하도록 구성될 수 있다.
전자 장치(100)는 통신 회로(미도시)를 통해 외부 전자 장치(미도시)와 데이터를 송수신할 수 있고, 외부 전자 장치로부터 전달받은 데이터를 분석하거나 학습하여 결과값을 도출할 수 있다. 전자 장치(100)는 외부 전자 장치의 연산을 분산하여 처리할 수 있다.
전자 장치(100)는 서버로 구현될 수 있다. 전자 장치(100)는 복수로 구성되어 신경망 장치 세트를 이룰 수 있다. 각각의 전자 장치(100)는 연산을 분산하여 처리할 수 있고, 분산 처리된 데이터를 바탕으로 데이터 분석 및 학습을 통하여 결과값을 도출할 수 있다. 전자 장치(100)는 기계 학습 알고리즘 등을 이용하여 획득한 결과값을 외부 전자 장치 또는 다른 신경망 장치로 전송할 수 있다.
다양한 실시예들에 따른, 전자 장치(100)는 입력부(110), 프로세서(120), 메모리(130), 및 러닝 프로세서(140)를 포함할 수 있다.
다양한 실시예들에 따르면, 입력부(110)는 인공 신경망 모델 학습을 통한 출력값을 도출하기 위한 입력 데이터를 획득할 수 있다. 입력부(110)는 가공되지 않은 입력 데이터를 획득할 수 있다.
프로세서(120) 또는 러닝 프로세서(140)는 가공되지 않은 입력 데이터를 전처리하여 인공 신경망 모델 학습에 입력 가능한 훈련 데이터를 생성할 수 있다. 상기 전처리는 입력 데이터로부터 특징점을 추출하는 것일 수 있다. 상술한 바와 같이, 입력부(110)는 통신 회로(미도시)를 통하여 데이터를 수신하여 입력 데이터를 획득하거나 데이터를 전처리할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 전자 장치(100)에서 사용 히스토리 정보를 수집하여 메모리(130)에 저장할 수 있다. 프로세서(120)는 저장된 사용 히스토리 정보 및 예측 모델링을 통하여 특정 기능을 실행하기 위한 최상의 조합을 결정할 수 있다. 프로세서(120)는 입력부(110)로부터 이미지 정보, 오디오 정보, 데이터, 초기해에 대한 정보, 특징 정보 또는 사용자 입력 정보를 수신할 수 있다.
다양한 실시예들에 따르면, 프로세서(120)는 정보를 실시간으로 수집하고, 정보를 처리 또는 분류하고, 처리된 정보를 메모리(130), 메모리(130)의 데이터 베이스 또는 러닝 프로세서(140)에 저장할 수 있다.
다양한 실시예들에 따르면, 전자 장치(100)의 동작이 데이터 분석 및 머신 러닝 알고리즘을 바탕으로 결정될 때, 프로세서(120)는 결정된 동작을 실행하기 위해 전자 장치(100)의 구성요소를 제어할 수 있다. 다양한 실시예들에 따르면, 프로세서(120)는 제어 명령에 따라 전자 장치(100)를 제어하여 결정된 동작을 수행할 수 있다.
프로세서(120)는 특정 동작이 수행되는 경우, 데이터 분석 및 기계 학습 알고리즘 및 기법을 통해 특정 동작의 실행을 나타내는 이력 정보를 분석하고, 분석된 정보에 기초하여 이전에 학습한 정보의 업데이트를 수행할 수 있다. 프로세서(120)는 러닝 프로세서(140)과 함께, 업데이트 된 정보에 기초하여 데이터 분석 및 기계 학습 알고리즘 및 성능의 정확성을 향상시킬 수 있다.
다양한 실시예들에 따르면, 메모리(130)는 입력부(110)에서 획득한 입력 데이터, 학습된 데이터, 또는 학습 히스토리 등을 저장할 수 있다. 메모리(130)는 인공 신경망 모델(131)을 저장할 수 있다.
다양한 실시예들에 따르면, 인공 신경망 모델(131)은 메모리(130)에 할당된 공간에 저장될 수 있다. 메모리(130)에 할당된 공간은 러닝 프로세서(140)를 통하여 학습 중 또는 학습된 인공 신경망 모델(131)을 저장하며, 학습을 통하여 인공 신경망 모델(131)이 갱신되면, 갱신된 인공 신경망 모델(131)을 저장할 수 있다. 상기 메모리(130)에 할당된 공간은 학습된 모델을 학습 시점 또는 학습 진척도 등에 따라 복수의 버전으로 구분하여 저장할 수 있다.
다양한 실시예들에 따르면, 메모리(130)는 입력부(110)에서 획득한 입력 데이터, 학습된 데이터를 저장, 분류가능한 데이터 베이스를 포함할 수 있다.
다양한 실시예들에 따르면, 러닝 프로세서(140)는 프로세서(120)가 입력부(110)를 통해 획득한 입력 데이터를 전처리한 데이터를 바로 획득하여 인공 신경망 모델(131)을 학습하거나, 메모리(130)의 데이터 베이스에 저장된 전처리된 입력 데이터를 획득하여 인공 신경망 모델(131)을 학습시킬 수 있다. 예를 들면, 러닝 프로세서(140)는 다양한 학습 기법을 이용하여 인공 신경망 모델(131)을 반복적으로 학습시켜 최적화된 인경 신경망 모델(131)의 파라미터를 획득할 수 있다.
다양한 실시예들에 따르면, 학습된 모델은 데이터 베이스에서 인공 신경망 모델(131)을 갱신할 수 있다. 러닝 프로세서(140)는 전자 장치(100)에 통합되거나, 메모리(130)에 구현될 수 있다. 예를 들면, 러닝 프로세서(140)는 메모리(130)를 사용하여 구현될 수 있다.
다양한 실시예들에 따르면, 러닝 프로세서(140)는 일반적으로 감독 또는 감독되지 않은 학습, 데이터 마이닝, 예측 분석 또는 다른 장치에서 사용하기 위해 데이터를 식별, 색인화, 카테고리화, 조작, 저장, 검색 및 출력하기 위해 데이터를 하나 이상의 데이터베이스에 저장하도록 구성될 수 있다. 여기서, 데이터베이스는 메모리(130), 클라우드 컴퓨팅 환경에서 유지되는 메모리, 또는 네트워크와 같은 통신 방식을 통해 단말기에 의해 액세스 가능한 다른 원격 메모리 위치를 이용하여 구현될 수 있다. 러닝 프로세서(140)에 저장된 정보는 다양한 상이한 유형의 데이터 분석 알고리즘 및 기계 학습 알고리즘 중 임의의 것을 사용하여 프로세서(120)에 의해 이용될 수 있다. 예를 들면, 이러한, 알고리즘의 예로는, k-최근 인접 시스템, 퍼지 논리(예: 가능성 이론), 신경 회로망, 볼츠만 기계, 벡터 양자화, 펄스 신경망, 지원 벡터 기계, 최대 마진 분류기, 힐 클라이밍, 유도 논리 시스템 베이지안 네트워크, 페리트넷(예: 유한 상태 머신, 밀리 머신, 무어 유한 상태 머신), 분류기 트리(예: 퍼셉트론 트리, 지원 벡터 트리, 마코프 트리, 의사 결정 트리 포리스트, 임의의 포리스트), 판독 모델 및 시스템, 인공 융합, 센서 융합, 이미지 융합, 보강 학습, 증강 현실, 패턴 인식, 자동화 된 계획 등을 포함한다.
이하, 설명의 편의를 위해, 프로세서(120) 및 러닝 프로세서(140)는, 프로세서로 참조될 수 있다.
다양한 실시예들에서, DNN(deep neural network)을 위한 전자 장치는, 상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하고, 상기 특징값들의 평균값을 식별하고, 상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하도록 구성될 수 있다.
예를 들면, 상기 프로세서는, 상기 특징값들, 상기 최대값과 상기 최소값 사이의 제1 차이값, 및 상기 평균값에 기반하여 상기 정규화된 값들을 획득하도록 구성될 수 있다.
예를 들면, 상기 프로세서는, 상기 제1 차이값 및 상기 특징값들과 상기 평균 사이의 제2 차이값들에 기반하여 상기 정규화된 값들을 획득하도록 구성될 수 있다.
예를 들면, 상기 프로세서는, 상기 제1 차이값에 하이퍼파라미터(hyperparameter)의 값을 적용하고, 상기 하이퍼파라미터가 적용된 제1 차이값 및 상기 제2 차이값들에 기반하여 상기 정규화된 값들을 획득하도록 구성될 수 있으며, 여기서, 상기 하이퍼파라미터는, 0보다 크고 1 미만의 실수일 수 있다. 예를 들면, 상기 하이퍼파라미터는, 상기 정규화된 값들의 분모를 구성하는 상기 제1 차이값의 크기를 감소시키기 위해 이용될 수 있다.
예를 들면, 상기 정규화된 값들 각각은, 아래의 수학식 1에 의해 획득될 수 있다.
Figure pat00001
수학식 1에서,
Figure pat00002
는 상기 특징값들 각각을 의미하고,
Figure pat00003
는 상기 평균값을 의미하고,
Figure pat00004
는 상기 최대값을 의미하고,
Figure pat00005
는 상기 최소값을 의미하며,
Figure pat00006
는 상기 하이퍼파라미터를 의미할 수 있다.
특징점들의 데이터 특성에 따라 달라질 수 있지만, 수학식 1의
Figure pat00007
는, 0.2일 수 있다.
다양한 실시예들에서, 상기 정규화된 값들은, 상기 DNN의 트레이닝 단계를 위해 이용되거나 상기 DNN의 추론 단계를 위해 이용될 수 있다.
다양한 실시예들에서, 상기 정규화된 값들은, 이미지로부터 얼굴을 인식하거나 이미지로부터 동작을 인식하기 위해 이용될 수 있다.
도 3은 다양한 실시예들에 따라 강화된 배치 정규화(enhanced batch normalization)을 수행하는 방법을 도시하는 흐름도이다. 상기 흐름도에 의해 도시된 방법은, 도 2의 전자 장치(100), 전자 장치(100) 내의 프로세서(120), 또는 전자 장치(100)의 러닝 프로세서(140)에 의해 실행될 수 있다.
도 3을 참조하면, 동작 310에서, 프로세서(120)는, 상기 DNN의 배치 정규화 레이어로 입력되는 특징값들 중 최대값 및 최소값을 식별할 수 있다. 예를 들면, 수학식 1에서 분모를 구성하기 위해, 프로세서(120)는, 상기 특징값들 중 상기 최대 값 및 상기 최소값을 식별할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상기 최대값 및 상기 최소값 사이의 제1 차이값을 수학식 1에서 분모를 구성하기 위해 획득할 수 있다.
동작 320에서, 프로세서(120)는, 상기 특징값들의 평균값을 식별할 수 있다. 예를 들면, 수학식 1에서 분자를 구성하기 위해, 프로세서(120)는, 상기 특징값들의 평균값을 식별할 수 있다.
도 3은 동작 310을 실행한 후 동작 320을 실행하는 예를 도시하고 있으나, 이는 설명의 편의를 위한 것이다. 동작 310 및 동작 320은 순서에 상관없이 실행될 수 있다. 예를 들면, 동작 310 및 동작 320은 동시에 실행될 수도 있고, 동작 320이 실행된 후 동작 310이 실행될 수도 있다. 하지만, 이에 제한되지 않는다.
동작 330에서, 프로세서(120)는, 상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된 값들을 획득할 수 있다. 예를 들면, 프로세서(120)는, 수학식 1의 분자를 구성하기 위해, 상기 특징값들과 상기 평균 사이의 제2 차이값들을 획득할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 제1 차이값에 하이퍼파라미터(0 초과 1 미만의 값)를 적용하고, 상기 하이퍼파라미터가 적용된 제1 차이값을 수학식 1의 분모로 구성할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 제2 차이값들을 수학식 1의 분자로 구성할 수 있다.
다양한 실시예들에서, 프로세서(120)는, 상기 제1 차이값과 상기 제2 차이값들 각각의 비를 상기 정규화된 값들로 획득할 수 있다. 예를 들면, 프로세서(120)는, 수학식 1에 기반하여 상기 정규화된 값들을 획득할 수 있다.
다양한 실시예들에서, 상기 정규화된 값들은, 상기 DNN의 트레이닝 단계에서 이용될 수도 있고, 상기 DNN의 추론 단계에서 이용될 수도 있다. 다양한 실시예들에서, 상기 정규화된 값들은, 이미지로부터 얼굴을 인식하기 위해 이용되거나 이미지로부터 제스쳐를 인식하기 위해 이용될 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(100)는, 특징값들의 최대값, 특징값들의 최소값, 특징값들의 평균값, 및 상기 특징값들을 이용하는 강화된 배치 정규화를 실행함으로써, 적대적 취약성에 강건한 정규화를 실행할 수 있다.
도 4는 네츄럴 트레이닝(natural training)에서 강화된 배치 정규화의 성능을 나타내는 그래프이다.
도 4를 참조하면, 그래프(400)는 CIFAR10 데이터 세트를 트레이닝 데이터로 이용한 시뮬레이션의 결과를 나타낼 수 있다. 그래프(400)의 가로축은 시뮬레이션의 환경들을 의미하고, 그래프(400)의 세로축은 정확성을 의미할 수 있다.
또한, 그래프(400)에서, 'BN'은 일반적인 배치 정규화로 시뮬레이션을 수행한 결과를 의미하고, 'BN w/o Tracking'은 트래킹(tracking) 없이 일반적인 배치 정규화로 시뮬레이션을 수행한 결과를 의미하고, 'No Norm'은 정규화 없이 시뮬레이션을 수행한 결과를 의미하고, 'RN'은 다양한 실시예들에 따른 배치 정규화(수학식 1을 이용한 정규화)로 시뮬레이션을 수행한 결과를 의미할 수 있다.
그래프(400)에서 확인할 수 있듯이, 다양한 실시예들에 따른 배치 정규화(즉, 'RN')는 네츄럴 트레이닝에서 기준 정확도 이상의 정확성을 가진다.
도 5는 적대적 트레이닝(adversarial training)에서 강화된 배치 정규화의 성능을 나타내는 그래프이다.
도 5를 참조하면, 그래프(500)는 CIFAR10 데이터 세트를 트레이닝 데이터로 이용한 시뮬레이션의 결과를 나타낼 수 있다. 그래프(500)의 가로축은 시뮬레이션의 환경들을 의미하고, 그래프(500)의 세로축은 정확성을 의미할 수 있다.
또한, 그래프(500)에서, 'BN'은 일반적인 배치 정규화로 시뮬레이션을 수행한 결과를 의미하고, 'BN w/o Tracking'은 트래킹(tracking) 없이 일반적인 배치 정규화로 시뮬레이션을 수행한 결과를 의미하고, 'No Norm'은 정규화 없이 시뮬레이션을 수행한 결과를 의미하고, 'RN'은 다양한 실시예들에 따른 배치 정규화(수학식 1을 이용한 정규화)로 시뮬레이션을 수행한 결과를 의미할 수 있다.
그래프(500)에서 확인할 수 있듯이, 다양한 실시예들에 따른 배치 정규화(즉, 'RN')를 이용한 시뮬레이션은 적대적 트레이닝에서 일반적인 배치 정규화를 이용한 시뮬레이션, 트래킹 없는 일반적 배치 정규화를 이용한 시뮬레이션, 및 정규화 없는 시뮬레이션보다 높은 정확성을 가진다.
본 개시의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금 본 개시의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM: Read Only Memory), 전기적 삭제가능 프로그램가능 롬(EEPROM: Electrically Erasable Programmable Read Only Memory), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM: Compact Disc-ROM), 디지털 다목적 디스크(DVDs: Digital Versatile Discs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 상기 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(Local Area Network), WLAN(Wide LAN), 또는 SAN(Storage Area Network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 개시의 실시 예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 개시의 실시 예를 수행하는 장치에 접속할 수도 있다.
상술한 본 개시의 구체적인 실시 예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. DNN(deep neural network)을 위한 전자 장치에 있어서,
    인스트럭션들을 저장하도록 구성된 메모리; 및
    프로세서를 포함하고, 상기 프로세서는, 상기 인스트럭션들을 실행할 시,
    상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하고,
    상기 특징값들의 평균값을 식별하고,
    상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하도록 구성되는 전자 장치.
  2. 청구항 1에 있어서, 상기 프로세서는, 상기 인스트럭션들을 실행할 시,
    상기 특징값들, 상기 최대값과 상기 최소값 사이의 제1 차이값, 및 상기 평균값에 기반하여 상기 정규화된 값들을 획득하도록 구성되는 전자 장치.
  3. 청구항 2에 있어서, 상기 프로세서는, 상기 인스트럭션들을 실행할 시,
    상기 제1 차이값 및 상기 특징값들과 상기 평균 사이의 제2 차이값들에 기반하여 상기 정규화된 값들을 획득하도록 구성되는 전자 장치.
  4. 청구항 3에 있어서, 상기 프로세서는, 상기 인스트럭션들을 실행할 시,
    상기 제1 차이값에 하이퍼파라미터(hyperparameter)를 적용하고,
    상기 하이퍼파라미터가 적용된 제1 차이값 및 상기 제2 차이값들에 기반하여 상기 정규화된 값들을 획득하도록 구성되며,
    상기 하이퍼파라미터는,
    0보다 크고 1 미만의 실수인 전자 장치.
  5. 청구항 4에 있어서, 상기 하이퍼파라미터는,
    상기 정규화된 값들의 분모를 구성하는 상기 제1 차이값의 크기를 감소시키기 위해 이용되는 전자 장치.
  6. 청구항 5에 있어서, 상기 정규화된 값들 각각은,
    아래의 수학식에 의해 획득되는 전자 장치.
    Figure pat00008
    ,
    상기 수학식에서,
    Figure pat00009
    는 상기 특징값들 각각을 의미하고,
    Figure pat00010
    는 상기 평균값을 의미하고,
    Figure pat00011
    는 상기 최대값을 의미하고,
    Figure pat00012
    는 상기 최소값을 의미하며,
    Figure pat00013
    는 상기 하이퍼파라미터를 의미함.
  7. 청구항 6에서,
    Figure pat00014
    는,
    0.2인 전자 장치.
  8. 청구항 6에 있어서, 상기 정규화된 값들은,
    상기 DNN의 트레이닝 단계를 위해 이용되는 전자 장치.
  9. 청구항 6에 있어서, 상기 정규화된 값들은,
    상기 DNN의 추론 단계를 위해 이용되는 전자 장치.
  10. 청구항 1에 있어서, 상기 정규화된 값들은,
    이미지로부터 얼굴을 인식하거나 이미지로부터 동작을 인식하기 위해 이용되는 전자 장치.
  11. DNN(deep neural network)을 위한 전자 장치를 동작하기 위한 방법에 있어서,
    상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하는 동작과,
    상기 특징값들의 평균값을 식별하는 동작과,
    상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하는 동작을 포함하는 방법.
  12. 청구항 11에 있어서, 상기 정규화된 값들을 획득하는 동작은,
    상기 특징값들, 상기 최대값과 상기 최소값 사이의 제1 차이값, 및 상기 평균값에 기반하여 상기 정규화된 값들을 획득하는 동작을 포함하는 방법.
  13. 청구항 12에 있어서, 상기 정규화된 값들을 획득하는 동작은,
    상기 제1 차이값 및 상기 특징값들과 상기 평균 사이의 제2 차이값들에 기반하여 상기 정규화된 값들을 획득하는 동작을 포함하는 방법.
  14. 청구항 13에 있어서, 상기 정규화된 값들을 획득하는 동작은,
    상기 제1 차이값에 하이퍼파라미터(hyperparameter)의 값을 적용하는 동작과,
    상기 하이퍼파라미터가 적용된 제1 차이값 및 상기 제2 차이값들에 기반하여 상기 정규화된 값들을 획득하는 동작을 포함하고,
    상기 하이퍼파라미터는,
    0보다 크고 1 미만의 실수인 방법.
  15. 청구항 14에 있어서, 상기 하이퍼파라미터는,
    상기 정규화된 값들의 분모를 구성하는 상기 제1 차이값의 크기를 감소시키기 위해 이용되는 방법.
  16. 청구항 15에 있어서, 상기 정규화된 값들 각각은,
    아래의 수학식에 의해 획득되는 방법.
    Figure pat00015
    ,
    상기 수학식에서,
    Figure pat00016
    는 상기 특징값들 각각을 의미하고,
    Figure pat00017
    는 상기 평균값을 의미하고,
    Figure pat00018
    는 상기 최대값을 의미하고,
    Figure pat00019
    는 상기 최소값을 의미하며,
    Figure pat00020
    는 상기 하이퍼파라미터를 의미함.
  17. 청구항 16에서,
    Figure pat00021
    는,
    0.2인 방법.
  18. 청구항 16에 있어서, 상기 정규화된 값들은,
    상기 DNN의 트레이닝 단계를 위해 이용되는 방법.
  19. 청구항 16에 있어서, 상기 정규화된 값들은,
    상기 DNN의 추론 단계를 위해 이용되는 방법.
  20. 비일시적 컴퓨터 판독가능 저장 매체에 있어서,
    DNN(deep neural network)을 위한 전자 장치의 하나 이상의 프로세서들에 의해 실행될 시,
    상기 DNN의 배치 정규화 레이어(batch normalization layer)로 입력되는 특징값들 중 최대값 및 최소값을 식별하고,
    상기 특징값들의 평균값을 식별하고,
    상기 특징값들, 상기 최소값, 상기 최대값, 및 상기 평균값에 기반하여 정규화된(normalized) 값들을 획득하도록, 상기 전자 장치를 야기하는 인스트럭션들을 포함하는 하나 이상의 프로그램들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체.
KR1020190167895A 2019-12-16 2019-12-16 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체 KR102421987B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190167895A KR102421987B1 (ko) 2019-12-16 2019-12-16 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190167895A KR102421987B1 (ko) 2019-12-16 2019-12-16 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체

Publications (2)

Publication Number Publication Date
KR20210076554A true KR20210076554A (ko) 2021-06-24
KR102421987B1 KR102421987B1 (ko) 2022-07-15

Family

ID=76607484

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190167895A KR102421987B1 (ko) 2019-12-16 2019-12-16 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체

Country Status (1)

Country Link
KR (1) KR102421987B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190014900A (ko) * 2017-08-04 2019-02-13 삼성전자주식회사 뉴럴 네트워크의 파라미터들을 양자화하는 방법 및 장치
KR20190054327A (ko) * 2017-11-13 2019-05-22 한서대학교 산학협력단 심층신경망을 활용한 활주로 가시거리 예측 방법
KR20190098106A (ko) * 2019-08-02 2019-08-21 엘지전자 주식회사 배치 정규화 레이어 트레이닝 방법
KR20190098107A (ko) * 2019-08-02 2019-08-21 엘지전자 주식회사 딥 러닝을 위한 신경망 학습 장치 및 그 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190014900A (ko) * 2017-08-04 2019-02-13 삼성전자주식회사 뉴럴 네트워크의 파라미터들을 양자화하는 방법 및 장치
KR20190054327A (ko) * 2017-11-13 2019-05-22 한서대학교 산학협력단 심층신경망을 활용한 활주로 가시거리 예측 방법
KR20190098106A (ko) * 2019-08-02 2019-08-21 엘지전자 주식회사 배치 정규화 레이어 트레이닝 방법
KR20190098107A (ko) * 2019-08-02 2019-08-21 엘지전자 주식회사 딥 러닝을 위한 신경망 학습 장치 및 그 방법

Also Published As

Publication number Publication date
KR102421987B1 (ko) 2022-07-15

Similar Documents

Publication Publication Date Title
US11741361B2 (en) Machine learning-based network model building method and apparatus
CN108780519B (zh) 卷积神经网络的结构学习
US20190279105A1 (en) Hierarchical machine learning system for lifelong learning
US20200242736A1 (en) Method for few-shot unsupervised image-to-image translation
KR102293791B1 (ko) 반도체 소자의 시뮬레이션을 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체
US20200193075A1 (en) System and method for constructing a mathematical model of a system in an artificial intelligence environment
Bharadwaj et al. Pattern recognition and machine learning
Ibrahim et al. An improved runner-root algorithm for solving feature selection problems based on rough sets and neighborhood rough sets
JP2023535227A (ja) Aiモデルを更新する方法、装置、および計算デバイス、ならびに記憶媒体
KR20190029083A (ko) 신경망 학습 방법 및 이를 적용한 장치
US20200311525A1 (en) Bias correction in deep learning systems
Berahmand et al. Autoencoders and their applications in machine learning: a survey
US11488007B2 (en) Building of custom convolution filter for a neural network using an automated evolutionary process
US20230229570A1 (en) Graph machine learning for case similarity
Shen et al. StructBoost: Boosting methods for predicting structured output variables
Ertel et al. Machine learning and data mining
CN116830122A (zh) 用于联合学习的方法、系统和装置
KR102308752B1 (ko) 객체 추적 방법 및 장치
US20220121924A1 (en) Configuring a neural network using smoothing splines
KR102421987B1 (ko) 깊은 신경망 내에서의 강화된 배치 정규화를 위한 전자 장치, 방법, 및 컴퓨터 판독가능 매체
Xiao Using machine learning for exploratory data analysis and predictive models on large datasets
Somogyi et al. Machine Learning Algorithms
Schlake et al. Evaluating the lottery ticket hypothesis to sparsify neural networks for time series classification
Silva et al. Explainable Time Series Tree: An explainable top-down time series segmentation framework
US20230129390A1 (en) Data processing application system management in non-stationary environments

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant