IP Library Granted Patent US 11,455,539
Granted Patent B2
US 11,455,539 · App. 16/541,275 · Granted Sep 27, 2022

Quantization method and device for weights of batch normalization layer

Inventors: Mi Young Lee (Daejeon, KR); Byung Jo Kim (Sejong-si, KR); Seong Min Kim (Sejong-si, KR); Ju-Yeob Kim (Daejeon, KR); Jin Kyu Kim (Incheon, KR); Joo Hyun Lee (Daejeon, KR)
Assignee: Electronics and Telecommunications Research Institute
G06N3/082G06F17/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,455,539
App. No.
16/541,275
Granted
Sep 27, 2022
Kind
B2
Abstract

An embodiment of the present invention provides a quantization method for weights of a plurality of batch normalization layers, including: receiving a plurality of previously learned first weights of the plurality of batch normalization layers; obtaining first distribution information of the plurality of first weights; performing a first quantization on the plurality of first weights using the first distribution information to obtain a plurality of second weights; obtaining second distribution information of the plurality of second weights; and performing a second quantization on the plurality of second weights using the second distribution information to obtain a plurality of final weights, and thereby reducing an error that may occur when quantizing the weight of the batch normalization layer.

Claims (49)

1. A quantization method for performing a quantization, comprising:

for a plurality of batch normalization layers implemented in hardware in a neural network, performing operations for quantizing weights of the plurality of batch normalization layers to reduce a bit-width requirement amount and to reduce a memory capacity required to store the weights, the operations including:

receiving a plurality of previously-learned first weights of the plurality of batch normalization layers;

obtaining first distribution information of the plurality of previously-learned first weights;

performing a first quantization on the plurality of previously-learned first weights using the first distribution information to obtain a plurality of second weights;

assigning a first bit width, which is a part of all bit widths assigned to the quantization, to the first quantization; obtaining second distribution information of the plurality of second weights;

assigning a second bit width, which is a part of all bit widths assigned to the quantization, to a second quantization;

performing the second quantization on the plurality of second weights using the second distribution information to obtain a plurality of final weights having the first bit width and the second bit width;

wherein the first bit width and the second bit width are a same bit width that is reduced from bit widths of the previously-learned first weights before the quantization.

2. The quantization method of claim 1 , wherein

the first bit width and the second bit width are 4 bits.

3. The quantization method of claim 1 , wherein the first distribution information includes an average value and a variance value of the plurality of previously-learned first weights, and the second distribution information includes an average value and a variance value of the plurality of second weights.

4. The quantization method of claim 1 , wherein

the first quantization is an integer power-of-two quantization, and

the second quantization is a dynamic range floating point quantization.

5. The quantization method of claim 1 , further comprising repeating the receiving, the obtaining of the first distribution information, and the first quantizing, for the plurality of previously-learned first weights a predetermined number of times.

6. The quantization method of claim 1 , further comprising

repeatedly applying a quantization process for a first layer of remaining layers among the plurality of batch normalization layers.

7. A batch normalization layer quantization device for performing a quantization, comprising:

an input part that receives a plurality of previously-learned first weights of a plurality of batch normalization layers implemented in hardware in a neural network, and input data of the plurality of batch normalization layers;

a processor that, for the plurality of batch normalization layers, performs operations for quantizing weights of the plurality of batch normalization layers to reduce a bit-width requirement amount and to reduce a memory capacity required to store the weights, the operations including:

obtaining first distribution information of the plurality of previously-learned first weights;

performing a first quantization on the plurality of previously-learned first weights using the first distribution information to obtain a plurality of second weights;

assigning a first bit width, which is a part of all bit widths assigned to the quantization, to the first quantization;

obtaining second distribution information of the second plurality of weights;

assigning a second bit width, which is a part of all bit widths assigned to the quantization, to a second quantization;

performing the second quantization on the plurality of second weights using the second distribution information to obtain a plurality of final weights having the first bit width and the second bit width; and

performing normalization on the input data using the plurality of final weights; and

a memory that stores the plurality of final weights using the first bit width and the second bit width;

wherein the first bit width and the second bit width are a same bit width that is reduced from bit widths of the previously-learned first weights before the quantization.

8. The batch normalization layer quantization device of claim 7 , wherein the first bit width and the second bit width are 4 bits.

9. The batch normalization layer quantization device of claim 7 , wherein

the first quantization is an integer power-of-two quantization, and

the second quantization is a dynamic range floating point quantization.

10. The batch normalization layer quantization device of claim 7 , wherein the first distribution information includes an average value and a variance value of the plurality of previously-learned first weights, and the second distribution information includes an average value and a variance value of the plurality of second weights.

11. The batch normalization layer quantization device of claim 7 , wherein the processor repeats the receiving, the obtaining of the first distribution information, and the first quantizing, for the plurality of previously-learned first weights a predetermined number of times.

12. A quantization method for performing a quantization, comprising:

for a plurality of batch normalization layers implemented in hardware in a neural network, performing operations for quantizing weights of the plurality of batch normalization layers to reduce a bit-width requirement amount and to reduce a memory capacity required to store the weights, the operations including:

receiving a plurality of previously-learned first weights of the plurality of batch normalization layers;

obtaining first distribution information of the plurality of previously-learned first weights;

performing a first quantization on the plurality of previously-learned first weights using the first distribution information to obtain a plurality of second weights;

assigning a first bit width, which is a part of all bit widths assigned to the quantization, to the first quantization;

obtaining second distribution information of the plurality of second weights; assigning a second bit width, which is a part of all bit widths assigned to the quantization, to a second quantization;

performing the second quantization on the plurality of second weights using the second distribution information to obtain a plurality of final weights having the first bit width and the second bit width; and

performing normalization on an input data using the plurality of final weights;

wherein the first bit width and the second bit width are a same bit width that is reduced from bit widths of the previously-learned first weights before the quantization.

13. The quantization method of claim 12 , wherein the first distribution information includes an average value and a variance value of the plurality of previously-learned first weights, and the second distribution information includes an average value and a variance value of the plurality of second weights.

14. The quantization method of claim 13 , further comprising

repeatedly applying a quantization process for a first layer of remaining layers among the plurality of batch normalization layers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2019
From: LEE, MI YOUNG; KIM, BYUNG JO; KIM, SEONG MIN; KIM, JU-YEOB; KIM, JIN KYU; LEE, JOO HYUN
To: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
Reel/Frame 050059/0947 →
Priority Claims (1)
KR 10-2018-0138455 · Nov 12, 2018 · national
Continuity (1)
Related Publication 20200151568A1 · May 14, 2020
Cited By (1)
US 12,293,274