KR102199484B1 - 대용량 네트워크를 압축하기 위한 방법 및 장치 - Google Patents

대용량 네트워크를 압축하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR102199484B1
KR102199484B1 KR1020180063698A KR20180063698A KR102199484B1 KR 102199484 B1 KR102199484 B1 KR 102199484B1 KR 1020180063698 A KR1020180063698 A KR 1020180063698A KR 20180063698 A KR20180063698 A KR 20180063698A KR 102199484 B1 KR102199484 B1 KR 102199484B1
Authority
KR
South Korea
Prior art keywords
network
complexity
artificial neural
fragment
neural network
Prior art date
Application number
KR1020180063698A
Other languages
English (en)
Other versions
KR20190137470A (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 KR1020180063698A priority Critical patent/KR102199484B1/ko
Priority to PCT/KR2018/014105 priority patent/WO2019231064A1/ko
Publication of KR20190137470A publication Critical patent/KR20190137470A/ko
Application granted granted Critical
Publication of KR102199484B1 publication Critical patent/KR102199484B1/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
    • 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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 네트워크(Network)를 압축(Compression)하는 방법에 관한 것이다. 보다 구체적으로, 본 발명에 네트워크(Network)를 압축(Compression)하는 방법은 기 학습된 대용량 인공 신경망(artificial neural network: ANN)을 획득하고, 상기 획득된 대용량 인공 신경망의 복잡도를 기초로, 상기 대용량 인공 신경망을 기 설정된 단위 네트워크 조각과 매칭하고, 매칭된 복수의 단위 네트워크 조각들을 포함하는, 압축된 네트워크를 생성할 수 있다.

Description

대용량 네트워크를 압축하기 위한 방법 및 장치{Method and apparatus for compressing large capacity networks}
본 명세서는 네트워크를 압축하기 위한 방법 및 장치에 관한 것이다. 보다 구체적으로, 대용량의 인공 신경망(artificial neural network: ANN)을 작은 크기의 인공 신경망으로 압축하기 위한 방법 및 장치에 관한 발명이다.
최근에 컴퓨터는 머신 비전(machine vision) 또는 객체 인식(object recognition)을 제공한다. 객체 인식은 사용자에게 다양한 유익한 도구들을 제공한다. 예를 들면, 객체 인식은 뉴럴 네트워크(neural network)를 포함 하는 알고리즘에 의존한다.
즉, 사용자 장치는 뉴럴 네트워크를 사용하여 입력 이미지에 포함된 객체를 인식할 수 있다. 일반적으로, 뉴럴 네트워크는 트레이닝 이미지(training image)들을 사용하여 객체들을 인식하는 훈련을 하게 된다. 이러한 객체 인식 프로세스는, 더 많은 트레이닝 이미지를 사용할수록, 좀 더 높은 식별력을 가질 수 있다.
일반적으로, 뉴럴 네트워크들은 상호 연결된 "뉴런(neuron)"들의 시스템들을 포함한다. 뉴럴 네트워크들은 입력들로부터 값들을 계산하고, 그것들의 적응적 네이처(adaptive nature)의 결과로서 패턴 인식을 할 수 있을 뿐만 아니라 기계를 학습할 수 있다.
본 발명은 대용량 네트워크를 압축하기 위한 방법 및 장치를 제공함에 그 목적이 있다.
또한, 본 발명은 대용량 인공 신경망을 복잡도에 기초하여 크기가 더 작은 인공 신경망으로 압축하기 위한 방법 및 장치를 제공함에 그 목적이 있다.
또한, 본 발명은 입력된 대용량 인공 신경망을 복잡도에 기초하여 단위 네트워크 조각에 매칭시킴으로써 대용량 인공 신경망보다 작은 용량을 차지하면서도 유사한 성능을 갖는 네트워크를 생성하기 위한 방법 및 장치를 제공함에 그 목적이 있다.
본 명세서에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 기술적 사상에 의한 일 양태에 따른 네트워크 압축 방법은 기 학습된 대용량 인공 신경망(artificial neural network: ANN)을 획득하는 단계; 상기 획득된 대용량 인공 신경망의 복잡도를 기초로, 상기 대용량 인공 신경망을 기 설정된 단위 네트워크 조각과 매칭하는 단계; 및 매칭된 복수의 단위 네트워크 조각들을 포함하는, 압축된 네트워크를 생성하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 매칭하는 단계는 상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포가 일치되도록 상기 기 설정된 단위 네트워크 조각을 최적화하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 압축된 네트워크를 생성하는 단계는 상기 최적화된 단위 네트워크 조각들을 포함하는, 상기 압축된 네트워크를 생성하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 최적화하는 단계는 상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망 간의 최대 평균 차이(maximum mean discrepancy: MMD)를 최적화하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 최대 평균 차이(MMD)를 최적화하는 단계는 상기 기 학습된 대용량 인공 신경망의 데이터 분포가 P, 상기 P를 통해 생성되는 데이터를 xi, 상기 기 설정된 단위 네트워크 조각의 데이터 분포가 Q 및 상기 Q를 통해 생성되는 데이터를 yi라 하면, 상기 P와 Q의 차이를 나타내는 MMD는 아래의 수학식을 이용하는 단계를 포함할 수 있다.
Figure 112018054373263-pat00001
예시적인 실시예에 따르면, 상기 복잡도는 인공 신경망의 표현력을 수치화한 값을 나타낼 수 있다.
예시적인 실시예에 따르면, 상기 매칭하는 단계는 상기 기 설정된 단위 네트워크 조각을 생성하는 단계와, 상기 대용량 인공 신경망 중에서 상기 기 설정된 단위 네트워크 조각과 매칭되지 않는 부분을 선택하는 단계와, 상기 기 설정된 단위 네트워크 조각의 제1 복잡도와 상기 매칭되지 않는 부분의 제2 복잡도를 비교하는 단계와, 상기 제1 복잡도와 상기 제2 복잡도 간의 차이에 기초하여 상기 기 설정된 단위 네트워크 조각과 상기 매칭되지 않는 부분을 매칭하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 제1 복잡도와 상기 제2 복잡도 간의 차이에 기초하여 상기 기 설정된 단위 네트워크 조각과 상기 매칭되지 않는 부분을 매칭하는 단계는 상기 제1 복잡도와 상기 제2 복잡도 간의 차이가 일정 값 보다 크면, 상기 매칭되지 않는 부분의 범위를 확장시키는 단계를 포함할 수 있다.
본 발명의 기술적 사상에 의한 다른 양태에 따른 네트워크 압축 장치는 적어도 하나의 프로세서; 및 상기 프로세서와 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 상기 프로세서가 실행 시에, 기 학습된 대용량 인공 신경망(artificial neural network: ANN)을 획득하고, 상기 획득된 대용량 인공 신경망의 복잡도를 기초로, 상기 대용량 인공 신경망을 기 설정된 단위 네트워크 조각과 매칭하고, 매칭된 복수의 단위 네트워크 조각들을 포함하는, 압축된 네트워크를 생성하는 인스트럭션들을 저장할 수 있다.
예시적인 실시예에 따르면, 상기 메모리는, 상기 프로세서가 실행 시에, 상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포가 일치되도록 상기 기 설정된 단위 네트워크 조각을 최적화하도록 하는 인스트럭션들을 저장할 수 있다.
예시적인 실시예에 따르면, 상기 메모리는, 상기 프로세서가 실행 시에, 상기 최적화된 단위 네트워크 조각들을 포함하는, 상기 압축된 네트워크를 생성하도록 하는 인스트럭션들을 저장할 수 있다.
예시적인 실시예에 따르면, 상기 메모리는, 상기 프로세서가 실행 시에, 상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망 간의 최대 평균 차이(maximum mean discrepancy: MMD)를 최적화하도록 하는 인스트럭션들을 저장할 수 있다.
예시적인 실시예에 따르면, 상기 메모리는, 상기 프로세서가 실행 시에, 상기 기 학습된 대용량 인공 신경망의 데이터 분포가 P, 상기 P를 통해 생성되는 데이터를 xi, 상기 기 설정된 단위 네트워크 조각의 데이터 분포가 Q 및 상기 Q를 통해 생성되는 데이터를 yi라 하면, 상기 P와 Q의 차이를 나타내는 MMD는 아래의 수학식을 이용하여 상기 최대 평균 차이를 최적화하도록 하는 인스트럭션들을 저장할 수 있다.
Figure 112018054373263-pat00002
예시적인 실시예에 따르면, 상기 복잡도는 인공 신경망의 표현력을 수치화한 값을 나타낼 수 있다.
예시적인 실시예에 따르면, 상기 메모리는, 상기 프로세서가 실행 시에, 상기 기 설정된 단위 네트워크 조각을 생성하고, 상기 대용량 인공 신경망 중에서 상기 기 설정된 단위 네트워크 조각과 매칭되지 않는 부분을 선택하고, 상기 기 설정된 단위 네트워크 조각의 제1 복잡도와 상기 매칭되지 않는 부분의 제2 복잡도를 비교하고, 상기 제1 복잡도와 상기 제2 복잡도 간의 차이에 기초하여 상기 기 설정된 단위 네트워크 조각과 상기 매칭되지 않는 부분을 매칭하도록 하는 인스트럭션들을 저장할 수 있다.
예시적인 실시예에 따르면, 상기 메모리는, 상기 프로세서가 실행 시에, 상기 제1 복잡도와 상기 제2 복잡도 간의 차이가 일정 값 보다 크면, 상기 매칭되지 않는 부분의 범위를 확장시키도록 하는 인스트럭션들을 저장할 수 있다.
본 발명의 실시 예에 따르면 대용량 인공 신경망보다 작은 용량을 차지하면서도 유사한 성능을 갖는 네트워크를 생성할 수 있는 효과가 있다.
또한, 본 발명의 실시 예에 따르면, 대용량 인공 신경망을 복잡도에 따라 동일한 크기 또는 서로 다른 크기를 갖는 단위 네트워크 조각에 매칭 시킴으로써, 대용량 인공 신경망보다 작은 용량을 차지하면서도 유사한 성능을 갖는 네트워크를 생성할 수 있는 효과가 있다.
본 명세서에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시 예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.
도 1 및 도 2는 본 명세서에서 제안하는 대용량 인공 신경망을 압축하기 위한 방법의 일 예를 나타내는 도면이다.
도 3 및 도 4는 본 명세서에서 제안하는 대용량 인공 신경망을 압축하기 위해서 대용량 네트워크를 단위 네트워크 조각에 매칭하기 위한 방법의 일 예를 나타내는 도면이다.
도 5는 본 명세서에서 제안하는 압축된 네트워크의 일 예를 나타내는 도면이다.
도 6은 본 명세서에서 제안하는 장치의 내부 블록도의 일 예를 나타내는 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
인공 신경망에서 주어진 대용량 인공 신경망(이하, 교사 네트워크)의 행동을 모방한 작은 용량의 인공 신경망(이하, 학생 네트워크)를 구축하는 문제는 FitNet 아키텍처에서부터 시작된 많은 알고리즘에 의해 해결되고 있다.
FitNet 아키텍처는 먼저 학생 네트워크의 일부를 교사 네트워크의 다른 부분과 페어링하여 진행한다. 이후, 학생 네트워크의 부분 출력은 차원과 일치하는 적절한 추가 레이어를 추가 한 뒤, 교사의 부분 출력과 일치하도록 회귀된다.
이러한 절차는 숨겨진 레이어가 최종 출력에만 간접적으로 관련된 정보를 받기 때문에 힌트 기반 교육이라 한다.
이러한, 힌트 기반 교육 절차는 매개 변수가 적은 교사 네트워크보다 성능이 현저히 향상되지만 아래와 같은 문제점이 존재한다.
- 힌트 기반 교육 절차에서 힌트는 샘플 별로 계산된다. 이때, 힌트들의 점진적(Point-wise) 회귀는 샘플 당 오류를 줄일 수는 있지만, 숨겨진 계층의 토폴로지를 캡처하는 것은 실패할 수 있다.
- 학생 네트워크와 교사 네트워크가 일치하는 부분, 즉 매칭되는 부분이 수동으로 결정되는 것은 가능한 모둔 부분 집합을 검색하는 시행착오가 발생할 수 있다. 따라서, 이러한 수동 접근 방식의 성공 여부는 매칭에 사용되는 부분을 선택하는데 사용되는 경험적 방법에 따라 달라진다는 문제점이 존재한다.
따라서, 본 발명은 이러한 문제점을 해결하기 위해서 점진적 수준(Point-wise level)이 아닌 다양한 수준(mainifold level)에서 학생 네트워크의 하위 네트워크를 교사와 매칭시키는 방법을 제안한다.
이러한 접근법은 샘플 매니 폴드(sample manifold)의 더 스무스(smooth)한 이점을 가지고 있으므로 일반화와 함께 제공될 수 있다.
또한, 철저한 검색에 너무 많은 시간을 소비하지 않고 교사 네트워크와 학생 네트워크간에 매칭되는 부분을 자동으로 결정할 수 있는 알고리즘 절차를 제공하는 방법을 제안한다.
이러한 알고리즘은 점진적 방법으로 인한 손실 최적화의 함정을 피하면서 자동으로 학생 네트워크와 교사 네트워크간에 매칭되는 부분을 식별할 수 있다.
도 1 및 도 2는 본 명세서에서 제안하는 대용량 인공 신경망을 압축하기 위한 방법의 일 예를 나타내는 도면이다.
도 1 및 도 2를 참조하면, 장치는 입력된 대용량 인공 신경망을 유사한 성능을 갖는 작은 크기의 인공 신경망으로 점진적인 성장 접근법을 이용하여 압축할 수 있다.
즉, 기존 구조에 기 설정된 하위 네트워크를 점차적으로 추가함으로써 인공 신경망을 압축할 수 있다.
이때, 장치에 입력되는 대용량 인공 신경망은 교사 네트워크이고, 교사 네트워크가 압축되어 출력되는 네트워크는 학생 네트워크라 한다.
구체적으로, 장치는 대용량의 인공 신경망(artificial neural network: ANN)인 교사 네트워크를 획득할 수 있다(S1010). 이때, 교사 네트워크는 사전에 학습이 완료되어 완전히 훈련되고 고정된 인공 신경망을 의미할 수 있으며, 사용자로부터 입력되거나 인접한 장치 또는 무선 통신망으로부터 획득될 수 있다.
장치는 획득한 교사 네트워크를 학생 네트워크를 생성하기 위해 기 설정된 단위 네트워크 조각들에 매칭한다(S1020).
장치는 교사 네트워크와 기 설정된 단위 네트워크 조각 간의 매칭을 교사 네트워크의 말단부터 수행할 수 있다.
기 설정된 복수의 단위 네트워크 조각들의 크기는 동일하거나 서로 다를 수 있으며, 기 설정된 복수의 단위 네트워크 조각들의 크기에 따라 생성되는 학생 네트워크의 크기가 결정될 수 있다.
즉, 기 설정된 복수의 단위 네트워크 조각들의 크기에 따라 교사 네트워크의 압축률이 결정될 수 있다.
예를 들면, 기 설정된 복수의 단위 네트워크 조각들의 크기가 작을수록 생성된 학생 네트워크의 크기가 작아져서 교사 네트워크의 압축률이 높아질 수 있다.
기 설정된 복수의 네트워크 조각들 각각이 매칭되는 교사 네트워크의 부분을 결정하기 위해서 인공 신경망의 복잡도(complexity)가 이용될 수 있다.
예를 들면, 장치는 인공 신경망의 복잡도를 기초로, 교사 네트워크의 일부분에 매칭되는 네트워크 조각을 결정할 수 있다.
즉, 도 2에 도시된 바와 같이, 기 설정된 복수의 네트워크 조각들 각각은 교사 네트워크의 전체에서 복잡도가 일치하는 부분과 매칭될 수 있다. 일 실시예로, 장치는 교사 네트워크의 복잡도를 기초로, 기 설정된 복수의 네트워크 조각들 중 교사 네트워크의 전체에서 복잡도가 일치하는 부분과 매칭되는 네트워크 조각을 결정할 수 있다.
도 2에서 Q1 및 Q2는 각각 기 설정된 복수의 네트워크 조각에서 유도되는 분포를 나타내고, P1 및 P2는 Q1 및 Q2 각각에 매칭되는 교사 네트워크의 부분의 분포를 나타낸다.
복잡도는 인공 신경망의 표현력을 수치화한 값으로써, 표현력이 높은 신경망은 높은 복잡도를 가질 수 있다. 따라서, 여러 복잡한 관계를 계산할 수 있는 신경망은 높은 복잡도를 가질 수 있다.
본 발명에서, 매칭에 이용되는 복잡도는 라데마허 복잡도(Rademacher Complexity: RC)가 이용될 수 있다.
라데마허 복잡도(Rademacher Complexity: RC)
본 발명에서 매칭에 이용되는 복잡성의 척도는 실증적인 라데마허 평균(empirical Rademacher average)인 표본 기반 측정이다.
어떤 분포에서 N개의 독립적인(i.i.d) 표본과 함수의 집합 F가 주어지면, 실증적인 라데마허 복잡도는 F의 함수가 데이터의 무작위 표시와 얼마나 잘 연관되어 있는지를 측정할 수 있다. 수학적으로 표현하면, 실증적인 라데마허 복잡도는 아래 수학식 1과 같다.
[수학식 1]
Figure 112018054373263-pat00003
수학식 1에서 라데마허(Rademacher) 변수 σi는 같은 확률로 {-1, + 1} 값을 취한다.
인구 라데마허 복잡도(Population Rademacher complexity)가 고려되는 경우, 수학식 1은 아래와 같이 수학식 2로 표현될 수 있다.
[수학식 2]
Figure 112018054373263-pat00004
재생산 속성(Reproducing Property)을 가진 힐버트 공간(Hilbert Space)인 RKHS(Reproducing Kernel Hilbert Space) H에서 동작하는 경우, 함수 클래스 F는 H의 1- ball로 제한될 수 있다. 즉,
Figure 112018054373263-pat00005
인 경우, 수학식 1은 분포 P가 임베드된(embedded) RKHS H에서 단위 집합 함수 집합의 라데마허 복잡도를 나타내기 위해서 아래와 같이 수학식 3으로 표현될 수 있다.
[수학식 3]
Figure 112018054373263-pat00006
통계 학습 이론에서 라데마허의 복잡성의 중요성은 분류 자의 실제 위험과 경험적 위험 간의 차이가 라데마허의 복잡성 측면에서 상한적일 수 있다.
장치는 기 설정된 복수의 단위 네트워크 조각과 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포가 일치되도록 기 설정된 단위 네트워크 조각을 최적화한다(S1030).
최적화는 최대 평균 차이(maximum mean discrepancy: MMD)라고 호칭되는 측도를 최적화하기 위한 방식이 사용될 수 있다. 이에 따라, 장치는 최대 평균 차이(MMD)를 이용하여 기 설정된 복수의 단위 네트워크 조각과 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포가 일치되도록, 매칭되는 단위 네트워크 조각들을 최적화할 수 있다.
즉, 장치는 기 설정된 단위 네트워크 조각과 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포 간에 최대 평균 차이의 값이 작아지도록 기 설정된 단위 네트워크의 파라미터들이 조정할 수 있다.
이때, MMD는 아래의 수학식 4에 의해서 계산될 수 있다.
[수학식 4]
Figure 112018054373263-pat00007
수학식 4에서 P는 기 학습된 대용량 인공 신경망의 데이터 분포이고, xi는 상기 P를 통해 생성되는 데이터이고, Q 는 상기 기 설정된 단위 네트워크 조각의 데이터 분포이고, yi는 상기 Q를 통해 생성되는 데이터이다.
수학식 4에서
Figure 112018054373263-pat00008
는 P와 Q의 차이를 나타낸다.
수학식 4의 MMD는 단위 네트워크 조각의 파라미터에 대한 함수가 될 수 있으며, 수학식 4에 의해서 최적화를 수행하면 교사 네트워크와 기 설정된 단위 네트워크 조각간의 분포가 유사해지도록 기 설정된 단위 네트워크 조각의 파라미터들이 갱신될 수 있다. 예를 들면, 장치는 상술한 수학식 4를 이용하여 최적화를 수행하여, 교사 네트워크와 기 설정된 단위 네트워크 조각간의 분포가 유사해지도록 기 설정된 단위 네트워크 조각의 파라미터들이 갱신할 수 있다.
이후, 장치는 학생 네트워크에 최적화된 단위 네트워크 조각을 연결하고, 다음 단위 네트워크 조각을 생성하여 교사 네트워크의 전체 영역이 처리될 때까지 단계 S1020 및 단계 S1030을 반복해서 수행할 수 있다.
단계 S1030의 최적화 과정은 단계 S1020의 매칭 과정에 포함되는 과정일 수 있고, 별도의 과정일 수도 있다.
장치는 최적화된 단위 네트워크 조각들을 이용하여 압축된 학생 네트워크를 생성할 수 있다(S1040). 이때, 장치는 최적화된 네트워크 조각들을 학생 네트워크에 연결하여 순차적으로 쌓음으로써 학생 네트워크를 생성할 수 있다.
아래 표 1은 단계 S1010 내지 단계 S1040에서 수행되는 알고리즘의 일 예를 나타내는 표이다.
[표 1]
Figure 112018054373263-pat00009
상술한, 네트워크를 압축하기 위한 장치는 이와 같은 방법을 이용하여 대용량 인공 신경망을 유사한 기능을 수행할 수 있는 저용량 인공 신경망으로 압축할 수 있어서, 압축된 저용량 인공 신경망을 저장 공간이 제한적인 환경에 탑재되도록 할 수 있다.
이하, 단위 네트워크 조각을 교사 네트워크에 매칭하는 방법에 대해 구체적으로 살펴본다.
도 3 및 도 4는 본 명세서에서 제안하는 대용량 인공 신경망을 압축하기 위해서 대용량 네트워크를 단위 네트워크 조각에 매칭하기 위한 방법의 일 예를 나타내는 도면이다.
도 3 및 도 4를 참조하면, 장치는 교사 네트워크를 학생 네트워크로 압축하기 위해서 교사 네트워크의 부분을 단위 네트워크 조각에 매칭할 수 있다.
구체적으로, 장치는 도 1의 단계 S1020에서 설명한 매칭 절차를 수행하기 위해서, 교사 네트워크의 부분에 매칭하기 위한 단위 네트워크 조각을 생산한다(S3010).
단위 네트워크 조각은 설계자에 의해서 기 설정될 수 있으며, 교사 네트워크에 매칭되는 각각의 단위 네트워크 조각들은 앞에서 살펴본 바와 같이 동일한 크기이거나 서로 다른 크기일 수 있다.
장치는 교사 네트워크에서 단위 네트워크 조각과 매칭되지 않는 부분을 선택한다(S3020).
장치는 도 4에 도시된 바와 같이 생산된 단위 네트워크 조각의 복잡도(제 1 복잡도)와 선택된 부분의 복잡도(제 2 복잡도)를 비교하고(S3030), 제1 복잡도와 제2 복잡도 간의 차이에 기초하여 생산된 단위 네트워크 조각을 선택된 부분에 매칭한다(S3040).
구체적으로, 장치는 제1 복잡도와 제2 복잡도 간의 차이가 충분히 작다면 생산된 단위 네트워크 조각을 선택된 부분에 매칭할 수 있다. 예를 들면, 제 1 복잡도와 제2 복잡도 간의 차이가 일정 값보다 작은 경우, 생산된 단위 네트워크 조각을 선택된 부분에 매칭할 수 있다.
장치는 제1 복잡도와 제2 복잡도 간의 차이가 일정 값보다 큰 경우, 장치는 매칭되는 않는 부분의 범위를 확장시키고, 확장된 부분과 생성된 단위 네트워크 조각의 복잡도를 다시 비교하여 매칭 여부를 결정할 수 있다.
즉, 장치는 생성된 단위 네트워크 조각과 교사 네트워크의 부분 간의 매칭이 발견될 때까지 선택된 교사 네트워크의 부분을 한층씩 늘려가며 반복적으로 매칭 여부를 판단할 수 있다.
예를 들면, 장치는 생성된 단위 네트워크 조각과 교사 네트워크를 구성하는 하나의 블록간에 매칭 여부를 판단하고, 매칭이 되지 않으면, 대상 블록을 하나씩 늘려가며 매칭 여부를 반복적으로 판단할 수 있다.
이후, 장치는 중복 매칭을 피하기 위해서 매칭된 교사 네트워크의 부분을 반환할 수 있다.
상술한 방법을 통해서 장치는 단위 네트워크 조각과 교사 네트워크의 부분을 매칭시킬 수 있다.
아래 표 2는 단계 S3010 내지 단계 S3040에서 수행되는 알고리즘의 일 예를 나타내는 표이다.
[표 2]
Figure 112018054373263-pat00010
표 2에서 unit student network는 단위 네트워크 조각을 의미한다.
도 5는 본 명세서에서 제안하는 압축된 네트워크의 일 예를 나타내는 도면이다.
도 5는 앞에서 살펴본 인공 신경망의 압축 방법에 의해 압축된 인공 신경망의 일 예를 도시한다.
도 5에서 인공 신경망 압축을 위해 사용된 데이터 세트는 MNIST(Modified National Institute of Standards and Technology database), Fashion-MNIST, CIFAR-10 (Canadian Institute For Advanced Research)이다. Fashion-MNIST는 MNIST 데이터 세트의 대체 버전이다.
MNIST와 Fashion-MNIST는 동일한 입력 크기가 28x28이지만 후자는 수기 대신에 패션 아이템 이미지로 구성될 수 있다. CIFAR-10은 32x32의 크기를 가지며 색상은 3 채널이다. 실험을 위해 사용된 데이터 세트에는 10 개의 클래스가 있다.
또한, 아래와 같은 설정이 적용될 수 있다.
- MNIST와 Fashion-MNIST는 모두 사전 처리 없이 사용될 수 있으며, 도 5의 (a)와 같은 교사 네트워크 구조를 공유한다.
- 트레이닝 동안 CIFAR-10은 네 면을 4 픽셀씩 패딩 한 후 무작위로 자르고 정규화를 거친다. 정규화에 사용되는 평균 및 표준 편차는 각 RGB 채널에 대해 각각 (0.485, 0.465, 0.406) 및 (0.229, 0.224, 0.225)이다. CIFAR-10의 교사 네트워크는 그림 5의 (a)에 도시된 바와 같이 VGG 네트워크이다.
- 각 단위 네트워크 조각의 기본 크기는 128 (완전 연결된 레이어의 경우 뉴런 수, 길쌈 레이어의 경우 채널 수)이다. 컨볼루션 레이어(convolution layer)의 경우, 동일한 입력 크기를 유지하기 위해 1 픽셀 채우기와 3의 패치 크기를 사용한다. 학생 네트워크의 출력 크기가 교사 네트워크의 출력 크기와 80 % 이상 차이가 나면 max-pooling 레이어를 추가하여 크기를 줄인다. 모든 경우에 숫자 레이어는 3으로 고정된다.
- ReLU 활성화 기능은 모든 네트워크에 사용된다. ReLU는 1-Lipschitz이므로 복잡한 용어를 쉽게 계산할 수 있다.
- 차원 불일치 문제를 해결하기 위해 학생 네트워크의 끝에 추가 레이어를 추가할 수 있다. 완전히 연결된 레이어의 경우 완전히 연결된 다른 레이어를 추가한다. 컨볼루션 레이어의 경우 출력 크기와 일치하는 컨볼루션 레이어를 추가하고 필요한 경우 출력 기능 맵의 수를 조정할 수 있다. 이러한 여분의 레이어는 트레이닝 후에 폐기된다.
- 본 발명의 실시 예에서 매치 된 부분마다, 50개 에폰(eprch)의 MMD 최소화를 수행한다. 본 발명의 실시 예에서 일반적인 MMD 대신에 MMD와 MSE를 복합적으로 사용하면 더 나은 결과를 획득할 수 있다. 본 발명의 실시 예에서 목표하는 바는 λ = 0.9에 대한 λMMD+(1- λ)MSE이다. Minibatch size는 128이고, 학습 속도는 10-3이다. 모든 최적화는 Adam 최적화 프로그램을 사용하여 수행된다.
- 점진적 MMD 최적화 이후, 본 발명의 일 실시 예는 트레이닝 오류가 커버될때까지 10-5의 학습률로 전체 학생 네트워크를 마지막까지 조율한다.
- 모든 가중치는 'Glorot 초기화' 방법으로 초기화된다.
베이스 라인 모델로서 MSE를 사용하여 일치하는 부분을 트레이닝시키는 모델을 사용한다. 본 발명의 일 실시 예에 따른 인공 신경망의 압축 방법은 교사 네트워크와 학생 네트워크를 구성하기 위한 단위 네트워크 조각이 일치하는 부분이 도 3 및 도 4에서 설명한 방법(또는 표 2의 알고리즘 2)에 따라 자동으로 선택되며, 학생 네트워크의 구조도 학습될 수 있다.
또한, 본 발명의 일 실시 예에 따른 인공 신경망의 압축 방법은 시간 소모적인 시행 착오 과정을 거치지 않고 최적의 구조를 선택할 수 있다.
이와 같은 설정을 통해 MNIST 데이터 세트에 본 발명을 적용하면 아래 표 3과 같은 결과를 획득할 수 있다.
[표 3]
Figure 112018054373263-pat00011
표 3을 참조하면, 학생 네트워크는 교사 네트워크보다 파라미터들을 82.7% 적게 사용하지만 정확도는 교사 네트워크에 매우 근접하다는 것을 확인할 수 있다.
MNIST는 쉽게 설정이 가능하기 때문에 미세 조정을 하기 전에 학생 네트워크의 정확도는 95.5%이다. 하지만, MSE와 비교하면 MSE은 결과적으로 97.23%의 정확도를 갖지만, 시작 포인트는 MMD보다 낮은 것을 확인할 수 있다.
아래 표 4는 Fashion-MNIST 데이터 세트를 이용하는 경우의 결과의 일 예를 나타낸다.
[표 4]
Figure 112018054373263-pat00012
표 4에 나타난 것과 같이 MNIST와 Fashion-MNIST는 동일한 교사 네트워크의 구조를 사용하기 때문에 결과적으로 압축된 학생 네트워크는 MNIST와 동일하다.
표 4의 경우, 79.14%의 낮은 시작 포인트부터 시작하지만, 교사 네트워크를 2% 범위 내로 모방한다는 것을 확인할 수 있다. MSE의 경우, 비슷한 패턴을 따르지만 더 낮은 정확도 포인트에서 시작하고 끝난다.
CIFAR-10은 자연스러운 이미지로 구성되어 있기 때문에 MNIST 유형의 데이터 세트보다 더 압축하기 어렵다. VGG-19 교사 네트워크는 어려움으로 인해 레이어 수를 점차 늘려 이전 단계에서 이전하여 트레이닝을 받을 수 있으며, 초기 단계에서는 사전 훈련 된 다른 네트워크에서 전송된 가중치를 사용할 수 있다.
표 5는 CIFAR-10 데이터 세트를 이용한 경우의 결과의 일 예를 나타낸다.
[표 5]
Figure 112018054373263-pat00013
표 5를 참조하면, 교사 네트워크를 트레이닝 시키는데 더 어려움이 있음에도 불구하고 학생 네트워크는 교사 네트워크게 비해 88.6% 적은 파라미터만을 이용하지만 정확도는 89.48%라는 것을 확인할 수 있다.
또한, 최종적으로, 압축률은 91.3%에 도달할 수 있으며, 미세 조정(Fine Tuning)을 거치면 정확도는 91.76%에 도달할 수 있다는 것을 확인할 수 있다.
표 5를 참조하면, MSE는 MMD와 유사한 성능을 나타내는 것을 확인할 수 있다.
도 5의 (a) 및 (b)는 트레이닝된 네트워크의 구조를 나타낸다. 도 5의 (a) 및 (b)에서 교사 네트워크와 학생 네트워크간의 검은색 화살표는 각 MMD 단계에서 일치하는 부분을 나타낸다.
도 6은 본 명세서에서 제안하는 장치의 내부 블록도의 일 예를 나타내는 도면이다.
도 6에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 네트워크를 압축하기 위한 장치(100)는 입력부(110), 메모리(120) 및 프로세서(130)를 포함한다.
여기서 장치(100)는 네트워크를 압축하기 위한 다양한 장치일 수 있다. 예를 들면, 장치(100)는 압축 장치일 수 있고, 컴퓨터, 서버, 단말기 등과 같은 범용성을 갖는 장치일 수 있다.
입력부(110), 메모리(120) 및 제어부(130)는 본 명세서에서 제안하는 방법을 수행하기 위해 기능적으로 연결될 수 있다.
입력부(110)는 외부로부터 데이터 또는 정보를 획득하면, 획득된 정보를 제어부(130) 또는 메모리(120)로 전달할 수 있다. 예를 들면, 입력부(110)는 사용자. 외부 장치 또는 외부 네트워크로부터 교사 네트워크를 획득하면, 획득된 교사 네트워크를 압축하기 위해서 이를 프로세서(130)로 전달할 수 있다.
입력부(110)는 데이터 또는 정보를 획득하기 위한 다양한 구성을 포함할 수 있고, 통신을 위한 구성을 포함할 수도 있다. 그리고 입력부(110)는 네트워크에 연결되어, 데이터를 주고 받을 수도 있다.
제어부(130)는 본 명세서에서 제안된 기능, 과정 및/또는 방법을 구현할한수 있다.
예를 들면, 제어부(130)는 입력부(110)로부터 전달된 교사 네트워크를 기 설정된 단위 네트워크 조각과 매칭하고, 기 설정된 단위 네트워크 조각과 교사 네트워크의 말단에서 생성되는 데이터의 분포가 일치되도록 상기 기 설정된 복수의 단위 네트워크 조각을 최적화하며, 상기 기 설정된 단위 네트워크 조각을 이용하여 압축된 학생 네트워크를 생성할 수 있다.
제어부(130)는 하나의 프로세서로 구성될 수도 있고, 복수의 프로세서로 구성될 수도 있다.
제어부(130)는 컨트롤러(controller), 제어 유닛, 컴퓨터 등으로 표현될 수도 있다.
메모리(120)는 제어부(130)와 연결되어 제어부(130)에 의해 처리된 데이터 및/또는 정보들을 저장할 수 있다. 예를 들면, 메모리(120)는 프로세서에 의해 압축된 학생 네트워크를 전달받아 저장할 수 있다.
제어부(130)는 ASIC(Application-Specific Integrated Circuit), 다른 칩셋, 논리 회로 및/또는 데이터 처리 장치를 포함할 수 있다. 메모리는 ROM(Read-Only Memory), RAM(Random Access Memory), 플래쉬 메모리, 메모리 카드, 저장 매체 및/또는 다른 저장 장치를 포함할 수 있다.
메모리(120)는 제어부(130) 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 제어부(130)와 연결될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
나아가, 설명의 편의를 위하여 각 도면을 나누어 설명하였으나, 각 도면에 서술되어 있는 실시 예들을 병합하여 새로운 실시 예를 구현하도록 설계하는 것도 가능하다.
또한, 전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등을 포함한다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
100: 장치 110: 입력부
120: 메모리 130: 프로세서

Claims (16)

  1. 컴퓨터로 구현되는 네트워크 압축 장치에 의해 수행되는 네트워크 압축 방법에 있어서,
    기 학습된 대용량 인공 신경망(artificial neural network: ANN)을 획득하는 단계;
    상기 획득된 대용량 인공 신경망의 복잡도를 기초로, 상기 대용량 인공 신경망을 기 설정된 단위 네트워크 조각과 매칭하는 단계; 및
    매칭된 복수의 단위 네트워크 조각들을 포함하는, 압축된 네트워크를 생성하는 단계를 포함하고,
    상기 매칭하는 단계는,
    상기 대용량 인공 신경망을 구성하는 서로 다른 부분들 각각에 대해, 기 설정된 복수의 단위 네트워크 조각들 중 어느 하나의 단위 네트워크 조각을 매칭하는 단계인
    네트워크 압축 방법.
  2. 제1항에 있어서,
    상기 매칭하는 단계는
    상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포가 일치되도록 상기 기 설정된 단위 네트워크 조각을 최적화하는 단계를 포함하는
    네트워크 압축 방법.
  3. 제2항에 있어서,
    상기 압축된 네트워크를 생성하는 단계는
    상기 최적화된 단위 네트워크 조각들을 포함하는, 상기 압축된 네트워크를 생성하는 단계를 포함하는
    네트워크 압축 방법.
  4. 제2항에 있어서,
    상기 최적화하는 단계는
    상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망 간의 최대 평균 차이(maximum mean discrepancy: MMD)를 최적화하는 단계를 포함하는
    네트워크 압축 방법.
  5. 제4항에 있어서,
    상기 최대 평균 차이(MMD)를 최적화하는 단계는
    상기 기 학습된 대용량 인공 신경망의 데이터 분포가 P, 상기 P를 통해 생성되는 데이터를 xi, 상기 기 설정된 단위 네트워크 조각의 데이터 분포가 Q 및 상기 Q를 통해 생성되는 데이터를 yi라 하면, 상기 P와 Q의 차이를 나타내는 MMD는 아래의 수학식을 이용하는 단계를 포함하는
    Figure 112020054616211-pat00014

    네트워크 압축 방법.
  6. 제1항에 있어서,
    상기 복잡도는 인공 신경망의 표현력을 수치화한 값을 나타내는
    네트워크 압축 방법.
  7. 제1항에 있어서,
    상기 매칭하는 단계는
    상기 기 설정된 단위 네트워크 조각을 생성하는 단계와,
    상기 대용량 인공 신경망 중에서 상기 기 설정된 단위 네트워크 조각과 매칭되지 않는 부분을 선택하는 단계와,
    상기 기 설정된 단위 네트워크 조각의 제1 복잡도와 상기 매칭되지 않는 부분의 제2 복잡도를 비교하는 단계와,
    상기 제1 복잡도와 상기 제2 복잡도 간의 차이에 기초하여 상기 기 설정된 단위 네트워크 조각과 상기 매칭되지 않는 부분을 매칭하는 단계를 포함하는
    네트워크 압축 방법.
  8. 제7항에 있어서,
    상기 제1 복잡도와 상기 제2 복잡도 간의 차이에 기초하여 상기 기 설정된 단위 네트워크 조각과 상기 매칭되지 않는 부분을 매칭하는 단계는
    상기 제1 복잡도와 상기 제2 복잡도 간의 차이가 일정 값 보다 크면, 상기 매칭되지 않는 부분의 범위를 확장시키는 단계를 포함하는
    네트워크 압축 방법.
  9. 적어도 하나의 프로세서; 및
    상기 프로세서와 전기적으로 연결된 메모리를 포함하고,
    상기 메모리는, 상기 프로세서가 실행 시에,
    기 학습된 대용량 인공 신경망(artificial neural network: ANN)을 획득하고,
    상기 획득된 대용량 인공 신경망의 복잡도를 기초로, 상기 대용량 인공 신경망을 구성하는 서로 다른 부분들 각각에 대해, 기 설정된 복수의 단위 네트워크 조각들 중 어느 하나의 단위 네트워크 조각을 매칭하고,
    매칭된 복수의 단위 네트워크 조각들을 포함하는, 압축된 네트워크를 생성하도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
  10. 제9항에 있어서,
    상기 메모리는, 상기 프로세서가 실행 시에,
    상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망의 말단에서 생성되는 데이터의 분포가 일치되도록 상기 기 설정된 단위 네트워크 조각을 최적화하도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
  11. 제10항에 있어서,
    상기 메모리는, 상기 프로세서가 실행 시에,
    상기 최적화된 단위 네트워크 조각들을 포함하는, 상기 압축된 네트워크를 생성하도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
  12. 제9항에 있어서,
    상기 메모리는, 상기 프로세서가 실행 시에,
    상기 기 설정된 단위 네트워크 조각과 상기 대용량 인공 신경망 간의 최대 평균 차이(maximum mean discrepancy: MMD)를 최적화하도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
  13. 제12항에 있어서,
    상기 메모리는, 상기 프로세서가 실행 시에,
    상기 기 학습된 대용량 인공 신경망의 데이터 분포가 P, 상기 P를 통해 생성되는 데이터를 xi, 상기 기 설정된 단위 네트워크 조각의 데이터 분포가 Q 및 상기 Q를 통해 생성되는 데이터를 yi라 하면, 상기 P와 Q의 차이를 나타내는 MMD는 아래의 수학식을 이용하여 상기 최대 평균 차이를 최적화하도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
    Figure 112020054616211-pat00015

  14. 제9항에 있어서,
    상기 복잡도는 인공 신경망의 표현력을 수치화한 값을 나타내는
    네트워크 압축 장치.
  15. 제9항에 있어서,
    상기 메모리는, 상기 프로세서가 실행 시에,
    상기 기 설정된 단위 네트워크 조각을 생성하고,
    상기 대용량 인공 신경망 중에서 상기 기 설정된 단위 네트워크 조각과 매칭되지 않는 부분을 선택하고,
    상기 기 설정된 단위 네트워크 조각의 제1 복잡도와 상기 매칭되지 않는 부분의 제2 복잡도를 비교하고,
    상기 제1 복잡도와 상기 제2 복잡도 간의 차이에 기초하여 상기 기 설정된 단위 네트워크 조각과 상기 매칭되지 않는 부분을 매칭하도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
  16. 제15항에 있어서,
    상기 메모리는, 상기 프로세서가 실행 시에,
    상기 제1 복잡도와 상기 제2 복잡도 간의 차이가 일정 값 보다 크면, 상기 매칭되지 않는 부분의 범위를 확장시키도록 하는 인스트럭션들을 저장하는
    네트워크 압축 장치.
KR1020180063698A 2018-06-01 2018-06-01 대용량 네트워크를 압축하기 위한 방법 및 장치 KR102199484B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180063698A KR102199484B1 (ko) 2018-06-01 2018-06-01 대용량 네트워크를 압축하기 위한 방법 및 장치
PCT/KR2018/014105 WO2019231064A1 (ko) 2018-06-01 2018-11-16 대용량 네트워크를 압축하기 위한 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180063698A KR102199484B1 (ko) 2018-06-01 2018-06-01 대용량 네트워크를 압축하기 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20190137470A KR20190137470A (ko) 2019-12-11
KR102199484B1 true KR102199484B1 (ko) 2021-01-06

Family

ID=68698225

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180063698A KR102199484B1 (ko) 2018-06-01 2018-06-01 대용량 네트워크를 압축하기 위한 방법 및 장치

Country Status (2)

Country Link
KR (1) KR102199484B1 (ko)
WO (1) WO2019231064A1 (ko)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10223635B2 (en) * 2015-01-22 2019-03-05 Qualcomm Incorporated Model compression and fine-tuning
US11423311B2 (en) * 2015-06-04 2022-08-23 Samsung Electronics Co., Ltd. Automatic tuning of artificial neural networks
KR102492318B1 (ko) * 2015-09-18 2023-01-26 삼성전자주식회사 모델 학습 방법 및 장치, 및 데이터 인식 방법
KR102608467B1 (ko) * 2016-07-28 2023-12-04 삼성전자주식회사 뉴럴 네트워크의 경량화 방법, 이를 이용한 인식 방법, 및 그 장치
US20180060724A1 (en) * 2016-08-25 2018-03-01 Microsoft Technology Licensing, Llc Network Morphism
KR102457463B1 (ko) * 2017-01-16 2022-10-21 한국전자통신연구원 희소 파라미터를 사용하는 압축 신경망 시스템 및 그것의 설계 방법
US20180268292A1 (en) * 2017-03-17 2018-09-20 Nec Laboratories America, Inc. Learning efficient object detection models with knowledge distillation

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"A Survey of Model Compression and Acceleration for Deep Neural Networks", Special Issue on IEEE Signal Processing Magazine, 23 October 2017
"인공신경망의 연결압축에 대한 연구", 한국산업정보학회논문지 제22권 제5호(pp. 17-24), 2017.10.

Also Published As

Publication number Publication date
KR20190137470A (ko) 2019-12-11
WO2019231064A1 (ko) 2019-12-05

Similar Documents

Publication Publication Date Title
JP7322044B2 (ja) レコメンダシステムのための高効率畳み込みネットワーク
US11741361B2 (en) Machine learning-based network model building method and apparatus
US11514290B2 (en) Convolutional neural network (CNN) processing method and apparatus
Dziugaite et al. Training generative neural networks via maximum mean discrepancy optimization
JP7376731B2 (ja) 画像認識モデル生成方法、装置、コンピュータ機器及び記憶媒体
US9400919B2 (en) Learning deep face representation
US11436497B2 (en) System and method for optimization of deep learning model
CN111881987A (zh) 基于深度学习的苹果病毒识别方法
CN106445939A (zh) 图像检索、获取图像信息及图像识别方法、装置及系统
CN111709516A (zh) 神经网络模型的压缩方法及压缩装置、存储介质、设备
CN112817563B (zh) 目标属性配置信息确定方法、计算机设备和存储介质
CN114565807A (zh) 训练目标图像检索模型的方法和装置
US11881052B2 (en) Face search method and apparatus
KR102199484B1 (ko) 대용량 네트워크를 압축하기 위한 방법 및 장치
US20230259761A1 (en) Transfer learning system and method for deep neural network
CN114741507B (zh) 基于Transformer的图卷积网络的引文网络分类模型建立及分类
CN110825903A (zh) 一种改进哈希融合机制的视觉问答方法
US20230196073A1 (en) Method for secure use of a first neural network on an input datum and method for learning parameters of a second neural network
CN115063847A (zh) 一种面部图像获取模型的训练方法及装置
US11526727B1 (en) Machine learned chart recommendation system
CN114239666A (zh) 分类模型训练的方法、设备、计算机可读介质
CN114118411A (zh) 图像识别网络的训练方法、图像识别方法及装置
Ayadi et al. A new data topology matching technique with multilevel interior growing self-organizing maps
KR101763259B1 (ko) 데이터를 구분하는 전자 장치 및 그 방법
WO2020087254A1 (zh) 卷积神经网络的优化方法及相关产品

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