KR102277810B1 - 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법 - Google Patents

지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법 Download PDF

Info

Publication number
KR102277810B1
KR102277810B1 KR1020200145370A KR20200145370A KR102277810B1 KR 102277810 B1 KR102277810 B1 KR 102277810B1 KR 1020200145370 A KR1020200145370 A KR 1020200145370A KR 20200145370 A KR20200145370 A KR 20200145370A KR 102277810 B1 KR102277810 B1 KR 102277810B1
Authority
KR
South Korea
Prior art keywords
network
knowledge
networks
assistant
learning
Prior art date
Application number
KR1020200145370A
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 KR1020200145370A priority Critical patent/KR102277810B1/ko
Application granted granted Critical
Publication of KR102277810B1 publication Critical patent/KR102277810B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습용 시스템 및 지식 증류를 이용한 학생 네트워크 학습 방법이 개시된다. 본 명세서는, 지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습용 시스템에 있어서, 로우 데이터를 학습하는 교사 네트워크, 상기 교사 네트워크와 지식 연결(knowledge connection) 되는 복수의 조교 네트워크 및 상기 교사 네트워크 및 상기 복수의 네트워크 각각과 지식 연결되는 학생 네트워크를 포함하되, 상기 복수의 조교 네트워크 각각은 서로 지식 연결되고, 상기 네트워크들 사이의 지식 연결들은 무작위로(randomly) 변경될 수 있다.

Description

지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법{SYSTEM AND METHOD FOR LEARNING OF STUDENT NETWORK USING KNOWLEDGE DISTILLATION}
본 명세서는 딥러닝 기반의 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법에 관한 것으로서, 더욱 상세하게는 교사 네트워크와 학생 네트워크 사이의 조교 네트워크를 통한 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법에 관한 것이다.
딥러닝 분야에 있어서, 지식 증류법(knowledge distillation)은 미리 학습시킨 교사 네트워크(Teacher Network)의 출력을 학생 네트워크(Student Network)가 모방하여 학습함으로써 상대적으로 적은 파라미터를 가지고 있더라도 학습성능을 높일 수 있는 방법으로서 알려져있다.
지식 증류법은 여러 단계의 네트워크를 직렬 방식으로 연결함으로써 학생 네트워크의 학습성능을 높일 수 있었다. 그러나, 이러한 직렬 방식의 연결은 상위 레벨의 네트워크에서 발생한 에러가 하위 레벨의 네트워크까지 그대로 전달되는 문제점이 존재하였다. 이에, 위 문제점들을 개선하기 위한 새로운 방안이 필요하다.
본 명세서는 상술한 문제점들을 해결하기 위한 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법을 제안하는 것을 목적으로 한다.
또한, 본 명세서는 복수의 조교 네트워크를 포함하여 지식 증류법을 사용할 수 있는 시스템 및 그 학습 방법을 제안하는 것을 목적으로 한다.
또한, 본 명세서는 교사 네트워크 및 복수의 조교 네트워크 모두와 연결되는 학생 네트워크를 통하여 상위 네트워크에서 발생하는 에러가 학생 네트워크까지 전달될 가능성을 줄이기 위한 시스템 및 그 학습 방법을 제안하는 것을 목적으로 한다.
또한, 본 명세서는 복수의 지식 연결들을 무작위로 변경하고, 미리 정해진 개수만큼 지식 연결을 차단하여 학습 효율성을 최대화하기 위한 시스템 및 그 학습 방법을 제안하는 것을 목적으로 한다.
상술한 과제를 해결하기 위하여, 본 명세서는, 지식 증류(Knowledge Distillation)를 이용한 학생 네트워크 학습용 시스템에 있어서, 로우 데이터를 학습하는 교사 네트워크, 상기 교사 네트워크와 지식 연결(knowledge connection) 되는 복수의 조교 네트워크 및 상기 교사 네트워크 및 상기 복수의 네트워크 각각과 지식 연결되는 학생 네트워크를 포함하되, 상기 복수의 조교 네트워크 각각은 서로 지식 연결되고, 상기 네트워크들 사이의 지식 연결들은 무작위로(randomly) 변경될 수 있다.
또한, 상기 복수의 조교 네트워크는, 상기 교사 네트워크와 지식 연결되는 제1 조교 네트워크 및 상기 교사 네트워크 및 상기 제1 조교 네트워크와 지식 연결되는 제2 조교 네트워크를 포함할 수 있다.
또한, 상기 네트워크 각각은 복수의 레이어를 포함하고, 상기 교사 네트워크에 포함된 레이어의 개수는 상기 학생 네트워크에 포함된 레이어의 개수보다 클 수 있다.
또한, 상기 교사 네트워크에 포함된 레이어의 개수는 상기 제1 조교 네트워크에 포함된 레이어의 개수보다 클 수 있다.
이때, 상기 제1 조교 네트워크에 포함된 레이어의 개수는 상기 제2 조교 네트워크에 포함된 레이어의 개수보다 클 수 있다.
이때, 상기 제2 조교 네트워크에 포함된 레이어의 개수는 상기 학생 네트워크에 포함된 레이어의 개수보다 클 수 있다.
또한, 상기 복수의 조교 네트워크는, 상기 교사 네트워크, 상기 제1 조교 네트워크 및 상기 제2 조교 네트워크와 지식 연결되는 제3 조교 네트워크를 더 포함할 수 있다.
또한, 상기 시스템의 학습 방법은, 평면 CNN(plain Convolution Neural Network)을 포함할 수 있다.
또한, 상기 네트워크들 사이의 지식 연결들은 무작위로(randomly) 변경되되, 미리 설정된 개수만큼 상기 지식 연결이 차단될 수 있다.
이때, 상기 미리 설정된 개수는, 상기 시스템의 상기 네트워크들의 전체 개수를 고려하여 설정될 수 있다.
또한, 상술한 과제를 해결하기 위하여, 본 명세서는 지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습 방법 에 있어서, 교사 네트워크 및 복수의 조교 네트워크와 지식 연결(knowledge connection)되는 단계, 상기 교사 네트워크 및 상기 복수의 조교 네트워크들 각각과 연결된 지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계, 상기 교사 네트워크 및 상기 복수의 조교 네트워크들 중 지식 연결된 상태의 네트워크로부터 데이터를 수신하는 단계 및 상기 수신된 데이터를 기초로 학습하는 단계를 포함하되, 상기 교사 네트워크 및 상기 복수의 조교 네트워크들은 상호간 지식 연결될 수 있다.
이때, 상기 복수의 조교 네트워크는 상기 교사 네트워크와 지식 연결되는 제1 조교 네트워크 및 상기 교사 네트워크 및 상기 제1 조교 네트워크와 지식 연결되는 제2 조교 네트워크를 포함할 수 있다.
또한, 상기 교사 네트워크에 포함된 레이어의 개수는 상기 제1 조교 네트워크에 포함된 레이어의 개수보다 클 수 있다.
이때, 상기 제1 조교 네트워크에 포함된 레이어의 개수는 상기 제2 조교 네트워크에 포함된 레이어의 개수보다 클 수 있다.
이때, 상기 제2 조교 네트워크에 포함된 레이어의 개수는 상기 학생 네트워크에 포함된 레이어의 개수보다 클 수 있다.
또한, 상기 복수의 조교 네트워크는 상기 교사 네트워크, 상기 제1 조교 네트워크 및 상기 제2 조교 네트워크와 지식 연결되는 제3 조교 네트워크를 더 포함할 수 있다.
또한, 상기 시스템의 학습 방법은 평면 CNN(plain Convolution Neural Network)을 포함할 수 있다.
또한, 상기 지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계는 미리 설정된 개수만큼 상기 지식 연결이 무작위로(randomly) 차단될 수 있다.
이때, 상기 미리 설정된 개수는 상기 시스템의 상기 네트워크들의 전체 개수를 고려하여 설정될 수 있다.
본 명세서는 상술한 문제점들을 해결하기 위한 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법을 제공하는 교화가 있다.
또한, 본 명세서는 복수의 조교 네트워크를 포함하여 지식 증류법을 사용할 수 있는 효과가 있다.
또한, 본 명세서는 교사 네트워크 및 복수의 조교 네트워크 모두와 연결되는 학생 네트워크를 통하여 상위 네트워크에서 발생하는 에러가 학생 네트워크까지 전달될 가능성을 줄일 수 있는 효과가 있다.
또한, 본 명세서는 복수의 지식 연결들을 무작위로 변경하고, 미리 정해진 개수만큼 지식 연결을 차단하여 학습 효율성을 최대화할 수 있는 효과가 있다.
본 명세서에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 명세서가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 지식 증류를 이용한 학생 네트워크 학습용 시스템으로서 에러가 하위 네트워크로 전달되는 것을 나타낸 도면이다.
도 2 및 도 3은 본 명세서에 따른 지식 증류를 이용한 학생 네트워크 학습용 시스템을 나타낸 예시이다.
도 4 내지 도 7은 본 명세서에 따른 TAKD와 DGKD의 비교를 위한 도면이다.
도 8은 본 명세서에 따른 조교 네트워크의 개수에 따른 성능 비교를 나타낸 도면이다.
도 9는 본 명세서에 따른 dropping trial number의 변화에 기반한 비교를 나타낸 도면이다.
도 10은 본 명세서의 지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습 방법을 개략적으로 나타낸 도면이다.
도 11은 지식 연결 중 적어도 하나를 무작위로 변경하는 단계를 나타낸 도면이다.
본 명세서에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 명세서에 대한 실시예를 제공하고, 상세한 설명과 함께 본 명세서의 기술적 특징을 설명한다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 상술한 내용들을 바탕으로 본 명세서의 바람직한 일 실시예에 따른 지식 증류(Knowledge Distillation, KD)를 이용한 학생 네트워크 학습용 시스템에 관하여 상세히 설명하면 다음과 같다.
도 1은 지식 증류를 이용한 학생 네트워크 학습용 시스템(10)으로서 에러가 하위 네트워크로 전달되는 것을 나타낸 도면이다.
도 1에 따르면, 지식 증류를 이용한 학생 네트워크(13)는 교사 네트워크 및 복수의 조교 네트워크(12)들로부터 학습된 데이터들을 기초로 학습할 수 있다.
도 1에 따르면, 교사 네트워크(11), 복수의 조교 네트워크(12)들이 직렬 방식으로 지식 연결(knowledge connection)되고, 학생 네트워크(13)는 상위 네트워크와 직렬 방식으로 지식연결될 수 있다. 본 명세서에서 사용되는 지식 연결(knowledge connection)이란, 상위 네트워크에서 학습된 데이터를 하위 네트워크로 전송할 수 있도록 형성된 모든 알고리즘 또는 그러한 물리적 연결을 통칭하는 것으로 이해될 수 있다.
상위 네트워크란 학습할 대상인 로우 데이터(Raw data)의 범위가 더 큰 네트워크이거나, 하위 네트워크로 학습된 데이터를 전달하는 네트워크를 의미할 수 있다. 또한, 하위 네트워크란 상위 네트워크로부터 학습된 데이터를 전달받아 다시 학습하는 네트워크를 의미할 수 있다. 이처럼, 상위 네트워크 및 하위 네트워크는 본 명세서에서 상대적인 의미로 사용될 수 있다.
도 1에 따르면, 복수의 조교 네트워크(12)들은 제1 조교 네트워크(12a), 제2 조교 네트워크(12b) 및 제3 조교 네트워크(12c)를 포함할 수 있다. 도 1에 도시되지는 않았지만, 복수의 조교 네트워크(12)들은 제n 조교 네트워크를 더 포함할 수도 있다.
도 1에 따르면, 제1 조교 네트워크(12a)에서 발생한 오류값이 하위 네트워크로 그대로 전달될 수 있다. 이처럼, 상위 네트워크에서 한번 발생된 오류값이 그대로 하위 네트워크로 전달되고, 이와 함께 하위 네트워크에서 발생된 오류값이 학생 네트워크(13)로 전달될 수 있다. 결과적으로, 학생 네트워크(13)는 제1 조교 네트워크(12a) 내지 제3 조교 네트워크(12c)에서 발생된 오류값들을 모두 전달받는다.
학생 네트워크(13)는 교사 네트워크(11)를 모방하기 위하여 학습할 수 있다. 이를 위하여 완전히(fully) 연결된 계층 출력 logits이 네트워크의 지식(knowledge)로 사용될 수 있다. 각각의 네트워크들이 학습하는 방법은 CNN을 사용할 수 있으며, 바람직하게는 평면 CNN이 사용될 수 있다.
즉, 지식 증류(Knowledge Distillation)를 이용한 학생 네트워크(13) 학습용 시스템(10)에 있어서, 시스템(10)은 로우 데이터를 학습하는 교사 네트워크(11), 교사 네트워크(11)와 지식 연결(knowledge connection) 되는 복수의 조교 네트워크(12) 및 상기 교사 네트워크(11) 및 상기 복수의 네트워크 각각과 지식 연결되는 학생 네트워크(13)를 포함할 수 있다. 이때, 복수의 조교 네트워크(12) 각각은 서로 지식 연결되고, 네트워크들 사이의 지식 연결들은 무작위로(randomly) 변경될 수 있다.
무작위로 변경된다는 개념은 미리 설정된 개수만큼 네트워크 사이의 지식 연결이 무작위로 차단된다는 것을 의미할 수 있다.
지식 증류는 상위 네트워크에서 하위 네트워크로 갈수록 각각의 네트워크가 포함하는 레이어의 개수가 줄어들 수 있다. 따라서, 교사 네트워크(11)의 레이어의 개수가 가장 많고, 학생 네트워크(13)의 레이어의 개수가 가장 적을 수 있다.
따라서, 상기 교사 네트워크(11)에 포함된 레이어의 개수는 제1 조교 네트워크(12a)에 포함된 레이어의 개수보다 크고, 제1 조교 네트워크(12a)에 포함된 레이어의 개수는 제2 조교 네트워크(12b)에 포함된 레이어의 개수보다 크며, 제2 조교 네트워크(12b)에 포함된 레이어의 개수는 학생 네트워크(13)에 포함된 레이어의 개수보다 클 수 있다.
도 2 및 도 3은 본 명세서에 따른 지식 증류를 이용한 학생 네트워크 학습용 시스템을 나타낸 예시이다.
도 2 및 도 3에 따르면, 교사 네트워크(11), 복수의 조교 네트워크(12) 및 학생 네트워크(13)는 직렬 방식으로 지식 연결될 뿐만 아니라, 각각의 네트워크 상호간에도 상위 네트워크에서 하위 네트워크의 방향으로 지식 연결될 수 있다. 간략하게는, 각각의 네트워크들이 병렬 방식으로 서로 지식 연결되었다고 표현될 수 있다.
도 2 및 도 3에 따르면, 교사 네트워크(11)는 그 하위 네트워크들과 각각 지식 연결될 수 있다. 또한, 제1 조교 네트워크(12a)는 그 하위 네트워크들과 각각 지식 연결될 수 있다. 또한, 제2 조교 네트워크(12b)는 그 하위 네트워크들과 각각 지식 연결될 수 있다. 제3 조교 네트워크(12c)는 학생 네트워크(13)와 지식 연결될 수 있다.
이처럼, 학생 네트워크(13)는 교사 네트워크(11) 및 복수의 조교 네트워크(12)들과 모두 지식 연결될 수 있다. 뿐만 아니라, 교사 네트워크(11) 및 복수의 조교 네트워크(12) 각각 역시 모두 지식 연결될 수 있다. 이처럼, 복수의 네트워크들이 교차하여 지식 연결된 상태는 Densely Guided Knowledge Distillation(줄여서 DGKD)로 본 명세서에서 표현될 수 있다. 또한, TA는 조교 네트워크를 의미할 수 있으며, TAKD는 TA를 사용한 KD를 의미할 수 있다.
도 3에 따르면, DGKD로 복수의 네트워크들이 연결된 경우, 학생 네트워크(13)로 전달되는 오류값이 현저하게 줄어들었음이 확인된다. 즉, 복수의 네트워크들이 교차적으로 연결됨으로써, 오류값이 그대로 학생 네트워크(13)로 전달되는 것이 방지될 수 있다. 다르게 말하여, DGKD로 복수의 네트워크들이 상호간 유기적으로 연결된 경우, 학생 네트워크(13)로 전달되는 오류값이 현저하게 줄어들 수 있다.
도 4 내지 도 7은 본 명세서에 따른 TAKD와 DGKD의 비교를 위한 도면이다.
도 4에 따르면, 평면 CNN을 사용한 증류 스텝의 정확도 비교가 확인된다. 교사 네트워크 T는 10개의 레이어를 포함하고, 학생 네트워크 S는 2개의 레이어를 포함하며, 조교 네트워크 A는 각각 4, 6, 8개의 레이어를 포함할 수 있다.
도 4에 따르면, 3개의 조교 네트워크를 사용한 경우, DGKD의 경우 평면 CNN을 사용한 학생 네트워크(13)는 TAKD의 경우보다 +3.78%의 향상된 성능을 가진다.
도 5에 따르면, 교사 네트워크 T는 26개의 레이어를 포함하고, 학생 네트워크 S는 8개의 레이어를 포함하며, 조교 네트워크는 각각 14, 20, 26개의 레이어를 포함할 수 있다. 도 5의 경우 도 4의 경우보다 훨씬 많은 레이어를 사용하므로 더 향상된 성능이 확인된다.
도 6에 따르면, 교사 네트워크 T는 50개의 레이어를 포함하고, 학생 네트워크 S는 18개의 레이어를 포함하며, 조교 네트워크는 34개의 레이어를 포함할 수 있다. 이 경우, 도 4보다는 성능이 향상되나 더 적은 수의 레이어를 활용한 도 5보다는 성능이 떨어진 것이 확인된다. 즉, 조교 네트워크의 적절한 사용하는 방법이 단순히 레이어를 많이 사용하는 방법보다 더 높은 성능을 가질 수 있다.
도 7에 따르면, 조교 네트워크 A의 레이어는 2, 4, 6, 8개일 수 잇다. 이때, TAKD와 DGKD의 에러율을 살펴보면, TAKD의 에러율이 DGKD보다 높게 오버랩되는 것이 확인된다.
도 8는 본 명세서에 따른 조교 네트워크의 개수에 따른 성능 비교를 나타낸 도면이다.
도 8에 따르면, 다양한 경로를 가지는 TAKD의 정확성이 나타난다. 조교 네트워크 A는 4, 6, 8의 레이어를 포함할 수 있다. 교사 네트워크 T와 학생 네트워크 S 사이에 연결된 조교 네트워크들의 다양한 조합에 따른 정확도의 차이가 확인된다. 도 8에 따르면, 4, 6, 8개의 레이어를 포함하는 조교 네트워크 3개를 사용한 케이스의 정확도가 가장 높다.
도 9는 본 명세서에 따른 dropping trial number의 변화에 기반한 비교를 나타낸 도면이다.
도 9에 따르면, Stochastic DGKD에 대한 정확도가 나타난다. 10개 레이어를 포함하는 교사 네트워크 T에서부터 2개 레이어를 포함하는 학생 네트워크 S까지 3개의 조교 네트워크가 존재할 수 있다. 이때, 조교 네트워크의 레이어의 개수는 4, 6, 8일 수 있다.
도 9에 따르면, dropping trial number, t는 DGKD의 지식 연결 중에 무작위로 차단할 지식 연결의 개수를 의미할 수 있다. 즉, 도 9의 그래프는 0개에서부터 3개까지의 dropping trial number, t를 설정하고, 그에 따른 정확도를 비교한 결과, t=1일 때 가장 높은 정확도가 확인된다. 이때, t=3은 전체 지식 연결의 개수를 고려하여 결정된 개수일 수 있다. 교사 네트워크 T에서 학생 네트워크 S, 및 3개의 조교 네트워크를 포함함으로써, 총 4단계의 학습 단계가 존재하기 때문이다.
즉, n 단계의 학습 단계를 가지는 DGKD의 경우 t는 최소 0에서부터 최대 n-1까지 미리 설정될 수 있다.
이하, 상술한 내용들을 바탕으로 본 명세서의 바람직한 제2 실시예에 따른, 지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습 방법에 관하여 상세히 설명하면 다음과 같다. 이때, 제2 실시예에 따른 학습 방법의 주체는 학생 네트워크일 수 있다.
참고로, 본 명세서의 제2 실시예 중 본 명세서의 제1 실시예와 특징이 동일하거나 유사한 구성들에 대한 설명은 생략하고 다른 점만을 설명하기로 한다.
도 10은 본 명세서의 지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습 방법을 개략적으로 나타낸 도면이고, 도 11은 지식 연결 중 적어도 하나를 무작위로 변경하는 단계를 나타낸 도면이다.
도 10에 따르면, 본 명세서에 따른 지식 증류(Knowledge Distillation)을 이용한 학생 네트워크 학습 방법은, 교사 네트워크(11) 및 복수의 조교 네트워크(12)와 지식 연결(knowledge connection)되는 단계(S1100), 교사 네트워크(11) 및 복수의 조교 네트워크(12)들 각각과 연결된 지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계(S1200), 교사 네트워크(11) 및 복수의 조교 네트워크(12)들 중 지식 연결된 상태의 네트워크로부터 데이터를 수신하는 단계(S1300) 및 수신된 데이터를 기초로 학습하는 단계(S1400)를 포함할 수 있다.
이때, 교사 네트워크(11) 및 복수의 조교 네트워크(12)들은 상호간 지식 연결될 수 있다. 또한, 교사 네트워크(11) 및 복수의 조교 네트워크(12)들은 교차적으로 지식 연결될 수 있다
도 11에 따르면, 교사 네트워크(11) 및 복수의 조교 네트워크(12)들 각각과 연결된 지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계(S1200)는 미리 정해진 개수를 로딩(loading)하는 단계(S1210) 및 미리 정해진 개수만큼 무작위로 지식 연결들 중 적어도 하나를 차단하는 단계(S1220)를 포함할 수 있다. 이때, 미리 정해진 개수는 상기 제1 실시예에서 서술한 dropping trial number일 수 있다.
복수의 조교 네트워크(12)는 교사 네트워크(11)와 지식 연결되는 제1 조교 네트워크(12a)를 포함할 수 있다. 또한 복수의 조교 네트워크(12)는 교사 네트워크(11) 및 제1 조교 네트워크(12a)와 지식 연결되는 제2 조교 네트워크(12b)를 포함할 수 있다. 또한, 복수의 조교 네트워크(12)는 교사 네트워크(11), 제1 조교 네트워크(12a) 및 제2 조교 네트워크(12b)와 지식 연결되는 제3 조교 네트워크(12c)를 더 포함할 수 있다.
지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계는 미리 설정된 개수만큼 상기 지식 연결이 무작위로(randomly) 차단되는 방법일 수 있다.
이때, 미리 설정된 개수는 시스템(10)의 상기 네트워크들의 전체 개수를 고려하여 설정될 수 있다.
전술한 본 명세서는, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 모델링하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽힐 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 모델링되는 것도 포함한다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 명세서의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 명세서의 등가적 범위 내에서의 모든 변경은 본 명세서의 범위에 포함된다.
앞에서 설명된 본 발명의 어떤 실시 예들 또는 다른 실시 예들은 서로 배타적이거나 구별되는 것은 아니다. 앞서 설명된 본 발명의 어떤 실시 예들 또는 다른 실시 예들은 각각의 구성 또는 기능이 병용되거나 조합될 수 있다.
상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (19)

  1. 지식 증류(Knowledge Distillation)를 이용한 학생 네트워크 학습용 시스템에 있어서,
    로우 데이터를 학습하는 교사 네트워크;
    상기 교사 네트워크와 지식 연결(knowledge connection)되는 복수의 조교 네트워크; 및
    상기 교사 네트워크 및 상기 복수의 조교 네트워크 각각과 지식 연결되는 학생 네트워크;를 포함하되,
    상기 네트워크 각각은 복수의 레이어를 포함하고,
    상기 교사 네트워크에 포함된 레이어의 개수는 상기 복수의 조교 네트워크 및 상기 학생 네트워크에 포함된 레이어의 개수보다 많고,
    상기 복수의 조교 네트워크는,
    상기 교사 네트워크와 지식 연결되는 제1 조교 네트워크; 및
    상기 교사 네트워크 및 상기 제1 조교 네트워크와 지식 연결되는 제2 조교 네트워크;를 포함하고,
    상기 교사 네트워크는 상기 로우 데이터에 기초하여 학습된 학습 데이터를 상기 제1 조교 네트워크, 상기 제2 조교 네트워크 및 상기 학생 네트워크 각각에 전달하고,
    상기 제1 조교 네트워크는 상기 학습 데이터에 기초하여 학습된 제1 학습 데이터를 상기 제2 조교 네트워크 및 상기 학생 네트워크 각각에 전달하고,
    상기 제2 조교 네트워크는 상기 학습 데이터 또는 상기 제1 학습 데이터에 기초하여 학습된 제2 학습 데이터를 상기 학생 네트워크 각각에 전달하고,
    상기 학생 네트워크는 상기 학습 데이터, 상기 제1 학습 데이터, 상기 제2 학습 데이터 중 적어도 하나에 기초하여 학습하고,
    상기 복수의 조교 네트워크 각각은 서로 지식 연결되고,
    상기 네트워크들이 서로 지식 연결된 이후, 상기 네트워크들 사이의 지식 연결들은 무작위로(randomly) 변경되는 것인, 시스템.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 교사 네트워크에 포함된 레이어의 개수는 상기 제1 조교 네트워크에 포함된 레이어의 개수보다 큰 것인, 시스템.
  5. 제4항에 있어서,
    상기 제1 조교 네트워크에 포함된 레이어의 개수는 상기 제2 조교 네트워크에 포함된 레이어의 개수보다 큰 것인, 시스템.
  6. 제5항에 있어서,
    상기 제2 조교 네트워크에 포함된 레이어의 개수는 상기 학생 네트워크에 포함된 레이어의 개수보다 큰 것인, 시스템.
  7. 제1항에 있어서,
    상기 복수의 조교 네트워크는,
    상기 교사 네트워크, 상기 제1 조교 네트워크 및 상기 제2 조교 네트워크와 지식 연결되는 제3 조교 네트워크를 더 포함하는 것인, 시스템.
  8. 제1항에 있어서,
    상기 시스템의 학습 방법은,
    평면 CNN(plain Convolution Neural Network)을 포함하는 것인, 시스템.
  9. 제1항에 있어서,
    상기 네트워크들 사이의 지식 연결들은,
    무작위로(randomly) 변경되되, 미리 설정된 개수만큼 상기 지식 연결이 차단되는 것인, 시스템.
  10. 제9항에 있어서,
    상기 미리 설정된 개수는,
    상기 시스템의 상기 네트워크들의 전체 개수를 고려하여 설정되는 것인, 시스템.
  11. 학생 네트워크 학습용 시스템이 지식 증류(Knowledge Distillation)을 이용하여 학생 네트워크를 학습시키는 방법에 있어서,
    상기 학생 네트워크가, 교사 네트워크 및 복수의 조교 네트워크와 지식 연결(knowledge connection)되는 단계;
    상기 네트워크들이 서로 지식 연결된 이후, 상기 교사 네트워크 및 상기 복수의 조교 네트워크들 각각과 연결된 지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계;
    상기 교사 네트워크 및 상기 복수의 조교 네트워크들 중 지식 연결된 상태의 네트워크로부터 데이터를 수신하는 단계; 및
    상기 수신된 데이터를 기초로 학습하는 단계;를 포함하되,
    상기 네트워크 각각은 복수의 레이어를 포함하고,
    상기 교사 네트워크에 포함된 레이어의 개수는 상기 복수의 조교 네트워크 및 상기 학생 네트워크에 포함된 레이어의 개수보다 많고,
    상기 교사 네트워크 및 상기 복수의 조교 네트워크들은 상호간 지식 연결되고,
    상기 복수의 조교 네트워크는,
    상기 교사 네트워크와 지식 연결되는 제1 조교 네트워크; 및
    상기 교사 네트워크 및 상기 제1 조교 네트워크와 지식 연결되는 제2 조교 네트워크;를 포함하고,
    상기 교사 네트워크는 로우 데이터에 기초하여 학습된 학습 데이터를 상기 제1 조교 네트워크, 상기 제2 조교 네트워크 및 상기 학생 네트워크 각각에 전달하고,
    상기 제1 조교 네트워크는 상기 학습 데이터에 기초하여 학습된 제1 학습 데이터를 상기 제2 조교 네트워크 및 상기 학생 네트워크 각각에 전달하고,
    상기 제2 조교 네트워크는 상기 학습 데이터 또는 상기 제1 학습 데이터에 기초하여 학습된 제2 학습 데이터를 상기 학생 네트워크 각각에 전달하고,
    상기 학생 네트워크는 상기 학습 데이터, 상기 제1 학습 데이터, 상기 제2 학습 데이터 중 적어도 하나에 기초하여 학습하는, 지식 증류를 이용한 학생 네트워크 학습 방법.
  12. 삭제
  13. 제11항에 있어서,
    상기 교사 네트워크에 포함된 레이어의 개수는 상기 제1 조교 네트워크에 포함된 레이어의 개수보다 큰 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
  14. 제13항에 있어서,
    상기 제1 조교 네트워크에 포함된 레이어의 개수는 상기 제2 조교 네트워크에 포함된 레이어의 개수보다 큰 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
  15. 제14항에 있어서,
    상기 제2 조교 네트워크에 포함된 레이어의 개수는 상기 학생 네트워크에 포함된 레이어의 개수보다 큰 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
  16. 제11항에 있어서,
    상기 복수의 조교 네트워크는,
    상기 교사 네트워크, 상기 제1 조교 네트워크 및 상기 제2 조교 네트워크와 지식 연결되는 제3 조교 네트워크를 더 포함하는 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
  17. 제11항에 있어서,
    상기 시스템의 학습 방법은,
    평면 CNN(plain Convolution Neural Network)을 포함하는 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
  18. 제11항에 있어서,
    상기 지식 연결들 중 적어도 하나를 무작위로(randomly) 변경하는 단계는,
    미리 설정된 개수만큼 상기 지식 연결이 무작위로(randomly) 차단되는 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
  19. 제18항에 있어서,
    상기 미리 설정된 개수는,
    상기 시스템의 상기 네트워크들의 전체 개수를 고려하여 설정되는 것인, 지식 증류를 이용한 학생 네트워크 학습 방법.
KR1020200145370A 2020-11-03 2020-11-03 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법 KR102277810B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200145370A KR102277810B1 (ko) 2020-11-03 2020-11-03 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200145370A KR102277810B1 (ko) 2020-11-03 2020-11-03 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법

Publications (1)

Publication Number Publication Date
KR102277810B1 true KR102277810B1 (ko) 2021-07-15

Family

ID=76889541

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200145370A KR102277810B1 (ko) 2020-11-03 2020-11-03 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법

Country Status (1)

Country Link
KR (1) KR102277810B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792871A (zh) * 2021-08-04 2021-12-14 北京旷视科技有限公司 神经网络训练方法、目标识别方法、装置和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034258A (ko) * 2015-09-18 2017-03-28 삼성전자주식회사 모델 학습 방법 및 장치, 및 데이터 인식 방법
KR20180013674A (ko) * 2016-07-28 2018-02-07 삼성전자주식회사 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034258A (ko) * 2015-09-18 2017-03-28 삼성전자주식회사 모델 학습 방법 및 장치, 및 데이터 인식 방법
KR20180013674A (ko) * 2016-07-28 2018-02-07 삼성전자주식회사 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Seyed Iman Mirzadeh et al., "Improved Knowledge Distillation via Teacher Assistant," arXiv:1902.03393v2 [cs.LG] (2019.12.17.)* *
Soma Minami et al., "KNOWLEDGE TRANSFER GRAPH FOR DEEP COLLABORATIVE LEARNING," arXiv:1909.04286v2 [cs.CV] (2019.12.17.)* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792871A (zh) * 2021-08-04 2021-12-14 北京旷视科技有限公司 神经网络训练方法、目标识别方法、装置和电子设备

Similar Documents

Publication Publication Date Title
Appel et al. Every planar map is four colorable
Cicalese Fault-Tolerant Search Algorithms
WO2015118686A1 (ja) 階層型ニューラルネットワーク装置、判別器学習方法および判別方法
KR102277810B1 (ko) 지식 증류를 이용한 학생 네트워크 학습용 시스템 및 학습 방법
KR102061935B1 (ko) 딥 신경망을 이용한 정보 이전 방법 및 그 장치
Perea A one-person doxastic characterization of Nash strategies
Patrikis On the sign of regular algebraic polarizable automorphic representations
CN103309844B (zh) 一种遥控器的学习方法、装置
KR102631406B1 (ko) 트랜스포머 뉴럴 네트워크 경량화를 위한 지식 증류 방법 및 이를 수행하기 위한 장치
US9390794B2 (en) Semiconductor device and operating method thereof
Barton Packing densities of patterns
KR102211604B1 (ko) Gpu 기반의 채널 단위 딥뉴럴 네트워크 구조 검색을 사용하는 인공지능 시스템
KR102629022B1 (ko) 강화 학습 기반의 스케줄링 방법
CN109358815A (zh) 一种nand闪存数据管理方法和装置
WO2019209661A1 (en) Graph search optimization system based on derived constraint techniques
Sánchez et al. Growth in higher Baumslag–Solitar groups
CN110019365A (zh) 一种利用栈生成数据处理顺序的方法
US7333444B1 (en) Method and apparatus for creating a robust highly connected direct interconnection network
JP2019144789A (ja) 機械学習装置、判定装置、機械学習方法及び判定方法
Brame et al. Geometric limits of Julia sets for sums of power maps and polynomials
Holley Homotopic but Not Isotopic Families of Links
Kim et al. Error-correcting output codes for multi-class classification based on Hadamard matrices and a CNN model
CN105760108B (zh) 一种数据存储的方法和装置
JP2019185701A (ja) 意識モジュールの新機能
Adams et al. Atlas of Lie groups and representations

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant