1 |
1
뉴럴 네트워크에서 파라미터를 양자화하는 방법에 있어서, 뉴럴 네트워크의 레이어에서 처리되는 입력 액티베이션 값들 및 웨이트 값들 중 적어도 하나를 포함하는 파라미터에 대한 로그 양자화(log quantization)를 수행함으로써 제 1 양자화 값을 결정하는 단계;상기 제 1 양자화 값에 대한 역양자화(dequantization)에 의해 획득된 제 1 역양자화 값 및 상기 파라미터 간의 오차와 임계값을 비교하는 단계; 상기 비교 결과 상기 오차가 상기 임계값보다 큰 경우, 상기 오차에 대한 로그 양자화를 수행함으로써 제 2 양자화 값을 결정하는 단계; 및상기 파라미터를 상기 제 1 양자화 값 및 상기 제 2 양자화 값이 그룹핑된 값으로 양자화하는 단계를 포함하는 방법
|
2 |
2
제 1 항에 있어서, 상기 제 1 양자화 값을 결정하는 단계는, 상기 복수의 양자화 레벨들 중에서 상기 파라미터에 가장 근접하는 양자화 레벨에 대응되는 값에 대한 로그 양자화를 수행함으로써 상기 제 1 양자화 값을 결정하고, 상기 제 2 양자화 값을 결정하는 단계는, 상기 복수의 양자화 레벨들 중에서 상기 오차에 가장 근접하는 양자화 레벨에 대응되는 값에 대한 로그 양자화를 수행함으로써 상기 제 2 양자화 값을 결정하는 방법
|
3 |
3
제 1 항에 있어서, 상기 제 2 양자화 값은, 상기 제 1 양자화 값을 나타내는 비트 수와 동일한 비트 수로 표현되는 방법
|
4 |
4
제 1 항에 있어서,상기 임계값은, 상기 뉴럴 네트워크의 인식률 및 상기 파라미터의 양자화에 따른 데이터의 크기 간의 트레이드-오프(trade off) 관계에 기초하여 결정되는 방법
|
5 |
5
제 1 항에 있어서, 상기 양자화하는 단계는,상기 제 1 양자화 값 및 상기 제 2 양자화 값 각각에 태그 비트(tag bit)를 추가하는 단계를 더 포함하는 방법
|
6 |
6
제 5 항에 있어서, 상기 추가하는 단계는, 상기 제 1 양자화 값에 연속된 상기 제 2 양자화 값이 있음을 나타내는 제 1 태그 비트를 상기 제 1 양자화 값을 나타내는 비트들 중 첫 번째 비트의 앞 또는 마지막 비트의 뒤에 추가하고, 상기 제 2 양자화 값에 연속된 양자화 값이 없음을 나타내는 제 2 태그 비트를 상기 제 2 양자화 값을 나타내는 비트들 중 첫 번째 비트의 앞 또는 마지막 비트의 뒤에 추가하는 방법
|
7 |
7
제 1 항에 있어서, 상기 양자화하는 단계는,상기 제 1 양자화 값을 나타내는 비트들 중 첫 번째 비트의 앞 및 상기 제 2 양자화 값을 구성하는 비트들 중 마지막 비트의 뒤 중 어느 하나에, 상기 제 1 양자화 값 및 상기 제 2 양자화 값이 연속된 값임을 나타내는 코드 값을 추가하는 단계를 더 포함하는 방법
|
8 |
8
제 1 항에 있어서, 상기 그룹핑된 값을 역양자화하는 단계; 및 상기 그룹핑된 값을 역양자화한 값과 상기 입력 액티베이션 값들간의 컨볼루션(convolution) 연산을 수행하는 단계를 더 포함하는 방법
|
9 |
9
제 8 항에 있어서, 상기 그룹핑된 값을 역 양자화하는 단계는,상기 제 1 양자화 값을 역양자화한 값인 제 1 역양자화 값 및 상기 제 2 양자화 값을 역양자화한 값인 제 2 역양자화 값 각각을 산출하는 단계; 및상기 제 1 역양자화 값 및 상기 제 2 역양자화 값을 더하여 상기 그룹핑된 값을 역양자화 값을 획득하는 단계를 더 포함하는 방법
|
10 |
10
제 1항 내지 제 9항 중 어느 한 항의 방법을 실행하는 명령어들을 포함하는 하나 이상의 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
|
11 |
11
뉴럴 네트워크를 실시(implement)하는 장치에 있어서, 메모리; 및뉴럴 네트워크의 레이어에서 처리되는 입력 액티베이션 값들 및 웨이트 값들 중 적어도 하나를 포함하는 파라미터를 양자화하는 프로세서를 포함하고,상기 프로세서는, 파라미터에 대한 로그 양자화(log quantization)를 수행함으로써 제 1 양자화 값을 결정하고, 상기 제 1 양자화 값에 대한 역양자화(dequantization)에 의해 획득된 제 1 역양자화 값 및 상기 파라미터 간의 오차와 임계값을 비교하고, 상기 비교 결과 상기 오차가 상기 임계값보다 큰 경우, 상기 오차에 대한 로그 양자화를 수행함으로써 제 2 양자화 값을 결정하고, 상기 파라미터를 상기 제 1 양자화 값 및 상기 제 2 양자화 값이 그룹핑된 값으로 양자화하는 장치
|
12 |
12
제 11 항에 있어서, 상기 프로세서는, 상기 복수의 양자화 레벨들 중에서 상기 파라미터에 가장 근접하는 양자화 레벨에 대응되는 값에 대한 로그 양자화를 수행함으로써 상기 제 1 양자화 값을 결정하고, 상기 복수의 양자화 레벨들 중에서 상기 오차에 가장 근접하는 양자화 레벨에 대응되는 값에 대한 로그 양자화를 수행함으로써 상기 제 2 양자화 값을 결정하는 장치
|
13 |
13
제 11 항에 있어서, 상기 제 2 양자화 값은, 상기 제 1 양자화 값을 나타내는 비트 수와 동일한 비트 수로 표현되는 장치
|
14 |
14
제 11 항에 있어서, 상기 임계값은, 상기 뉴럴 네트워크의 인식률 및 상기 파라미터의 양자화에 따른 데이터의 크기 간의 트레이드-오프(trade off) 관계에 기초하여 결정되는 장치
|
15 |
15
제 11 항에 있어서, 상기 프로세서는,상기 제 1 양자화 값 및 상기 제 2 양자화 값 각각에 태그 비트(tag bit)를 추가하는 장치
|
16 |
16
제 15 항에 있어서, 상기 프로세서는,상기 제 1 양자화 값에 연속된 상기 제 2 양자화 값이 있음을 나타내는 제 1 태그 비트를 상기 제 1 양자화 값을 나타내는 비트들 중 첫 번째 비트의 앞 또는 마지막 비트의 뒤에 추가하고, 상기 제 2 양자화 값에 연속된 양자화 값이 없음을 나타내는 제 2 태그 비트를 상기 제 2 양자화 값을 나타내는 비트들 중 첫 번째 비트의 앞 또는 마지막 비트의 뒤에 추가하는 장치
|
17 |
17
제 11 항에 있어서,상기 프로세서는,상기 제 1 양자화 값을 나타내는 비트들 중 첫 번째 비트의 앞 및 상기 제 2 양자화 값을 구성하는 비트들 중 마지막 비트의 뒤 중 어느 하나에, 상기 제 1 양자화 값 및 상기 제 2 양자화 값이 연속된 값임을 나타내는 코드 값을 추가하는 장치
|
18 |
18
제 11 항에 있어서,상기 프로세서는, 상기 그룹핑된 값을 역양자화하고, 상기 그룹핑된 값을 역양자화한 값과 상기 입력 액티베이션 값들간의 컨볼루션(convolution) 연산을 수행하는 장치
|
19 |
19
제 18 항에 있어서,상기 프로세서는, 상기 제 1 양자화 값을 역양자화한 값인 제 1 역양자화 값 및 상기 제 2 양자화 값을 역양자화한 값인 제 2 역양자화 값 각각을 산출하고,상기 제 1 역양자화 값 및 상기 제 2 역양자화 값을 더하여 상기 그룹핑된 값을 역양자화 값을 획득하는 장치
|