KR20190125694A - 학습 및 추론 장치 및 그 방법 - Google Patents

학습 및 추론 장치 및 그 방법 Download PDF

Info

Publication number
KR20190125694A
KR20190125694A KR1020180049810A KR20180049810A KR20190125694A KR 20190125694 A KR20190125694 A KR 20190125694A KR 1020180049810 A KR1020180049810 A KR 1020180049810A KR 20180049810 A KR20180049810 A KR 20180049810A KR 20190125694 A KR20190125694 A KR 20190125694A
Authority
KR
South Korea
Prior art keywords
value
layer
learning
local network
input layer
Prior art date
Application number
KR1020180049810A
Other languages
English (en)
Other versions
KR102090109B1 (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 KR1020180049810A priority Critical patent/KR102090109B1/ko
Publication of KR20190125694A publication Critical patent/KR20190125694A/ko
Application granted granted Critical
Publication of KR102090109B1 publication Critical patent/KR102090109B1/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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Abstract

학습 및 추론 장치 그리고 그 방법을 개시한다. 본 발명의 일 실시예에 따른 학습 및 추론 장치는 입력 레이어, 은닉 레이어 및 최종 출력 값을 출력하는 출력 레이어를 포함하는 메인 네트워크 처리부와, 상기 입력 레이어 및 상기 은닉 레이어 각각의 출력 값에 기초하여 오류 기울기 값을 계산하고, 다음 단의 로컬 네트워크 모듈이 계산한 트레이닝 로스 값에 기초하여 업데이트되는 로컬 네트워크 모듈들을 포함한다.

Description

학습 및 추론 장치 및 그 방법{LEARNING AND INFERENCE APPARATUS AND METHOD}
본 발명은 모델 병렬화 딥러닝에 관한 것으로, 보다 상세하게는 로컬 네트워크 모듈을 추가하여 피드포워드와 업데이트를 동시에 수행하는 학습 및 추론 장치 및 그 방법에 관한 것이다.
최근에 딥 러닝은 현저하게 진보되고, 많은 분야에서 성공적으로 적용되고 있다. 심층 신경망의 성공 뒤는 계층 구조를 통해 유용한 정보를 추출할 수 잇는 중요한 메커니즘이 있다. 도전적인 실제 세계의 문제를 풀기 위해 점점 더 복잡한 심층신경망 구조가 개발되는 추세이다. 하지만, 복잡한 네트워크 구조는 학습에서 상당한 연산 양을 요구한다.
이러한 어려움을 완화하는 일반적인 방법은 데이터 병렬화이다. 다시 말해서, 복수개의 동일 모델들은 독립적으로 다른 학습 데이트 셋을 사용하면서 학습된다.
모델 병렬화(model-parallelism)로 불리는 다른 방법이 연구되었다. 역전파 학습 패러다임은 신경망 학습에서 지배적인데, 기본적으로 연속적 방식으로 동작한다. 각각의 계층은 상위 계층으로부터의 업데이트 정보를 사용하며 역 순으로 하나씩 업데이트 된다. 반면에, 모델 병렬 학습 접근에서, 네트워크 모델은 분리된 연산 유닛에서 동시에 그리고 독립적으로 학습될 수 있는 파트들로 나뉠 수 있다.
모델 병렬 학습에 대한 기존 방법들은 두 가지 접근으로 분류될 수 있다.
첫 번째는, 계층별 순차적 학습(layer-wise sequential training)이고 계층별 순차적 학습 방법은 각 계층에서 연산 동작의 다중 그룹들이 동일한 그룹에서의 동작들만 의존성을 가지도록 식별되고 분리되어 동작하는 것이다. 이러한 방법들은 그 자체가 구별되는 학습 알고리즘이 아닌 역전파 학습을 능률적인 이행에 의한 스케쥴링 기술로써 간주될 수 있다.
두 번째는, 선행 계층에 한 계층의 의존성은 다른 계층이 분리되어 다른 연산 유닛들에서 분리되어 학습될 수 있도록 제거될 수 있는 방법이다. 역전파 알고리즘은 이 접근에 적절치 않다. 따라서, 이것을 가능케 하는 보조 좌표의 방법(method of auxiliary coordinates, MAC)이 제안되었다. 이것은 기존의 학습을 위한 최소 제곱 손실 최소화 문제(least-square loss minimization problem)를 각각의 데이터 및 각각의 숨겨진 유닛을 위한 보조 변수를 소개함으로써 균등-제약 최적화 문제로 대체한다.
그때, 이 문제를 푸는 것은 반복적으로 서브-문제를 해결함으로써 정형화된다. 유사한 방법(a method using the alternating direction method of multiplipers(ADMM))은 제안된다. 이것은 균등-제약 최적화을 채택하나, 다른 보조 변수를 갖지 않아서, 서브 문제는 폐쇄형 솔루션을 가진다. 그러나, 이러한 방법들은 컨볼루션 신경망과 같은 딥 러닝 아키텍처에 확장 가능하지 않다. Decoupled neural interface(DNI)는 직접적으로 추정 계층의 가중치 학습을 위해 추가의 작은 신경망을 사용함으로써 합성 그래디언트를 합성한다. 합성 그래디언트가 실제 역전파된 그래디언트와 가까운 한 각각의 계층은 출력 계층에서 에러가 선행 계층을 통해 역전파 될 때까지 기다릴 필요 없다. 즉, 이것은 각각의 계층이 독립적으로 학습되도록 한다. 하지만, 이 방법은 역전파와 비교하여 성능 저하를 야기한다. 또한, 주 모델 계층을 지원하는 추가 모델을 이용하는 아이디어는 Sobolev training에서 사용된다. 여기서 추가의 네트워크들은 에러 그래디언트 대신에 주 모델의 출력을 근사화시켜 학습된다. 이 때문에, Sobolev training 방법은 병렬 학습에 적절치 않다.
한국특허공개 제10-2001-0047163호, "다층퍼셉트론 신경망회로의 학습방법"(2001.06.15)
본 발명은 모델 병렬화 딥러닝에서 완전한 피드포워드 및 백워드 전파 과정 없이 업데이트를 수행하는 학습 및 추론 장치와, 그 방법을 제공하고자 한다.
또한, 본 발명은 역전파 학습의 계층적 종속성을 잠금 해제하는 학습 및 추론 장치와, 그 방법을 제공하고자 한다.
또한, 본 발명은 상위 계층에 대한 로컬 네트워크 모듈의 종속성을 잠금 해제하는 학습 및 추론 장치와 그 방법을 제공하고자 한다.
또한, 본 발명은 완전한 피드포워드 과정 없이 분류 값을 출력하는 학습 및 추론 장치와 그 방법을 제공하고자 한다.
상술한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 학습 및 추론 장치는, 입력 레이어, 은닉 레이어 및 최종 출력 값을 출력하는 출력 레이어를 포함하는 메인 네트워크 처리부와, 상기 입력 레이어 및 상기 은닉 레이어 각각의 출력 값에 기초하여 오류 기울기 값을 계산하고, 다음 단의 로컬 네트워크 모듈이 계산한 트레이닝 로스 값에 기초하여 업데이트되는 로컬 네트워크 모듈들을 포함한다.
상기 로컬 네트워크 모듈들은 입력 레이어 및 상기 은닉 레이어 각각의 출력 값을 이용하여 상기 최종 출력 값에 근사 시킨 근사 값을 계산하고, 상기 근사 값을 이용하여 손실 함수에 의해 트레이닝 로스 값을 계산하며, 상기 트레이닝 로스 값에 의해 상기 오류 기울기 값을 계산할 수 있다.
상기 손실 함수는 민-앱솔루트 에러 함수, 민-스퀘어 에러 함수 또는 크로스-엔트로피 함수일 수 있다.
상기 입력 레이어 및 상기 은닉 레이어는 각각 상기 오류 기울기 값에 의해 업데이트 될 수 있다.
상기 입력 레이어 및 상기 은닉 레이어는 경사 하강 법에 의해 업데이트 될 수 있다.
상기 입력 레이어의 로컬 네트워크 모듈은 상기 은닉 레이어의 로컬 네트워크 모듈이 계산한 상기 트레이닝 로스 값을 이용하여 손실 함수에 의해 로컬 트레이닝 로스 값을 계산하고, 상기 로컬 트레이닝 로스 값에 의해 로컬 오류 기울기 값을 계산하고, 상기 로컬 오류 기울기 값에 의해 업데이트될 수 있다.
상기 손실 함수는 민-앱솔루트 에러 함수, 민-스퀘어 에러 함수 또는 크로스-엔트로피 함수일 수 있다.
상기 입력 레이어의 네트워크 모듈은 경사 하강 법에 의해 업데이트 될 수 있다.
상기 입력 레이어 및 상기 입력 레이어의 로컬 네트워크 모듈을 제1 서브 모델부로 구성하고, 상기 입력 레이어, 상기 은닉 레이어 및 상기 은닉 레이어의 로컬 네트워크 모듈을 제2 서브 모델부로 구성하며, 상기 입력 레이어, 상기 은닉 레이어 및 상기 출력 레이어를 메인 모델부로 구성하고, 상기 서브 모델들의 근사 값에 대한 신뢰도를 순차적으로 판단하여 상기 신뢰도가 임계치 이상인 근사 값이 있는 경우 상기 근사 값을 추론 값으로 출력하고, 상기 신뢰도가 임계치 이상인 근사 값이 없는 경우 상기 최종 출력 값을 추론 값으로 출력하는 추론부를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 학습 및 추론 방법은, 입력 레이어 및 은닉 레이어 각각에 대응되는 로컬 네트워크 모듈들이 각 레이어의 출력 값에 기초하여 오류 기울기 값을 계산하는 단계와, 상기 입력 레이어 및 상기 은닉 레이어가 각각 상기 오류 기울기 값에 의해 업데이트 되는 단계와, 상기 입력 레이어의 로컬 네트워크 모듈이 상기 은닉 레이어의 로컬 네트워크 모듈이 계산한 트레이닝 로스 값에 기초하여 업데이트 되는 단계를 포함한다.
상기 오류 기울기 값을 계산하는 단계는, 상기 로컬 네트워크 모듈들이 상기 입력 레이어 및 상기 은닉 레이어 각각의 출력 값을 이용하여 상기 최종 출력 값에 근사 시킨 근사 값을 계산하는 단계와, 상기 로컬 네트워크 모듈들이 상기 근사 값을 이용하여 손실 함수에 의해 트레이닝 로스 값을 계산하는 단계와, 상기 로컬 네트워크 모듈들이 상기 트레이닝 로스 값에 의해 상기 오류 기울기 값을 계산하는 단계를 포함할 수 있다.
상기 입력 레이어의 로컬 네트워크 모듈이 업데이트 되는 단계는, 상기 입력 레이어의 로컬 네트워크 모듈이 상기 은닉 레이어의 네트워크 모듈이 계산한 상기 트레이닝 로스 값을 이용하여 손실 함수에 의해 로컬 트레이닝 로스 값을 계산하는 단계와, 상기 입력 레이어의 로컬 네트워크 모듈이 상기 로컬 트레이닝 로스 값에 의해 로컬 오류 기울기 값을 계산하는 단계와, 상기 입력 레이어의 로컬 네트워크 모듈이 상기 로컬 오류 기울기 값에 의해 업데이트 되는 단계를 포함할 수 있다.
상기 입력 레이어 및 상기 입력 레이어의 로컬 네트워크 모듈을 제1 서브 모델부로 구성하고, 상기 입력 레이어, 상기 은닉 레이어 및 상기 은닉 레이어의 로컬 네트워크 모듈을 제2 서브 모델부로 구성하며, 상기 입력 레이어, 상기 은닉 레이어 및 상기 출력 레이어를 메인 모델부로 구성하고, 추론부가 상기 서브 모델들의 근사 값에 대한 신뢰도를 순차적으로 판단하는 단계와, 상기 추론부가 상기 신뢰도가 임계치 이상인 근사 값이 있는 경우 상기 근사 값을 추론 값으로 출력하고, 상기 신뢰도가 임계치 이상인 근사 값이 없는 경우 상기 최종 출력 값을 추론 값으로 출력하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 학습 및 추론 장치와, 그 방법은 완전한 피드포워드 및 백워드 전파 과정 없이 업데이트를 수행할 수 있다.
또한, 본 발명의 일 실시예에 따른 학습 및 추론 장치와, 그 방법은 역전파 학습의 계층적 종속성을 잠금 해제할 수 있다.
또한, 본 발명의 일 실시예에 따른 학습 및 추론 장치와, 그 방법은 상위 계층에 대한 로컬 네트워크 모듈의 종속성을 잠금 해제할 수 있다.
또한, 본 발명의 일 실시예에 따른 학습 및 추론 장치와, 그 방법은 완전한 피드포워드 과정 없이 분류 값을 출력할 수 있다.
도 1은 본 발명의 일 실시예에 따른 학습 및 추론 장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 학습 및 추론 장치의 학습 동작을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 학습 및 추론 장치의 추론 동작을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 학습 및 추론 방법을 나타내는 흐름도이다.
이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 실시예를 상세하게 설명하지만, 본 발명이 실시예에 의해 제한되거나 한정되는 것은 아니다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 명세서에서 사용되는 “실시예”, “예”, “측면”, “예시” 등은 기술된 임의의 양상(aspect) 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되어야 하는 것은 아니다.
또한, '또는' 이라는 용어는 배타적 논리합 'exclusive or' 이기보다는 포함적인 논리합 'inclusive or' 를 의미한다. 즉, 달리 언급되지 않는 한 또는 문맥으로부터 명확하지 않는 한, 'x가 a 또는 b를 이용한다' 라는 표현은 포함적인 자연 순열들(natural inclusive permutations) 중 어느 하나를 의미한다.
또한, 본 명세서 및 청구항들에서 사용되는 단수 표현("a" 또는 "an")은, 달리 언급하지 않는 한 또는 단수 형태에 관한 것이라고 문맥으로부터 명확하지 않는 한, 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다.
또한, 본 명세서 및 청구항들에서 사용되는 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
한편, 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 학습 및 추론 장치의 블록도이다.
도 1을 참조하면, 학습 및 추론 장치(100)는 입력 레이어(110), 은닉 레이어(120), 출력 레이어(130) 및 로컬 네트워크 모듈들(140, 150)을 포함한다.
생물학적 신경망을 인공적으로 구현하기 위해 이와 유사한 구조와 연산 방법들이 다양한 형태로 제시되고 있는데, 이러한 인공 신경망의 구성 방법론을 신경망 모델이라고 한다.
신경망 모델은 인공 뉴런이 방향성이 있는 연결선으로 연결되어 네트워크를 형성하고, 각 뉴런은 고유의 출력 값을 가지며 그 값을 연결선을 통해 전달하는 방법으로 인접한 뉴런에 영향을 미친다.
뉴런과 뉴런 사이의 연결선 각각은 고유의 속성값을 가지고 있으며, 전달하는 신호의 세기를 조절한다. 연결선의 속성값은 뉴런과 뉴런을 연결하는 연결선의 연결 강도를 나타내는 가중치 값이다.
입력 레이어(110)는 입력 값을 입력 받는 입력 뉴런들로 구성될 수 있다.
출력 레이어(130)는 신경망의 결과값이 되어 외부로 전달되는 출력 뉴런들로 구성된다.
은닉 레이어(120)는 입력 레이어와 출력 레이어 사이에 존재하며 복수의 은닉 뉴런들로 구성될 수 있다.
인접한 레이어의 뉴런들 사이에서만 입력 레이어에서 출력 레이어 방향으로, 연결선이 연결된다.
입력 레이어(110), 은닉 레이어(120) 및 출력 레이어(130)는 메인 네트워크 처리부를 구성할 수 있다.
입력 레이어(110)는 입력 값을 입력 받고, 제1 출력 값(hi)을 출력한다.
이때, 입력 값은 학습 값과, 타켓 값을 포함할 수 있다.
학습 값은 본 학습 및 추론 장치(100)가 학습할 데이터 값을 의미하고, 타겟 값은 해당 학습 값에 대한 정답 값을 의미한다.
예를 들면, 강아지 사진과 고양이 사진을 분류하는 학습 및 추론 장치(100)의 경우, 학습 값은 학습할 사진 데이터 값을 의미하고, 타겟 값은 해당 학습 값이 강아지인 경우 강아지 데이터 값을 의미할 수 있다.
입력 레이어(110)는 입력 값을 입력 받고, 입력 레이어(110)를 구성하는 뉴런들이 연산한 제1 출력 값(hi)을 출력한다.
입력 레이어(110)는 복수 개의 연결된 뉴런들이 구성할 수 있다.
이때, 뉴런 들은 학습 값에 가중치 값을 곱하고, 바이어스 값을 더한 값을 활성 함수에 의해 출력 값을 계산할 수 있다. 이렇게 계산된 뉴런의 출력 값들은 입접한 뉴런의 입력이 되어 동일 한 과정을 거쳐 제1 출력 값을 출력할 수 있다.
본 발명은 입력 레이어(110), 은닉 레이어(120) 및 출력 레이어(130)을 구성하는 가중치 값들에 의해 출력된 최종 출력 값이 타겟 값을 가지도록 업데이트될 수 있다. 이를 학습 및 추론 장치(100)의 학습이라 한다.
은닉 레이어(120)는 제1 출력 값(hi)을 입력 받고, 제2 출력 값(hi+1)을 출력한다.
은닉 레이어(120)는 복수 개의 뉴런들로 구성될 수 있다.
은닉 레이어(120)는 제1 출력 값(hi)을 입력 받고, 입력 레이어(110)와 동일한 뉴런들의 연산 과정을 거쳐 제2 출력 값(hi+1)을 출력한다.
출력 레이어(130)는 제2 출력 값(hi+1)을 입력 받고, 최종 출력 값(hN)을 출력한다.
출력 레이어(130)는 복수 개의 뉴런들로 구성될 수 있다.
출력 레이어(120)는 제1 출력 값(hi)을 입력 받고, 은닉 레이어(120)와 동일한 뉴런들의 연산 과정을 거쳐 최종 출력 값(hN)을 출력한다.
로컬 네트워크 모듈들(140, 150)은 입력 레이어(110)에 대응되는 제1 로컬 네트워크 모듈(140) 및 은닉 레이어(120)에 대응되는 제2 로컬 네트워크 모듈(150)을 포함한다.
제1 로컬 네트워크 모듈(140)은 하기 수학식 1과 같이 제1 출력 값(hi)을 입력 받아 최종 출력 값(hN)에 근사 시킨 제1 근사 값(
Figure pat00001
)을 계산한다.
[수학식 1]
Figure pat00002
제1 로컬 네트워크 모듈(140)은 하기 수학식 2와 같이 제1 근사 값(
Figure pat00003
)을 이용하여 손실 함수(l)에 의해 입력 레이어(110)에 대한 제1 트레이닝 로스 값(Li)을 계산한다.
[수학식 2]
Figure pat00004
여기서, y는 학습 목표 값이고, 최종 출력 값(hN)에 근사 시킨 제1 근사 값(
Figure pat00005
)을 이용하였으므로 물결무늬 등호로 표시하였다.
이때, 손실 함수(l)는 민-앱솔루트 에러(mean-absolute error) 함수, 크로스-엔트로피(cross-entropy) 함수 또는 민-스퀘어 에러(mean-squared error) 함수일 수 있다.
제1 로컬 네트워크 모듈(140)은 하기 수학식 3과 같이 제1 트레이닝 로스 값(Li)을 제1 출력 값(hi)으로 미분하여 입력 레이어(110)에 대한 제1 에러 그래디언트 값(
Figure pat00006
)을 계산한다.
[수학식 3]
Figure pat00007
여기서, 제1 트레이닝 로스 값(Li)은 입력 레이어(110)의 트레이닝 로스 값을 근사 시킨 값이므로 물결무늬 등호로 표시하였다.
제1 로컬 네트워크 모듈(140)은 계산된 제1 에러 그래디언트 값(
Figure pat00008
)을 입력 레이어(110)로 출력한다.
입력 레이어(110)는 하기 수학식 4와 같이 제1 에러 그래디언트 값(
Figure pat00009
)에 기초하여 입력 레이어(110)의 가중치 값(
Figure pat00010
)을 업데이트한다.
[수학식 4]
Figure pat00011
여기서,
Figure pat00012
는 학습율(learning rate)이다.
수학식 4는 경사 하강 법(gradient-descent rule)에 의해 가중치 값(
Figure pat00013
)을 업데이트 하는 것을 수식으로 표현하였으나, 이외 다른 방식을 사용하여 가중치 값(
Figure pat00014
)을 업데이트 할 수 있다.
따라서, 입력 레이어(110)의 업데이트는 제1 출력 값(hi)이 출력 레이어(130)로 전파될 때까지 기다릴 필요 없이 에러 그래디언트 값은 역전파된다.
제1 로컬 네트워크 모듈(140)의 가중치 값은 제2 로컬 네트워크 모듈(150)이 계산한 제2 트레이닝 로스 값에 의해 업데이트된다.
제2 로컬 네트워크 모듈(150)은 제1 로컬 네트워크 모듈(140)과 동일 과정으로 은닉 레이어(120)의 출력 값인 제2 출력 값(hi+1)을 이용하여 제2 근사 값을 계산한다.
제2 로컬 네트워크 모듈(150)은 제2 근사 값에 기초하여 제1 로컬 네트워크 모듈(140)과 동일 과정으로 제2 트레이닝 로스 값을 계산한다.
제2 로컬 네트워크 모듈(150)은 제2 트레이닝 로스 값을 제1 로컬 네트워크 모듈(150)로 출력한다.
제1 로컬 네트워크 모듈(140)은 제2 로컬 네트워크 모듈(150)으로부터 제2 트레이닝 로스 값을 입력 받는다.
제1 로컬 네트워크 모듈(140)은 하기 수학식 5와 같이 제2 트레이닝 로스 값(Li+1)을 이용하여 로컬 트레이닝 로스 값(Lmi)을 계산한다.
[수학식 5]
Figure pat00015
여기서, Li는 제1 트레이닝 로스 값이고, l은 손실 함수이다.
손실 함수(l)는 민-앱솔루트 에러(mean-absolute error) 함수, 크로스-엔트로피(cross-entropy) 함수 또는 민-스퀘어 에러(mean-squared error) 함수일 수 있다.
제1 로컬 네트워크 모듈(140)은 로컬 트레이닝 로스 값(Lmi)을 이용하여 제1 로컬 네트워크 모듈(140)의 가중치 값을 업데이트한다.
또는, 제1 로컬 네트워크 모듈은 하기 수학식 6과 같이 로컬 트레이닝 로스 값(Lmi)을 계산할 수 있다.
[수학식 6]
Figure pat00016
도 1에서는 입력 레이어(110)와 출력 레이어(130) 사이에 하나의 은닉 레이어(130)로 도시되어 있으나, 학습 및 추론 장치(100)는 입력 레이어(110)와 출력 레이어(130) 사이에 하나 이상의 은닉 레이어를 포함할 수도 있다.
이때, 추가된 은닉 레이어에 대응되는 로컬 네트워크 모듈의 수도 증가할 수 있다.
이와 같이, 본 발명의 일 실시예에 따른 학습 및 추론 장치(100)는 메인 네트워크 처리부를 구성하는 레이어들의 역전파 학습 시 발생되는 상위 레이어들에 대한 계층적 종속성을 잠금 해제할 수 있다.
또한, 본 발명의 일 실시예에 따른 학습 및 추론 장치(100)는 로컬 네트워크 모듈의 상위 레이어에 대한 종속성을 잠금 해제할 수 있다.
이에 따라, 본 발명은 피드포워드 과정 후 백포워드 과정을 거칠 필요가 없어 학습 속도를 현저히 개선할 수 있다.
도 2는 본 발명의 일 실시예에 따른 학습 및 추론 장치의 학습 동작을 설명하기 위한 도면이다.
도 2를 참조하면, 학습 및 추론 장치의 학습 동작을 설명하기 위해 제1 레이어(211) 및 제1 레이어(211)에 대응되는 제1 로컬 네트워크 모듈(212)는 제1 노드(210)로 구성하고, 제2 레이어(221) 및 제2 레이어(221)에 대응되는 제2 로컬 네트워크 모듈(222)는 제2 노드(220)로 구성하여 도시 하였다.
제1 레이어(211) 및 제2 레이어(221)는 각각 입력 레이어 및 은닉 레이어일 수 있다.
또는, 제1 레이어(211) 및 제2 레이어(221)는 은닉 레이어가 여러 개인 경우 모두 은닉 레이어일 수 있다.
학습 및 추론 장치의 동작을 살펴보면, 제1 레이어(211)는 제2 레이어(221)와, 제1 로컬 네트워크 모듈(212)에 제1 출력 값을 출력(단계 ①)한다.
다음, 제1 로컬 네트워크 모듈(212)은 제1 에러 그래디언트 값을 제1 레이어(211)에 출력하고, 동시에 제2 레이어(221)는 제2 로컬 네트워크 모듈(222)과 다음 레이어에 제2 출력 값을 출력(단계 ②)한다. 이때, 제1 레이어(221)의 가중치 값은 제1 에러 그래디언트 값을 이용하여 경사 하강 법에 의해 업데이트 될 수 있다.
다음, 제2 로컬 네트워크 모듈(222)은 제2 에러 그래디언트 값을 제2 레이어(211)에 출력하고, 동시에 다음 레이어는 다음 로컬 네트워크 모듈에 출력 값을 출력(단계 ③)한다. 이때, 제2 레이어(221)의 가중치 값은 제2 에러 그래디언트 값을 이용하여 경사 하강 법에 의해 업데이트 될 수 있다.
다음, 제2 로컬 네트워크 모듈(222)은 계산한 제2 레이어(211)의 제2 트레이닝 로스 값을 제1 로컬 네트워크 모듈(212)로 출력(단계 ④)한다. 이때, 제1 로컬 네트워크 모듈(212)의 가중치 값은 제2 트레이닝 로스 값을 이용하여 로컬 트레이닝 로스 값을 계산하고, 계산된 로컬 트레이닝 로스 값을 미분하여 로컬 에러 그래디언트 값을 계산하며, 계산된 로컬 에러 그래디언트 값을 이용하여 경사 하강 법에 의해 업데이트 될 수 있다.
이와 같이, 학습 및 추론 장치는 병렬 네트워크를 통해 피드포워드와 업데이트를 동시에 수행하여 학습 속도를 개선할 수 있다.
도 2에 도시된 학습 및 추론 장치의 구체적인 연산 동작은 도 1을 참조하여 설명한 학습 및 추론 장치의 동작과 동일하므로 상세한 설명은 생략한다.
도 3은 본 발명의 일 실시예에 따른 학습 및 추론 장치의 추론 동작을 설명하기 위한 도면이다.
도 3을 참조하면, 학습 및 추론 장치는 입력 값(X)을 입력 받고 분류하여 추론 값을 출력한다.
도 3의 학습 및 추론 장치는 도 1 및 도 2를 참조하여 설명한 학습 동작에 의해 학습된 장치일 수 있다.
학습 동작에서 입력 값은 분류하기 위한 데이터 값을 의미한다.
예를 들면, 학습 및 추론 장치가 강아지 사진과 고양이 사진을 분류하는 학습을 수행한 경우 입력 값은 분류(또는, 추론)할 사진일 수 있다.
학습 및 추론 장치는 입력 레이어(311), 제1 은닉 레이어(321), 제2 은닉 레이어(331), 출력 레이어(341), 제1 로컬 네트워크 모듈(312), 제2 로컬 네트워크 모듈(322) 및 제3 로컬 네트워크 모듈(332)을 포함한다.
제1 서브 모델부(310)는 입력 값(X)을 입력 받고 연산을 수행하여 제1 근사 값을 출력한다.
제1 서브 모델부(310)는 입력 레이어(311) 및 제1 로컬 네트워크 모듈(312)로 구성된다.
입력 레이어(311)은 입력 값(X)를 입력 받고 연산을 수행하여 제1 출력 값을 제1 로컬 네트워크 모듈(312)로 출력한다.
제1 로컬 네트워크 모듈(312)는 제1 출력 값을 입력 받아 연산을 수행하여 제1 근사 값을 출력한다.
제2 서브 모델부(320)는 제1 출력 값을 입력 받고 연산을 수행하여 제2 근사 값을 출력한다.
제2 서브 모델부(320)는 입력 레이어(311), 제1 로컬 네트워크 모듈(312) 및 제1 은닉 레이어(321) 및 제2 로컬 네트워크 모듈(322)로 구성된다.
제1 은닉 레이어(321)는 입력 레이어(311)로부터 제1 출력 값을 입력 받는다.
제1 은닉 레이어(321)는 제1 출력 값을 입력 받아 연산을 수행하여 제2 출력 값을 출력한다.
제2 로컬 네트워크 모듈(322)은 제2 출력 값을 입력 받아 연산을 수행하여 제2 근사 값을 출력한다.
제3 서브 모델부(330)는 제2 출력 값을 입력 받고 연산을 수행하여 제3 근사 값을 출력한다.
제3 서브 모델부(330)는 입력 레이어(311), 제1 로컬 네트워크 모듈(312) 및 제1 은닉 레이어(321), 제2 로컬 네트워크 모듈(322), 제2 은닉 레이어(331) 및 제3 로컬 네트워크 모듈(332)로 구성된다.
제2 은닉 레이어(331)는 제1 은닉 레이어(321)로부터 제2 출력 값을 입력 받는다.
제2 은닉 레이어(331)는 제2 출력 값을 입력 받아 연산을 수행하여 제3 출력 값을 출력한다.
제3 로컬 네트워크 모듈(332)은 제3 출력 값을 입력 받아 연산을 수행하여 제3 근사 값을 출력한다.
메인 모델부(340)는 입력 값(X)을 입력 받아 최종 출력 값을 출력한다.
메인 모델부(340)는 입력 레이어(311), 제1 은닉 레이어(321), 제2 은닉 레이어(331) 및 출력 레이어(341)로 구성된다.
메인 모델부(340)는 입력 레이어(311), 제1 은닉 레이어(321), 제2 은닉 레이어(331), 출력 레이어(341) 순으로 피드포워드되며 최종 출력 값을 출력한다.
입력 레이어(311), 제1 은닉 레이어(321), 제2 은닉 레이어(331) 및 출력 레이어(341)의 연산 동작은 도 1 및 도 2를 참조하여 설명한 레이어들의 동작과 동일하므로 상세한 설명은 생략한다.
제1 로컬 네트워크 모듈(312), 제2 로컬 네트워크 모듈(322) 및 제3 로컬 네트워크 모듈(332)의 연산 동작은 도 1 및 도 2를 참조하여 설명한 로컬 네트워크 모듈들의 동작과 동일하므로 상세한 설명은 생략한다.
학습 및 추론 장치는 추론부(미도시)를 더 포함할 수 있다.
추론부는 피드포워드 되면서 순차적으로 출력되는 서브 모델부들(310, 320, 330)이 출력하는 근사 값들을 입력 받는다.
추론부는 제1 근사 값의 신뢰도가 임계치 이상인지 판단한다.
추론부는 제1 근사 값의 신뢰도가 임계치 이상인 경우 제1 근사 값을 추론 값으로 출력하고, 임계치 미만인 경우 제2 근사 값의 신뢰도를 판단한다.
추론부는 제2 출력 값의 신뢰도가 임계치 이상인 경우 제2 근사 값을 추론 값으로 출력하고, 임계치 미만인 경우 제3 근사 값의 신뢰도를 판단한다.
추론부는 제3 근사 값의 신뢰도가 임계치 이상인 경우 제3 근사 값을 추론 값으로 출력하고, 제1 근사 값 내지 제3 근사 값이 모두 임계치 미만인 경우 최종 출력 값을 추론 값으로 출력한다.
이때, 임계치는 사용자에 의해 기 설정될 수 있고, 제1 근사 값 내지 제3 근사 값과 최종 출력 값은 소프트맥스(softmax) 출력 값일 수 있다.
즉, 학습 및 추론 장치는 각 서브 모델부들의 근사 값의 신뢰도 값을 순차적으로 판단하여, 임계치 이상인 경우 완전한 피드포워드 과정을 거쳐 출력 레이어(341)이 최종 출력 값을 출력할 때까지 기다릴 필요 없이 높은 신뢰도의 추론 값을 얻을 수 있다. 이때, 제1 내지 제3 서브 모델부들(310, 320, 330)의 신뢰도 값이 임계치 미만인 경우 메인 모델부(340)의 최종 출력 값을 추론 값으로 출력할 수 있다.
예를 들면, 개 사진과 고양이 사진을 학습 시킨 학습 및 추론 장치는 제1 서브 모델을 거쳐 제1 근사 값을 출력할 수 있다. 이때, 제1 서브 모델은 강아지일 확률을 0.6, 고양이일 확률을 0.4인 제1 근사 값을 출력할 수 있다. 기 설정된 임계치가 0.9라 가정하면, 추론부는 제1 근사 값을 입력 받고, 임계치 미만으로 판단하여, 제2 서브 모델로부터 강아지일 확률이 0.85, 고양이일 확률이 0.15인 확률의 제2 근사 값을 입력 받을 수 있다. 마찬가지로 추론부는 임계치 미만이라 판단하여 강아지일 확률이 0.91이고, 고양이일 확률이 0.09인 확률인 제3 근사 값을 제3 서브 모델로부터 입력 받을 수 있다. 이때 추론부는 강아지일 확률이 0.91로 임계치 이상인 것으로 판단하여 제3 근사 값을 추론 값으로 출력한다. 즉, 학습 및 추론 장치는 강아지로 판단하여 추론 값을 출력한다.
따라서, 본 발명의 일 실시예에 따른 학습 및 추론 장치와, 그 방법은 서브모델부의 신뢰도가 임계치 이상인 경우, 완전한 피드포워드 과정 없이 분류 값(추론 값)을 출력할 수 있다. 이에 따라, 연산 속도를 현저히 개선할 수 있다.
하기 표 1은 본 발명의 일 실시예에 따른 학습 및 추론 장치의 추론부를 구현하는 알고리즘을 표현한 것일 수 있다.
[표 1]
Input: data x, threshold t
Model: sub-model mi, main-model f
Initialize: classification = 0.
for I = 1 to N - 1 do
if max softmax(mi(x)) > then
classification = argmax softmax(mi(x))
break
end if
end for
if classification == 0 then
#if all sub-models are not confident
Classification = argmax softmax(f(x))
end if
도 3에 도시된 학습 및 추론 장치는 두 개의 은닉 레이어로 구성되었으나, 하나 또는 세 개 이상의 은닉 레이어 및 이에 대응하는 로컬 네트워크 모듈들로 구성될 수 있다.
도 4는 본 발명의 일 실시예에 따른 학습 및 추론 방법을 나타내는 흐름도이다.
도 4를 참조하면, 학습 및 추론 장치는 S410 단계에서, 입력 레이어 및 은닉 레이어 각각에 대응되는 로컬 네트워크 모듈들이 각 레이어의 출력 값에 기초하여 오류 기울기 값을 계산한다.
학습 및 추론 장치는 S420 단계에서, 입력 레이어 및 은닉 레이어가 각각 오류 기울기 값에 의해 업데이트 된다.
학습 및 추론 장치는 S430 단계에서, 입력 레이어의 로컬 네트워크 모듈이 은닉 레이어의 로컬 네트워크 모듈이 계산한 트레이닝 로스 값에 기초하여 업데이트 된다.
도 4의 학습 및 추론 방법은 도 1 내지 도 3을 참조하여 설명한 학습 및 추론 장치의 동작 방법과 동일하므로 이외 상세한 설명은 생략한다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable 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 (17)

  1. 입력 레이어, 은닉 레이어 및 최종 출력 값을 출력하는 출력 레이어를 포함하는 메인 네트워크 처리부; 및
    상기 입력 레이어 및 상기 은닉 레이어 각각의 출력 값에 기초하여 오류 기울기 값을 계산하고, 다음 단의 로컬 네트워크 모듈이 계산한 트레이닝 로스 값에 기초하여 업데이트되는 로컬 네트워크 모듈들을 포함하는
    학습 및 추론 장치.
  2. 제1항에 있어서,
    상기 로컬 네트워크 모듈들은 입력 레이어 및 상기 은닉 레이어 각각의 출력 값을 이용하여 상기 최종 출력 값에 근사 시킨 근사 값을 계산하고, 상기 근사 값을 이용하여 손실 함수에 의해 트레이닝 로스 값을 계산하며, 상기 트레이닝 로스 값에 의해 상기 오류 기울기 값을 계산하는
    학습 및 추론 장치.
  3. 제2항에 있어서,
    상기 손실 함수는 민-앱솔루트 에러 함수, 민-스퀘어 에러 함수 또는 크로스-엔트로피 함수인
    학습 및 추론 장치.
  4. 제3항에 있어서,
    상기 입력 레이어 및 상기 은닉 레이어는 각각 상기 오류 기울기 값에 의해 업데이트 되는
    학습 및 추론 장치.
  5. 제3항에 있어서,
    상기 입력 레이어 및 상기 은닉 레이어는 경사 하강 법에 의해 업데이트 되는 학습 및 추론 장치.
  6. 제2항에 있어서,
    상기 입력 레이어의 로컬 네트워크 모듈은 상기 은닉 레이어의 로컬 네트워크 모듈이 계산한 상기 트레이닝 로스 값을 이용하여 손실 함수에 의해 로컬 트레이닝 로스 값을 계산하고, 상기 로컬 트레이닝 로스 값에 의해 로컬 오류 기울기 값을 계산하고, 상기 로컬 오류 기울기 값에 의해 업데이트되는
    학습 및 추론 장치.
  7. 제6항에 있어서,
    상기 손실 함수는 민-앱솔루트 에러 함수, 민-스퀘어 에러 함수 또는 크로스-엔트로피 함수인
    학습 및 추론 장치.
  8. 제6항에 있어서,
    상기 입력 레이어의 네트워크 모듈은 경사 하강 법에 의해 업데이트 되는 학습 및 추론 장치.
  9. 제2항에 있어서,
    상기 입력 레이어 및 상기 입력 레이어의 로컬 네트워크 모듈을 제1 서브 모델부로 구성하고, 상기 입력 레이어, 상기 은닉 레이어 및 상기 은닉 레이어의 로컬 네트워크 모듈을 제2 서브 모델부로 구성하며, 상기 입력 레이어, 상기 은닉 레이어 및 상기 출력 레이어를 메인 모델부로 구성하고,
    상기 서브 모델들의 근사 값에 대한 신뢰도를 순차적으로 판단하여 상기 신뢰도가 임계치 이상인 근사 값이 있는 경우 상기 근사 값을 추론 값으로 출력하고, 상기 신뢰도가 임계치 이상인 근사 값이 없는 경우 상기 최종 출력 값을 추론 값으로 출력하는 추론부를 더 포함하는
    학습 및 추론 장치.
  10. 입력 레이어 및 은닉 레이어 각각에 대응되는 로컬 네트워크 모듈들이 각 레이어의 출력 값에 기초하여 오류 기울기 값을 계산하는 단계;
    상기 입력 레이어 및 상기 은닉 레이어가 각각 상기 오류 기울기 값에 의해 업데이트 되는 단계; 및
    상기 입력 레이어의 로컬 네트워크 모듈이 상기 은닉 레이어의 로컬 네트워크 모듈이 계산한 트레이닝 로스 값에 기초하여 업데이트 되는 단계를 포함하는
    학습 및 추론 방법.
  11. 제10항에 있어서,
    상기 오류 기울기 값을 계산하는 단계는,
    상기 로컬 네트워크 모듈들이 상기 입력 레이어 및 상기 은닉 레이어 각각의 출력 값을 이용하여 상기 최종 출력 값에 근사 시킨 근사 값을 계산하는 단계;
    상기 로컬 네트워크 모듈들이 상기 근사 값을 이용하여 손실 함수에 의해 트레이닝 로스 값을 계산하는 단계; 및
    상기 로컬 네트워크 모듈들이 상기 트레이닝 로스 값에 의해 상기 오류 기울기 값을 계산하는 단계를 포함하는
    학습 및 추론 방법.
  12. 제11항에 있어서,
    상기 손실 함수는 민-앱솔루트 에러 함수, 민-스퀘어 에러 함수 또는 크로스-엔트로피 함수인
    학습 및 추론 방법.
  13. 제10항에 있어서,
    상기 입력 레이어 및 상기 은닉 레이어는 경사 하강 법에 의해 업데이트 되는
    학습 및 추론 방법.
  14. 제10항에 있어서,
    상기 입력 레이어의 로컬 네트워크 모듈이 업데이트 되는 단계는,
    상기 입력 레이어의 로컬 네트워크 모듈이 상기 은닉 레이어의 네트워크 모듈이 계산한 상기 트레이닝 로스 값을 이용하여 손실 함수에 의해 로컬 트레이닝 로스 값을 계산하는 단계;
    상기 입력 레이어의 로컬 네트워크 모듈이 상기 로컬 트레이닝 로스 값에 의해 로컬 오류 기울기 값을 계산하는 단계; 및
    상기 입력 레이어의 로컬 네트워크 모듈이 상기 로컬 오류 기울기 값에 의해 업데이트 되는 단계를 포함하는
    학습 및 추론 방법.
  15. 제14항에 있어서,
    상기 손실 함수는 민-앱솔루트 에러 함수, 민-스퀘어 에러 함수 또는 크로스-엔트로피 함수인
    학습 및 추론 방법.
  16. 제10항에 있어서,
    상기 입력 레이어의 로컬 네트워크 모듈은 경사 하강 법에 의해 업데이트되는
    학습 및 추론 방법.
  17. 제11항에 있어서,
    상기 입력 레이어 및 상기 입력 레이어의 로컬 네트워크 모듈을 제1 서브 모델부로 구성하고, 상기 입력 레이어, 상기 은닉 레이어 및 상기 은닉 레이어의 로컬 네트워크 모듈을 제2 서브 모델부로 구성하며, 상기 입력 레이어, 상기 은닉 레이어 및 상기 출력 레이어를 메인 모델부로 구성하고,
    추론부가 상기 서브 모델들의 근사 값에 대한 신뢰도를 순차적으로 판단하는 단계; 및
    상기 추론부가 상기 신뢰도가 임계치 이상인 근사 값이 있는 경우 상기 근사 값을 추론 값으로 출력하고, 상기 신뢰도가 임계치 이상인 근사 값이 없는 경우 상기 최종 출력 값을 추론 값으로 출력하는 단계를 더 포함하는
    학습 및 추론 방법.
KR1020180049810A 2018-04-30 2018-04-30 학습 및 추론 장치 및 그 방법 KR102090109B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180049810A KR102090109B1 (ko) 2018-04-30 2018-04-30 학습 및 추론 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180049810A KR102090109B1 (ko) 2018-04-30 2018-04-30 학습 및 추론 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20190125694A true KR20190125694A (ko) 2019-11-07
KR102090109B1 KR102090109B1 (ko) 2020-03-17

Family

ID=68578890

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180049810A KR102090109B1 (ko) 2018-04-30 2018-04-30 학습 및 추론 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR102090109B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021230500A1 (ko) * 2020-05-12 2021-11-18 부산대학교병원 실시간 안저사진 품질 판독을 위한 딥러닝 아키텍처 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010047163A (ko) 1999-11-18 2001-06-15 박종섭 다층퍼셉트론 신경망회로의 학습방법
KR20160134019A (ko) * 2015-05-14 2016-11-23 한국과학기술원 인공 신경망의 하향식 선택적 주의집중 트레이닝 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010047163A (ko) 1999-11-18 2001-06-15 박종섭 다층퍼셉트론 신경망회로의 학습방법
KR20160134019A (ko) * 2015-05-14 2016-11-23 한국과학기술원 인공 신경망의 하향식 선택적 주의집중 트레이닝 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Hesham Mostafa 외 2명. Deep supervised learning using local errors. 2017년 *
Yoshua Bengio 외 2명. Greedy Layer-Wise Training of Deep Networks. 2017년 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021230500A1 (ko) * 2020-05-12 2021-11-18 부산대학교병원 실시간 안저사진 품질 판독을 위한 딥러닝 아키텍처 시스템

Also Published As

Publication number Publication date
KR102090109B1 (ko) 2020-03-17

Similar Documents

Publication Publication Date Title
US11568258B2 (en) Operation method
KR102483639B1 (ko) 뉴럴 네트워크 구조 확장 방법, 디멘션 리덕션 방법, 및 그 방법을 이용한 장치
US10878313B2 (en) Post synaptic potential-based learning rule
US10755162B2 (en) Method and apparatus to reduce neural network
KR102399548B1 (ko) 뉴럴 네트워크를 위한 방법 및 그 방법을 수행하는 장치
KR102410820B1 (ko) 뉴럴 네트워크를 이용한 인식 방법 및 장치 및 상기 뉴럴 네트워크를 트레이닝하는 방법 및 장치
WO2018058426A1 (zh) 硬件神经网络转换方法、计算装置、编译方法和神经网络软硬件协作系统
KR20200045128A (ko) 모델 학습 방법 및 장치, 및 데이터 인식 방법
US20160162780A1 (en) Event-driven universal neural network circuit
Ponghiran et al. Spiking neural networks with improved inherent recurrence dynamics for sequential learning
WO2018084941A1 (en) Temporal difference estimation in an artificial neural network
KR20190098671A (ko) 뉴럴 네트워크의 고속 처리 방법 및 그 방법을 이용한 장치
KR102366302B1 (ko) 준 지도 학습을 위한 오토인코더 기반 그래프 설계
Chang et al. Differentiable architecture search with ensemble gumbel-softmax
KR20210039921A (ko) 신경망 모델을 최적화하도록 구성된 심층 신경망 시스템의 동작 방법
Chaudhuri et al. Efficient fault-criticality analysis for ai accelerators using a neural twin
KR102090109B1 (ko) 학습 및 추론 장치 및 그 방법
KR20210083624A (ko) 신경망의 데이터 입력 및 출력을 제어하는 제어 방법 및 장치
Kumar et al. LSTM Network: A Deep Learning Approach and Applications
CN110909860A (zh) 神经网络参数初始化的方法和装置
Hojabr et al. TaxoNN: a light-weight accelerator for deep neural network training
Gu et al. Esae: Evolutionary strategy-based architecture evolution
US11615309B2 (en) Forming an artificial neural network by generating and forming of tunnels
WO2022242076A1 (en) Methods and systems for compressing trained neural network and for improving efficiently performing computations of compressed neural network
WO2023217361A1 (en) Training binary deep neural networks without batch normalization

Legal Events

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