IP Library Granted Patent US 11,720,788
Granted Patent B2
US 11,720,788 · App. 16/617,175 · Granted Aug 8, 2023

Calculation scheme decision system, calculation scheme decision device, calculation scheme decision method, and storage medium

Inventors: Masaki Hiraga (Tokyo, JP); Yasuhiro Kuroda (Tokyo, JP); Hitoshi Matsuo (Tokyo, JP); Hideaki Nishino (Tokyo, JP); Kouta Kurihara (Tokyo, JP)
Assignee: Morpho Inc.
G06N3/08G06N3/04
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,720,788
App. No.
16/617,175
Granted
Aug 8, 2023
Kind
B2
Abstract

A calculation scheme decision system includes a pre-calculation unit performing, in an execution environment in which calculation is performed, calculation for each of respective layers of the network structure using at least one of calculation schemes prepared in advance for the respective layers, a cost acquisition unit acquiring a calculation cost of at least one calculation scheme for each layer based on a result of the calculation by the pre-calculation unit, a decision unit selecting one calculation scheme for each layer based on the calculation cost from among at least one of the calculation schemes prepared in advance for the respective layers to associate the layer with the selected one calculation scheme, and a calculation unit performing the calculation for each of the respective layers of the network structure on input data in the execution environment using the calculation scheme associated with each layer.

Claims (41)

1. A calculation scheme decision system comprising:

a pre-calculation unit configured to perform, in an execution environment in which calculation for processing input data is performed using a network structure and weight data, calculation for each of respective layers of the network structure on predetermined data using at least one of calculation schemes prepared in advance for the respective layers of the network structure;

a cost acquisition unit configured to acquire a calculation cost of the at least one calculation scheme for each of the respective layers of the network structure based on a result of the calculation by the pre-calculation unit;

a decision unit configured to select one calculation scheme for each of the respective layers of the network structure based on the calculation cost from among the at least one of the calculation schemes prepared in advance for the respective layers to associate the layer of the network structure with the selected one calculation scheme; and

a calculation unit configured to perform the calculation for each of the respective layers of the network structure on the input data in the execution environment using the calculation scheme associated with each layer of the network structure by the decision unit.

2. The calculation scheme decision system according to claim 1 , wherein

the at least one calculation scheme includes a plurality of algorithms executable in the execution environment and exerting the same function using arithmetic operations different from each other.

3. The calculation scheme decision system according to claim 1 , wherein

the at least one calculation scheme includes a plurality of algorithms executable in the execution environment and performing the same arithmetic operation using resources different from each other.

4. The calculation scheme decision system according to claim 1 , further comprising: a candidate decision unit configured to prepare the at least one calculation scheme for each of the respective layers of the network structure based on the execution environment.

5. The calculation scheme decision system according to claim 1 , further comprising: a conversion unit configured to acquire the network structure and the weight data from an external device and convert the acquired network structure and weight data into a predetermined format, wherein

the pre-calculation unit and the calculation unit perform calculation based on the network structure and the weight data in the predetermined format converted by the conversion unit.

6. The calculation scheme decision system according to claim 1 , further comprising: a first adjustment unit configured to change a data order of the weight data based on the execution environment, wherein

the pre-calculation unit and the calculation unit perform calculation based on the weight data adjusted by the first adjustment unit.

7. The calculation scheme decision system according to claim 1 , further comprising: a second adjustment unit configured to perform a preprocess related to the calculation of the calculation unit on the weight data, wherein

the pre-calculation unit and the calculation unit perform calculation based on the weight data adjusted by the second adjustment unit.

8. The calculation scheme decision system according to claim 1 , wherein

the pre-calculation unit and the calculation unit are included in a first terminal, and

the calculation scheme decision system further comprises a provision unit configured to provide the calculation scheme decided by the decision unit to a second terminal having an execution environment the same as an execution environment of the first terminal.

9. A calculation scheme decision device comprising:

a data acquisition unit configured to acquire, from a processing device in which calculation for processing input data is performed using a network structure and weight data, a calculation cost in a case of calculating, for each of respective layers of the network structure, in at least one of calculation schemes prepared in advance for the respective layers of the network structure; and

a decision unit configured to select one calculation scheme for each of the respective layers of the network structure based on the calculation cost from among the at least one of the calculation schemes prepared in advance for the respective layers to associate the layer of the network structure with the selected one calculation scheme.

10. A method performed by a mobile terminal or a camera, the method comprising:

processing input data with a calculation scheme prepared in advance, wherein the input data is an image and the calculation scheme uses a neural network;

generating a results list in which a layer, a calculation scheme, and an arithmetic operation are associated with each other based on a time required for calculation and a memory resource required for calculation;

specifying, based on the results list, a calculation scheme, for each layer, of which a calculation cost is the smallest;

performing the calculation for each of the respective layers of the network structure on the input data in the execution environment using the calculation scheme; and

outputting a recognition result, wherein the recognition result includes an estimate of a content of the image.

11. A calculation scheme decision method comprising:

acquiring, from a processing device in which calculation for processing input data is performed using a network structure and weight data, a calculation cost in a case of calculating, for each of respective layers of the network structure, in at least one of calculation schemes prepared in advance for the respective layers of the network structure; and

selecting one calculation scheme for each of the respective layers of the network structure based on the calculation cost from among the at least one of the calculation schemes prepared in advance for the respective layers to associate the layer of the network structure with the selected one calculation scheme.

12. A non-transitory computer readable storage medium for storing a calculation scheme decision program causing a computer to operate,

the program causing the computer to function as:

a pre-calculation unit configured to perform, in an execution environment in which calculation for processing input data is performed using a network structure and weight data, calculation for each of respective layers of the network structure on predetermined data using at least one of calculation schemes prepared in advance for the respective layers of the network structure;

a cost acquisition unit configured to acquire a calculation cost of the at least one calculation scheme for each of the respective layers of the network structure based on a result of the calculation by the pre-calculation unit;

a decision unit configured to select one calculation scheme for each of the respective layers of the network structure based on the calculation cost from among the at least one of the calculation schemes prepared in advance for the respective layers to associate the layer of the network structure with the selected one calculation scheme; and

a calculation unit configured to perform the calculation for each of the respective layers of the network structure on the input data in the execution environment using the calculation scheme associated with each layer of the network structure by the decision unit.

13. A non-transitory computer readable storage medium for storing a calculation scheme decision program causing a computer to operate,

the program causing the computer to function as:

a data acquisition unit configured to acquire, from a processing device in which calculation for processing input data is performed using a network structure and weight data, a calculation cost in a case of calculating, for each of respective layers of the network structure, in at least one of calculation schemes prepared in advance for the respective layers of the network structure; and

a decision unit configured to select one calculation scheme for each of the respective layers of the network structure based on the calculation cost from among the at least one of the calculation schemes prepared in advance for the respective layers to associate the layer of the network structure with the selected one calculation scheme.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S ADDRESS ON THE COVER SHEET PREVIOUSLY RECORDED AT REEL: 061404 FRAME: 0845. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Oct 18, 2022
From: MORPHO, INC.
To: MORPHO, INC.
Reel/Frame 061699/0083 →
CHANGE OF NAME Recorded Sep 9, 2022
From: MORPHO, INC.
To: MORPHO, INC.
Reel/Frame 061404/0845 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2019
From: HIRAGA, MASAKI; KURODA, YASUHIRO; MATSUO, HITOSHI; NISHINO, HIDEAKI; KURIHARA, KOUTA
To: MORPHO, INC.
Reel/Frame 051121/0460 →
Priority Claims (1)
JP 2018-010681 · Jan 25, 2018 · national
Continuity (1)
Related Publication 20210158136A1 · May 27, 2021