IP Library › Granted Patent US 10,884,760
Granted Patent B2
US 10,884,760 · App. 16/678,548 · Granted Jan 5, 2021

Apparatus and method for managing application program

Inventors: Hyunjoo Jung (Suwon-si, KR); Jaedeok Kim (Suwon-si, KR); Chiyoun Park (Suwon-si, KR)
Assignee: SAMSUNG ELECTRONICS CO.. LTD.
G06F9/445G06N3/0454G06N3/08G06N20/10G06N20/20
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 10,884,760
App. No.
16/678,548
Granted
Jan 5, 2021
Kind
B2
Abstract

Provided is an apparatus configured to determine a common neural network based on a comparison between a first neural network included in a first application program and a second neural network included in a second application program, utilize the common neural network when the first application program or the second application program is executed.

Claims (59)

1. An apparatus for managing an application program, the apparatus comprising:

a memory; and

at least one processor, wherein the at least one processor is configured to:

control the memory to store a common neural network utilized by a first application program installed on the apparatus to process first data of the first application program and utilized by a second application program installed on the apparatus to process second data of the second application program;

based on execution of the first application program:

utilize a first mapping information to process the first data of the first application program linked to the common neural network for performing feature extraction on the first data of the first application program, and a first layer of a first neural network for classifying the first data based on the feature extraction, and

obtain a first execution result of the first application program processing the first data based on the common neural network and the first layer, and

based on execution of the second application program:

utilize a second mapping information to process the second data of the second application program linked to the common neural network for performing feature extraction on the second data of the second application program, and a second layer of a second neural network for classifying the second data based on the feature extraction, and

obtain a second execution result of the second application program processing the second data based on the common neural network and the second layer,

wherein the at least one processor is further configured to:

generate the first mapping information indicating that the first application program is linked to the common neural network and the second mapping information indicating that the second application program is linked to the common neural network, and

load the common neural network based on the first mapping information or the second mapping information when the first application program or the second application program is executed.

2. The apparatus of claim 1 , wherein the at least one processor controls the memory to store first files constituting the first application program, and second files constituting the second application program other than one or more second neural network files, the one or more second neural network files being for implementing the second neural network that corresponds to the common neural network.

3. The apparatus of claim 1 , wherein the at least one processor is further configured to:

obtain first structure information of the first neural network from a first metafile included in the first application program;

obtain second structure information of the second neural network from a second metafile included in the second application program; and

determine the common neural network by comparing the first structure information of the first neural network with the second structure information of the second neural network.

4. The apparatus of claim 3 , wherein the first structure information comprises first types of layers included in the first neural network and first connection relations between the layers included in the first neural network, and

wherein the second structure information comprises second types of layers included in the second neural network and second connection relations between the layers included in the second neural network.

5. The apparatus of claim 3 , wherein the first structure information comprises first sizes of first input data and first output data of layers included in the first neural network, and

wherein the second structure information comprises second sizes of second input data and second output data of layers included in the second neural network.

6. The apparatus of claim 3 , wherein the first structure information comprises first numbers of nodes per layer included in first fully connected layers of the first neural network, and

wherein the second structure information comprises second numbers of nodes per layer included in second fully connected layers of the second neural network.

7. The apparatus of claim 3 , wherein the first structure information comprises first convolution layers and first numbers of first filter kernels of the first neural network, first sizes of the first filter kernels of the first neural network, and first strides of the first convolution layers of the first neural network, and

wherein the second structure information comprises second convolution layers and second numbers of second filter kernels of the second neural network, second sizes of the second filter kernels of the second neural network, and second strides of the second convolution layers of the second neural network.

8. The apparatus of claim 3 , wherein the first structure information comprises first pooling layers and first sizes of first filter kernels of the first neural network and first strides of the first pooling layers of the first neural network, and

wherein the second structure information comprises second pooling layers and second sizes of second filter kernels of the second neural network and second strides of the second pooling layers of the second neural network.

9. The apparatus of claim 1 , wherein the at least one processor is further configured to:

store a first internal parameter used to process the first data in the first neural network of the first application program as a common parameter in the memory,

determine that the common parameter is not the same as a second internal parameter used to process the second data in the second neural network of the second application program,

determine difference information between the common parameter and the second internal parameter, and

store the difference information in the memory.

10. The apparatus of claim 9 , wherein the at least one processor is further configured to:

restore the second internal parameter, and

determine at least one of a residual parameter added to the common parameter, a transformation parameter multiplied by the common parameter, or a selective parameter for selecting a part of the common parameter as the difference information.

11. The apparatus of claim 9 , wherein the at least one processor is further configured to:

determine a plurality of pieces of difference information between the common parameter and the second internal parameter according to a plurality of calculation methods, and

store difference information having a smallest data size from among the plurality of pieces of difference information in the memory.

12. The apparatus of claim 1 , wherein the at least one processor is further configured to:

store a first internal parameter used to process the first data in the first neural network of the first application program as a common parameter in the memory,

determine that the common parameter is not the same as a second internal parameter used to process the second data in the second neural network of the second application program,

determine difference information between the common parameter and the second internal parameter, and

determine whether to store the difference information in the memory, based on a result obtained by comparing a size of the difference information with a size of the second internal parameter.

13. The apparatus of claim 9 , wherein the at least one processor is further configured to:

when the second application program is executed, restore the second internal parameter from the common parameter based on the difference information, and

load the second internal parameter into the memory.

14. The apparatus of claim 1 , wherein the at least one processor is further configured to:

obtain update data related to the first neural network of the first application program,

obtain a third neural network corresponding to the update data,

determine that the third neural network and the common neural network do not structurally correspond to each other, and

store the third neural network as an individual neural network of the first application program in the memory.

15. The apparatus of claim 14 , wherein the at least one processor is further configured to:

determine that the third neural network and the common neural network structurally correspond to each other,

determine a common parameter and an internal parameter obtained based on the update data that are not the same, and

store difference information between the common parameter and the internal parameter in the memory.

16. The apparatus of claim 15 , wherein the at least one processor is further configured to, when the third neural network and the common neural network structurally correspond to each other, not store the third neural network in the memory.

17. The apparatus of claim 1 , wherein the common neural network structurally corresponds to some layers of the first neural network of the first application program and some layers of the second neural network of the second application program.

18. The apparatus of claim 1 , wherein the first execution result and the second execution result are different each other.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2019
From: JUNG, HYUNJOO; KIM, JAEDEOK; PARK, CHIYOUN
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 050960/0653 →
Priority Claims (1)
KR 10-2019-0000861 · Jan 3, 2019 · national
Continuity (1)
Related Publication 20200218543A1 · Jul 9, 2020
Cited By (1)
US 12,462,153