KR20230010854A - 뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념 - Google Patents

뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념 Download PDF

Info

Publication number
KR20230010854A
KR20230010854A KR1020227039626A KR20227039626A KR20230010854A KR 20230010854 A KR20230010854 A KR 20230010854A KR 1020227039626 A KR1020227039626 A KR 1020227039626A KR 20227039626 A KR20227039626 A KR 20227039626A KR 20230010854 A KR20230010854 A KR 20230010854A
Authority
KR
South Korea
Prior art keywords
parameter
representation
quantization
batch normalization
bit
Prior art date
Application number
KR1020227039626A
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 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우
Publication of KR20230010854A publication Critical patent/KR20230010854A/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/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/0495Quantised networks; Sparse networks; Compressed networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • 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/0499Feedforward networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • Neurology (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

NN 표현을 생성하기 위한 장치는 양자화 파라미터로부터 유도할 수 있는 승수 및 비트 천이 수가 있을 수 있도록, 양자화 파라미터 및 양자화 파라미터에 대한 양자화 값을 결정함으로써, NN 파라미터를 양자화된 값으로 양자화하도록 구성된다. 추가적으로, NN 파라미터에 대한 양자화 값 및 양자화 파라미터의 결정은, NN 파라미터의 양자화된 값이 비트 천이 수에 따른 비트 수만큼 비트-천이되는, 승수에 따른 인자 및 양자화 값 사이의 곱에 대응하도록, 수행된다.

Description

뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념
본 발명에 따른 실시예들은 뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념을 이용하여 뉴럴 네트워크 파라미터들을 인코딩 또는 디코딩하기 위한 장치들 및 방법들에 관한 것이다. 추론 및/또는 저장 비트 레이트 최적화 관점에서 향상을 가져올 수 있다.
뉴럴 네트워크의 가장 기본적인 형태에서, 뉴럴 네트워크는 성분-별(element-wise) 비선형 함수가 수반되는 아핀 변환의 체인을 형성한다. 그것들은 도1에 도시된 바와 같이, 지향된 비순환적인 그래프로서 표현될 수 있다. 각각의 노드는 특정 값을 수반하고, 이것은 엣지의 각각의 가중치 값과 곱하여져서 전향의 다음 노드로 전파된다. 모든 입력 값들은 단지 총합된다.
도1은 피드 포워드 뉴럴 네트워크의 그래프 표현에 대한 예시를 도시한다. 특히, 이 2-층의 뉴럴 네트워크는 4차원 입력 벡터를 실직선(real line)으로 매핑하는 비선형 함수이다.
수학적으로, 도1의 뉴럴 네트워크는 다음의 방식으로 출력을 산출한다:
Figure pct00001
여기에서,
Figure pct00002
그리고,
Figure pct00003
는 i 번째 층의 아핀 변환이고,
Figure pct00004
는 i 번째 층의 비선형 함수이다.
·편향된 층들(Biased layers)
이른바 '편향된 층(biased layer)'의 경우,
Figure pct00005
는 편향
Figure pct00006
와의 합이 수반되는, i번째 층과 연관된 가중치 파라미터(엣지 가중치들)
Figure pct00007
와 i번째 층의 입력
Figure pct00008
과의 행렬 곱이다:
Figure pct00009
Figure pct00010
Figure pct00011
의 가중치 행렬이고,
Figure pct00012
Figure pct00013
차원의 입력 행렬이다. 편향
Figure pct00014
은 길이
Figure pct00015
의 전치 벡터이다. 연산자
Figure pct00016
는 행렬 곱을 표시한다. 편향
Figure pct00017
와의 합은 행렬의 열들에 대한 성분-별 연산이다. 더욱 정확하게는,
Figure pct00018
Figure pct00019
의 각각의 열에
Figure pct00020
가 가산되는 것을 의미한다.
"cuDNN: Efficient Primitives for Deep Learning" (Sharan Chetlur, et al.; arXiv: 1410.0759, 2014)에 기재된 바와 같은 행렬-행렬 곱으로서 그것들을 캐스팅함으로써, 이른바 합성곱 층들(convolutional layers)이 또한 이용될 수 있다.
이하, 주어진 입력으로부터 출력을 산출하는 절차를 추론(inference)이라고 할 것이다. 또한, 우리는 중간의 결과들을 은닉층들(hidden layers) 또는 은닉 활성화 값들(hidden activation values)로서 부를 것이며, 이것들은 예컨대, 제1 내적(dot product) + 비선형성의 계산과 같은, 선형 변환 + 성분-별 비선형성을 구성한다.
일반적으로, 뉴럴 네트워크는 수 백 만개의 파라미터를 포함하고, 따라서 그것들의 표현을 위해서는 수 백 개의 메가바이트(Mbyte)를 필요로 한다. 결과적으로, 그것들의 추론 절차는 대형의 행렬들 사이에 많은 내적 연산들의 계산들을 포함하기 때문에, 그것들이 실행되기 위해서는 많은 계산 자원들을 필요로 한다. 따라서, 이들 내적들의 수행의 복잡성을 줄이는 것은 매우 중요하다.
·배치-정규화 층들(Batch-norm layers)
뉴럴 네트워크 층들의 아핀 변환의 더욱 복잡한 이형(variant)은 다음과 같은 소위 바이어스- 및 배치-정규화 연산을 포함한다:
수학식 1:
Figure pct00021
여기에서,
Figure pct00022
,
Figure pct00023
,
Figure pct00024
, 및
Figure pct00025
는 배치 정규화 파라미터들을 나타낸다. 층 색인 i는 여기에서 포함되지 않았음을 주의한다.
Figure pct00026
Figure pct00027
차원의 가중치 행렬이고,
Figure pct00028
Figure pct00029
차원의 입력 행렬이다. 편향
Figure pct00030
및 배치 정규화 파라미터들
Figure pct00031
,
Figure pct00032
,
Figure pct00033
, 및
Figure pct00034
은 길이 n의 전치 벡터들이다. 연산자
Figure pct00035
는 행렬 곱을 표시한다. 벡터와의 행렬에 대한 모든 다른 연산들(합, 곱셈, 나눗셈)은 행렬의 열들에 대해서 성분-별 연산들임을 주의한다. 예를 들어,
Figure pct00036
Figure pct00037
의 각각의 열이
Figure pct00038
와 성분-별로 곱해진다는 것을 의미한다.
Figure pct00039
는 0에 의한 나눗셈을 회피하기 위해 요구되는 작은 스칼라 수(예컨대, 0.001와 같은)이다. 그러나, 그것은 또한 0 일 수도 있다.
Figure pct00040
의 모든 벡터 원소들이 0인 경우에, [수학식 1]은 배치-정규화 층을 나타낸다. 대조적으로,
Figure pct00041
Figure pct00042
의 모든 벡터 원소들과
Figure pct00043
이 0으로 설정되고,
Figure pct00044
Figure pct00045
의 모든 원소들이 1로 설정된다면, (편향만 있는) 배치 정규화가 없는 층이라고 불린다.
·파라미터들의 효율적인 표현
파라미터들
Figure pct00046
,
Figure pct00047
,
Figure pct00048
,
Figure pct00049
,
Figure pct00050
, 및
Figure pct00051
은 공통으로 층의 파라미터들을 나타낸다. 그것들은 일반적으로 비트스트림 내에서 시그널링될 필요가 있다. 예를 들어, 그것들은 32비트 부동 소수점 숫자들로서 표현될 수 있고 또는 그것들은 정수 표현으로 양자화될 수 있다.
Figure pct00052
는 일반적으로 비트스트림 내에서 시그널링되지 않는다는 점에 주의한다.
이러한 파라미터들을 인코딩하는 특히 효율적인 방법은 각각의 값이 소위 양자화 스텝 크기 값의 정수배로서 표현될 수 있는, 균일한 재구성 양자화기를 이용하는 것이다. 대응하는 부동 소수점 숫자는 정수를 양자화 스텝 크기에 곱함으로써 재구성될 수 있는데, 이것은 일반적으로 단일의 부동 소수점 숫자이다. 그러나, (즉, 입력을 위해 뉴럴 네트워크의 출력을 산출하는) 뉴럴 네트워크 추론의 효율적인 구현들은 가능할 때마다 정수 연산자를 이용한다. 그러므로, 파라미터들이 정수 표현으로 재구성되는 것을 요구하는 것은 바람직하지 않을 수 있다.
그러므로, 이러한 파라미터들에 대한 효율적인 인코딩 및/또는 디코딩을 지원하기 위해서, 뉴럴 네트워크 파라미터들의 표현에 대한 개념을 향상시키는 것이 요구될 수 있다. 뉴럴 네트워크 파라미터들이 인코딩되는 비트스트림을 줄여 시그널링 비용을 감소시키는 것이 요구될 수 있다. 덧붙여, 또는 택일적으로, 뉴럴 네트워크 추론을 향상시키기 위하여 계산 자원들의 복잡도를 감소시키는 것이 요구될 수 있다. 예컨대, 뉴럴 네트워크 추론에 대한 효율적인 구현을 달성하는 것이 요구될 수 있다.
이것은 본 출원의 독립항들의 주제(subject matter)에 의해 달성된다.
또한 본 발명의 실시예들이 본 출원의 종속항들의 주제에 의해 정의된다.
본 발명의 제1 양태에 따르면, 본 출원의 발명자들은 뉴럴 네트워크(NN) 표현들에서 마주한 한가지 문제가 뉴럴 네트워크들이 수백만의 파라미터들을 포함하고 있고 따라서 그것들의 표현을 위해서 수백 Mbyte를 필요로 한다는 사실로부터 비롯된다는 것을 발견했다. 결과적으로, 그것들의 추론 프로시저는 크기가 큰 행렬들간 수많은 내적(dot product) 연산들의 계산을 포함하기 때문에, 그것들이 실행되기 위해서는 더 큰 계산 리소스들을 필요로 한다. 본 발명의 제1 양태에 따르면, 이 어려움은 소수의 또는 심지어 전혀 부동 소수점 연산을 사용하지 않고 추론을 가능하게 하는 NN 파라미터의 양자화를 이용함으로써 극복된다. 본 발명자들은 승수 및 비트 천이 수가 유도되는데 기초가 되는 양자화 파라미터를 결정하는 것이 유리하다는 것을 발견했다. 이것은 32비트 부동 소수점 값을 대신하여 양자화 값 및 양자화 파라미터만을 시그널링하는 것이 비트 레이트 관점에서 효율적일 것이라는 아이디어에 기초한 것이다. NN 파라미터의 양자화된 값은 승수, 비트 천이 수, 및 양자화 값을 이용하여 계산될 수 있고, 이 때문에 부동 소수점 영역을 대신 하여 정수 영역에서의 계산들 예컨대, NN 파라미터들의 합 및/또는 벡터와 NN 파라미터의 곱셈을 수행하는 것이 가능하다. 그러므로, 제시된 NN 표현으로 추론의 효율적인 계산이 달성될 수 있다.
따라서, 본 발명의 제1 양태에 따르면, NN 표현 예컨대 데이터 스트림을 생성하기 위한 장치는 양자화 파라미터로부터 승수 및 비트 천이 수를 유도할 수 있도록 양자화 파라미터 및 양자화 파라미터에 대한 양자화 값을 결정함으로써, NN 파라미터를 양자화된 값으로 양자화하도록 구성된다. 생성된 NN 표현은 NN 파라미터를 예컨대, NN 파라미터의 양자화된 값을 NN 표현으로부터 예컨대, 데이터 스트림으로부터 유도하기 위한 장치에 의해 판독/디코딩될 수 있다. NN 파라미터를 유도하기 위한 장치는 NN 표현으로부터 양자화 파라미터 및 양자화 값을 유도하고, 양자화 파라미터로부터 승수 및 비트 천이 수를 유도한다. 승수는 양자화 파라미터로부터, 양자화 파라미터에 의해 유도된 피제수 및 정확도 파라미터에 의해 유도된 제수 사이의 나눗셈의 나머지에 기초하여 유도될 수 있고, 예컨대 정확도 파라미터는 디폴트 값으로 설정될 수 있고, 또는 정확도 파라미터에 대해 자연수 또는 2의 거듭제곱과 같은 몇몇 서로 다른 정수들이, 장치에 의해 전체 NN에 대하여 또는 각각의 층과 같은 NN의 섹션 각각에 대해 테스트될 수 있고, 양자화 에러 및 비트 레이트 관점에서 예컨대, 이들의 랑그랑쥬 덧셈의 관점에서 최고의 것을 정확도 파라미터로서 이 선택을 NN 표현 내에서 시그널링한다. 비트 천이 수는 양자화 파라미터로부터 상기 나눗셈의 몫의 라운딩에 기초하여 유도될 수 있다. NN 파라미터는, NN 파라미터를 또는 NN 파라미터의 양자화된 값을 유도하는 장치의 경우, NN 표현을 생성하는 장치의 경우, 비트 천이 수에 따른 비트 수만큼 비트-천이되는, 승수에 따른 인자 및 양자화 값 사이의 곱에 (예컨대 적어도, 천이의 경우 부호가 분리 처리된 양자화된 값의 절대값의 관점에서 또는 2의 보수 표현(complement representation) 및 2의 보수 연산(complement arithmetic)을 각각 이용하는 경우와 같은 절대값과 부호 양자의 관점에서) 대응한다. 전술한 바와 같이, NN 파라미터를 표현하기 위하여, 디지털 데이터는 양자화 파라미터 및 양자화 값을 포함하는 NN 표현을 정의할 수 있다.
NN 파라미터를 유도하기 위한 장치에 의해 유도되는 NN 파라미터는 NN 파라미터의 양자화된 값이라는 것을 주의해야 한다. 이 값은 NN 표현을 생성하는 장치에 의해 생성된다. 이것은 NN 파라미터를 유도하기 위한 장치는 원래의 NN 파라미터를 보지 못한다는 사실에 기인한 것이며, 이러한 이유로 NN 파라미터의 양자화된 값은 NN 파라미터를 유도하는 장치의 관점에서 볼 때 NN 파라미터로 간주된다.
일 실시예는 NN을 이용하여 추론을 수행하는 디바이스에 관한 것이며, 이 디바이스는 NN을 파라미터화하도록 구성된 NN 파라미터라이저를 포함한다. NN 파라미터라이저는 전술한 바와 같이 NN 표현으로부터 NN 파라미터를 유도하기 위한 장치를 포함한다. 추가적으로, 이 디바이스는 NN을 이용하여 NN 입력에 기초해 추론 출력을 계산하도록 구성된 계산 유닛을 포함한다. 전술한 바와 같이, NN 파라미터는 승수, 비트 천이 수, 및 양자화 값에 기초하여 유도될 수 있고, 이러한 이유로 부동 소수점 영역을 대신하여 정수 영역에서의 계산들 예컨대, NN 파라미터들의 합 및/또는 벡터와 NN 파라미터의 곱셈을 수행하는 것이 가능하다. 그러므로, 이 디바이스에 의해 추론의 효율적인 계산이 달성될 수 있다.
본 발명의 제2 양태에 따르면, 본 출원의 발명자들은 뉴럴 네트워크(NN)를 이용하여 추론을 수행할 때 마주하는 한 가지 문제가 추론을 위해 이용되는 가중치 행렬이 양자화 에러를 가질 수 있고 이러한 이유로 낮은 수준의 정확도만 얻어진다는 사실로부터 기인한다는 것을 발견했다. 본 발명의 제1 양태에 따르면, 이 어려움은 가중치 행렬
Figure pct00053
의 각각의 열과 성분-별로 곱해진 전치 벡터 s 예컨대, 스케일링 인자(scaling factor)를 이용함으로써 극복된다. 본 발명자들은 가중치 행렬의 스케일링을 이용함으로써 산술 코딩 방법들(arithmetic coding methods)이 더 높은 코딩 이득을 주고, 가중치 행렬의 스케일링이 뉴럴 네트워크 성능 결과들을 증가시키는 예컨대 더 높은 정확도를 달성하는 것을 발견했다. 이것은 양자화 에러를 줄이고, 양자화된 뉴럴 네트워크의 예측 성능을 증가시키기 위하여, 전치 벡터 s가 예컨대, 가중치 행렬에 대해 예컨대 양자화된 가중치 행렬에 대해 의존적으로, 효율적으로 적응될 수 있다는 아이디어에 기반한다. 또한, 본 발명자들은 표현 효율이 전치 벡터 s 및 가중치 행렬
Figure pct00054
의 조합으로서 가중치 파라미터를 팩토링(factoring)함으로써 증가될 수 있다는 것을 발견하였는데, 그것은 둘 모두를 독립적으로 양자화할 수 있도록 해주기 때문에, 예컨대 서로 다른 양자화 파라미터들이 전치 벡터 s 및 가중치 행렬
Figure pct00055
의 양자화를 위해 이용될 수 있기 때문이다. 이것은 성능 관점에서 유리할 뿐만 아니라 하드웨어 효율성 관점에서도 유리하다.
따라서, 본 발명의 제2 양태에 따르면, NN을 이용하여 추론을 수행하는 디바이스는 NN을 이용하여 NN 입력에 기초해 추론 출력을 계산하도록 구성된다. NN은 한 쌍의 NN 층들을 포함하고, 한 쌍의 NN 층들 중 제1 NN 층으로부터 제2 NN 층으로의 뉴론간 활성화 피드-포워드들을 포함한다. 이 디바이스는 제1 NN 층의 뉴럴 네트워크의 뉴론들의 활성화들로부터 행렬
Figure pct00056
를 형성하고,
Figure pct00057
을 계산함으로써, 제1 NN 층의 뉴럴 네트워크 뉴론들의 활성화들에 기초하여, 제2 NN 층들의 뉴럴 네트워크 뉴론들의 활성화들을 계산하도록 구성된다. 연산자
Figure pct00058
는 행렬 곱셈을 나타내고,
Figure pct00059
Figure pct00060
Figure pct00061
Figure pct00062
의 가중치 행렬이고, s는 길이
Figure pct00063
의 전치 벡터이고, 연산자
Figure pct00064
Figure pct00065
의 일 측에는 행렬과
Figure pct00066
의 타 측에는 전치 벡터간 컬럼-별(column wise) Hadamard 곱셈을 나타낸다.
본 발명의 제3 양태에 따르면, 본 발명의 발명자들은 배치-정규화 층들을 이용할 때 마주하는 한가지 문제가, 배치-정규화 연산자의 배치-정규화 파라미터들/요소들이 주로 부동 소수점 표현이라는 사실로부터 기인한다는 것을 발견했다. 그러나, 뉴럴 네트워크 추론의 효율적 구현들(즉, 입력에 대한 뉴럴 네트워크의 출력을 산출)은 가능할 때마다 정수 연산들을 이용한다. 이 어려움은 미리 정의된 상수 값을 배치-정규화 파라미터들/요소들 예컨대,
Figure pct00067
Figure pct00068
Figure pct00069
또는
Figure pct00070
에게 할당함으로써 극복된다. 본 발명자들은 배치-정규화 파라미터들/요소들이 미리 정의된 상수 값을 갖는다면 더욱 효율적으로 압축될 수 있다는 것을 발견했다. 이것은 모든 요소들/파라미터들이 미리 정의된 상수 값을 갖는지를 나타내어, 그래서 그것들이 미리 정의된 상수 값으로 설정될 수 있도록 하는 단일 플래그의 이용을 가능하게 한다는 아이디어에 기반한다. 추가적으로, 배치-정규화 연산자의 결과는 미리 정의된 상수 값들을 이용하더라도 변화되지 않는다는 것이 밝혀졌다.
따라서, 본 발명의 제3 양태에 따라서, 제1 실시예는 NN의 배치 정규화 연산자의 NN 파라미터를 NN 표현 안으로 코딩하는 장치에 관한 것이다. 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00071
여기에서,
Figure pct00072
,
Figure pct00073
,
Figure pct00074
, 및
Figure pct00075
는 배치 정규화 파라미터들 예컨대, 각각의 출력 노드에 대한 일 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00076
는 가중치 행렬이고 예컨대, 이 행렬의 각각의 행은 하나의 출력 노드에 대한 것이고, 각각의 행의 각각의 컴포넌트는
Figure pct00077
의 하나의 행과 연관되고,
Figure pct00078
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00079
는 편향을 형성하는 전치 벡터 예컨대, 각각의 출력 노드에 대해 하나의 컴포넌트를 포함하는 전치 벡터이고,
Figure pct00080
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00081
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00082
는 행렬 곱을 나타낸다.
이 장치는
Figure pct00083
,
Figure pct00084
,
Figure pct00085
또는
Figure pct00086
,
Figure pct00087
, 및
Figure pct00088
를 수신하고, 다음 수식을 계산한다:
Figure pct00089
,
Figure pct00090
,
또한, 이 장치는 배치 정규화 연산자의 NN 파라미터들로서, 예컨대 각각의 출력 노드에 대해 하나의 컴포넌트를 포함하는 전치 벡터들이 같아지도록,
Figure pct00091
Figure pct00092
를 NN 표현 안에 코딩하도록 구성되어, 배치 정규화 연산자를 다음과 같이 정의할 수 있다:
Figure pct00093
여기에서,
Figure pct00094
,
Figure pct00095
,
Figure pct00096
:= 0,
Figure pct00097
는 미리 결정된 파라미터이다.
NN 표현으로부터 NN의 배치 정규화 연산자의 NN 파라미터들을 디코딩하기 위한 평행한 장치는 NN 표현으로부터
Figure pct00098
Figure pct00099
를 유도하고,
Figure pct00100
,
Figure pct00101
,
Figure pct00102
:= 0,
Figure pct00103
는 미리 결정된 파라미터임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하도록 구성된다. 이 장치는 일 시그널링 예컨대 플래그를 판독하도록 구성되고, 및
Figure pct00104
,
Figure pct00105
,
Figure pct00106
:= 0 임을 그로부터 추론 또는 유도하도록 구성된다. 배치-정규화 연산자는 제3 양태의 제1 실시예에 대해 전술한 바와 같이 정의된다.
따라서, 본 발명의 제3 양태에 따른 제2 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치에 관한 것이다. 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00107
여기에서,
Figure pct00108
,
Figure pct00109
,
Figure pct00110
, 및
Figure pct00111
는 배치 정규화 파라미터들 예컨대, 각각의 출력 노드에 대한 일 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00112
는 가중치 행렬이고 예컨대, 이 행렬의 각각의 행은 하나의 출력 노드에 대한 것이고, 각각의 행의 각각의 컴포넌트는
Figure pct00113
의 하나의 행과 연관되고,
Figure pct00114
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00115
는 편향을 형성하는 전치 벡터 예컨대, 각각의 출력 노드에 대해 하나의 컴포넌트를 포함하는 전치 벡터이고,
Figure pct00116
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00117
는 행렬 곱을 나타낸다.
이 장치는,
Figure pct00118
,
Figure pct00119
,
Figure pct00120
또는
Figure pct00121
,
Figure pct00122
, 및
Figure pct00123
를 수신하고, 다음 수식을 계산하도록 구성된다:
Figure pct00124
,
Figure pct00125
,
또한, 이 장치는 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00126
Figure pct00127
를 코딩하도록 구성되어, 배치 정규화 연산자를 다음과 같이 정의할 수 있다:
Figure pct00128
여기에서,
Figure pct00129
,
Figure pct00130
,
Figure pct00131
:= 0.
NN 표현으로부터 NN의 배치 정규화 연산자의 NN 파라미터들을 디코딩하기 위한 평행한 장치는 NN 표현으로부터
Figure pct00132
Figure pct00133
를 유도하고,
Figure pct00134
,
Figure pct00135
,
Figure pct00136
:= 0임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하도록 구성된다. 이 장치는 일 시그널링 예컨대 플래그를 판독하도록 구성되고, 및
Figure pct00137
,
Figure pct00138
,
Figure pct00139
:= 0 임을 그로부터 추론 또는 유도하도록 구성된다. 배치-정규화 연산자는 제3 양태의 제2 실시예에 대해 전술한 바와 같이 정의된다.
따라서, 본 발명의 제3 양태에 따른 제3 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치에 관한 것이다. 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00140
여기에서,
Figure pct00141
,
Figure pct00142
,
Figure pct00143
, 및
Figure pct00144
는 배치 정규화 파라미터들 예컨대, 각각의 출력 노드에 대한 일 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00145
는 가중치 행렬이고 예컨대, 이 행렬의 각각의 행은 하나의 출력 노드에 대한 것이고, 각각의 행의 각각의 컴포넌트는
Figure pct00146
의 하나의 행과 연관되고,
Figure pct00147
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00148
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00149
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00150
는 행렬 곱을 나타낸다.
이 장치는
Figure pct00151
,
Figure pct00152
또는
Figure pct00153
,
Figure pct00154
, 및
Figure pct00155
를 수신하고, 다음 수식을 계산하도록 구성된다:
Figure pct00156
Figure pct00157
또한, 이 장치는 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00158
Figure pct00159
를 코딩하도록 구성되어, 배치 정규화 연산자를 다음과 같이 정의하도록 한다:
Figure pct00160
여기에서,
Figure pct00161
,
Figure pct00162
Figure pct00163
는 미리 결정된 파라미터.
NN 표현으로부터 NN의 배치 정규화 연산자의 NN 파라미터들을 디코딩하기 위한 평행한 장치는 NN 표현으로부터
Figure pct00164
Figure pct00165
를 유도하고,
Figure pct00166
,
Figure pct00167
,
Figure pct00168
는 미리 결정된 파라미터임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하도록 구성된다. 이 장치는 일 시그널링 예컨대 플래그를 판독하도록 구성되고, 및
Figure pct00169
,
Figure pct00170
임을 그로부터 추론 또는 유도하도록 구성된다. 배치-정규화 연산자는 제3 양태의 제3 실시예에 대해 전술한 바와 같이 정의된다.
따라서, 본 발명의 제3 양태에 따른 제4 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치에 관한 것이다. 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00171
여기에서,
Figure pct00172
,
Figure pct00173
,
Figure pct00174
, 및
Figure pct00175
는 배치 정규화 파라미터들 예컨대, 각각의 출력 노드에 대한 일 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00176
는 가중치 행렬이고 예컨대, 이 행렬의 각각의 행은 하나의 출력 노드에 대한 것이고, 각각의 행의 각각의 컴포넌트는
Figure pct00177
의 하나의 행과 연관되고,
Figure pct00178
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00179
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00180
는 행렬 곱을 나타낸다.
이 장치는
Figure pct00181
,
Figure pct00182
또는
Figure pct00183
,
Figure pct00184
, 및
Figure pct00185
를 수신하고, 다음 수식을 계산하도록 구성된다:
Figure pct00186
Figure pct00187
또한, 이 장치는 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00188
Figure pct00189
를 코딩하도록 구성되어, 배치 정규화 연산자를 다음과 같이 정의하도록 한다:
Figure pct00190
여기에서,
Figure pct00191
,
Figure pct00192
.
NN 표현으로부터 NN의 배치 정규화 연산자의 NN 파라미터들을 디코딩하기 위한 평행한 장치는 NN 표현으로부터
Figure pct00193
Figure pct00194
를 유도하고,
Figure pct00195
,
Figure pct00196
임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하도록 구성된다. 이 장치는 일 시그널링 예컨대 플래그를 판독하도록 구성되고, 및
Figure pct00197
,
Figure pct00198
임을 그로부터 추론 또는 유도하도록 구성된다. 배치-정규화 연산자는 제3 양태의 제4 실시예에 대해 전술한 바와 같이 정의된다.
이하의 방법들은 전술한 원리들에 따라 동작한다:
일 실시예는 NN 표현을 생성하는 방법에 관한 것이고, 이 방법은 양자화 파라미터에 의해 유도되는 피제수 및 정확도 파라미터에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 승수를 양자화 파라미터로부터 유도 가능하도록 및 이 나눗셈의 몫의 라운딩에 기초하여 비트 천이 수를 양자화 파라미터로부터 유도 가능하도록, NN 파라미터에 대한 양자화 값 및 양자화 파라미터를 결정하여 NN 파라미터를 양자화된 값으로 양자화하는 단계를 포함한다. 양자화 파라미터는, NN 파라미터의 양자화된 값이 비트 천이 수에 따른 비트 수만큼 비트-천이되는, 승수에 따른 인자 및 양자화 값 사이의 곱에 대응하도록 결정된다.
일 실시예는 NN 표현으로부터 NN 파라미터를 유도하기 위한 방법에 관한 것이다. 이 방법은 NN 표현으로부터 양자화 값 및 양자화 파라미터를 유도하는 단계를 포함한다. 추가적으로, 이 방법은 양자화 파라미터에 의해 유도되는 피제수 및 정확도 파라미터에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 승수를 양자화 파라미터로부터 유도하는 단계 및 이 나눗셈의 몫의 라운딩에 기초하여 비트 천이 수를 양자화 파라미터로부터 유도하는 단계를 포함한다. 양자화 파라미터는, NN 파라미터의 양자화된 값이 비트 천이 수에 따른 비트 수만큼 비트-천이되는, 승수에 따른 인자 및 양자화 값 사이의 곱에 대응한다.
일 실시예는 NN을 이용하여 추론을 수행하는 방법에 관한 것이고, 이 방법은 NN 표현으로부터 NN 파라미터를 유도하기 위해 NN 파라미터를 유도하기 위한 전술한 방법을 이용하여 NN을 파라미터화하는 단계를 포함한다. 추가적으로, 추론을 수행하는 이 방법은 NN을 이용하여 NN 입력에 기초해 추론 출력을 계산하는 단계를 포함한다.
일 실시예는 NN을 이용하여 추론을 수행하는 방법에 관한 것이고, 이 방법은 NN을 이용하여 NN 입력의 기초해 추론 출력을 계산하는 단계를 포함한다. NN은 한 쌍의 NN 층들을 포함하고, 한 쌍의 NN 층들 중 제1 NN 층으로부터 제2 NN 층으로의 뉴론간 활성화 피드-포워드들을 포함한다. 이 방법은 제1 NN 층의 뉴럴 네트워크의 뉴론들의 활성화들로부터 행렬
Figure pct00199
를 형성하고,
Figure pct00200
을 계산함으로써, 제1 NN 층의 뉴럴 네트워크 뉴론들의 활성화들에 기초하여, 제2 NN 층들의 뉴럴 네트워크 뉴론들의 활성화들을 계산하는 단계를 포함한다. 여기에서,
Figure pct00201
는 행렬 곱셈을 나타내고,
Figure pct00202
Figure pct00203
Figure pct00204
Figure pct00205
의 가중치 행렬이고, s는 길이
Figure pct00206
의 전치 벡터이고, 연산자
Figure pct00207
Figure pct00208
의 일 측에는 행렬과
Figure pct00209
의 타 측에는 전치 벡터간 컬럼-별(column wise) Hadamard 곱셈을 나타낸다.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안에 코딩하는 방법에 관한 것이고, 배치 정규화 연산자는
Figure pct00210
로서 정의되고, 여기에서
Figure pct00211
,
Figure pct00212
,
Figure pct00213
, 및
Figure pct00214
는 배치 정규화 파라미터들이고,
Figure pct00215
는 가중치 행렬이고,
Figure pct00216
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00217
는 편향을 형성하는 전치 벡터이고,
Figure pct00218
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00219
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00220
는 행렬 곱을 나타낸다. 이 방법은
Figure pct00221
,
Figure pct00222
,
Figure pct00223
또는
Figure pct00224
,
Figure pct00225
, 및
Figure pct00226
를 수신하는 단계 및 다음 수식을 계산하는 단계를 포함한다:
Figure pct00227
Figure pct00228
추가적으로, 이 방법은 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00229
Figure pct00230
를 코딩하는 단계를 포함하여, 배치 정규화 연산자를 다음과 같이 정의하도록 한다:
Figure pct00231
여기에서,
Figure pct00232
,
Figure pct00233
,
Figure pct00234
:= 0,
Figure pct00235
는 미리 결정된 파라미터.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안에 코딩하는 방법에 관한 것이고, 배치 정규화 연산자는
Figure pct00236
로서 정의되고, 여기에서
Figure pct00237
,
Figure pct00238
,
Figure pct00239
, 및
Figure pct00240
는 배치 정규화 파라미터들이고,
Figure pct00241
는 가중치 행렬이고,
Figure pct00242
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00243
는 편향을 형성하는 전치 벡터이고,
Figure pct00244
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00245
는 행렬 곱을 나타낸다. 이 방법은
Figure pct00246
,
Figure pct00247
,
Figure pct00248
또는
Figure pct00249
,
Figure pct00250
, 및
Figure pct00251
를 수신하는 단계 및 다음 수식을 계산하는 단계를 포함한다:
Figure pct00252
Figure pct00253
추가적으로, 이 방법은 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00254
Figure pct00255
를 코딩하는 단계를 포함하여, 배치 정규화 연산자를 다음과 같이 정의하도록 한다:
Figure pct00256
여기에서,
Figure pct00257
,
Figure pct00258
,
Figure pct00259
:= 0.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안에 코딩하는 방법에 관한 것이고, 배치 정규화 연산자는
Figure pct00260
로서 정의되고, 여기에서
Figure pct00261
,
Figure pct00262
,
Figure pct00263
, 및
Figure pct00264
는 배치 정규화 파라미터들이고,
Figure pct00265
는 가중치 행렬이고,
Figure pct00266
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00267
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00268
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00269
는 행렬 곱을 나타낸다. 이 방법은
Figure pct00270
,
Figure pct00271
,
Figure pct00272
또는
Figure pct00273
,
Figure pct00274
, 및
Figure pct00275
를 수신하는 단계 및 다음 수식을 계산하는 단계를 포함한다:
Figure pct00276
Figure pct00277
추가적으로, 이 방법은 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00278
Figure pct00279
를 코딩하는 단계를 포함하여, 배치 정규화 연산자를 다음과 같이 정의하도록 한다:
Figure pct00280
여기에서,
Figure pct00281
,
Figure pct00282
,
Figure pct00283
는 미리 결정된 파라미터.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안에 코딩하는 방법에 관한 것이고, 배치 정규화 연산자는
Figure pct00284
로서 정의되고, 여기에서
Figure pct00285
,
Figure pct00286
,
Figure pct00287
, 및
Figure pct00288
는 배치 정규화 파라미터들이고,
Figure pct00289
는 가중치 행렬이고,
Figure pct00290
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00291
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00292
는 행렬 곱을 나타낸다. 이 방법은
Figure pct00293
,
Figure pct00294
또는
Figure pct00295
,
Figure pct00296
, 및
Figure pct00297
를 수신하는 단계 및 다음 수식을 계산하는 단계를 포함한다:
Figure pct00298
Figure pct00299
추가적으로, 이 방법은 NN 표현 안에 배치 정규화 연산자의 NN 파라미터로서
Figure pct00300
Figure pct00301
를 코딩하는 단계를 포함하여, 배치 정규화 연산자를 다음과 같이 정의하도록 한다:
Figure pct00302
여기에서,
Figure pct00303
,
Figure pct00304
.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 관한 것이며, 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00305
여기에서,
Figure pct00306
,
Figure pct00307
,
Figure pct00308
, 및
Figure pct00309
는 배치 정규화 파라미터들이고,
Figure pct00310
는 가중치 행렬이고,
Figure pct00311
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00312
는 편향을 형성하는 전치 벡터이고,
Figure pct00313
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00314
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00315
는 행렬 곱을 나타낸다. 이 방법은,
Figure pct00316
Figure pct00317
를 NN 표현으로부터 유도하는 단계; 및
Figure pct00318
,
Figure pct00319
,
Figure pct00320
:= 0 임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하며, 여기에서
Figure pct00321
는 미리 결정된 파라미터이다.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 관한 것이며, 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00322
여기에서,
Figure pct00323
,
Figure pct00324
,
Figure pct00325
, 및
Figure pct00326
는 배치 정규화 파라미터들이고,
Figure pct00327
는 가중치 행렬이고,
Figure pct00328
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00329
는 편향을 형성하는 전치 벡터이고,
Figure pct00330
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00331
는 행렬 곱을 나타낸다. 이 방법은,
Figure pct00332
Figure pct00333
를 NN 표현으로부터 유도하는 단계; 및
Figure pct00334
,
Figure pct00335
,
Figure pct00336
:= 0 임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하며, 여기에서
Figure pct00337
는 미리 결정된 파라미터이다.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 관한 것이며, 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00338
여기에서,
Figure pct00339
,
Figure pct00340
,
Figure pct00341
, 및
Figure pct00342
는 배치 정규화 파라미터들이고,
Figure pct00343
는 가중치 행렬이고,
Figure pct00344
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00345
는 편향을 형성하는 전치 벡터이고,
Figure pct00346
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00347
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00348
는 행렬 곱을 나타낸다. 이 방법은,
Figure pct00349
Figure pct00350
를 NN 표현으로부터 유도하는 단계; 및
Figure pct00351
,
Figure pct00352
임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하며, 여기에서
Figure pct00353
는 미리 결정된 파라미터이다.
일 실시예는 NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 관한 것이며, 배치 정규화 연산자는 다음과 같이 정의된다:
Figure pct00354
여기에서,
Figure pct00355
,
Figure pct00356
,
Figure pct00357
, 및
Figure pct00358
는 배치 정규화 파라미터들이고,
Figure pct00359
는 가중치 행렬이고,
Figure pct00360
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00361
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00362
는 행렬 곱을 나타낸다. 이 방법은,
Figure pct00363
Figure pct00364
를 NN 표현으로부터 유도하는 단계; 및
Figure pct00365
,
Figure pct00366
임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하며, 여기에서
Figure pct00367
는 미리 결정된 파라미터이다.
전술한 방법들은 전술한 장치들 또는 디바이스들과 같은 고려에 기반한다. 이 방법들은 상기 장치들 또는 디바이스들에 관해 설명된 모든 기능들 및 특징들로 완성될 수 있다.
일 실시예는 디지털 저장 매체에 관한 것이며, 이 매체는 전술한 바와 같은 NN 표현을 생성하는 장치 또는 방법에 의해 생성되는 NN 표현을 정의하는 디지털 데이터를 포함한다.
일 실시예는 전술한 방법들 중 하나를 구현하기 위한 컴퓨터 프로그램에 관한 것이다.
일 실시예는 전술한 바와 같이, NN 표현을 생성하기 위한 장치 또는 방법에 의해 생성되는 데이터 스트림에 관한 것이다.
본 발명은 뉴럴 네트워크 디바이스, 장치, 및 방법은 추론 및/또는 저장 비트 레이트를 최적화할 수 있어, 계산 성능을 향상시키고 리소스를 효율적으로 사용할 수 있다.
도면들은 반드시 스케일될 필요는 없으며, 대신 본 발명의 원리들을 설명하는데 일반적으로 강조가 되었다. 이하의 설명에서, 본 발명의 다양한 실시예들이 다음의 도면들을 참조하여 설명된다:
도1은 뉴럴 네트워크를 도시한다;
도2는 본 발명의 실시예에 따른 NN 표현을 생성하기 위한 장치를 도시하며, 디지털 데이터는 NN 표현을 정의하고, 장치는 NN 표현으로부터 NN 파라미터를 유도한다;
도3은 피드-포워드 뉴럴 네트워크를 도시한다;
도4는 본 발명의 실시예에 따른 NN 파라미터를 이용하여 추론을 수행하는 디바이스를 도시한다;
도5는 본 발명의 실시예에 따른 벡터 및 행렬의 구성으로서 가중치 파라미터를 팩토링(factoring)함으로써 추론을 수행하는 디바이스를 도시한다;
도6은 본 발명의 실시예에 따른 NN 파라미터들을 NN 표현으로 코딩하는 장치 및 NN 표현으로부터 NN 파라미터를 디코딩하는 장치를 도시한다; 및
도7은 행렬 X 및 W 사이의 가능한 관계들을 도시한다.
동일하거나 균등한 구성요소들은 또는 동일한 또는 동등한 기능성을 갖는 구성요소들은 이하의 설명에서 서로 다른 도면들이라도 동일한 또는 동등한 참조 번호로 표시된다.
이하의 설명에서, 본 발명의 실시예들의 설명 내내 더 많은 것을 제공하기 위하여 많은 세부 사항들이 설명된다. 그러나, 이러한 특정 상세들이 없더라도 본 발명의 실시예들이 수행될 수 있다는 것은 본 기술분야의 통상의 기술자에게 자명할 것이다. 다른 예들에서, 주지의 구조들 및 디바이스들은 본 발명의 실시예들을 모호하게 하는 것을 피하기 위하여 상세히 설명되기 보다는 블록 다이어그램으로 표시된다. 덧붙여, 특별히 달리 언급되지 않는 한, 이하 여기에서 설명되는 서로 다른 실시예들의 특징들은 서로 결합될 수 있다.
이하에서, 부동 소수점 연산을 적은 횟수로 하거나 또는 전혀 없이 추론을 할 수 있도록 하는, 층의 파라미터들의 양자화 스텝 크기들을 표현하고 시그널링하는 효율적인 방법이 제공된다. 즉, 그 표현은 비트 레이트 관점에서 효율적이고, 또한 추론의 효율적인 계산을 위해서 이용될 수 있다.
도2는 NN 표현(110)을 생성하는 장치(100)를 도시한다. 이 장치(100)는 양자화 파라미터(142)를 결정(140)하고 NN 파라미터(120)에 대한 양자화 값(152)을 결정(150) 함으로써, NN 파라미터(120)를 양자화된 값(130)으로 양자화하도록 구성된다. 양자화 값(152)은 양자화 파라미터(142)를 기초로 결정(150)될 수 있다. 양자화 파라미터(142)의 결정(140)은 양자화 파라미터 결정기에 의해 수행될 수 있다. 양자화 값(152)의 결정(150)은 양자화 값 결정기에 의해 수행될 수 있다.
양자화 파라미터(142)는 양자화 파라미터(142)로부터 승수(144) (multiplier) 및 비트 천이 수(145)가 유도될 수 있도록 결정(140)된다. 양자화 파라미터(142)의 결정(140)에서, 장치(100)는 예컨대, 승수(144) 및 비트 천이 수(146)가 결정된 양자화 파라미터(142)로부터 구해질 수 있는지를 이미 체크했을 수 있다.
선택적으로, 장치(100)는 예컨대, 장치(100)에 의해 양자화된 값(130)을 결정하도록 허용하는, 양자화 파라미터(142)로부터 비트 천이 수(146)를 유도하고 양자화 파라미터(142)로부터 승수(144)를 유도하도록 구성될 수 있다. 그러나, 이것은 필수적인 것은 아니다. 왜냐하면, 양자화된 값(130)은 양자화 파라미터(142) 및 양자화 값(152)에 의해 표현될 수 있기 때문이다. 장치(100)가 명백히 양자화된 값(130)을 결정하는 것이 필수적인 것은 아니다.
일 실시예에 따르면, 생성된 NN 표현(110)은 결정된 양자화 파라미터(142) 및 결정된 양자화 값(152)를 포함할 수 있고, 따라서 NN 파라미터(120)는 즉, NN 파라미터(120)의 양자화된 값(130)은 NN 표현(110)으로부터 유도될 수 있다. 예를 들어, 장치(100)는 양자화 파라미터(142)와 양자화 값(152)을 NN 표현(110) 안으로 인코딩하도록 구성될 수 있다.
승수(144)는 양자화 파라미터(142)에 의해 유도되는 피제수(dividend)와 정확도 파라미터(k)(145)로부터 유도되는 제수(divisor) 사이의 나눗셈의 나머지에 기초하여 양자화 파라미터(142)로부터 유도될 수 있다.
비트 천이 수(146)는 상기 나눗셈의 몫의 라운딩에 기초하여 즉, 양자화 파라미터(142)에 의해 유도되는 피제수(dividend)와 정확도 파라미터(k)(145)로부터 유도되는 제수(divisor) 사이의 나눗셈의 몫의 라운딩에 기초하여 양자화 파라미터(142)로부터 유도될 수 있다.
양자화 파라미터(142)의 결정(140)은 NN 파라미터(120)의 양자화된 값(130)이 비트 천이 수(146)에 따른 비트 수만큼 비트-천이된, 승수(144)에 따른 인자(148) 및 양자화 값(152)의 곱에 대응하도록 수행된다. NN 파라미터(120)의 양자화된 값(130)은 예컨대, 천이의 경우 부호가 분리 처리된 양자화된 값의 절대값의 관점에서 또는 2의 보수 표현(complement representation) 및 2의 보수 연산(complement arithmetic)을 각각 이용하는 경우와 같은 절대값과 부호 양자의 관점에서의 곱셈에 대응한다. 이것은 예시적으로 유닛(150)에서 도시된다.
일 실시예에 따르면, 장치(100)는 NN 파라미터에 대한 부동 소수점 표현을 이용하여 NN(20)을 트레이닝하고, 양자화 에러를 줄이기 위한 반복적인 최적화 방법에 의해 NN 파라미터에 대한 양자화 값(152) 및 양자화 변수(142)를 결정함으로써, NN 파라미터 예컨대, NN 파라미터(120)의 양자화된 값(130)을 제공하도록 구성된다.
장치(100)과는 달리, 도1은 NN 표현(110)으로부터 NN 파라미터 즉, NN 파라미터(120)의 양자화된 값(130)을 구하는 장치(300) 및 NN 표현(110)을 정의하는 디지털 데이터(200)를 도시한다. 디지털 데이터(200) 및 장치(300)는 NN 파라미터의 원래의 값을 보지 못했다는 사실 때문에, 양자화된 값(130)은 이 맥락에서 NN 파라미터의 값으로서 이해될 것이다. 이러한 이유로, NN 파라미터는 디지털 데이터(200) 및 장치(300)에 대한 이하의 설명에 대해서 130 번으로 표시될 것이다. 여기에서 논의된 NN 파라미터는 NN 파라미터에 할당된 원래의 값(120)에 의해서 또는 원래의 값(120)에 기초하여 결정된 양자화된 값(130)에 의해서 표현될 수 있다는 것은 자명하다. 그러므로, NN 파라미터가 원래의 값(120) 또는 양자화된 값(130)에 의해 표현되는지 상관없이 일반적으로 적용될 수 있는 특징들을 설명하는 경우, NN 파라미터는 NN 파라미터는 이하에서 120/130으로 표시될 것이다.
양자화 파라미터(142)에 의해 유도되는 피제수와 정확도 파라미터(k)(145)에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 양자화 파라미터(142)로부터 유도 가능한 승수(144)가 있도록, 및 이 나눗셈의 몫의 라운딩에 기초하여 양자화 파라미터(142)로부터 유도 가능한 비트 천이 수(146)가 있도록, 디지털 데이터(200)는 NN 표현(110)을 정의하고, NN 표현(110)은 NN 파라미터를 제공하기 위한 양자화 파라미터(142) 및 양자화 값(152)을 포함한다. NN 표현(110)은, NN 파라미터(130)는 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 승수(144)에 따른 인자(148) 및 양자화 값(152) 사이의 곱셈에 대응하도록 양자화 파라미터(142) 및 양자화 값(152)를 포함한다.
NN 표현(110)으로부터 NN 파라미터(130)를 유도하기 위한 장치(300)는 예컨대, 양자화 파라미터 유도 유닛(310)를 이용하여 NN 표현(110)으로부터 양자화 파라미터(142)를 유도하고, 예컨대 양자화 값 유도 유닛(320)을 이용하여 NN 표현(110)으로부터 양자화 값(152)을 유도하도록 구성된다. 덧붙여, 장치(300)는 양자화 파라미터(142)로부터 승수(144) 및 비트 천이 수(146)를 유도하도록 구성된다. 장치(300)는 양자화 파라미터(142)에 의해 유도되는 피제수 및 정확도 파라미터(145)에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 승수(144)를 유도하고, 이 나눗셈의 몫의 라운딩에 기초하여 비트 천이 수(146)를 유도하도록 구성된다. 승수(144)의 유도는 승수 유도 유닛(330)을 이용하여 수행될 수 있고, 비트 천이 수(146)의 유도는 비트 천이 수 유도 유닛(340)을 이용하여 수행될 수 있다. NN 파라미터(130)는 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 승수(144)에 따른 인자(148) 및 양자화 값(152) 사이의 곱셈에 대응한다. 도2의 유닛(150) 및 장치(100)에 대한 전술한 대응하는 설명을 참조하도록 한다. NN 파라미터(130)는 예를 들어, NN 파라미터 유도 유닛(350)을 이용하여 유도될 수 있다. NN 파라미터 유도 유닛(350)은 장치(100)의 선택적 유닛(150)과 같은 동일한 기능성 및/또는 특징들을 포함할 수 있다.
이하, 장치(100) 및 장치(300) 모두에 적용될 수 있는 실시예들 및 예시들이 제공된다.
일 실시예에 따르면, NN 파라미터(120/130)는 가장치 파라미터, 배치 정규화 파라미터, 및 편향 중 하나이다. 가중치 파라미터 예컨대,
Figure pct00368
,
Figure pct00369
의 성분은 한 쌍의 뉴론들 사이의 뉴론간 활성화 피드-포워드에 가중치를 부여하는데 유용할 수 있고, 또는 택일적으로 말하자면, 제1 뉴론 및 제2 뉴론을 연결하는 엣지에 관련되고, 제2 뉴론에 대한 인바운드 활성화들의 총합에서 제1 뉴론의 활성화의 포워딩에 가중치를 부여하는 가중치를 표현할 수 있다. 배치 정규화 파라미터 예컨대,
Figure pct00370
,
Figure pct00371
,
Figure pct00372
,
Figure pct00373
, 는 뉴럴 네트워크 층의 아핀 변환을 파라미터화 하는데 유용할 수 있고, 편향 예컨대
Figure pct00374
의 성분은 미리 결정된 뉴럴 네트워크 뉴론에 대한 인바운드 뉴론간 활성화 피드-포워드들의 합을 편향하는데 유용할 수 있다.
일 실시예에 따르면, NN 파라미터(120/130)는 예컨대, 도1에 도시된 바와 같은, NN의 복수의 뉴론간 활성화 피드-포워드들 중 단일 뉴론간 활성화 피드-포워드(12i) 예컨대, W의 성분 w의 관점에서 NN(20)을 파라미터화한다. 장치(100)/장치(300)는 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해서, 대응하는 NN 파라미터(120/130)를 NN 표현(110)으로 인코딩/ 그 역으로 유도하도록 구성된다. 대응하는 NN 파라미터(130)는 NN 표현(110) 안에 포함된다. 이 경우, 장치(100)는 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 양자화 파라미터(142) 및 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 양자화 값(152)을 결정(140)함으로써, 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대하여 대응하는 NN 파라미터(120)를 대응하는 양자화 값(130)으로 양자화하도록 구성될 수 있다. 관련 양자화 파라미터(142)의 결정(140)이 수행되어, 각각의 뉴론간 활성화 피드-포워드(12i )와 연관된 관련 양자화 파라미터(142)에 의해 유도되는 피제수 및 관련 정확도 파라미터(145)에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 각각의 뉴론간 활성화 피드-포워드(12i )와 연관된 관련 승수(144)가 관련 양자화 파라미터(142)로부터 유도될 수 있고, 이 나눗셈의 몫의 라운딩에 기초하여 각각의 뉴론간 활성화 피드-포워드(12i )와 연관된 관련 비트 천이 수(146)가 관련 양자화 파라미터(142)로부터 유도될 수 있다. 이 경우, 대응하는 장치(300)는 복수의 뉴론간 활성화 피드-포워드들(122) 중 각각에 대해, NN 표현(110)으로부터 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 양자화 파라미터(142)를 유도(310)하고, NN 표현(110)으로부터 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 양자화 값(152)를 유도(320)하도록 구성된다. 이들 유도(310, 320)는 NN 표현(110)으로부터 디코딩함으로써 수행될 수 있는데, 즉, 엣지당 하나가 디코딩 될 수 있다. 덧붙여, 장치(300)는 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 각각의 뉴론간 활성화 피드-포워드(12i )와 연관된 관련 정확도 파라미터(145)에 의해 유도되는 제수 및 관련 양자화 파라미터(142)에 의해 유도되는 피제수 사이의 나눗셈의 나머지에 기초하여 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 승수(144)를 관련 양자화 파라미터(142)로부터 유도하고, 이 나눗셈의 몫의 라운딩에 기초하여 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 비트 천이 수(146)를 양자화 파라미터(142)로부터 유도하도록 구성된다. 330 및 340 참조. 이들 유도(330 및 340)는 예컨대, NN 표현(110)으로부터 디코딩함으로써 수행될 수 있고, 즉, 엣지당 하나가 디코딩될 수 있다.
다른 실시예에 따르면, 장치(100)/장치(300)는 NN(20)의 복수의 뉴론간 활성화 피드-포워드들(122)을 뉴론간 활성화 피드-포워드들의 서브 그룹들(122a, 122b)로 세분화하여, 각각의 서브 그룹이 NN 중 연관된 한 쌍의 NN 층들과 연관되고, 이 연관된 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들을 포함하고, 이 연관된 한 쌍의 층들 외의 다른 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들은 배제하도록 하고, 하나 이상의 서브 그룹이 미리 결정된 NN 층과 연관된다. 예컨대 도3을 참조. 서브 그룹(122a)는 예컨대, NN(20) 중 연관된 한 쌍의 NN 층들(114, 1161)과 연관되고, 연관된 한 쌍의 NN 층들(114, 1161) 사이의 뉴론간 활성화 피드-포워드들을 포함하고, 연관된 한 쌍의 NN 층들(114, 1161) 외의 다른 쌍들의 NN 층들 예컨대, 다른 한 쌍의 NN층들(1161 및 1162) 사이의 뉴론간 활성화 피드-포워드들을 포함하지 않는다. 서브 그룹들(122a, 122b)은 층(1161)과 연관된다. NN(20)의 복수의 뉴론간 활성화 피드-포워드들(122)의 세분화는 예컨대, NN(20) 내의 각각의 에지/가중치(12)에 대한 색인에 의해, 또는 각각의 층들 쌍(layer pair) 사이의 에지들(12)에 대한 세그멘팅에 의해 수행될 수 있다. NN 파라미터(120/130)는 NN(20)의 복수의 뉴론간 활성화 피드-포워드들(122) 중 단일 뉴론간 활성화 피드-포워드(12i) 관점에서 NN(20)을 파라미터화한다. 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(120/130)는 NN 표현(110)에 포함된다. 장치(300)는 예컨대, NN 표현으로부터 디코딩함으로써 즉, 에지 서브 그룹 당 하나가 디코딩됨으로써, 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(120/130)를 NN 표현(110)으로부터 유도하도록 구성된다. 장치(100)/장치(300)는 뉴론간 활성화 피드-포워드들의 각각의 서브 그룹(122a, 122b)에 대해 각각의 서브 그룹(122a 또는 122b)과 연관된 관련 양자화 파라미터(142)를 결정(140)/유도(310)하도록 구성된다. 양자화 파라미터(142)는 장치(100)에 의해 결정(140)되어, 각각의 서브 그룹(122a 또는 122b)과 연관된 관련 승수(144)는 각각의 서브 그룹과 연관된 관련 정확도 파라미터(145)에 의해 유도되는 제수 및 관련 양자화 파라미터(142)에 의해 유도되는 피제수 사이의 나눗셈의 나머지에 기초하여, 양자화 파라미터(142)로부터 유도될 수 있고, 양자화 파라미터(142)가 장치(100)에 의해 결정(140)되어 각각의 서브 그룹(122a 또는 122b)과 연관된 관련 비트 천이 수(146)가 이 나눗셈의 몫의 라운딩에 기초하여 양자화 파라미터(142)로부터 유도될 수 있다. 장치(300)는 NN 표현(110)으로부터 관련 승수(144) 및 관련 비트 천이 수(146)를 유도하도록 구성된다. 장치(100)/장치(300)는 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, NN 표현(110)으로부터 각각의 뉴론간 활성화 피드-포워드(12i)와 연관된 관련 양자화 값(152)을 결정(150)/유도(320) (NN 표현(110)으로부터 디코딩함으로써 즉, 엣지당 하나가 디코딩됨으로써, 유도함(320))하도록 구성된다. 각각의 뉴론간 활성화 피드-포워드(12i)에 대한 대응하는 NN 파라미터(120/130)는 각각의 뉴론간 활성화 피드-포워드(12i)가 포함된 서브 그룹(예컨대, 122a, 122b)의 관련 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 각각의 뉴론간 활성화 피드-포워드(12i)가 포함된 서브 그룹(예컨대, 122a, 122b)과 연관된 관련 승수(144)에 따른 인자(148) 및 관련 양자화 값(142) 사이의 곱셈에 대응한다.
관련 정확도 파라미터(145)는 예를 들어, NN(20)에 걸쳐 전역적으로 또는 각각의 NN 층(114, 1161, 1162) 내에서 동일한 값으로 된다. 선택적으로, 장치(100)/장치(300)는 NN 표현(110)으로/으로부터 관련 정확도 파라미터(145)를 인코딩/유도하도록 구성된다.
일 실시예에 따르면, 장치(100)/장치(300)는 산술 적응 부호화/복호화를 이용함으로써, 또는 양자화 파라미터(142)를 나타내는 비트들을 NN 표현(110)으로/으로부터 직접 쓰기/읽기 함으로써, 또는 장치(100)/장치(300)의 적응 산술 부호화기/복호화기(context-adaptive binary arithmetic encoder/decoder)의 등-확률(equi-probability) 바이패스 모드를 통해 NN 표현(110)으로/으로부터 양자화 파라미터(142)를 나타내는 비트들을 인코딩/유도함으로써, NN 표현(110)으로/으로부터 양자화 파라미터(142)를 인코딩/유도하도록 구성된다. 장치(100)/장치(300)는 이진화 기법을 이용하여 이진 스트링(bin string)을 이진화/역-이진화(debinarizing)함으로써 NN 표현(110)으로부터 양자화 파라미터(142)를 유도하도록 구성될 수 있다. 이진화 기법은 예컨대, Exponential-Golomb-Code 일 수 있다.
일 실시예에 따르면, 장치(100)는 양자화 파라미터(142)를 결정(140)하고 이것을 고정된 포인트 표현의 예컨대, 2의 보수 표현의 형태로 NN 표현(110) 안으로 인코딩하도록 구성된다. 장치(300)는 고정된 포인트 표현의 예컨대, 2의 보수 표현의 형태로 NN 표현(110)으로부터 양자화 파라미터(142)를 유도(310)하도록 구성될 수 있다. 선택적으로, 정확도 파라미터(145)는 2t 이고, 고정된 포인트 표현 예컨대, 2의 보수 표현의 비트 길이는 NN(20)에 대해 일정하게 설정되거나 NN(20) 대해 일정한 기본 비트 길이와 t의 합으로 설정된다.
일 실시예에 따르면, 장치(100)/장치(300)는 NN 표현(110)으로/으로부터 양자화 파라미터(142)를 정수 값의 구문 요소(integer valued syntax element)로서 인코딩/유도하도록 구성된다.
일 실시예에 따르면, 장치(100)는 양자화 값(152)을 결정하고, 이것을 고정된 포인트 표현 예컨대, 2의 보수 표현의 형태로 NN 표현(110) 안으로 인코딩하도록 구성된다. 장치(300)는 고정된 포인트 표현 예컨대, 2의 보수 표현의 형태로 NN 표현(110)으로부터 양자화 값(152)을 유도(320)하도록 구성될 수 있다.
일 실시예에 따르면, 장치(100)/장치(300)는 적응 산술 부호화/복호화를 이용하여 이진 스트링의 비트들을 인코딩/디코딩하는, 이진화 기법에 따라 이진 스트링으로/으로부터 양자화 값(152)을 이진화/역-이진화함으로써 NN 표현(110)으로/으로부터 양자화 값(152)을 인코딩/유도하도록 구성된다.
일 실시예에 따르면, 장치(100)/장치(300)는 적응 산술 부호화/복호화를 이용하여 이진 스트링의 제1 비트들을 인코딩/디코딩하고, 등-확률 바이패스 모드를 이용하여 이진 스트링의 제2 비트들을 인코딩/디코딩하는, 이진화 기법에 따라 이진 스트링으로/으로부터 양자화 값(152)을 이진화/역-이진화함으로써 NN 표현(110)으로/으로부터 양자화 값(152)을 인코딩/디코딩하도록 구성된다.
일 실시예에 따르면, 양자화 스텝 크기(
Figure pct00375
, 149)는 다음의 수식에 따라서, 부호화 정수로 표시되는 양자화 파라미터(
Figure pct00376
,142) 및 양의 정수 파라미터(
Figure pct00377
) 즉, 정확도 파라미터(145)로부터 장치(100)에 의해 및/또는 장치(300)에 의해 유도될 수 있다.
Figure pct00378
Figure pct00379
Figure pct00380
승수(144)는 mul 로 표시되고, 비트 천이 수(146)는 shift로 표시되고, 인자(148)는
Figure pct00381
로 표시된다.
NN 파라미터(130)는
Figure pct00382
이고, 여기에서 P는 양자화 값(152)이다.
바닥 연산자
Figure pct00383
및 모듈로 연산자
Figure pct00384
는 다음과 같이 정의된다:
Figure pct00385
는 x 보다 작거나 같은 가장 큰 정수이다.
Figure pct00386
Figure pct00387
로서 정의되는 모듈로 연산자이다.
선택적으로, 장치(100) 및/또는 장치(300)는 정확도 파라미터(k, 145)를 디폴트 값으로 설정하도록 구성될 수 있다.
택일적으로, 선택적으로 장치(100)는 정확도 파라미터(k, 145)에 대해 자연수 또는 2의 거듭제곱과 같은 몇몇 서로 다른 정수들을 테스트할 수 있다. 서로 다른 정수 값들은 예를 들어, 전체 NN에 대해 또는 각각의 층과 같은 NN의 각 섹션에 대해 테스트되고, 양자화 에러 및 비트 레이트 관점에서 예컨대, 동일한 것의 랑그랑쥬(Langrange) 합의 관점에서 가장 우수한 정확도 파라미터(k, 145)가 선택된다. 장치(100)는 예를 들어, 결정(140) 과정에서, 승수(144) 및 비트 천이 수(146)가 양자화 파라미터(142)로부터 유도될 수 있는지를 체크하기 위하여 정확도 파라미터(k, 145)를 결정하도록 구성될 수 있다. 선택적으로, 장치(100)에 의해 선택된 정확도 파라미터(k, 145)는 NN 표현(110) 내에서 시그널링 되는데, 예컨대, NN 표현(110) 안으로 인코딩된다. 장치(300)는 예를 들어, NN 표현(110)으로부터 정확도 파라미터(k, 145)를 유도하도록 구성된다.
일 실시예에 따르면 정확도 파라미터(145)는 2의 제곱이다.
일 실시예에 따르면, 장치(100)/장치(300)는 정확도 파라미터(145)를 나타내는 비트들을 NN 표현(110)으로/으로부터 직접 쓰기/읽기 함으로써 또는 장치(100)/장치(300)의 적응 산술 부호화기/복호화기의 등-확률 바이패스 모드를 통해 NN 표현(110)으로/으로부터 정확도 파라미터(145)를 나타내는 비트들을 인코딩/유도함으로써, NN 표현(110)으로/으로부터 정확도 파라미터(145)를 인코딩/유도하도록 구성된다.
비트스트림 예컨대, 디지털 데이터(200)에 32비트 부동 소수점 값을 시그널링하는 대신, 오직 파라미터들
Figure pct00388
(142) 및
Figure pct00389
(145) 만이 시그널링되면 족하다. 몇몇 응용에서는, 비트스트림 내에
Figure pct00390
(142) 만을 시그널링하고,
Figure pct00391
(145)를 어떤 고정 값으로 설정하는 것으로 충분할 수 있다.
바람직한 실시예에서, 파라미터
Figure pct00392
Figure pct00393
(142)를 대신하여 비트스트림 내에 시그널링되고, 여기에서, 파라미터
Figure pct00394
는 미리 정의된 상수이다. 즉, 일 실시예에 따르면, 장치(100)/장치(300)는 참조 양자화 파라미터
Figure pct00395
와의 차의 형태로 NN 표현(110)으로/으로부터 관련 양자화 파라미터 QP(142)를 인코딩/유도하도록 구성된다.
다른 바람직한 실시예에서,
Figure pct00396
(145)는
Figure pct00397
로 설정된다. 이 방법으로,
Figure pct00398
(149)의 계산이 다음과 같이 나눗셈없이 수행될 수 있다:
Figure pct00399
이것은 이하에서 예시되는 바와 같은 부동 소수점 영역 대신 정수 영역에서 몇몇 계산들이 수행될 수 있도록 해준다.
도4는 NN(20)을 이용하여 추론을 수행하는 디바이스(400)를 도시한다. 디바이스(400)는 NN(20)을 파라미터화하도록 구성되는 NN 파라미터라이저(410)를 포함한다. NN 파라미터라이저(410)는 NN 표현(110)으로부터 NN 파라미터(130)를 유도하는 장치(300)를 포함한다. NN 파라미터(130)를 유도하는 장치(300)는 도2의 장치(300)에 관해 설명된 바와 동일한 또는 유사한 특징들을 포함할 수 있다. 장치(300)는 NN 파라미터 유도 유닛으로 이해될 수 있다. 덧붙여, 디바이스(400)는 NN(20)을 이용하여 예컨대, NN 파라미터라이저(410)에 의해 결정되는 NN(20)의 파라미터화(450)를 이용하여, NN 입력(440)에 기초해 추론 출력(430)을 계산하도록 구성된다.
예시 1:
일 실시예에 따르면, NN 파라미터라이저(410)는 장치(300)를 통해 제1 NN 파라미터 및 제2 NN 파라미터 중 적어도 하나를 유도하도록 구성되어, 제1 NN 파라미터는 제1 비트 수만큼 비트-천이되는 제1 양자화 값 및 제1 인자 사이의 곱셈에 대응하도록 하고, 제2 NN 파라미터는 제2 비트 수만큼 비트-천이되는 제2 양자화 값 및 제 2 인자 사이의 곱셈에 대응하도록 한다.
제1 양자화 값 및 제2 양자화 값은 도2에서 152로 표시된 양자화 값을 나타낸다. 제1 인자 및 제2 인자는 도2에서 148로 표시된 인자를 나타낸다.
예를 들어,
Figure pct00400
Figure pct00401
라 하고, 제1
Figure pct00402
, 즉
Figure pct00403
로 표시되는 제1 양자화 파라미터(142), 관련
Figure pct00404
, 즉 제1 비트 천이 수(146),
Figure pct00405
즉, 제1 승수 (144), 및
Figure pct00406
, 즉, 제1 양자화 스텝 크기(149)를 정의한다.
또한, 제2
Figure pct00407
, 즉
Figure pct00408
로 표시되는 제2 양자화 파라미터(142), 관련
Figure pct00409
, 즉 제2 비트 천이 수(146),
Figure pct00410
즉, 제2 승수(144), 및
Figure pct00411
, 즉, 제2 양자화 스텝 크기(149)를 정의한다.
'제1' 파라미터들 및 '제2' 파라미터들이 이 맥락에서 동일한 참조 번호로 표시되었지만, 그것들은 서로 다른 값들을 가질 수 있다는 것은 자명하다. 그것들이 속한 도2에 도시된 어떤 특징들을 명확하게 하기 위하여 그것들은 동일한 참조 번호들로 표시되었다.
Figure pct00412
가 유지되는 제1 양자화된 행렬
Figure pct00413
를 고려한다.
Figure pct00414
가 유지되는 제2 양자화된 행렬
Figure pct00415
를 고려한다.
즉,
Figure pct00416
Figure pct00417
를 이용하여 양자화되었고,
Figure pct00418
Figure pct00419
를 이용하여 양자화되었다.
두 행렬은 동일한 차원을 가질 수 있다. 도2에서 논의된 양자화 값(152)은
Figure pct00420
의 일 컴포넌트 또는
Figure pct00421
의 일 컴포넌트를 나타낼 수 있다. 예를 들어,
Figure pct00422
는 복수의 제1 양자화 값들(152)을 포함할 수 있고,
Figure pct00423
는 복수의 제2 양자화 값들(152)을 포함할 수 있다.
또한, 합
Figure pct00424
는 다음과 같이 계산되는 것으로 가정한다:
Figure pct00425
Figure pct00426
디바이스(400)는 제1 가수 예컨대, 제1 NN 파라미터(C)에 대한 제1 양자화 값(
Figure pct00427
) 에 제1 승수(
Figure pct00428
)가 가중되어 형성된
Figure pct00429
및 제2 가수 예컨대, 제2 NN 파라미터(D)에 대한 제2 양자화 값(
Figure pct00430
) 에 제2 승수(
Figure pct00431
)가 가중되어 형성되고 제1 및 제2 비트 수의 차 만큼 비트 천이(
Figure pct00432
참조)된
Figure pct00433
의 합을 형성하고, 제1 가수 및 제2 가수의 덧셈을 제1 및 제2 비트 수 중 하나에 따른, 예컨대 제1 비트 천이 수(
Figure pct00434
) 또는 제2 비트 천이 수(
Figure pct00435
에 따른, 비트의 수만큼 비트 천이(
Figure pct00436
)함으로써, NN(20)의 최종 NN 파라미터를 생성하기 위하여 제1 NN 파라미터(C) 및 제2 NN 파라미터(D)를 합산하도록 구성된다.
선택적으로, 이 산출/계산은 계산 유닛(420)에 의해 수행될 수 있다. 이 경우, 계산 유닛(420)은 계산 수행시, 앞서 설명한 바와 같이, NN(20)의 최종 NN 파라미터를 생성하기 위하여 제1 NN 파라미터(C) 및 제2 NN 파라미터(D)를 합산하도록 구성된다.
수식에서 알 수 있는 바와 같이, 부동 소수점 연산을 필요로 할 수 있는 C 및 D를 유도할 필요가 없다. 대신,
Figure pct00437
의 원소들 즉, 제1 양자화 값들(152)이 단지
Figure pct00438
즉, 제1 승수(144)와 곱하여 지고,
Figure pct00439
의 원소들 즉, 제2 양자화 값들(152)이
Figure pct00440
즉, 제2 승수(144)와 곱하여 지고, 인자
Figure pct00441
는 단지 비트 천이 연산으로서 구현되는데, 이는
Figure pct00442
의 제1 양자화 값들(152) 즉,
Figure pct00443
의 컴포넌트들과 연관된 제1 비트 천이 수 (
Figure pct00444
, 146)와
Figure pct00445
의 제2 양자화 값들(152) 즉,
Figure pct00446
의 컴포넌트들과 연관된 제2 비트 천이 수 (
Figure pct00447
, 146)에 의존한다.
Figure pct00448
이기 때문에, 정수 변수
Figure pct00449
Figure pct00450
는 모두 4, 5, 6, 및 7 중 하나임에 주의한다. 이러한 작은 수와의 정수 곱셈은 하드웨어 또는 소프트웨어 구현시 매우 효율적으로 구현될 수 있다.
일 실시예에 따르면, 제1 NN 파라미터는 NN(20)의 베이스 층 표현을 나타내고, 제2 NN 파라미터는 NN(20)의 향상 층(enhancement layer) 표현을 나타낸다. 택일적으로, 제1 NN 파라미터는 예컨대, NN(20)의 현재 표현을 나타내고, 제2 NN 파라미터는 현재 NN 표현의 업데이트 즉, NN(20)의 현재 표현의 업데이트를 나타낸다. 택일적으로, 예를 들어, 제1 NN 파라미터는 미리 결정된 뉴럴 네트워크 뉴론(10)에 대한 인바운드 뉴론간 활성화 피드-포워드들의 합을 편향하기 위한 편향 즉,
Figure pct00451
의 컴포넌트를 나타내고, 제2 NN 파라미터는 예컨대
Figure pct00452
와 같이 뉴럴 네트워크 층(114, 1161 또는 1162)의 아핀 변환을 파라미터화하기 위한 배치 정규화 파라미터 즉.
Figure pct00453
,
Figure pct00454
,
Figure pct00455
또는
Figure pct00456
를 나타낸다.
예시 2:
일 실시예에 따르면, NN 파라미터라이저(410)는 장치(300)를 통해 제3 NN 파라미터 및 제4 NN 파라미터 중 적어도 하나를 유도하도록 구성되어, 제3 NN 파라미터는 제3 비트 수만큼 비트-천이되는 제3 양자화 값 및 제3 인자 사이의 곱셈에 대응하도록 하고, 제4 NN 파라미터는 제4 비트 수만큼 비트-천이되는 제4 양자화 값 및 제4 인자 사이의 곱셈에 대응하도록 한다.
제3 양자화 값 및 제4 양자화 값은 도2에서 152로 표시된 양자화 값을 나타낸다. 제3 인자 및 제4 인자는 도2에서 148로 표시된 인자를 나타낸다.
예를 들어,
Figure pct00457
Figure pct00458
라 하고, 제1
Figure pct00459
, 즉
Figure pct00460
로 표시되는 제3 양자화 파라미터(142), 관련
Figure pct00461
, 즉 제3 비트 천이 수(146),
Figure pct00462
즉, 제3 승수 (144), 및
Figure pct00463
, 즉, 제3 양자화 스텝 크기(149)를 정의한다.
또한, 제2
Figure pct00464
, 즉
Figure pct00465
로 표시되는 제4 양자화 파라미터(142), 관련
Figure pct00466
, 즉 제4 비트 천이 수(146),
Figure pct00467
즉, 제4 승수 (144), 및
Figure pct00468
즉, 제4 양자화 스텝 크기(149)를 정의한다.
'제3' 파라미터들 및 '제4' 파라미터들이 이 맥락에서 동일한 참조 번호로 표시되었지만, 그것들은 서로 다른 값들을 가질 수 있다는 것은 자명하다. 그것들이 속한 도2에 도시된 어떤 특징들을 명확하게 하기 위하여 그것들은 동일한 참조 번호들로 표시되었다. 디바이스(400)는 제3 및/또는 제4 파라미터만을 유도하도록 또는 추가적으로 예시 1에서 앞서 설명된 바와 같은 제1 및/또는 제2 파라미터를 유도하도록 구성될 수 있다.
Figure pct00469
가 유지되는 양자화된 행렬
Figure pct00470
를 고려한다.
Figure pct00471
가 유지되는 양자화된 전치 벡터
Figure pct00472
를 고려한다.
즉,
Figure pct00473
Figure pct00474
를 이용하여 양자화되었고,
Figure pct00475
Figure pct00476
를 이용하여 양자화되었다.
도2에서 논의된 양자화 값(152)은
Figure pct00477
의 일 컴포넌트 또는
Figure pct00478
의 일 컴포넌트를 나타낼 수 있다. 예를 들어,
Figure pct00479
는 복수의 양자화 값들(152)을 포함할 수 있고,
Figure pct00480
는 복수의 양자화 값들(152)을 포함할 수 있다.
또한, 성분-별 곱
Figure pct00481
는 다음과 같이 계산되는 것으로 가정한다:
Figure pct00482
Figure pct00483
제3 비트 수에 의해 형성되는 제1 가수(
Figure pct00484
)와 제4 비트 수에 형성되는 제2 가수(
Figure pct00485
)를 포함하는 합에 대응하는 비트 수만큼 예컨대
Figure pct00486
비트 천이 되는, 제3 NN 파라미터(W)에 대한 제3 양자화 값에 의해 형성되는 제1 인자, 제3 승수(
Figure pct00487
)에 의해 형성되는 제2 인자, 제4 NN 파라미터(
Figure pct00488
)에 대한 제4 양자화 값(
Figure pct00489
)에 의해 형성되는 제3 인자, 및 제4 승수(
Figure pct00490
)에 의해 형성되는 제4 인자의 곱을 형성함으로써 곱셈을 제공하는, 제3 NN 파라미터(W) 및 제4 NN 파라미터(
Figure pct00491
)의 곱셈에 의해 이 산출/계산은 계산 유닛(420)에 의해 수행될 수 있다.
수식에서 알 수 있는 바와 같이, 부동 소수점 연산을 필요로 할 수 있는
Figure pct00492
Figure pct00493
를 유도할 필요가 없다. 대신
Figure pct00494
의 계산은 단지 정수 곱셈들을 포함하고, 이어지는
Figure pct00495
와의 곱셈은 비트-천이로서 구현될 수 있다.
Figure pct00496
이기 때문에, 정수 변수
Figure pct00497
Figure pct00498
는 모두 4, 5, 6, 및 7 중 하나임에 주의한다. 이러한 작은 수와의 정수 곱셈은 하드웨어 또는 소프트웨어 구현시 매우 효율적으로 구현될 수 있다.
일 실시예에 따르면, 제3 NN 파라미터는 제1 NN 층(114)의 제1 뉴론(101)으로부터 제2 NN 층(1162)의 제2 뉴론(102)으로의 뉴론간 활성화 피드-포워드에 가중치를 부여하기 위한 가중치 파라미터 예컨대,
Figure pct00499
,
Figure pct00500
의 컴포넌트를 나타내고 또는 택일적으로 말하자면, 제3 NN 파라미터는 제1 뉴론(101) 및 제2 뉴론(102)을 연결하는 엣지(12i )와 연관되고, 제2 뉴론(102)에 대한 인바운드 활성화들의 합에서 제1 뉴론(101)의 활성화의 포워딩에 가중치를 부여하는 가중치를 나타낸다.
제4 NN 파라미터는 예컨대, 배치 정규화 파라미터를 예컨대,
Figure pct00501
,
Figure pct00502
,
Figure pct00503
또는
Figure pct00504
를 나타낸다. 이 배치 정규화 파라미터는 예컨대,
Figure pct00505
와 같이, 예컨대 제2 NN 층(1161)에 대한 제1 뉴론(101)의 활성화 피드-포워드 증폭을 조정하기 위한 것이다.
·입력
Figure pct00506
의 양자화
일 실시예에 따르면, 디바이스(400)는 예컨대, 장치(300)를 이용하여, 활성화에 대한 제5 양자화 파라미터
Figure pct00507
즉, 양자화 파라미터(142) 및 제5 양자화 값 예컨대
Figure pct00508
즉, 양자화 값(152)을 결정하여, 이 활성화(activation)를 양자화된 값 예컨대,
Figure pct00509
으로 양자화함으로써, NN 입력
Figure pct00510
(440)을 양자화하도록 구성된다. 이에, 상기 활성화에 연관된 정확도 파라미터
Figure pct00511
즉, 정확도 파라미터(145)에 의해 유도되는 제수 및 제5 양자화 파라미터에 의해 유도되는 피제수 사이의 나눗셈의 나머지에 기초한 제5 양자화 파라미터
Figure pct00512
로부터의 제5 승수
Figure pct00513
즉, 승수(144)의 유도와, 이 나눗셈의 몫의 라운딩에 기초한 제5 비트 천이 수
Figure pct00514
즉, 비트 천이 수(146)의 유도는, 제5 비트 천이 수에 따른 제5 비트 수만큼 비트-천이되는, 제5 승수에 따른 인자
Figure pct00515
즉, 인자(148)와 제5 양자화 값 사이의 곱셈에 대응하는 양자화된 값의 결과를 낳는다.
바람직한 실시예에 따르면, 편향된 층(biased layer) 또는 배치 정규화 층(batch norm layer)의 입력
Figure pct00516
(440)는 본 발명의 양자화 방법을 이용하여 또한 양자화된다. 도2의 장치(100)에 대한 설명을 참조. 즉, 양자화 파라미터 및 관련 변수들 즉, 관련
Figure pct00517
,
Figure pct00518
, 및
Figure pct00519
(
Figure pct00520
Figure pct00521
)이 선택되고,
Figure pct00522
이 유지되도록
Figure pct00523
Figure pct00524
'로 양자화된다. 그리고, 편향 층 또는 배치 정규화 층을 실행하기 위하여
Figure pct00525
를 사용하는 대신, 입력으로서
Figure pct00526
가 이용된다.
Figure pct00527
는 또한
Figure pct00528
보다 훨씬 더 적은 요소당 비트로 표현될 수 있고, 이는 효율적인 하드웨어 또는 소프트웨어 구현을 위한 또다른 장점이라는 점에 주의한다.
일 실시예에 따르면, NN 파라미터라이저(410)는 제6 NN 파라미터가 제6 비트 수만큼 비트-천이되는, 제6 양자화 값과 제6 인자
Figure pct00529
사이의 곱셈에 대응하도록, 장치(300)를 통해 제6 NN 파라미터를 유도하도록 구성된다. 제6 비트 수에 의해 형성되는 제1 가수 및 제4 비트 수에 의해 형성되는 제2 가수를 포함하는 덧셈에 대응하는 비트 수만큼 비트-천이되는, 제6 NN 파라미터에 대한 제6 양자화 값에 의해 형성되는 제1 인자, 제6 승수에 의해 형성되는 제2 인자, 제5 양자화 값에 의해 형성되는 제3 인자, 및 제5 승수에 의해 형성되는 제4 인자의 곱셈을 형성함으로써, 디바이스(400)는 제6 NN 파라미터 및 상기 활성화(activation)의 곱셈을 제공하도록 구성된다.
일 실시예에 따르면, 제6 NN 파라미터는 입력(440)에 가중치를 주기 위한 가중치 파라미터
Figure pct00530
를 나타내고, 이에 의해
Figure pct00531
의 곱셈이 계산/산출될 수 있다.
도2를 다시 참조하여, 장치(100) 및/또는 장치(300)의 추가적인 선택적인 특징들이 이하에서 설명된다.
·파라미터
Figure pct00532
에 대한 효율적인 인코딩 및 디코딩
바람직한 실시예에서, 파라미터
Figure pct00533
즉, 양자화 파라미터(142)는 이하의 정의에 따른 K 차수의 부호화 (signed) Exponential-Golomb-Code를 이용하여 비트스트림(200)으로/으로부터 장치(100)/장치(300)에 의해 인코딩/디코딩된다.
다른 바람직한 실시예는 0으로 설정된 K 차수를 갖는 앞선 바람직한 실시예와 같다.
·무부호(unsigned) 정수들에 대한 Exponential-Golomb-Code
무부호 정수의 무부호 Exponential-Golomb-Code는 HEVC(High Efficiency Video Coding) 표준에서 정의된 구문 요소 ue(v)의 디코딩 규격을 따를 수 있다.
이 규격에 대해 간략히 이하에서 살펴본다:
K 차수의 무부호 Exponential-Golomb-Code로 인코딩된 이진 표현으로부터 무부호 정수 변수 'decNum'의 디코딩은 다음의 의사-코드(pseudo-code)에 따라 정의된다:
leadingZeroBits = -1
for( b = 0; !b; leadingZeroBits++ )
b = read_bits( 1 )
변수 decNum는 다음과 같이 할당된다:
decNum = ( 2leadingZeroBits - 1 ) * 2K + read_bits( leadingZeroBits + K )
함수 read_bits( x )는 비트스트림으로부터 x 비트들을 읽고, 무부호 정수로서 그것들을 반환한다. 읽혀진 비트들은 최상위 비트(MSB)로부터 최하위 비트(LSB)까지 배열된다.
·부호화(signed) 정수들에 대한 Exponential-Golomb-Code
부호화 정수의 부호화 Exponential-Golomb-Code는 HEVC(High Efficiency Video Coding) 표준에서 정의된 구문 요소 se(v)의 디코딩 규격을 따를 수 있다.
이 규격에 대해 간략히 이하에서 살펴본다:
부호화 Exponential-Golomb-Code로 인코딩된 이진 표현으로부터 부호화 정수 'signedDecNum'의 디코딩은 다음과 같다. 첫째, 무부호 정수는 앞서 설명한 HEVC의 ue(v) 구문 요소 디코딩 프로세스에 따라 디코딩된다. 두 번째, 무부호 정수는 다음의 수식에 의해 부호화 정수로 변환된다:
Figure pct00534
천정 연산자
Figure pct00535
Figure pct00536
보다 더 크거나 같은 정수를 리턴한다.
·추가적인 바람직한 실시예들
바람직한 일 실시예에서, 파라미터
Figure pct00537
즉, 정확도 파라미터(145)는
Figure pct00538
로 설정되고, 파라미터 t 는 bits_t 비트들(예컨대, bits_t=3 또는 bits_t=4) 에 의한 무부호 정수 표현을 이용하여 인코딩된다.
또다른 바람직한 실시예에서, 파라미터
Figure pct00539
즉, 정확도 파라미터(145)는
Figure pct00540
로 설정되고, 파라미터 t 는 무부호 정수에 대한 Exponential-Golomb-Code를 이용하여 인코딩된다.
또다른 바람직한 실시예에서, 파라미터 QP 즉, 양자화 파라미터(142)는 부호화 정수에 대한 Exponential-Golomb-Code를 이용하여 인코딩된다.
또다른 바람직한 실시예에서, 파라미터
Figure pct00541
즉, 정확도 파라미터(145)는
Figure pct00542
로 설정되고, 파라미터 QP는 bits_qp 비트들을 이용하는 2의 보수 표현(two's complement representation)에서 부호화 정수를 이용하여 인코딩된다. bits_qp는 예컨대, 12 또는 13과 같은 상수로 설정되고 또는 bits_qp0 + t 로 설정되며, 여기에서 bits_qp0는 0이 아닌 일정한 정수 값 (예컨대, bits_qp0 = 6) 이다.
CABAC-코딩된 비트스트림(200)의 경우, 파라미터들 t 및/또는 QP(142)를 나타내는 비트들은 (CABAC의 바이패스 모드를 이용하여) 바이패스 빈(bin)들로서 인코딩될 수 있고 또는 그것들은 직접 비트스트림(200) 내에 직접 쓰여질 수 있다.
또다른 바람직한 실시예에서,
Figure pct00543
,
Figure pct00544
,
Figure pct00545
,
Figure pct00546
,
Figure pct00547
, 및
Figure pct00548
파라미터들 각각은 파라미터를 인코딩하기 바로 전에 인코딩되는 개별적인
Figure pct00549
(142) 값으로(with) 양자화된다.
또다른 바람직한 실시예에서, 제1
Figure pct00550
(142)는 비트스트림(200) 안으로 인코딩되고, 모델의 파라미터들의 서브셋과 연관된다. 이 서브셋의 파라미터
Figure pct00551
각각에 대해, 하나의
Figure pct00552
-오프셋,
Figure pct00553
가 파라미터마다 인코딩되고, 파라미터 즉, NN 파라미터(120)를 역-양자화하기 위해 이용되는 유효한
Figure pct00554
(142)가
Figure pct00555
로서 주어진다.
Figure pct00556
의 이진 표현은
Figure pct00557
의 이진 표현보다 더 적은 비트를 이용한다. 예를 들어,
Figure pct00558
는 부호화 정수들을 위한 Exponential-Golomb code 또는 (2의 보수 표현에서)고정된 비트 수를 이용하여 인코딩된다.
·가중치 파라미터들의 코딩에 관한 또다른 실시예
도5에 도시된 또다른 바람직한 실시예는 가중치 파라미터들
Figure pct00559
(545)의 표현에 관한 것이다. 즉, 그것은 그것들을 벡터(546) 및 행렬(544)의 조합:
Figure pct00560
-> s
Figure pct00561
으로서 고려하고,
Figure pct00562
Figure pct00563
즉, 가중치 행렬(544)은
Figure pct00564
행렬들이고,
Figure pct00565
는 길이
Figure pct00566
의 전치 벡터(546)이다. 벡터
Figure pct00567
(546)의 각각의 요소는 가중치 행렬
Figure pct00568
(544)의 행-방향(row-wise) 스케일링 인자로서 이용된다. 즉,
Figure pct00569
(546)는 성분-별
Figure pct00570
(544)의 각각의 열과 곱하여 진다.
Figure pct00571
(546)는 로컬 스케일링 인자 또는 로컬 스케일 적용(LSA, local scale adaptation)이라고 부른다.
도5는 NN(20)을 이용하여 추론을 수행하는 디바이스(500)를 도시한다. 디바이스(500)는 NN(20)을 이용하여 NN 입력(440)에 기초하여 추론 출력(430)을 계산하도록 구성된다. NN(20)은 한 쌍의 NN 층들(114, 116)과, 이 한 쌍의 NN 층들 중 제1 층(114)으로부터 NN 층들 중 제2 층(116)으로의 뉴론간 활성화 피드-포워드들(122)을 포함한다. 디바이스(500)는 예컨대, 디바이스(500)의 행렬 형성 유닛(530)을 이용하여, 제1 NN 층(114)의 뉴럴 네트워크 뉴론들(101)의 활성화들(520)로부터 행렬
Figure pct00572
(532)을 형성함으로써, 제1 NN 층(114)의 뉴럴 네트워크 뉴론들(101)의 활성화들(520)에 기초하여 제2 NN 층(116)의 뉴럴 네트워크 뉴론들(102)의 활성화들(510)을 계산하도록 구성된다. 덧붙여, 디바이스(500)는
Figure pct00573
(542)를 계산함으로써 제1 NN 층(114)의 뉴럴 네트워크 뉴론들(101)의 활성화들에 기초하여 제2 NN 층(116)의 뉴럴 네트워크 뉴론들(102)의 활성화들(510)을 산출하도록 구성된다. 여기에서,
Figure pct00574
는 행렬 곱셈을 나타내고,
Figure pct00575
Figure pct00576
Figure pct00577
Figure pct00578
의 가중치 행렬(544)이고, s는 길이
Figure pct00579
의 전치 벡터(546)이고,
Figure pct00580
Figure pct00581
의 일 측에는 행렬과
Figure pct00582
의 타 측에는 전치 벡터간 컬럼-별 Hadamard 곱셈을 나타낸다. 디바이스(500)는 계산(542)을 수행하도록 구성되는 계산 유닛(540)을 포함할 수 있다. 일 실시예에 따르면, 전치 벡터 s(546)는
Figure pct00583
(544) 코딩을 위한 더 높은 압축 및/또는 더 높은 추론 정확도의 관점에서
Figure pct00584
(544)의 최적화의 결과이다.
이유는 산술 부호화(arithmetic coding) 기법들은 더 큰 코딩 이득을 주고 및/또는 뉴럴 네트워크 성능 결과들을 증가시킬 수 있도록 예컨대, 더 높은 정확도를 달성할 수 있도록, LSA가 가중치 행렬(544)을 스케일링하기 때문이다. 예를 들어,
Figure pct00585
의 양자화 이후에,
Figure pct00586
(546)은 양자화 에러를 줄이기 위하여 조정될 수 있고, 입력 데이터(440) 예컨대,
Figure pct00587
(532)를 이용하거나 이용하지 않거나 양자화된 뉴럴 네트워크의 예측 성능을 증가시킬 수 있다.
Figure pct00588
(546) 및
Figure pct00589
(544)는 서로 다른 양자화 파라미터들 즉, 서로 다른 QP들을 가질 수 있다. 이것은 성능 관점에서도 유익할 뿐만 아니라, 하드웨어 효율 관점에서도 유익한 것일 수 있다. 예를 들어,
Figure pct00590
(544)는 입력
Figure pct00591
532)와의 내적이 8-비트 표현으로 수행될 수 되고 그러나 후속하는 스케일링 인자
Figure pct00592
(546)과의 곱셈은 16-비트로 수행될 수 있도록 양자화될 수 있다. 디바이스(500)는 예컨대, n-비트 고정 포인트 연산을 이용하여 행렬 곱셈
Figure pct00593
을 계산하여 내적을 제공하고, m-비트 고정 포인트 연산을 이용하여 이 내적과
Figure pct00594
(546)을 곱하도록 구성된다(m>n).
그러나,
Figure pct00595
(544) 및
Figure pct00596
(546) 모두 n-비트 표현으로 양자화된다고 하더라고, 동일한 추론 정확도를 제공하기 위해서는,
Figure pct00597
(545)를 양자화하는데 필요한 것보다 더 작은 n이면 충분할 것이다. 유사하게,
Figure pct00598
(546)가
Figure pct00599
(544) 보다 더 작은 비트들의 표현으로 양자화된다면, 표현 효율성의 관점에서의 장점들이 달성될 수 있다.
일 실시예에 따르면, 디바이스(500)는 NN 표현(110)으로부터
Figure pct00600
(544)를 유도하도록 구성되는 NN 파라미터라이저 예컨대, 도4에 도시된 NN 파라미터라이저(410)를 포함한다. NN 파라미터라이저는 NN 표현(110)으로부터 NN 파라미터를 유도하기 위한 장치 예컨대, 도2 또는 도4에 도시된 장치(300)를 포함한다. 가중치 행렬
Figure pct00601
(544)은 장치(300)에 의해 유도된 NN 파라미터일 수 있다. 선택적으로, NN 파라미터라이저(410)는
Figure pct00602
(544)와 관련된 NN 파라미터와는 다른 양자화 파라미터(142)를 이용하여 NN 표현(110)으로부터
Figure pct00603
(546)을 유도하도록 구성된다.
바람직한 실시예에서, 가중치 행렬 W(544)의 인코딩은 다음과 같다. 먼저, LSA가 이용되었는지를 나타내는 플래그(flag)가 인코딩된다. 플래그가 1이면, 파라미터들 s(546) 및 W'(544)은 DeepCABAC와 같은 최신의 파라미터 인코딩 기법을 이용하여 인코딩된다. 플래그가 0이면, W(545)가 대신 인코딩된다.
또다른 바람직한 실시예에서, 전술한 바람직한 실시예에 따라, 상이한 QP 값들이 W'(544) 및 s(546)를 위해 이용된다.
·배치 정규화 압축
도6에서 도시된, 일 실시예는 배치 정규화 압축을 향상시키는 것에 관한 것이다. 도6은 NN의 NN 파라미터들(610) 예컨대,
Figure pct00604
,
Figure pct00605
,
Figure pct00606
,
Figure pct00607
및 선택적으로 배치 정규화 연산자(710)의 b를 NN 표현(110)으로 코딩하기 위한 장치(600) 및 NN 표현(110)으로부터 NN의 NN 파라미터들(610) 예컨대,
Figure pct00608
(722) 및
Figure pct00609
(724) 및 파라미터들(732) 즉,
Figure pct00610
,
Figure pct00611
및 선택적으로 배치 정규화 연산자(710)의 b를 디코딩하기 위한 장치(700)를 보여준다.
일반적으로, 배치 정규화 연산자(7101)는 다음과 같이 정의될 수 있다:
Figure pct00612
여기에서,
Figure pct00613
,
Figure pct00614
,
Figure pct00615
, 및
Figure pct00616
는 배치 정규화 파라미터들 예컨대, 각각의 출력 노드에 대한 일 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00617
는 가중치 행렬이고 예컨대, 이 행렬의 각각의 행은 하나의 출력 노드에 대한 것이고, 각각의 행의 각각의 컴포넌트는
Figure pct00618
의 하나의 행과 연관되고,
Figure pct00619
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00620
는 편향을 형성하는 전치 벡터 예컨대, 각각의 출력 노드에 대해 하나의 컴포넌트를 포함하는 전치 벡터이고,
Figure pct00621
는 0에 의한 나눗셈을 피하기 위한 상수이고,
Figure pct00622
는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
Figure pct00623
는 행렬 곱을 나타낸다.
제2 실시예에 대해, 상수
Figure pct00624
는 0이고, 이는 배치 정규화 연산자(7102)를
Figure pct00625
로 정의되도록 한다.
제3 실시예에 대해, 편향 b는 0이고, 이는 배치 정규화 연산자(7103)를
Figure pct00626
로 정의되도록 한다.
제4 실시예에 대해, 편향 b 및 상수
Figure pct00627
는 0이고, 이는 배치 정규화 연산자(7104)를
Figure pct00628
로 정의되도록 한다.
도6에서, 배치 정규화 연산자들의 몇몇 파라미터는 아포스트로피가 없는 파라미터들에 의해 지시되는 원래의 파라미터들(610) 및 아포스트로피가 있는 파라미터들에 의해 지시되는 수정된 파라미터들(722, 724 및 732) 사이를 구별할 수 있도록 하기 위하여 아포스트로피를 갖는다. 수정된 파라미터들(722, 724 및 732) 또는 원래의 파라미터들(610)은 위에 정의된 배치 정규화 연산자(710) 중 하나의 파라미터로서 이용될 수 있다는 것은 자명하다.
장치(600)는 파라미터들
Figure pct00629
,
Figure pct00630
,
Figure pct00631
Figure pct00632
Figure pct00633
(6101~6104 참조) 및 선택적으로 b(6101,6102참조)를 수신하도록 구성된다.
제1 실시예에 따르면, 장치(600)는
Figure pct00634
Figure pct00635
를 계산하도록 구성된다.
택일적인 제2 실시예에 따르면 장치(600)는
Figure pct00636
Figure pct00637
를 계산하도록 구성된다.
택일적인 제3 실시예에 따르면, 장치(600)는
Figure pct00638
Figure pct00639
를 계산하도록 구성된다.
택일적인 제4 실시예에 따르면, 장치(600)는
Figure pct00640
Figure pct00641
를 계산하도록 구성된다.
계산된 파라미터들
Figure pct00642
Figure pct00643
은 배치 정규화 연산자(710)의 NN 파라미터들로서 NN 표현(110)으로 코딩되어, 예컨대 동일한 것(
Figure pct00644
Figure pct00645
)이 또한 각각의 출력 노드에 대한 하나의 컴포넌트를 포함하는 전치 벡터들이다.
따라서 제1 실시예에 대한 배치 정규화 연산자(7101)는
Figure pct00646
,
Figure pct00647
,
Figure pct00648
:= 0인
Figure pct00649
로서 정의될 수 있고, 여기에서
Figure pct00650
는 미리 결정된 파라미터이다. 제2 실시예에 대한 배치 정규화 연산자(7102)는
Figure pct00651
,
Figure pct00652
,
Figure pct00653
:= 0인
Figure pct00654
로서 정의될 수 있다. 제3 실시예에 대한 배치 정규화 연산자(7103)는
Figure pct00655
,
Figure pct00656
Figure pct00657
로 정의될 수 있고, 여기에서
Figure pct00658
는 미리 결정된 파라미터이다. 제4 실시예에 대한 배치 정규화 연산자(7104)는
Figure pct00659
Figure pct00660
Figure pct00661
로서 정의될 수 있다..
미리 결정된 파라미터는 1 또는 1-
Figure pct00662
이고, 예컨대
Figure pct00663
,
Figure pct00664
,
Figure pct00665
, 및
Figure pct00666
는 각각의 출력 노드에 대한 하나의 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00667
는 가중치 행렬이고,
Figure pct00668
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00669
'는 편향을 형성하는 전치 벡터, 예컨대 각각의 출력 노드에 대해 일 컴포넌트를 포함하는 전치 벡터이다.
장치(700)는 예컨대, 장치(700)에 의해 포함될 수 있는
Figure pct00670
Figure pct00671
유도 유닛(720)을 이용함으로써, NN 표현으로부터
Figure pct00672
Figure pct00673
즉,
Figure pct00674
Figure pct00675
를 유도하도록 구성된다.
제1 실시예에 따르면, 장치(700)는
Figure pct00676
,
Figure pct00677
,
Figure pct00678
:= 0 임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도하도록 구성되고, 여기에서
Figure pct00679
는 미리 결정된 파라미터이다.
제2 실시예에 따르면, 장치(700)는
Figure pct00680
,
Figure pct00681
,
Figure pct00682
:= 0 임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도하도록 구성된다.
제3 실시예에 따르면, 장치(700)는
Figure pct00683
,
Figure pct00684
임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도하도록 구성되고, 여기에서
Figure pct00685
는 미리 결정된 파라미터이다.
제4 실시예에 따르면, 장치(700)는
Figure pct00686
,
Figure pct00687
임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도하도록 구성된다.
파라미터들
Figure pct00688
,
Figure pct00689
및 선택적으로
Figure pct00690
의 유도 또는 추론은 파라미터 추론/유도 유닛(730)을 이용하여 수행될 수 있다.
미리 결정된 파라미터는 1 또는 1-
Figure pct00691
이고, 예컨대
Figure pct00692
,
Figure pct00693
,
Figure pct00694
, 및
Figure pct00695
는 각각의 출력 노드에 대한 하나의 컴포넌트를 포함하는 전치 벡터들이고,
Figure pct00696
는 가중치 행렬이고,
Figure pct00697
는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
Figure pct00698
'는 편향을 형성하는 전치 벡터, 예컨대 각각의 출력 노드에 대해 일 컴포넌트를 포함하는 전치 벡터이다.
도6에서, 장치(700)에 의해 유도되는 또는 추론되는 파라미터들은 아포스트로피에 의해 표시되나 장치(700)는 원래의 파라미터들(610)을 본 적이 없다는 사실 때문에 장치(700)에 의해 유도되는 또는 추론되는 파라미터들은 또한 아포스트로피를 사용하지 않고 표시될 수도 있다. 장치(700)의 관점에서, 유도된 또는 추론된 파라미터들은 오직 기존 파라미터들이다.
선택적으로, 장치(700)는 예컨대 추론을 위해, 유도된 또는 추론된 파라미터들(722, 724, 732)과 함께 배치 정규화 연산자를 이용하도록 구성될 수 있다. 배치 정규화 연산자 계산 유닛은 배치 정규화 연산자를 이용하도록 구성될 수 있다. 택일적으로, 추론을 위한 디바이스 예컨대, 디바이스(400) 또는 디바이스(500)는 배치 정규화 연산자(710)의 파라미터들을 얻기 위하여 장치(700)를 포함할 수 있다.
일정한 스칼라 값
Figure pct00699
, 즉 예를 들어 1 또는
Figure pct00700
일 수 있는 미리 결정된 파라미터를 입력함으로써, 파라미터들
Figure pct00701
,
Figure pct00702
,
Figure pct00703
,
Figure pct00704
, 및
Figure pct00705
Figure pct00706
즉, 배치 정규화 연산자(710)의 결과를 변경하지 않고 다음의 순차적인 단계들에 의해 수정될 수 있다:
1)
Figure pct00707
2)
Figure pct00708
3)
Figure pct00709
4)
Figure pct00710
5)
Figure pct00711
이 연산들 각각은 전치 벡터들의 요소들에 대한 성분-별 연산들로서 해석될 수 있다. 제2 및 제3 실시예들에서 예시된 바와 같이
Figure pct00712
를 바꾸지 않는 추가적인 수정들이 또한 가능하다. 예를 들어, 편향
Figure pct00713
및 평균
Figure pct00714
Figure pct00715
안에 통합되어
Figure pct00716
Figure pct00717
는 그 이후 0으로 설정된다(제3 실시예 참조). 또는 다른 파라미터들이 따라서 조정될 때
Figure pct00718
의 분수의 분모를 1로 설정하기 위하여,
Figure pct00719
Figure pct00720
(i.e.,
Figure pct00721
)으로 설정될 수 있다.
결과적으로, 모든 벡터 요소들이 동일한 값을 가지기 때문에,
Figure pct00722
,
Figure pct00723
,
Figure pct00724
Figure pct00725
는 더욱 더 효율적으로 압축될 수 있다.
바람직한 실시예에서, 파라미터의 모든 요소들이 미리 정의된 일정한 값을 갖는지를 가리키는 플래그(734)가 인코딩된다. 예를 들어, 파라미터는
Figure pct00726
,
Figure pct00727
,
Figure pct00728
,
Figure pct00729
, 또는
Figure pct00730
일 수 있다. 미리 정의된 값은 예컨대 0, 1, 또는
Figure pct00731
일 수 있다. 플래그가 1이면, 파라미터의 모든 벡터 요소들은 미리 정의된 값으로 설정된다. 다른 경우에는, 파라미터는 예컨대, DeepCABAC와 같은 최신 인코딩 방법들 중 하나를 이용하여 인코딩된다.
또다른 바람직한 실시예에서, 모든 벡터 요소들이 동일한 값을 갖는지를 가리키는 플래그가 파라미터당 인코딩된다. 모든 벡터 요소들이 동일한 값을 갖는 경우, 플래그는 1이고, 값은 예컨대 DeepCABAC, Exponential-Golomb-Code, 또는 고정-길이 코드(fixed-length code)와 같은 최신 파라미터 인코딩 방법들을 이용하여 인코딩된다. 플래그가 0이면, 파라미터의 벡터 요소들이 예컨대, DeepCABAC와 같은 최신 파라미터 인코딩 방법들 중 하나를 이용하여 인코딩된다.
일 실시예에 따르면, 장치(600)/장치(700)는
Figure pct00732
의 모든 컴포넌트들이 서로 같다는 것과 그 값을 표현(110) 안에/으로부터 나타내도록(indicate)/유도하도록 구성되고, 예컨대 상기 컴포넌트 각각은 대응하는 출력 노드를 나타내는 W의 대응하는 행에 대한 것이다. 부가적으로 또는 택일적으로, 장치(600)/장치(700)는
Figure pct00733
의 모든 컴포넌트들이 서로 같다는 것과 그 값을 표현(110) 안에/으로부터 나타내도록/유도하도록 구성되고, 예컨대 상기 컴포넌트 각각은 대응하는 출력 노드를 나타내는 W의 대응하는 행에 대한 것이다. 부가적으로 또는 택일적으로, 장치(600)/장치(700)는 존재한다면 예컨대, 제1 및 제2 실시예의 경우 그러나 제3 및 제4 실시예의 경우는 해당하지 않는,
Figure pct00734
의 모든 컴포넌트들이 서로 같다는 것과 그 값을 표현(110) 안에/으로부터 나타내도록/유도하도록 구성되고, 예컨대 상기 컴포넌트 각각은 대응하는 출력 노드를 나타내는 W의 대응하는 행에 대한 것이다.
일 실시예에 따르면, 장치(600)는 2개의 배치 정규화 코딩 모드 사이에서 전환될 수 있는 것으로 구성되고, 제1 배치 정규화 코딩 모드에서 장치(600)는
Figure pct00735
Figure pct00736
의 계산 및 코딩을 수행하도록 구성되고, 제2 배치 정규화 코딩 모드에서 장치는 수신된
Figure pct00737
,
Figure pct00738
또는
Figure pct00739
,
Figure pct00740
, 및
Figure pct00741
, 그리고 있다면
Figure pct00742
를 코딩하도록 구성된다. 즉, 수신된 파라미터들(610)은 제2 배치 정규화 모드에서 표현(110) 안으로 직접 인코딩된다. 평행하게, 장치(700)는 2개의 배치 정규화 코딩 모드 사이에서 전환될 수 있는 것으로 구성될 수 있고, 제1 배치 정규화 코딩 모드에서 장치(700)는 유도, 및 추론 또는 유도를 수행하도록 구성되고, 제2 배치 정규화 코딩 모드에서 장치(700)는
Figure pct00743
,
Figure pct00744
또는
Figure pct00745
,
Figure pct00746
, 및
Figure pct00747
, 그리고 있다면
Figure pct00748
를 표현(110)으로부터 디코딩하도록 구성된다. 즉, 파라미터들(610)은 제2 배치 정규화 모드에서 표현(110)으로부터 직접 디코딩된다.
일 실시예에 따르면, 장치(600)는 장치(100)를 포함하여(도2 참조),
Figure pct00749
Figure pct00750
를 양자화하고 NN 표현(110) 안으로 코딩한다. 예를 들어, 장치(600)는 먼저 제1 계산(620)을 수행하고, 얻은 파라미터들
Figure pct00751
Figure pct00752
을 파라미터들의 양자화를 위해 장치(100)로 전달한다. 일 실시예에 따르면, 장치(700)는 장치(300)를 포함하여(도2 참조), NN 표현(110)으로부터
Figure pct00753
Figure pct00754
를 유도한다.
이해를 돕기 위하여, X 및 W 사이의 가능한 관계들 및 한 쌍의 층이 도7에 도시되어 있다: 좌측에는 완전히 연결된 층 i+1, 및 우측에는 컨벌루션 층 i+1. 층들의 뉴론들은 원들(10)에 의해 묘사된다. 각각의 층의 뉴론들은 배열 위치들(x,y)에 위치된다. 각각의 층 i 는 뉴론들(10)의 qi 열들 및 뉴론들(10)의 pi 행들을 갖는다. 완전히 연결된 경우, Xi는 컴포넌트들
Figure pct00755
의 벡터이고, Wi는 컴포넌트들
Figure pct00756
의 행렬이며, 여기에서 각각의
Figure pct00757
는 위치{
Figure pct00758
;g%
Figure pct00759
+1}에 있는 뉴론의 활성화가 덧붙여지고, 각각의
Figure pct00760
는 위치{
Figure pct00761
;g%
Figure pct00762
+1}에 있는 층 i+1의 뉴론(10) 및 위치{
Figure pct00763
;h%
Figure pct00764
+1}에 있는 층 i의 뉴론(10) 사이의 엣지(12)에 대한 가중치가 덧붙여진다. 상기 컨벌루션의 경우, Xi는 컴포넌트들
Figure pct00765
의 벡터이고, Wi는 컴포넌트들
Figure pct00766
의 행렬이며, 여기에서 각각의
Figure pct00767
는 위치{
Figure pct00768
;
Figure pct00769
%
Figure pct00770
+1}에 있는 뉴론의 활성화가 덧붙여지고, 각각의
Figure pct00771
는 층 i 에 걸쳐 분포된
Figure pct00772
위치들 중 하나에 위치한, 층 i 내의 r x s 크기의 직각 필터 커널(rectangular filter kernel)내의 뉴론으로부터, 상기 커널 위치에 대응하는 층 i+1 내의 뉴론 위치로 향하는 엣지에 대한 가중치가 덧붙여진다.
몇몇 양태들은 장치의 맥락에서 설명되었지만, 이러한 양태들은 또한, 블록 또는 디바이스가 방법 단계의 특징 또는 방법 단계에 대응하는, 상응하는 방법의 설명을 나타낸다는 것은 자명하다. 유사하게, 방법 단계의 맥락으로 설명된 양태들은 또한 상응하는 장치의 특징 또는 아이템 또는 상응하는 블록의 설명을 나타낸다. 방법 단계들 전부 또는 일부는 예컨대, 마이크로프로세서, 프로그래머블 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이를 사용하여) 실행될 수 있다. 몇몇 실시예들에서, 가장 중요한 방법 단계들 중 하나 이상이 이러한 장치에 의해서 수행될 수 있다.
본 발명의 NN 표현을 포함하는 본 발명의 디지털 데이터, 데이터 스트림 또는 파일은 디지털 저장 매체에 저장될 수 있고, 또는 인터넷과 같은 유선 전송 매체 또는 무선 통신 매체와 같은 전송 매체를 통해 전송될 수 있다.
특정 구현 요건에 따라서, 본 발명의 실시예들은 하드웨어 또는 소프트웨어로 구현될 수 있다. 이 구현은 예컨대, 플로피 디스크, DVD, 블루레이, CD, ROM, PROM, EPROM, EEPROM, 또는 플래시 메모리와 같이 전자적으로 판독 가능한 제어 신호가 저장된 디지털 저장 매체를 사용하여 수행될 수 있다. 디지털 저장 매체는 각각의 방법이 수행되도록 프로그램 작동 가능한 컴퓨터 시스템과 협력(또는 협력 가능한)한다. 따라서, 디지털 저장 매체는 컴퓨터 판독 가능할 수 있다.
본 발명에 따른 일부 실시예들은 전자적으로 판독가능한 제어 신호를 가지는 데이터 캐리어를 포함한다. 이 데이터 캐리어는 본 명세서에 설명된 방법 중 하나가 수행되도록 프로그램 작동 가능한 컴퓨터 시스템과 협력 할 수 있다.
일반적으로, 본 발명의 실시예들은 프로그램 코드를 가지는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 프로그램 코드는 컴퓨터 프로그램 제품이 컴퓨터에서 실행될 때 전술된 방법 중 하나를 수행하도록 동작한다. 프로그램 코드는 예컨대 기계 판독가능 캐리어에 저장될 수 있다.
다른 실시예들은 본 명세서에서 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다. 컴퓨터 프로그램은 기계 판독 가능 캐리어에 저장된다. 즉, 결과적으로, 본 발명의 방법의 실시예는, 컴퓨터 프로그램이 컴퓨터상에서 실행될 때, 본 명세서에서 설명된 방법들 중 하나를 수행하기 위한 프로그램 코드를 가지는 컴퓨터 프로그램이다.
본 발명의 방법들의 추가 실시예는, 따라서, 본 명세서에서 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함하는 데이터 캐리어(또는 디지털 저장 매체, 또는 컴퓨터 판독 가능 매체)이다. 본 발명의 방법의 추가 실시예는, 따라서, 본 명세서에서 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타내는 데이터 스트림 또는 신호의 시퀀스이다. 데이터 스트림 또는 신호의 시퀀스는 예컨대 데이터 통신 연결, 예를 들어 인터넷을 통하여 전송되도록 구성될 수 있다. 추가적인 실시예는, 본 명세서에 개시된 방법들 중 하나를 수행하도록 구성되거나 또는 개조된 프로세싱 수단, 예컨대, 컴퓨터, 또는 프로그램 작동 가능 로직 디바이스를 포함한다. 추가 실시예는 본 명세서에 개시된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램이 설치된 컴퓨터를 포함한다.
본 발명에 따른 또다른 실시예는 여기에서 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 (예컨대, 전자적으로 또는 광학적으로) 수신기에 전송하도록 구성된 시스템 도는 장치를 포함한다. 수신기는 예를 들어 컴퓨터, 모바일 디바이스, 메모리 디바이스 등일 수 있다. 장치 또는 시스템은 예를 들어, 컴퓨터 프로그램을 수신기에 전송하기 이한 파일 서버를 포함할 수 있다.
일부 실시예에서는, 프로그램 작동 가능 로직 디바이스(예컨대, 필드 프로그램 작동 가능 게이트 어레이)가 본 명세서에 설명된 방법들의 일부 또는 모든 기능들을 수행하기 위하여 사용될 수 있다. 일부 실시예에서는, 필드 프로그램 작동 가능 게이트 어레이는 본 명세서에 설명된 방법들 중 하나를 수행하기 위하여 마이크로프로세서와 협력할 수 있다. 일반적으로, 위 방법들은 바람직하게는 임의의 하드웨어 장치에 의하여 수행된다.
여기에서 설명된 장치는 하드웨어 장치를 이용하여 또는 컴퓨터를 이용하여 또는 하드웨어 장치 및 컴퓨터의 조합을 이용하여 구현될 수 있다.
여기에서 설명된 장치는 또는 여기에서 설명된 장치의 어느 컴포넌트들은 적어도 부분적으로 하드웨어 및/또는 소프트웨어로 구현될 수 있다.
여기에서 설명된 방법들은 하드웨어 장치를 이용하여, 또는 컴퓨터를 이용하여 또는 하드웨어 장치 및 컴퓨터의 조합을 이용하여 구현될 수 있다.
여기에서 설명된 방법들 또는 여기에서 설명된 장치의 어느 컴포넌트들은 적어도 부분적으로 하드웨어 및/또는 소프트웨어로 구현될 수 있다.
전술된 실시예들은 단지 본 발명의 원리에 대한 예시일 뿐이다. 본 명세서에서 설명된 방식 및 세부사항들의 수정 및 변경은 해당 기술분야의 당업자에게 자명한 것으로 이해된다. 따라서, 본 명세서의 실시예에 대한 개시 및 설명을 통하여 제시된 구체적인 세부 사항이 아닌, 특허청구범위의 범위에 의해서만 한정되어야 한다.

Claims (108)

  1. NN 표현(110)을 생성하기 위한 장치(100)에 있어서,
    양자화 파라미터(142)에 의해 유도된 피제수(dividend)와 정확성 파라미터(145)에 의해 유도된 제수(divisor)간 나눗셈의 나머지에 기초하여, 상기 양자화 파라미터(142)로부터 유도 가능한 승수(multiplier)(144)가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 양자화 파라미터(142)로부터 유도 가능한 비트 천이 수(146)가 있도록,
    상기 장치(100)는 NN 파라미터(120)에 대한 상기 양자화 파라미터(142) 및 양자화 값(152)을 결정함으로써 상기 NN 파라미터(120)를 양자화된 값(130)으로 양자화하도록 구성되어,
    상기 NN 파라미터(120)의 상기 양자화된 값(130)은, 상기 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 승수(144)에 따른 인자(148)와 상기 양자화 값(152) 사이의 곱셈에 대응하도록 하는, 장치(100).
  2. 청구항 1에 있어서,
    상기 정확성 파라미터(145)를 상기 NN 표현(110) 안으로 인코딩하도록 구성되는 장치(100).
  3. 청구항 1 또는 2에 있어서,
    상기 NN 파라미터(120)는,
    한 쌍의 뉴론(10) 사이의 뉴론간 활성화 피드-포워드(12)에 가중치를 주기 위한 가중치 파라미터;
    뉴럴 네트워크 층(layer)의 아핀 변환을 파라미터화 하기 위한 배치 정규화(batch norm) 파라미터; 및
    미리 결정된 뉴럴 네트워크 뉴론(10)에 대한 인바운드 뉴론간 활성화 피드-포워드들(12)의 합을 천이하기 위한 천이(bias) 중 하나인 장치(100).
  4. 앞선 청구항 중 어느 한 항에 있어서,
    상기 NN 파라미터(120)는 NN(20)의 복수의 뉴론간 활성화 피드-포워드들(122) 중 단일의 뉴론간 활성화 피드-포워드(12) 면에서 상기 NN(20)을 파라미터화하고, 상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(120)가 상기 NN 표현(110) 안에 포함되고,
    상기 연관 양자화 파라미터(142)에 의해 유도된 피제수(dividend)와 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 정확성 파라미터(145)에 의해 유도된 제수(divisor)간 나눗셈의 나머지에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한, 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 승수(144)가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한, 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 비트 천이 수(146)가 있도록,
    상기 장치(100)는 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 파라미터(142) 및 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 값(152)을 결정함으로써, 상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 상기 대응하는 NN 파라미터(120)를 대응하는 양자화된 값(130)으로 양자화하도록 구성되어,
    상기 각각의 뉴론간 활성화 피드-포워드(12)에 대한 상기 대응하는 NN 파라미터(120)의 상기 대응하는 양자화된 값(130)은, 상기 연관 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 연관 승수(144)에 따른 인자(148)와 상기 연관 양자화 값(152) 사이의 곱셈에 대응하도록 하는, 장치(100).
  5. 청구항 1 내지 3 중 어느 한 항에 있어서,
    상기 장치(100)는 NN의 복수의 뉴론간 활성화 피드-포워드들(122)을 뉴론간 활성화 피드-포워드들의 서브-그룹들(122a,122b)로 세분화하여, 각각의 서브-그룹(122a,122b)은 상기 NN(20)의 연관된 한 쌍의 NN 층들과 연관되고, 상기 연관된 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들(12)을 포함하고, 상기 연관된 한 쌍의 층들 외의 다른 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들(12)은 배제하고, 하나 이상의 서브-그룹(122a,122b)은 미리 결정된 NN 층과 연관되며,
    상기 NN 파라미터(120)는 상기 NN의 상기 복수의 뉴론간 활성화 피드-포워드들(122) 중 단일 뉴론간 활성화 피드-포워드(12) 면에서 상기 NN(20)을 파라미터화하고, 상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(120)는 상기 NN 표현(110) 내에 포함되고,
    연관 양자화 파라미터(142)에 의해 유도된 피제수와 상기 각각의 서브-그룹(122a,122b)과 관련된 연관 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한 상기 각각의 서브-그룹(122a,122b)과 관련된 연관 승수(144)가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한, 상기 각각의 서브 그룹(122a,122b)과 관련된 연관 비트 천이 수(146)가 있도록,
    상기 장치(100)는,
    뉴론간 활성화 피드-포워드들의 서브-그룹(122a,122b) 각각에 대해, 상기 NN 표현(110)으로부터 상기 각각의 서브-그룹(122a,122b)과 연관된 상기 연관 양자화 파라미터(142)를 결정하도록 구성되고,
    상기 NN 표현(110)으로부터 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 값(152)을 결정함으로써, 상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 상기 대응하는 NN 파라미터(120)를 대응하는 양자화된 값(130)으로 양자화하도록 구성되며,
    상기 각각의 뉴론간 활성화 피드-포워드(12)에 대한 상기 대응하는 NN 파라미터(120)는, 상기 각각의 뉴론간 활성화 피드-포워드(12)가 포함되는 상기 서브-그룹(122a,122b)의 상기 연관 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 각각의 뉴론간 활성화 피드-포워드(12)가 포함되는 상기 서브-그룹(122a,122b)과 관련된 상기 연관 승수(144)에 따른 인자(148)와 상기 연관 양자화 값(152) 사이의 곱에 대응하는, 장치(100).
  6. 청구항 4 또는 5에 있어서,
    상기 연관 정확도 파라미터(145)는 상기 NN(20)에 걸쳐 전역적으로 또는 각각의 NN 층(114,116) 내에서 동일하게 값이 주어지는, 장치(100).
  7. 청구항 4 내지 6 중 어느 한 항에 있어서,
    상기 연관 정확도 파라미터(145)를 상기 NN 표현(110)으로 인코딩하도록 구성되는 장치(100).
  8. 청구항 4 내지 7 중 어느 한 항에 있어서,
    상기 연관 양자화 파라미터(142)를 상기 NN 표현(110) 안으로 참조 양자화 파라미터와의 차(difference)의 형태로 인코딩하도록 구성되는 장치(100).
  9. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)로부터 상기 승수(144) 및 상기 비트 천이 수(146)는 다음 수식에 따라 유도될 수 있고:
    Figure pct00773

    Figure pct00774

    여기에서,
    Figure pct00775
    은 상기 승수(144),
    Figure pct00776
    는 상기 비트 천이 수(146),
    Figure pct00777
    는 상기 양자화 파라미터(142),
    Figure pct00778
    는 상기 정확도 파라미터(145),
    Figure pct00779
    는 그것의 피연산자보다 더 작거나 같은 최대 정수를 주는 바닥 연산자이고,
    Figure pct00780
    Figure pct00781
    에 대해
    Figure pct00782
    를 주는 모듈로 연산자이며,
    따라서 상기 NN 파라미터(130)는
    Figure pct00783

    이며, 여기에서 P는 상기 양자화 값(152)인, 장치(100).
  10. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 정확도 파라미터(145)는 2의 거듭제곱인, 장치(100).
  11. 앞선 청구항들 중 어느 한 항에 있어서,
    적응 산술 부호화(CABAC, context-adaptive binary arithmetic encoding)을 이용함으로써; 또는
    상기 양자화 파라미터(142)를 나타내는 비트들을 상기 NN 표현(110) 안에 직접 쓰기 함으로써; 또는
    상기 양자화 파라미터(142)를 나타내는 비트들을 상기 장치(100)의 적응 산술 부호화기(context-adaptive binary encoder)의 등-확률(equi-probability) 바이패스 모드를 통해 상기 NN 표현(110) 안에 인코딩함으로써,
    상기 양자화 파라미터(142)를 상기 NN 표현(110) 안에 인코딩하도록 구성되는 장치(100).
  12. 앞선 청구항들 중 어느 한 항에 있어서,
    이진화 기법을 이용하여 상기 양자화 파라미터(142)를 이진 스트링(bin string) 안으로 이진화함으로써 상기 양자화 파라미터(142)를 상기 NN 표현(110) 안으로 인코딩하도록 구성되는, 장치(100).
  13. 청구항 12에 있어서,
    상기 이진화 기법은 Exponential-Golomb-Code 인 장치(100).
  14. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)를 결정하고, 고정 소수점 표현 형태로 상기 NN 표현(110)으로 인코딩하도록 구성되는 장치(100)
  15. 청구항 14에 있어서,
    상기 정확도 파라미터(145)는
    Figure pct00784
    이고, 상기 고정 소수점 표현의 비트 길이는 상기 NN(20)에 대해 일정하게 설정되거나, 상기 NN(20)에 대해 일정한 기본 비트 길이와 t의 합으로 설정되는, 장치(100).
  16. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)를 정수의 구문 요소(syntax element)로서 상기 NN 표현(110) 안으로 인코딩하도록 구성되는, 장치(100).
  17. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 정확도 파라미터(145)를 나타내는 비트들을 상기 NN 표현(110) 안에 직접 쓰기 함으로써, 또는 상기 정확도 파라미터(145)를 나타내는 비트들을 상기 장치(100)의 적응 산술 부호화기의 등-확률 바이패스 모드를 통해 상기 NN 표현(110) 안에 인코딩함으로써 상기 정확도 파라미터(145)를 상기 NN 표현(110) 안에 인코딩하도록 구성되는, 장치(100).
  18. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 값(152)과 상기 양자화 파라미터(142)를 상기 NN 표현(110) 안으로 인코딩하도록 구성되는 장치(100).
  19. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 NN 파라미터(120)에 대한 부동 소수점 표현을 이용하여 NN을 트레이닝시킴으로써 상기 NN 파라미터(120)를 제공하고, 및
    양자화 에러를 감소시키기 위한 반복적 최적화 기법의 방식으로 상기 NN 파라미터(120)에 대한 상기 양자화 값(152) 및 상기 양자화 파라미터(142)를 결정하도록 구성되는 장치(100).
  20. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 값(152)을 결정하고, 부동 소수점 표현 형태로 상기 NN 표현(110) 안으로 인코딩하도록 구성되는 장치(100).
  21. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 값(152)을 이진화 기법에 따라 이진 스트링 안으로 이진화하고, 상기 이진 스트링의 비트들을 적응 산술 부호화(context-adaptive arithmetic encoding)을 이용하여 인코딩함으로써, 상기 양자화 값(152)을 상기 NN 표현(110) 안으로 인코딩하도록 구성되는 장치(110).
  22. 앞선 청구항들 중 어느 한 항에 있어서,
    상기 양자화 값(152)을 이진화 기법에 따라 이진 스트링 안으로 이진화하고, 상기 이진 스트링의 제1 비트들을 적응 산술 부호화(context-adaptive arithmetic encoding)을 이용하여 인코딩하고, 등-확률 바이패스 모드를 이용하여 상기 이진 스트링의 제2 비트들을 인코딩함으로써, 상기 양자화 값(152)을 상기 NN 표현(110) 안으로 인코딩하도록 구성되는 장치(110).
  23. NN 표현(110)을 정의하는 디지털 데이터에 있어서,
    양자화 파라미터(142)에 의해 유도된 피제수와 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여, 상기 양자화 파라미터(142)로부터 유도 가능한 승수(144)가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 양자화 파라미터(142)로부터 유도 가능한 비트 천이 수(146)가 있도록,
    상기 NN 표현(110)은 NN 파라미터(130)를 나타내기 위하여 양자화 파라미터(142) 및 양자화 값(152)을 포함하여,
    상기 NN 파라미터(130)는 상기 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 승수(144)에 따른 인자(148)와 상기 양자화 값(152) 사이의 곱셈에 대응하도록 하는, 디지털 데이터.
  24. 청구항 23에 있어서,
    상기 정확성 파라미터(145)는 상기 NN 표현(110) 안으로 인코딩되는, 디지털 데이터.
  25. 청구항 23 또는 24에 있어서,
    상기 NN 파라미터(130)는,
    한 쌍의 뉴론(10) 사이의 뉴론간 활성화 피드-포워드(12)에 가중치를 주기 위한 가중치 파라미터;
    뉴럴 네트워크 층(layer)의 아핀 변환을 파라미터화 하기 위한 배치 정규화 파라미터; 및
    미리 결정된 뉴럴 네트워크 뉴론(10)에 대한 인바운드 뉴론간 활성화 피드-포워드들(12)의 합을 천이하기 위한 천이(bias) 중 하나인, 디지털 데이터.
  26. 청구항 23 내지 25 중 어느 한 항에 있어서,
    상기 NN 파라미터(130)는 NN(20)의 복수의 뉴론간 활성화 피드-포워드들 중 단일의 뉴론간 활성화 피드-포워드(12) 면에서 상기 NN(20)을 파라미터화하고, 상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(120)가 상기 NN 표현(110) 안에 포함되고,
    상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해,
    상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 파라미터(142)가 상기 NN 표현(110) 내에 포함되고, 및
    상기 연관 양자화 파라미터(142)에 의해 유도된 피제수와 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한, 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 승수(144)가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한, 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 비트 천이 수(146)가 있도록,
    상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 값(152)이 상기 NN 표현(110) 내에 포함되어,
    상기 각각의 뉴론간 활성화 피드-포워드(12)에 대한 상기 대응하는 NN 파라미터(130)의 상기 대응하는 양자화된 값(130)은, 상기 연관 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 연관 승수(144)에 따른 인자(148)와 상기 연관 양자화 값(152) 사이의 곱셈에 대응하도록 하는, 디지털 데이터.
  27. 청구항 23 내지 25 중 어느 한 항에 있어서,
    NN의 복수의 뉴론간 활성화 피드-포워드들(122)이 뉴론간 활성화 피드-포워드들의 서브-그룹들(122a,122b)로 세분화되어, 각각의 서브-그룹(122a,122b)은 상기 NN의 연관된 한 쌍의 NN 층들과 연관되고, 상기 연관된 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들을 포함하고, 상기 연관된 한 쌍의 층들 외의 다른 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들은 배제하고, 하나 이상의 서브-그룹(122a,122b)은 미리 결정된 NN 층과 연관되며,
    상기 NN 파라미터(130)는 상기 NN의 상기 복수의 뉴론간 활성화 피드-포워드들(122) 중 단일 뉴론간 활성화 피드-포워드(12) 면에서 상기 NN(20)을 파라미터화하고, 상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(130)는 상기 NN 표현(110) 내에 포함되고,
    상기 연관 양자화 파라미터(142)에 의해 유도된 피제수와 상기 각각의 서브-그룹(122a,122b)과 관련된 연관 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한, 상기 각각의 서브-그룹(122a,122b)과 관련된 연관 승수(144)가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 연관 양자화 파라미터(142)로부터 유도 가능한 상기 각각의 서브 그룹(122a,122b)과 관련된 연관 비트 천이 수(146)가 있을 수 있도록,
    뉴론간 활성화 피드-포워드들의 서브-그룹(122a,122b) 각각에 대해, 상기 각각의 서브-그룹(122a,122b)과 연관된 연관 양자화 파라미터(142)가 상기 NN 표현(110) 내에 포함되고,
    상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 값(152)이 상기 NN 표현(110) 내에 포함되고,
    상기 각각의 뉴론간 활성화 피드-포워드(12)에 대한 상기 대응하는 NN 파라미터(130)는, 상기 각각의 뉴론간 활성화 피드-포워드(12)가 포함된 상기 서브-그룹(122a,122b)의 상기 연관 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 각각의 뉴론간 활성화 피드-포워드(12)가 포함된 상기 서브-그룹(122a,122b)과 관련된 상기 연관 승수(144)에 따른 인자(148) 및 상기 연관 양자화 값(152) 사이의 곱에 대응하는, 디지털 데이터.
  28. 청구항 26 또는 27에 있어서,
    상기 연관 정확도 파라미터(145)는 상기 NN에 걸쳐 전역적으로 또는 각각의 NN 층 내에서 동일하게 값이 주어지는, 디지털 데이터.
  29. 청구항 26 내지 28 중 어느 한 항에 있어서,
    상기 연관 정확도 파라미터(145)는 상기 NN 표현(110) 안으로 인코딩되는, 디지털 데이터.
  30. 청구항 26 내지 29 중 어느 한 항에 있어서,
    상기 연관 양자화 파라미터(142)는 상기 NN 표현(110) 안으로 참조 양자화 파라미터와의 차(difference)의 형태로 인코딩되는, 디지털 데이터.
  31. 청구항 23 내지 30 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)로부터 상기 승수(144) 및 상기 비트 천이 수(146)는 다음 수식에 따라 유도될 수 있고:
    Figure pct00785

    Figure pct00786

    여기에서,
    Figure pct00787
    은 상기 승수(144),
    Figure pct00788
    는 상기 비트 천이 수(146),
    Figure pct00789
    는 상기 양자화 파라미터(142),
    Figure pct00790
    는 상기 정확도 파라미터(145),
    Figure pct00791
    는 그것의 피연산자보다 더 작거나 같은 최대 정수를 주는 바닥 연산자이고,
    Figure pct00792
    Figure pct00793
    에 대해
    Figure pct00794
    를 주는 모듈로 연산자이며,
    따라서 상기 NN 파라미터(130)는
    Figure pct00795

    이며, 여기에서 P는 상기 양자화 값(152)인, 디지털 데이터.
  32. 청구항 23 내지 31 중 어느 한 항에 있어서,
    상기 정확도 파라미터(145)는 2의 거듭제곱인, 디지털 데이터.
  33. 청구항 23 내지 31 중 어느 한 항에 있어서,
    적응 산술 부호화(CABAC, context-adaptive binary arithmetic encoding)을 이용함으로써; 또는
    상기 양자화 파라미터(142)를 나타내는 비트들을 상기 NN 표현(110) 안에 직접 쓰기 함으로써; 또는 상기 양자화 파라미터(142)를 나타내는 비트들을 상기 장치(100)의 적응 산술 부호화기(context-adaptive binary encoder)의 등-확률(equi-probability) 바이패스 모드를 통해 상기 NN 표현(110) 안에 인코딩함으로써, 상기 양자화 파라미터(142)는 상기 NN 표현(110) 안에 인코딩되는, 디지털 데이터.
  34. 청구항 23 내지 33 중 어느 한 항에 있어서,
    이진화 기법을 이용하여 상기 양자화 파라미터(142)를 이진 스트링(bin string) 안으로 이진화하는 형태로, 상기 양자화 파라미터(142)는 상기 NN 표현(110) 안으로 인코딩되는, 디지털 데이터.
  35. 청구항 34에 있어서,
    상기 이진화 기법은 Exponential-Golomb-Code 인, 디지털 데이터.
  36. 청구항 23 내지 35 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)는 고정 소수점 표현 형태로 상기 NN 표현(110) 안으로 인코딩되는 디지털 데이터.
  37. 청구항 36에 있어서,
    상기 정확도 파라미터(145)는
    Figure pct00796
    이고, 상기 고정 소수점 표현의 비트 길이는 상기 NN에 대해 일정하게 설정되거나, 상기 NN에 대해 일정한 기본 비트 길이와 t의 합으로 설정되는, 디지털 데이터.
  38. 청구항 27 내지 37 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)는 정수의 구문 요소(syntax element)로서 상기 NN 표현(110) 안으로 인코딩되는, 디지털 데이터.
  39. 청구항 23 내지 38 중 어느 한 항에 있어서,
    상기 정확도 파라미터(145)를 나타내는 비트들을 상기 NN 표현(110) 안에 직접 쓰기 함으로써, 또는 상기 정확도 파라미터(145)를 나타내는 비트들을 상기 장치(100)의 적응 산술 부호화기의
    등-확률 바이패스 모드를 통해 상기 NN 표현(110) 안에 인코딩함으로써 상기 정확도 파라미터(145)가 상기 NN 표현(110) 안에 인코딩되는, 디지털 데이터.
  40. 청구항 23 내지 39 중 어느 한 항에 있어서,
    상기 양자화 값(152)은 고정 소수점 표현의 형태로 상기 NN 표현(110) 안으로 인코딩되는, 디지털 데이터.
  41. 청구항 23 내지 40 중 어느 한 항에 있어서,
    상기 양자화 값(152)은 상기 이진 스트링의 형태로 상기 NN 표현(110) 안으로 인코딩되고, 상기 양자화 값(152)은 이진화 기법에 따라 상기 이진 스트링 안으로 이진화하고, 상기 이진 스트링의 비트들은 적응 산술 부호화(context-adaptive arithmetic encoding)을 이용하여 상기 비트스트림 안으로 인코딩되는, 디지털 데이터.
  42. 청구항 23 내지 41 중 어느 한 항에 있어서,
    상기 양자화 값(152)은 상기 이진 스트링의 형태로 상기 NN 표현(110) 안으로 인코딩되고, 상기 양자화 값(152)은 이진화 기법에 따라 상기 이진 스트링 안으로 이진화하고, 상기 이진 스트링의 제1 비트들은 적응 산술 부호화(context-adaptive arithmetic encoding)을 이용하여 상기 비트스트림 안으로 인코딩되고, 상기 이진 스트링의 제2 비트들은 등-확률 바이패스 모드를 이용하여 상기 비트스트림 안으로 인코딩되는, 디지털 데이터.
  43. NN 표현(110)으로부터 NN 파라미터를 유도하기 위한 장치에 있어서,
    상기 장치는,
    상기 NN 표현(110)으로부터 양자화 파라미터(142)를 유도하고;
    상기 NN 표현(110)으로부터 양자화 값(152)을 유도하고; 및
    상기 양자화 파라미터(142)로부터, 상기 양자화 파라미터(142)에 의해 유도된 피제수와 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여 승수(144)를 및 상기 나눗셈의 몫의 라운딩에 기초하여 비트 천이 수(146)를 유도하도록 구성되고,
    상기 NN 파라미터(130)는 상기 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 승수(144)에 따른 인자(148)와 상기 양자화 값(152) 사이의 곱셈에 대응하는, 장치.
  44. 청구항 43에 있어서,
    상기 정확성 파라미터(145)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  45. 청구항 43 또는 44에 있어서,
    상기 NN 파라미터(130)는,
    한 쌍의 뉴론(10) 사이의 뉴론간 활성화 피드-포워드(12)에 가중치를 주기 위한 가중치 파라미터;
    뉴럴 네트워크 층(layer)의 아핀 변환을 파라미터화 하기 위한 배치 정규화 파라미터; 및
    미리 결정된 뉴럴 네트워크 뉴론(10)에 대한 인바운드 뉴론간 활성화 피드-포워드들(12)의 합을 천이하기 위한 천이(bias) 중 하나인 장치.
  46. 청구항 43 내지 45 중 어느 한 항의 장치에 있어서,
    상기 NN 파라미터(130)는 NN의 복수의 뉴론간 활성화 피드-포워드들 중 단일의 뉴론간 활성화 피드-포워드(12) 면에서 상기 NN을 파라미터화하고,
    상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 파라미터(142)를 상기 NN 표현(110)으로부터 유도하고 및 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 값(152)을 상기 NN 표현(110)으로부터 유도함으로써, 상기 장치는 상기 복수의 뉴론간 활성화 피드-포워드들 각각에 대해, 대응하는 NN 파라미터(130)를 상기 NN 표현(110)으로부터 유도하도록 구성되고,
    상기 장치는 상기 연관 양자화 파라미터(142)로부터, 상기 연관 양자화 파라미터(142)에 의해 유도된 피제수와 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 승수(144)를 유도하고, 상기 나눗셈의 몫의 라운딩에 기초하여 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 비트 천이 수(146)를 유도하도록 구성되고,
    상기 각각의 뉴론간 활성화 피드-포워드(12)에 대한 상기 대응하는 NN 파라미터(130)는, 상기 연관 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 연관 승수(144)에 따른 인자(148)와 상기 연관 양자화 값(152) 사이의 곱셈에 대응하는, 장치.
  47. 청구항 43 내지 45 중 어느 한 항에 있어서,
    상기 장치는 NN의 복수의 뉴론간 활성화 피드-포워드들(122)을 뉴론간 활성화 피드-포워드들의 서브-그룹들(122a,122b)로 세분화하여, 각각의 서브-그룹(122a,122b)은 상기 NN의 연관된 한 쌍의 NN 층들과 연관되고, 상기 연관된 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들을 포함하고, 상기 연관된 한 쌍의 층들 외의 다른 한 쌍의 NN 층들 사이의 뉴론간 활성화 피드-포워드들은 배제하고, 하나 이상의 서브-그룹(122a,122b)은 미리 결정된 NN 층과 연관되며,
    상기 NN 파라미터(130)는 상기 NN의 상기 복수의 뉴론간 활성화 피드-포워드들(122) 중 단일 뉴론간 활성화 피드-포워드(12) 면에서 상기 NN(20)을 파라미터화하고,
    상기 장치(100)는, 뉴론간 활성화 피드-포워드들의 서브-그룹(122a,122b) 각각에 대해,
    상기 NN 표현(110)으로부터 상기 각각의 서브-그룹(122a,122b)과 연관된 연관 양자화 파라미터(142)를 유도하고;
    상기 연관 양자화 파라미터(142)에 의해 유도된 피제수와 상기 각각의 서브-그룹(122a,122b)과 관련된 연관 정확성 파라미터(145)에 의해 유도된 제수간 나눗셈의 나머지에 기초하여 상기 연관 양자화 파라미터(142)로부터, 상기 각각의 서브-그룹(122a,122b)과 관련된 연관 승수(144)를 유도하고;
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 연관 양자화 파라미터(142)로부터, 상기 각각의 서브 그룹(122a,122b)과 관련된 연관 비트 천이 수(146)를 유도하고; 및
    상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해 상기 NN 표현(110)으로부터 상기 각각의 뉴론간 활성화 피드-포워드(12)와 관련된 연관 양자화 값(152)을 유도함으로써,
    상기 복수의 뉴론간 활성화 피드-포워드들(122) 각각에 대해, 대응하는 NN 파라미터(130)를 상기 NN 표현(110)으로부터 유도하도록 구성되고,
    상기 각각의 뉴론간 활성화 피드-포워드(12)에 대한 상기 대응하는 NN 파라미터(130)는, 상기 각각의 뉴론간 활성화 피드-포워드(12)가 포함되는 상기 서브-그룹(122a,122b)의 상기 연관 비트 천이 수(146)에 따른 비트 수만큼 비트-천이되는, 상기 각각의 뉴론간 활성화 피드-포워드(12)가 포함되는 상기 서브-그룹(122a,122b)과 관련된 상기 연관 승수(144)에 따른 인자(148)와 상기 연관 양자화 값(152) 사이의 곱에 대응하는, 장치.
  48. 청구항 46 또는 47에 있어서,
    상기 연관 정확도 파라미터(145)는 상기 NN에 걸쳐 전역적으로 또는 각각의 NN 층 내에서 동일하게 값이 주어지는, 장치.
  49. 청구항 46 내지 48 중 어느 한 항에 있어서,
    상기 연관 정확도 파라미터(145)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  50. 청구항 46 내지 49 중 어느 한 항에 있어서,
    상기 연관 양자화 파라미터(142)를 상기 NN 표현(110)으로부터 참조 양자화 파라미터와의 차(difference)의 형태로 유도하도록 구성되는 장치.
  51. 청구항 43 내지 50 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)로부터 상기 승수(144) 및 상기 비트 천이 수(146)를 다음 수식에 따라 유도하도록 구성되고:
    Figure pct00797

    Figure pct00798

    여기에서,
    Figure pct00799
    은 상기 승수(144),
    Figure pct00800
    는 상기 비트 천이 수(146),
    Figure pct00801
    는 상기 양자화 파라미터(142),
    Figure pct00802
    는 상기 정확도 파라미터(145),
    Figure pct00803
    는 그것의 피연산자보다 더 작거나 같은 최대 정수를 주는 바닥 연산자이고,
    Figure pct00804
    Figure pct00805
    에 대해
    Figure pct00806
    를 주는 모듈로 연산자이며,
    따라서 상기 NN 파라미터(130)는
    Figure pct00807

    이며, 여기에서 P는 상기 양자화 값(152)인, 장치.
  52. 청구항 43 내지 51 중 어느 한 항에 있어서,
    상기 정확도 파라미터(145)는 2의 거듭제곱인, 장치.
  53. 청구항 43 내지 52 중 어느 한 항에 있어서,
    적응 산술 부호화(CABAC, context-adaptive binary arithmetic encoding)을 이용함으로써; 또는
    상기 양자화 파라미터(142)를 나타내는 비트들을 상기 NN 표현(110)으로부터 직접 읽음으로써; 또는
    상기 양자화 파라미터(142)를 나타내는 비트들을 상기 장치(100)의 적응 산술 부호화기(context-adaptive binary encoder)의 등-확률(equi-probability) 바이패스 모드를 통해 상기 NN 표현(110)으로부터 유도함으로써,
    상기 양자화 파라미터(142)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  54. 청구항 43 내지 53 중 어느 한 항에 있어서,
    이진화 기법을 이용하여 이진 스트링을 역-이진화함으로써, 상기 양자화 파라미터(142)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  55. 청구항 54에 있어서,
    상기 이진화 기법은 Exponential-Golomb-Code 인 장치.
  56. 청구항 43 내지 55 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)를 고정 소수점 표현 형태로 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  57. 청구항 56에 있어서,
    상기 정확도 파라미터(145)는
    Figure pct00808
    이고, 상기 고정 소수점 표현의 비트 길이는 상기 NN(20)에 대해 일정하게 설정되거나, 상기 NN(20)에 대해 일정한 기본 비트 길이와 t의 합으로 설정되는, 장치.
  58. 청구항 43 내지 57 중 어느 한 항에 있어서,
    상기 양자화 파라미터(142)를 정수의 구문 요소(syntax element)로서 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  59. 청구항 43 내지 58 중 어느 한 항에 있어서,
    상기 정확도 파라미터(145)를 나타내는 비트들을 상기 NN 표현(110)으로부터 직접 읽음으로써, 또는 상기 정확도 파라미터(145)를 나타내는 비트들을 상기 장치(100)의 적응 산술 부호화기의 등-확률 바이패스 모드를 통해 상기 NN 표현(110)으로부터 유도함으로써 상기 정확도 파라미터(145)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  60. 청구항 43 내지 59 중 어느 한 항에 있어서,
    상기 NN 표현(110)으로부터 상기 양자화 값(152)을 고정 소수점 표현 형태로 유도하도록 구성되는 장치.
  61. 청구항 43 내지 60 중 어느 한 항에 있어서,
    이진화 기법에 따라 이진 스트링으로부터 상기 양자화 값(152)을 역-이진화하고, 적응 산술 복호화(context-adaptive arithmetic decoding)를 이용하여 상기 NN 표현(100)으로부터 상기 이진 스트링의 비트들을 디코딩함으로써, 상기 양자화 값(152)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  62. 청구항 43 내지 61 중 어느 한 항에 있어서,
    이진화 기법에 따라 이진 스트링으로부터 상기 양자화 값(152)을 역-이진화하고, 적응 산술 복호화(context-adaptive arithmetic decoding)를 이용하여 상기 NN 표현(100)으로부터 상기 이진 스트링의 제1 비트들을 디코딩하고, 등-확률 바이패스 모드를 이용하여 상기 이진 스트링의 제2 비트들을 디코딩함으로써, 상기 양자화 값(152)를 상기 NN 표현(110)으로부터 유도하도록 구성되는 장치.
  63. NN(20)을 이용하여 추론을 수행하는 디바이스(400)에 있어서,
    상기 NN(20)을 파라미터화하도록 구성되는 NN 파라미터라이저(410)로서, 앞선 청구항 43 내지 62 중 어느 한 항에 따른 NN 표현으로부터 NN 파라미터(130)를 유도하기 위한 장치(300)를 포함하는 상기 NN 파라미터라이저(410), 및
    상기 NN(20)을 이용하여 NN 입력(440)에 기초하여 추론 출력(430)을 계산하도록 구성되는 계산 유닛(420)을 포함하는 디바이스(400).
  64. 청구항 63에 있어서,
    상기 NN 파라미터라이저(410)는,
    상기 장치(300)를 통해, 제1 NN 파라미터(130) 및 제2 NN 파라미터(130) 중 적어도 하나를 유도하도록 구성되어, 상기 제1 NN 파라미터(130)는 제1 비트 수(146)만큼 비트-천이되는, 제1 인자(148) 및 제1 양자화 값(152) 사이의 곱셈에 대응하고, 상기 제2 NN 파라미터(130)는 제2 비트 수(146)만큼 비트-천이되는, 제2 인자(148) 및 제2 양자화 값(152) 사이의 곱셈에 대응하도록 하고; 및
    상기 제1 NN 파라미터(130)에 대한 제1 양자화 값(152)에 의해 형성되고, 상기 제1 승수(144)로 가중치가 곱해진 제1 가수와, 상기 제1 NN 파라미터에 대한 제2 양자화 값(152)에 의해 형성되고, 상기 제2 승수(144)로 가중치가 곱하여지고, 상기 제1 및 제2 비트 수들(146)의 차만큼 비트 천이되는 제2 가수 사이의 덧셈을 형성하고; 상기 제1 및 제2 비트 수들(146) 중 하나에 따른 비트 수만큼 상기 제1 및 제2 가수들의 합을 비트 천이함으로써, 상기 제1 NN 파라미터(130) 및 상기 제2 NN 파라미터(130)를 합하여 상기 NN(20)의 최종 NN 파라미터(130)를 생성하도록 구성되는, 디바이스(400).
  65. 청구항 64에 있어서,
    상기 제1 NN 파라미터(130)는 상기 NN(20)의 베이스 층 표현(base layer representation)을 나타내고, 상기 제2 NN 파라미터(130)는 상기 NN의 향상 층 표현(enhancement layer representation)을 나타내고, 또는
    상기 제1 NN 파라미터(130)는 상기 NN(20)의 현재의 표현을 나타내고, 상기 제2 NN 파라미터(130)는 상기 현재 NN 표현(110)의 업데이트를 나타내고, 또는
    상기 제1 NN 파라미터(130)는 미리 결정된 뉴럴 네트워크 뉴론(10)에 대한 인바운드 뉴론간 활성화 피드-포워드들(12)의 합을 편향시키기 위한 편향(bias)을 나타내고, 상기 제2 NN 파라미터(130)는 뉴럴 네트워크 층의 아핀 변환을 파라미터화하기 위한 배치 정규화 파라미터를 나타내는, 디바이스(400).
  66. 청구항 63 내지 65 중 어느 한 항에 있어서,
    상기 NN 파라미터라이저(410)는 상기 장치(300)를 통해, 제3 NN 파라미터(130) 및 제4 NN 파라미터(130) 중 적어도 하나를 유도하도록 구성되어, 상기 제3 NN 파라미터(130)는 제3 비트 수(146)만큼 비트-천이되는, 제3 인자(148) 및 제3 양자화 값(152) 사이의 곱셈에 대응하고, 상기 제4 NN 파라미터(130)는 제4 비트 수(146)만큼 비트-천이되는, 제4 인자(148) 및 제4 양자화 값(152) 사이의 곱셈에 대응하도록 하고; 및
    상기 계산 유닛(420)은 상기 계산을 수행할 때, 상기 제3 비트 수에 의해 형성되는 제1 가수 및 상기 제4 비트 수에 의해 형성되는 제2 가수를 포함하는 덧셈에 대응하는 비트 수만큼 비트-천이되는, 상기 제3 NN 파라미터(130)에 대한 제3 양자화 값(152)에 의해 형성되는 제1 인자, 상기 제3 승수(144)에 의해 형성되는 제2 인자, 상기 제4 양자화 파라미터(130)에 대한 제4 양자화 값(152)에 의해 형성되는 제3 인자, 및 상기 제4 승수(144)에 의해 형성되는 제4 인자의 곱셈을 형성함으로써, 상기 제3 NN 파라미터(130) 및 상기 제4 NN 파라미터(130)의 곱셈의 결과를 제공하도록 구성되는, 디바이스(400).
  67. 청구항 66에 있어서,
    상기 제3 NN 파라미터(130)는 제1 NN 층(114)의 제1 뉴론(101)로부터 제2 뉴론 층(116)의 제2 뉴론(102)으로의 뉴론간 활성화 피드-포워드(12)에 대한 가중치 곱셈을 위한 가중치 파라미터를 나타내고, 상기 제4 NN 파라미터(130)는 배치 정규화 파라미터를 나타내는, 디바이스(400).
  68. 청구항 67에 있어서,
    상기 배치 정규화 파라미터는 상기 제2 NN 층에 대해 상기 제1 뉴론(101)의 활성화 피드-포워드 증폭을 조정하기 위한 것인, 디바이스(400)
  69. 청구항 63 내지 68 중 어느 한 항에 있어서,
    활성화(an activation)를 위해 제5 양자화 파라미터(142) 및 제5 양자화 값(152)를 결정하여, 상기 제5 양자화 파라미터(142)로부터, 상기 제5 양자화 파라미터(142)에 의해 유도되는 피제수와 상기 활성화에 연관된 정확도 파라미터(145)에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 상기 제5 승수(144)의 유도 및 상기 나눗셈의 몫의 라운딩에 기초하여 제5 비트 천이 수(146)의 유도하여, 상기 제5 비트 천이 수(146)에 따른 제5 비트 수만큼 비트-천이되는, 상기 제5 승수(144)에 따른 인자(148) 및 상기 제5 양자화 값(152) 사이의 곱셈에 대응하는 상기 양자화된 값(130)을 얻도록 함으로써, 상기 활성화를 양자화된 값(130)으로 양자화하여 상기 NN 입력(440)을 양자화하도록 구성되는 디바이스(400).
  70. 청구항 69에 있어서,
    상기 NN 파라미터라이저(410)는,
    상기 장치(300)를 통해, 제6 NN 파라미터(130)를 유도하도록 구성되어, 상기 제6 NN 파라미터(130)는 제6 비트 수(146)만큼 비트-천이되는, 제6 인자(148) 및 제6 양자화 값(152) 사이의 곱셈에 대응하도록 하고; 및
    상기 계산 유닛(420)은 상기 계산을 수행할 때, 상기 제6 비트 수에 의해 형성되는 제1 가수 및 상기 제4 비트 수에 의해 형성되는 제2 가수를 포함하는 덧셈에 대응하는 비트 수만큼 비트-천이되는, 상기 제6 NN 파라미터(130)에 대한 제6 양자화 값(152)에 의해 형성되는 제1 인자, 상기 제6 승수(144)에 의해 형성되는 제2 인자, 상기 제6 양자화 파라미터(130)에 대한 제5 양자화 값(152)에 의해 형성되는 제3 인자, 및 상기 제5 승수(144)에 의해 형성되는 제4 인자의 곱셈을 형성함으로써, 상기 제6 NN 파라미터(130) 및 상기 활성화의 곱셈의 결과를 제공하도록 구성되는, 디바이스(400).
  71. NN(20)을 이용하여 추론을 수행하는 디바이스(500)에 있어서,
    상기 디바이스(500)는 상기 NN(20)을 이용하여 NN 입력(440)에 기초해 추론 출력(430)을 계산하도록 구성되고,
    상기 NN(20)은 한 쌍의 NN 층들을 포함하고, 상기 한 쌍의 NN 층들 중 제1 층으로부터 제2 층으로의 뉴론간 활성화 피드-포워드들(12)을 포함하고,
    상기 디바이스(500)는 상기 제1 NN 층의 상기 뉴럴 네트워크의 뉴론들(10)의 상기 활성화들로부터 행렬
    Figure pct00809
    (532)를 형성(530)하고,
    Figure pct00810
    을 계산함으로써, 상기 제1 NN 층의 상기 뉴럴 네트워크 뉴론들(10)의 활성화들에 기초하여, 상기 제2 NN 층들의 상기 뉴럴 네트워크 뉴론들(10)의 활성화들을 계산하도록 구성되고,
    여기에서,
    Figure pct00811
    는 행렬 곱셈을 나타내고,
    Figure pct00812
    Figure pct00813
    Figure pct00814
    Figure pct00815
    의 가중치 행렬(544)이고, s는 길이
    Figure pct00816
    의 전치 벡터(546)이고,
    Figure pct00817
    Figure pct00818
    의 일측의 행렬과
    Figure pct00819
    의 타 측의 전치 벡터간 컬럼-별(column wise) Hadamard 곱셈을 나타내는, 디바이스(500).

  72. 청구항 71에 있어서,
    m>n 이고, n-비트 고정 소수점 연산을 이용하여 상기 행렬 곱셈을 계산해(540) 내적(dot product)을 제공하고, m-비트 고정 소수점 연산을 이용하여 s(546)와 상기 내적을 곱하도록 구성되는 디바이스(500).
  73. 청구항 71 또는 72에 있어서,
    s(546)는
    Figure pct00820
    (544) 코딩을 위한 더 높은 압축 및/또는 더 높은 추론 정확도의 관점에서
    Figure pct00821
    (544)의 최적화의 결과인, 디바이스(500).
  74. 청구항 71 내지 73중 어느 한 항에 있어서,
    NN 표현(110)으로부터
    Figure pct00822
    (544)를 유도하도록 구성되는 NN 파라미터라이저(410)를 포함하고,
    상기 NN 파라미터라이저(410)는 NN 표현(110)으로부터 NN 파라미터(130)를 유도하기 위한, 청구항 43 내지 62 중 어느 한 항에 따른 장치(300)를 포함하는, 디바이스(500)
  75. 청구항 71 내지 74 중 어느 한 항에 있어서,
    상기 NN 파라미터라이저(410)는
    Figure pct00823
    (544)와 관련된 NN 파라미터와는 다른 양자화 파라미터(142)를 이용하여 NN 표현(110)으로부터
    Figure pct00824
    (546)을 유도하도록 구성되는, 디바이스(500).
  76. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치(600)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00825

    여기에서,
    Figure pct00826
    ,
    Figure pct00827
    ,
    Figure pct00828
    , 및
    Figure pct00829
    는 배치 정규화 파라미터들이고,
    Figure pct00830
    는 가중치 행렬이고,
    Figure pct00831
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00832
    는 편향을 형성하는 전치 벡터이고,
    Figure pct00833
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct00834
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00835
    는 행렬 곱을 나타내며,
    상기 장치는,
    Figure pct00836
    ,
    Figure pct00837
    ,
    Figure pct00838
    또는
    Figure pct00839
    ,
    Figure pct00840
    , 및
    Figure pct00841
    (610)를 수신하고
    다음 수식을 계산하고(620):
    1)
    Figure pct00842
    ,
    2)
    Figure pct00843
    ,
    상기 NN 표현(100) 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct00844
    Figure pct00845
    를 코딩하도록 구성되어,
    상기 배치 정규화 연산자(710)를 다음과 같이 정의하도록 하며:
    Figure pct00846

    여기에서,
    Figure pct00847
    ,
    Figure pct00848
    ,
    Figure pct00849
    := 0,
    Figure pct00850
    는 미리 결정된 파라미터인, 장치(600).
  77. 청구항 76에 있어서,
    상기 미리 결정된 파라미터는 1 또는 1-
    Figure pct00851
    인, 장치(600).
  78. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치(600)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00852

    여기에서,
    Figure pct00853
    ,
    Figure pct00854
    ,
    Figure pct00855
    , 및
    Figure pct00856
    는 배치 정규화 파라미터들이고,
    Figure pct00857
    는 가중치 행렬이고,
    Figure pct00858
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00859
    는 편향을 형성하는 전치 벡터이고,
    Figure pct00860
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00861
    는 행렬 곱을 나타내며,
    상기 장치는,
    Figure pct00862
    ,
    Figure pct00863
    ,
    Figure pct00864
    또는
    Figure pct00865
    ,
    Figure pct00866
    , 및
    Figure pct00867
    (610)를 수신하고
    다음 수식을 계산하고(620):
    1)
    Figure pct00868

    2)
    Figure pct00869

    상기 NN 표현(100) 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct00870
    Figure pct00871
    를 코딩하도록 구성되어,
    상기 배치 정규화 연산자(710)를 다음과 같이 정의하도록 하며:
    Figure pct00872

    여기에서,
    Figure pct00873
    ,
    Figure pct00874
    ,
    Figure pct00875
    := 0인, 장치(600).
  79. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치(600)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00876

    여기에서,
    Figure pct00877
    ,
    Figure pct00878
    ,
    Figure pct00879
    , 및
    Figure pct00880
    는 배치 정규화 파라미터들이고,
    Figure pct00881
    는 가중치 행렬이고,
    Figure pct00882
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00883
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct00884
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00885
    는 행렬 곱을 나타내며,
    상기 장치는,
    Figure pct00886
    ,
    Figure pct00887
    ,
    Figure pct00888
    또는
    Figure pct00889
    ,
    Figure pct00890
    , 및
    Figure pct00891
    (610)를 수신하고
    다음 수식을 계산하고(620):
    1)
    Figure pct00892

    2)
    Figure pct00893

    상기 NN 표현(100) 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct00894
    Figure pct00895
    를 코딩하도록 구성되어,
    상기 배치 정규화 연산자(710)를 다음과 같이 정의하도록 하며:
    Figure pct00896

    여기에서,
    Figure pct00897
    ,
    Figure pct00898
    ,
    Figure pct00899
    는 미리 결정된 파라미터인, 장치(600).
  80. 청구항 79에 있어서,
    상기 미리 결정된 파라미터는 1 또는 1-
    Figure pct00900
    인, 장치(600).
  81. NN의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 장치(600)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00901

    여기에서,
    Figure pct00902
    ,
    Figure pct00903
    ,
    Figure pct00904
    , 및
    Figure pct00905
    는 배치 정규화 파라미터들이고,
    Figure pct00906
    는 가중치 행렬이고,
    Figure pct00907
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00908
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00909
    는 행렬 곱을 나타내며,
    상기 장치는,
    Figure pct00910
    ,
    Figure pct00911
    또는
    Figure pct00912
    ,
    Figure pct00913
    , 및
    Figure pct00914
    (610)를 수신하고
    다음 수식을 계산하고(620):
    1)
    Figure pct00915

    2)
    Figure pct00916

    상기 NN 표현(100) 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct00917
    Figure pct00918
    를 코딩하도록 구성되어,
    상기 배치 정규화 연산자(710)를 다음과 같이 정의하도록 하며:
    Figure pct00919

    여기에서,
    Figure pct00920
    ,
    Figure pct00921
    인, 장치(600).
  82. 청구항 76 내지 81 중 어느 한 항에 있어서,
    Figure pct00922
    의 모든 컴포넌트들이 서로 동일하다는 것과 그것의 값을 상기 표현 안에 표시하고, 및/또는
    Figure pct00923
    의 모든 컴포넌트들이 서로 동일하다는 것과 그것의 값을 상기 표현 안에 표시하고, 및/또는
    존재한다면,
    Figure pct00924
    의 모든 컴포넌트들이 서로 동일하다는 것과 그것의 값을 상기 표현 안에 표시하도록 구성되는, 장치(600).
  83. 청구항 76 내지 82 중 어느 한 항에 있어서,
    상기 장치(600)는 2개의 배치 정규화 코딩 모드 사이에서 전환될 수 있는 것으로 구성되고,
    제1 배치 정규화 코딩 모드에서 상기 장치(600)는
    Figure pct00925
    Figure pct00926
    의 계산 및 코딩을 수행하도록 구성되고,
    제2 배치 정규화 코딩 모드에서 상기 장치(600)는 수신된
    Figure pct00927
    ,
    Figure pct00928
    또는
    Figure pct00929
    ,
    Figure pct00930
    , 및
    Figure pct00931
    , 그리고 있다면
    Figure pct00932
    를 코딩하도록 구성되는, 장치(600).
  84. 청구항 76 내지 83 중 어느 한 항에 있어서,
    청구항 1 내지 22 중 어느 한 항의 장치(100)를 더 포함하여,
    Figure pct00933
    Figure pct00934
    를 양자화하고 상기 NN 표현(110) 안으로 코딩하도록 하는, 장치(600).
  85. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 장치(700)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00935

    여기에서,
    Figure pct00936
    ,
    Figure pct00937
    ,
    Figure pct00938
    , 및
    Figure pct00939
    는 배치 정규화 파라미터들이고,
    Figure pct00940
    는 가중치 행렬이고,
    Figure pct00941
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00942
    는 편향을 형성하는 전치 벡터이고,
    Figure pct00943
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct00944
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00945
    는 행렬 곱을 나타내며,
    상기 장치(700)는,
    상기 NN 표현(110)으로부터
    Figure pct00946
    (722) 및
    Figure pct00947
    (724)를 유도(720)하도록, 및
    Figure pct00948
    ,
    Figure pct00949
    ,
    Figure pct00950
    := 0임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)에 의해 추론 또는 유도(730)하도록 구성되고, 여기에서
    Figure pct00951
    는 미리 결정된 파라미터인, 장치(700).
  86. 청구항 85에 있어서,
    상기 미리 결정된 파라미터는 1 또는 1-
    Figure pct00952
    인, 장치(700).
  87. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 장치(700)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00953

    여기에서,
    Figure pct00954
    ,
    Figure pct00955
    ,
    Figure pct00956
    , 및
    Figure pct00957
    는 배치 정규화 파라미터들이고,
    Figure pct00958
    는 가중치 행렬이고,
    Figure pct00959
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00960
    는 편향을 형성하는 전치 벡터이고,
    Figure pct00961
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00962
    는 행렬 곱을 나타내며,
    상기 장치(700)는,
    상기 NN 표현(110)으로부터
    Figure pct00963
    (722) 및
    Figure pct00964
    (724)를 유도(720)하고, 및
    Figure pct00965
    ,
    Figure pct00966
    ,
    Figure pct00967
    := 0임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도(730)하도록 구성되는, 장치(700).
  88. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 장치(700)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00968

    여기에서,
    Figure pct00969
    ,
    Figure pct00970
    ,
    Figure pct00971
    , 및
    Figure pct00972
    는 배치 정규화 파라미터들이고,
    Figure pct00973
    는 가중치 행렬이고,
    Figure pct00974
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00975
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct00976
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00977
    는 행렬 곱을 나타내며,
    상기 장치(700)는,
    상기 NN 표현(110)으로부터
    Figure pct00978
    (722) 및
    Figure pct00979
    (724)를 유도(720)하도록, 및
    Figure pct00980
    ,
    Figure pct00981
    임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도(730)하도록 구성되고,
    Figure pct00982
    는 미리 결정된 파라미터인, 장치(700).
  89. 청구항 88에 있어서,
    상기 미리 결정된 파라미터는 1 또는 1-
    Figure pct00983
    인, 장치(700).
  90. NN(20)의 배치 정규화 연산자(710)의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 장치(700)에 있어서,
    상기 배치 정규화 연산자(710)는 다음과 같이 정의되고:
    Figure pct00984

    여기에서,
    Figure pct00985
    ,
    Figure pct00986
    ,
    Figure pct00987
    , 및
    Figure pct00988
    는 배치 정규화 파라미터들이고,
    Figure pct00989
    는 가중치 행렬이고,
    Figure pct00990
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct00991
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct00992
    는 행렬 곱을 나타내며,
    상기 장치(700)는,
    상기 NN 표현(110)으로부터
    Figure pct00993
    (722) 및
    Figure pct00994
    (724)를 유도(720)하고, 및
    Figure pct00995
    ,
    Figure pct00996
    임을 그것의 모든 컴포넌트에 적용하는 일 시그널링(734)을 통해 추론 또는 유도(730)하도록 구성되는, 장치(700).
  91. 청구항 85 내지 90 중 어느 한 항에 있어서,
    Figure pct00997
    의 모든 컴포넌트들이 서로 동일하다는 것과 그것의 값을 상기 표현으로부터 유도하도록, 및/또는
    Figure pct00998
    의 모든 컴포넌트들이 서로 동일하다는 것과 그것의 값을 상기 표현으로부터 유도하도록, 및/또는
    존재한다면,
    Figure pct00999
    의 모든 컴포넌트들이 서로 동일하다는 것과 그것의 값을 상기 표현으로부터 유도하도록 구성되는, 장치(700).
  92. 청구항 85 내지 91 중 어느 한 항에 있어서,
    상기 장치(700)는 2개의 배치 정규화 코딩 모드 사이에서 전환될 수 있는 것으로 구성되고,
    제1 배치 정규화 코딩 모드에서 상기 장치(700)는
    Figure pct01000
    Figure pct01001
    의 상기 유도 및 상기 추론 또는 유도를 수행하도록 구성되고,
    제2 배치 정규화 코딩 모드에서 상기 장치(700)는 수신된
    Figure pct01002
    ,
    Figure pct01003
    또는
    Figure pct01004
    ,
    Figure pct01005
    , 및
    Figure pct01006
    , 그리고 있다면
    Figure pct01007
    를 상기 표현으로부터 디코딩하도록 구성되는, 장치(700).
  93. 청구항 85 내지 92 중 어느 한 항에 있어서,
    청구항 43 내지 62 중 어느 한 항의 장치(700)를 포함하여, 상기 NN 표현(110)으로부터
    Figure pct01008
    Figure pct01009
    를 유도할 수 있도록 하는, 장치(700).
  94. NN 표현을 생성하는 방법에 있어서,
    양자화 파라미터에 의해 유도되는 피제수 및 정확도 파라미터에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 상기 양자화 파라미터로부터 유도 가능한 승수가 있도록, 및
    상기 나눗셈의 몫의 라운딩에 기초하여 상기 양자화 파라미터로부터 유도 가능한 비트 천이 수가 있도록 상기 양자화 파라미터 및 양자화 값을 결정하여 NN 파라미터를 양자화된 값으로 양자화하는 단계를 포함하고,
    이에 따라 상기 NN 파라미터의 상기 양자화된 값은 상기 비트 천이 수에 따른 비트 수만큼 비트-천이되는, 상기 승수에 따른 인자 및 상기 양자화 값 사이의 곱에 대응하는, 방법.
  95. NN 표현으로부터 NN 파라미터를 유도하는 방법에 있어서,
    상기 NN 표현으로부터 양자화 파라미터를 유도하는 단계,
    상기 NN 표현으로부터 양자화 값을 유도하는 단계, 및
    상기 양자화 파라미터로부터, 상기 양자화 파라미터에 의해 유도되는 피제수 및 정확도 파라미터에 의해 유도되는 제수 사이의 나눗셈의 나머지에 기초하여 승수를; 및 상기 나눗셈의 몫의 라운딩에 기초하여 비트 천이 수를 유도하는 단계를 포함하고,
    상기 NN 파라미터는 상기 비트 천이 수에 따른 비트 수만큼 비트-천이되는, 상기 승수에 따른 인자 및 상기 양자화 값 사이의 곱에 대응하는, 방법.
  96. NN을 이용하여 추론을 수행하는 방법에 있어서,
    NN 표현으로부터 NN 파라미터를 유도하기 위하여 청구항 95에 따른 상기 방법을 이용하여 상기 NN을 파라미터화하는 단계, 및
    상기 NN을 이용하여 NN 입력에 기초하여 추론 출력을 계산하는 단계를 포함하는 방법.
  97. NN을 이용하여 추론을 수행하는 방법에 있어서,
    상기 방법은 상기 NN을 이용하여 NN 입력에 기초해 추론 출력을 계산하는 단계를 포함하고,
    여기에서, 상기 NN은 한 쌍의 NN 층들을 포함하고, 상기 한 쌍의 NN 층들 중 제1 NN층으로부터 제2 NN층으로의 뉴론간 활성화 피드-포워드들을 포함하고,
    상기 방법은 상기 제1 NN 층의 상기 뉴럴 네트워크의 뉴론들의 상기 활성화들로부터 행렬
    Figure pct01010
    를 형성하고, s
    Figure pct01011
    을 계산함으로써, 상기 제1 NN 층의 상기 뉴럴 네트워크 뉴론들의 활성화들에 기초하여, 상기 제2 NN 층들의 상기 뉴럴 네트워크 뉴론들의 활성화들을 계산하는 단계를 포함하고,
    여기에서,
    Figure pct01012
    는 행렬 곱셈을 나타내고,
    Figure pct01013
    Figure pct01014
    Figure pct01015
    Figure pct01016
    의 가중치 행렬이고, s는 길이
    Figure pct01017
    의 전치 벡터이고,
    Figure pct01018
    Figure pct01019
    의 일 측에는 행렬과
    Figure pct01020
    의 타 측에는 전치 벡터간 컬럼-별(column wise) Hadamard 곱셈을 나타내는, 방법.
  98. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:
    Figure pct01021

    여기에서,
    Figure pct01022
    ,
    Figure pct01023
    ,
    Figure pct01024
    , 및
    Figure pct01025
    는 배치 정규화 파라미터들이고,
    Figure pct01026
    는 가중치 행렬이고,
    Figure pct01027
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01028
    는 편향을 형성하는 전치 벡터이고,
    Figure pct01029
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct01030
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01031
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01032
    ,
    Figure pct01033
    ,
    Figure pct01034
    또는
    Figure pct01035
    ,
    Figure pct01036
    , 및
    Figure pct01037
    을 수신하는 단계;
    다음 수식을 계산하는 단계: 및
    1)
    Figure pct01038

    2)
    Figure pct01039

    상기 NN 표현 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct01040
    Figure pct01041
    를 코딩하는 단계를 포함하여,
    상기 배치 정규화 연산자를 다음과 같이 정의하도록 하며:
    Figure pct01042

    여기에서,
    Figure pct01043
    ,
    Figure pct01044
    ,
    Figure pct01045
    := 0,
    Figure pct01046
    는 미리 결정된 파라미터인, 방법.
  99. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:
    Figure pct01047

    여기에서,
    Figure pct01048
    ,
    Figure pct01049
    ,
    Figure pct01050
    , 및
    Figure pct01051
    는 배치 정규화 파라미터들이고,
    Figure pct01052
    는 가중치 행렬이고,
    Figure pct01053
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01054
    는 편향을 형성하는 전치 벡터이고,
    Figure pct01055
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01056
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01057
    ,
    Figure pct01058
    ,
    Figure pct01059
    또는
    Figure pct01060
    ,
    Figure pct01061
    , 및
    Figure pct01062
    를 수신하는 단계
    다음 수식을 계산하는 단계: 및
    1)
    Figure pct01063

    2)
    Figure pct01064

    상기 NN 표현 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct01065
    Figure pct01066
    를 코딩하는 단계를 포함하여,
    상기 배치 정규화 연산자를 다음과 같이 정의하도록 하며:
    Figure pct01067

    여기에서,
    Figure pct01068
    ,
    Figure pct01069
    ,
    Figure pct01070
    := 0 인, 방법.
  100. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:
    Figure pct01071

    여기에서,
    Figure pct01072
    ,
    Figure pct01073
    ,
    Figure pct01074
    , 및
    Figure pct01075
    는 배치 정규화 파라미터들이고,
    Figure pct01076
    는 가중치 행렬이고,
    Figure pct01077
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01078
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct01079
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01080
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01081
    ,
    Figure pct01082
    또는
    Figure pct01083
    ,
    Figure pct01084
    , 및
    Figure pct01085
    을 수신하는 단계;
    다음 수식을 계산하는 단계: 및
    1)
    Figure pct01086

    2)
    Figure pct01087

    상기 NN 표현 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct01088
    Figure pct01089
    를 코딩하는 단계를 포함하여,
    상기 배치 정규화 연산자를 다음과 같이 정의하도록 하며:
    Figure pct01090

    여기에서,
    Figure pct01091
    ,
    Figure pct01092
    ,
    Figure pct01093
    는 미리 결정된 파라미터인, 방법.
  101. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현 안으로 코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:
    Figure pct01094

    여기에서,
    Figure pct01095
    ,
    Figure pct01096
    ,
    Figure pct01097
    , 및
    Figure pct01098
    는 배치 정규화 파라미터들이고,
    Figure pct01099
    는 가중치 행렬이고,
    Figure pct01100
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01101
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01102
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01103
    ,
    Figure pct01104
    또는
    Figure pct01105
    ,
    Figure pct01106
    , 및
    Figure pct01107
    을 수신하는 단계;
    다음 수식을 계산하는 단계: 및
    1)
    Figure pct01108

    2)
    Figure pct01109
    ,
    상기 NN 표현 안에 상기 배치 정규화 연산자의 NN 파라미터로서
    Figure pct01110
    Figure pct01111
    를 코딩하는 단계를 포함하여,
    상기 배치 정규화 연산자를 다음과 같이 정의하도록 하며:
    Figure pct01112

    여기에서,
    Figure pct01113
    ,
    Figure pct01114
    인, 방법.
  102. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:
    Figure pct01115

    여기에서,
    Figure pct01116
    ,
    Figure pct01117
    ,
    Figure pct01118
    , 및
    Figure pct01119
    는 배치 정규화 파라미터들이고,
    Figure pct01120
    는 가중치 행렬이고,
    Figure pct01121
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01122
    는 편향을 형성하는 전치 벡터이고,
    Figure pct01123
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct01124
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01125
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01126
    Figure pct01127
    를 상기 NN 표현으로부터 유도하는 단계; 및
    Figure pct01128
    ,
    Figure pct01129
    ,
    Figure pct01130
    := 0 임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하고,
    Figure pct01131
    는 미리 결정된 파라미터인, 방법.
  103. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:
    Figure pct01132

    여기에서,
    Figure pct01133
    ,
    Figure pct01134
    ,
    Figure pct01135
    , 및
    Figure pct01136
    는 배치 정규화 파라미터들이고,
    Figure pct01137
    는 가중치 행렬이고,
    Figure pct01138
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01139
    는 편향을 형성하는 전치 벡터이고,
    Figure pct01140
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01141
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01142
    Figure pct01143
    를 상기 NN 표현으로부터 유도하는 단계; 및
    Figure pct01144
    ,
    Figure pct01145
    ,
    Figure pct01146
    := 0임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하는, 방법.
  104. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:

    Figure pct01147

    여기에서,
    Figure pct01148
    ,
    Figure pct01149
    ,
    Figure pct01150
    , 및
    Figure pct01151
    는 배치 정규화 파라미터들이고,
    Figure pct01152
    는 가중치 행렬이고,
    Figure pct01153
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01154
    는 0에 의한 나눗셈을 피하기 위한 상수이고,
    Figure pct01155
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01156
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01157
    Figure pct01158
    를 상기 NN 표현으로부터 유도하는 단계; 및
    Figure pct01159
    ,
    Figure pct01160
    ,
    Figure pct01161
    는 미리 결정된 파라미터임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하는, 방법.
  105. NN의 배치 정규화 연산자의 NN 파라미터들을 NN 표현으로부터 디코딩하기 위한 방법에 있어서,
    상기 배치 정규화 연산자는 다음과 같이 정의되고:

    Figure pct01162

    여기에서,
    Figure pct01163
    ,
    Figure pct01164
    ,
    Figure pct01165
    , 및
    Figure pct01166
    는 배치 정규화 파라미터들이고,
    Figure pct01167
    는 가중치 행렬이고,
    Figure pct01168
    는 NN 층의 활성화들로부터 유도되는 입력 행렬이고,
    Figure pct01169
    는 일측의 행렬과 타측의 전치 벡터 사이의 컬럼-별(column wise) Hadamard 곱셈을 나타내고,
    Figure pct01170
    는 행렬 곱을 나타내며,
    상기 방법은,
    Figure pct01171
    Figure pct01172
    를 상기 NN 표현으로부터 유도하는 단계; 및
    Figure pct01173
    ,
    Figure pct01174
    임을 그것의 모든 컴포넌트에 적용하는 일 시그널링을 통해 추론 또는 유도하는 단계를 포함하는, 방법.
  106. 청구항 23 내지 42 중 어느 한 항에 따른 디지털 데이터를 포함하는 디지털 저장 매체.
  107. 청구항 94 내지 105 중 어느 한 항에 따른 상기 방법을 구현하기 위한 컴퓨터 프로그램.
  108. 청구항 1 내지 22 및 청구항 76 내지 84 중 어느 한 항에 다른 장치에 의해 생성되는 데이터 스트림.
KR1020227039626A 2020-04-14 2021-04-13 뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념 KR20230010854A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP20169502.0 2020-04-14
EP20169502 2020-04-14
PCT/EP2021/059592 WO2021209469A1 (en) 2020-04-14 2021-04-13 Improved concept for a representation of neural network parameters

Publications (1)

Publication Number Publication Date
KR20230010854A true KR20230010854A (ko) 2023-01-19

Family

ID=70456712

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227039626A KR20230010854A (ko) 2020-04-14 2021-04-13 뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념

Country Status (6)

Country Link
US (1) US20230075514A1 (ko)
EP (1) EP4136582A1 (ko)
JP (1) JP2023522886A (ko)
KR (1) KR20230010854A (ko)
CN (1) CN115917556A (ko)
WO (1) WO2021209469A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116432715B (zh) * 2023-06-14 2023-11-10 深圳比特微电子科技有限公司 一种模型压缩方法、装置和可读存储介质

Also Published As

Publication number Publication date
WO2021209469A1 (en) 2021-10-21
JP2023522886A (ja) 2023-06-01
US20230075514A1 (en) 2023-03-09
CN115917556A (zh) 2023-04-04
EP4136582A1 (en) 2023-02-22

Similar Documents

Publication Publication Date Title
Lindstrom et al. Fast and efficient compression of floating-point data
CN101399988B (zh) 减少位深的量子化方法
JP7356513B2 (ja) ニューラルネットワークのパラメータを圧縮する方法および装置
US10382789B2 (en) Systems and methods for digital media compression and recompression
TWI827010B (zh) 算術編碼器、算術解碼器、視訊編碼器、視訊解碼器、編碼方法、解碼方法及電腦程式
EP0369682A2 (en) Efficient coding method and its decoding method
Kuroki et al. Lossless image compression by two-dimensional linear prediction with variable coefficients
Wu et al. Improved decoder for transform coding with application to the JPEG baseline system
JP2023507502A (ja) ニューラルネットワークのパラメータを符号化するための概念
KR20230010854A (ko) 뉴럴 네트워크 파라미터들의 표현에 대한 향상된 개념
Sitaram et al. Efficient codebooks for vector quantization image compression with an adaptive tree search algorithm
Sano et al. Segment-parallel predictor for FPGA-based hardware compressor and decompressor of floating-point data streams to enhance memory I/O bandwidth
Imai et al. A Floating Point Data Compression Using Inter-Extrapolative Predictor
Tomczak Deep generative modeling for neural compression
CN112584144A (zh) 一种图像信号处理方法及装置
JPH07123276A (ja) 画像信号のデジタル圧縮符号化方法
US20230289588A1 (en) Deep Neural Network Processing Device with Decompressing Module, Decompressing Method and Compressing Method
US20240048703A1 (en) Encoding device, decoding device, encoding method, decoding method, and program
Sugiura et al. Shape Control of Discrete Generalized Gaussian Distributions for Frequency-Domain Audio Coding
He et al. Post-training quantization is all you need to perform cross-platform learned image compression
TW202248905A (zh) 用以解碼類神經網路參數之設備、方法及電腦程式與使用更新模型用以編碼類神經網路參數之設備、方法及電腦程式
JP2023522887A (ja) ニューラルネットワークの重みパラメーターを復号化するデコーダー、エンコーダー、方法、及び確率推定パラメーターを使用する符号化表現
KR100799904B1 (ko) 역 양자화기, 역 양자화 방법 및 그 방법을 기록한 기록 매체
CN116018758A (zh) 用于对整数值序列进行编码和解码的装置,用于对整数值序列进行编码和解码的方法以及用于实现这些方法的计算机程序
Mehrotra et al. Predictive hierarchical table-lookup vector quantization with quadtree encoding

Legal Events

Date Code Title Description
A201 Request for examination