IP Library Granted Patent US 11,809,995
Granted Patent B2
US 11,809,995 · App. 16/997,989 · Granted Nov 7, 2023

Information processing device and method, and recording medium for determining a variable data type for a neural network

Inventor: Yasufumi Sakai (Fuchu, JP)
Assignee: FUJITSU LIMITED
G06N3/084G06N3/063G06N5/046
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,809,995
App. No.
16/997,989
Granted
Nov 7, 2023
Kind
B2
Abstract

An information processing device, includes a memory; and a processor coupled to the memory and configured to: calculate a quantization error when a variable to be used in a neural network is quantized, generate a threshold value based on reference information related to a first recognition rate obtained by past learning of the neural network and a second recognition rate that is obtained by calculation of the neural network, determine a variable of data type to be quantized among variables to be used for calculation of the neural network based on the calculated quantization error and the generated threshold value, and execute the calculation of the neural network by using the variable of data type.

Claims (34)

1. An information processing device, comprising:

a memory; and

a processor coupled to the memory and configured to:

acquire statistical information regarding distribution of positions of most significant bits of operation result for calculation of a neural network for a first period, the operation result being obtained by using a first variable that is quantized to a first fixed-point type, the first variable being a variable among variables to be used for the calculation of the neural network,

generate a threshold value based on reference information related to a first recognition rate obtained by calculation of the neural network when the first variable that is a floating-point type is used and a second recognition rate that is obtained by the calculation of the neural network for the first period,

determine a second fixed-type for quantizing the first variable for calculation of the neural network for the second period after the first period based on the statistical information,

calculate a quantization error of the first variable between the second fixed-point type and the floating-point type, and

execute the calculation of the neural network for the second period by using the first variable of the second fixed-point type when the quantization error is less than or equal to the threshold.

2. The information processing device according to claim 1 , wherein the processor is configured to:

calculate a first difference between the first recognition rate indicated by the reference information and the second recognition rate,

generate an update amount of the threshold value based on the calculated first difference, and

calculate a threshold value after updating based on the generated update amount and the current threshold value.

3. The information processing device according to claim 1 , wherein the processor is configured to:

generate a threshold value includes generating the single threshold value, and

determine a variable to be quantized includes determining the variable to be quantized among all the variables based on the generated single threshold value.

4. The information processing device according to claim 1 , wherein the processor is configured to:

generate a threshold value includes generating the threshold value for each type of the variables, and

determine a variable to be quantized includes determining the variable to be quantized for each type of the variables based on the generated threshold value for each type.

5. The information processing device according to claim 1 , wherein the processor is configured to calculate the quantization error of a variable to be used in each layer for each of a plurality of layers included in the neural network.

6. The information processing device according to claim 1 , wherein the processor is configured to determine the first variable by a unit of the variables to be used in each layer based on the calculated quantization error and the generated threshold value.

7. The information processing device according to claim 1 , wherein the processor is configured to execute learning of the neural network by using the variable of the second fixed-point type.

8. The information processing device according to claim 1 , wherein the processor is configured to execute inference of the neural network by using the first variable of the second fixed-point type.

9. An information processing method executed by a computer, the information processing method comprising:

acquiring statistical information regarding distribution of positions of most significant bits of operation result for calculation of a neural network for a first period, the operation result being obtained by using a first variable that is quantized to a first fixed-point type, the first variable being a variable among variables to be used for the calculation of the neural network,

generating a threshold value based on reference information related to a first recognition rate obtained by calculation of the neural network when the first variable that is a floating-point type is used and a second recognition rate that is obtained by the calculation of the neural network for the first period,

determining a second fixed-type for quantizing the first variable for calculation of the neural network for the second period after the first period based on the statistical information,

calculating a quantization error of the first variable between the second fixed-point type and the floating-point type, and

executing the calculation of the neural network for the second period by using the first variable of the second fixed-point type when the quantization error is less than or equal to the threshold.

10. A non-transitory computer-readable storage medium storing a program that causes a computer to execute a process, the process comprising:

acquiring statistical information regarding distribution of positions of most significant bits of operation result for calculation of a neural network for a first period, the operation result being obtained by using a first variable that is quantized to a first fixed-point type, the first variable being a variable among variables to be used for the calculation of the neural network,

generating a threshold value based on reference information related to a first recognition rate obtained by calculation of the neural network when the first variable that is a floating-point type is used and a second recognition rate that is obtained by the calculation of the neural network for the first period,

determining a second fixed-type for quantizing the first variable for calculation of the neural network for the second period after the first period based on the statistical information,

calculating a quantization error of the first variable between the second fixed-point type and the floating-point type, and

executing the calculation of the neural network for the second period by using the first variable of the second fixed-point type when the quantization error is less than or equal to the threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2020
From: SAKAI, YASUFUMI
To: FUJITSU LIMITED
Reel/Frame 053553/0084 →
Priority Claims (1)
JP 2019-167656 · Sep 13, 2019 · national
Continuity (1)
Related Publication 20210081802A1 · Mar 18, 2021