Structure secret neural network model generator

The method generates a structure-concealing neural network model through supernet learning and subnet construction, addressing the inefficiencies and security vulnerabilities of existing methods, ensuring the neural network structure remains confidential and secure.

JP2025176762APending Publication Date: 2025-12-05NEC CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024083047
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-22
Publication Date
2025-12-05

AI Technical Summary

Technical Problem

Existing neural network structure search methods are time-consuming and costly, and the obtained structures are vulnerable to theft and misuse, compromising competitive advantage and business security.

Method used

A method involving supernet learning and subnet construction to generate a structure-concealing neural network model by excluding and replacing parameters in a supernet information to create a structure-concealing model, which is stored in external memory, making it difficult for third parties to extract the neural network structure.

Benefits of technology

The generated neural network structure is kept secret, reducing the risk of theft and misuse, while maintaining high recognition accuracy and execution speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025176762000001_ABST
    Figure 2025176762000001_ABST
Patent Text Reader

Abstract

To conceal a generated neural network structure.SOLUTION: Subnet construction means generates architecture information which identifies one candidate structure for each block, and subnet information defined by the architecture information, on the basis of an architecture parameter within learned super net information. Subnet addition learning means generates addition learned subnet information, by updating a parameter within the subnet information, in learning using a learning dataset. Structure secret model information generation means generates structure secret model information, by replacing the parameter of a portion corresponding to the subnet information, with the parameter included in the addition learned subnet information, among the parameters included in the learned super net information, after excluding a predetermined module and an architecture parameter included in the learned super net information.SELECTED DRAWING: Figure 12
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a structure-confidential neural network model generation device, a structure-confidential neural network model generation method, and a structure-confidential neural network model generation program. [Background technology]

[0002] Non-Patent Document 1 discloses a method for searching for a neural network structure using a once-for-all network including multiple candidate structures.

[0003] Non-Patent Document 2 discloses a method for efficiently searching for neural network structures by appropriately setting the initial weights of a supernet containing multiple candidate structures. [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] Han Cai, et al., “ONCE-FOR-ALL: TRAIN ONE NETWORK AND SPECIALIZE IT FOR EFFICIENT DEPLOYMENT”, [online], [Retrieved April 15, 2024], Internet<URL :https: / / arxiv.org / abs / 1908.09791> [Non-patent document 2] Jiemin Fang, et al., “FAST NEURAL NETWORK ADAPTATION VIA PARAMETER REMAPPING AND ARCHITECTURE SEARCH”, [online], [Retrieved April 15, 2024], Internet<URL :https: / / arxiv.org / abs / 2001.02525> Summary of the Invention [Problem to be solved by the invention]

[0005] To realize a neural network that can execute quickly while maintaining high recognition accuracy, it is important to determine the neural network structure.

[0006] Generally, skilled researchers improve neural network structures. In recent years, research into neural architecture search (NAS), which searches for optimal neural network structures, has progressed, and methods have been proposed to automatically search for neural network structures with excellent recognition accuracy and execution speed for input training data.

[0007] In recent years, a method called One-shot NAS has been proposed, which is a relatively efficient method for searching neural network structures.

[0008] However, even if it becomes possible to automatically and relatively efficiently search for neural network structures, the search requires a certain amount of time and cost. For example, according to Non-Patent Document 2, searching for a neural network structure requires the cost of running one GPU (Graphics Processing Unit) continuously for 21.6 days.

[0009] Furthermore, the quality of the search results (searched neural network structure) is affected by the quality of the training data used during the search. Generally, training data is a collection of know-how collected and selected over a long period of time by engineers skilled in a specific application field, and can be a source of competitive advantage. For this reason, the neural network structure obtained as a search result must be kept confidential so that it cannot be easily used by third parties.

[0010] For example, even if the neural network structure obtained as a result of the search is incorporated into a product and deployed in the field, if the neural network structure is stolen and misused by a third party, the company's competitiveness will be weakened and it will suffer business damage.

[0011] Generally, encryption is considered as a method for concealing information. That is, by encrypting the neural network structure and storing it in a memory area (such as a flash memory) in the device on-site, and storing the decryption key in a secure area in the device, the risk of the neural network structure being stolen can be reduced.

[0012] However, when using the neural network structure on the device, it is generally necessary to decrypt the encrypted neural network structure in the storage area and temporarily store it in external memory. At this time, if the device is infected with malware that steals information, for example, there is a risk that the decrypted neural network structure deployed in the external memory may be stolen. In addition, there is also a known attack method (e.g., a cold boot attack) in which the external memory with the decrypted data deployed on it is rapidly cooled with liquid nitrogen or the like, physically stolen, and the data read on another device.

[0013] The reason why the decoded neural network structure is stored in external memory is that the capacity of the neural network structure is so large that it cannot be stored in internal memory. For example, the capacity of the neural network structure is very large, ranging from tens to hundreds of megabytes. Therefore, it is difficult to store the neural network structure in internal memory of a computing device such as a register file or cache memory of a CPU (Central Processing Unit) or GPU.

[0014] Therefore, an object of the present disclosure is to provide a structure-concealing neural network model generation device, a structure-concealing neural network model generation method, and a structure-concealing neural network model generation program that can conceal the generated neural network structure. [Means for solving the problem]

[0015] The structure-concealing neural network model generation device according to the present disclosure is characterized by comprising: a supernet model construction means for generating supernet information based on candidate structure information given as input; a supernet learning means for generating learned supernet information by learning using a learning dataset given as input, by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module; a subnet construction means for generating architecture information, which is information identifying one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputting the architecture information; a subnet additional learning means for generating additional learned subnet information by updating the parameters in the subnet information through learning using the learning dataset; and a structure-concealing model information generation means for generating structure-concealing model information by excluding the predetermined module and architecture parameters included in the learned supernet information, and replacing the parameters included in the learned supernet information that correspond to the subnet information with the parameters included in the additional learned subnet information, and outputting the structure-concealing model information.

[0016] The structure-concealing neural network model generation device according to the present disclosure is characterized by comprising: a supernet model construction means for generating supernet information based on candidate structure information given as input; a supernet learning means for generating learned supernet information by learning using a learning dataset given as input, by updating parameters of modules other than a specified module included in the supernet information and architecture parameters, which are a set of all parameters of the specified module; and an output means for separately outputting information excluding the specified module and architecture parameters from the learned supernet information.

[0017] The method for generating a structure-concealing neural network model according to the present disclosure is characterized in that a computer generates supernet information based on candidate structure information given as input, generates learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module, through learning using a learning dataset given as input, generates architecture information, which is information that identifies one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputs the architecture information, generates additional learned subnet information by updating the parameters in the subnet information through learning using the learning dataset, excludes the predetermined module and architecture parameters included in the learned supernet information, and replaces the parameters included in the learned supernet information that correspond to the subnet information with the parameters included in the additional learned subnet information, thereby generating structure-concealing model information, and outputs the structure-concealing model information.

[0018] The structure-concealing neural network model generation method according to the present disclosure is characterized in that a computer generates supernet information based on candidate structure information given as input, and generates trained supernet information by updating parameters of modules other than a specified module included in the supernet information and architecture parameters, which are a set of all parameters of the specified module, through training using a training dataset given as input, and outputs information excluding the specified module and architecture parameters from the trained supernet information separately from the architecture parameters.

[0019] The structure-concealing neural network model generation program according to the present disclosure causes a computer to execute a supernet model construction process that generates supernet information based on candidate structure information given as input; a supernet learning process that generates learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module, through learning using a learning dataset given as input; a subnet construction process that generates architecture information, which is information that identifies one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputs the architecture information; a subnet additional learning process that generates additional, learned subnet information by updating parameters in the subnet information through learning using a learning dataset; and a structure-concealing model information generation process that generates structure-concealing model information by excluding the predetermined module and architecture parameters included in the learned supernet information and then replacing the parameters of a portion of the parameters included in the learned supernet information that correspond to subnet information with parameters included in the additional, learned subnet information, and outputs the structure-concealing model information.

[0020] The structure-concealing neural network model generation program according to the present disclosure causes a computer to execute a supernet model construction process that generates supernet information based on candidate structure information given as input, a supernet learning process that generates trained supernet information by learning using a training dataset given as input, updating parameters of modules other than a specified module included in the supernet information and architecture parameters, which are a set of all parameters of the specified module, and an output process that separately outputs information excluding the specified module and architecture parameters from the trained supernet information and the architecture parameters. [Effects of the Invention]

[0021] According to the present disclosure, the generated neural network structure can be kept secret. [Brief explanation of the drawings]

[0022] [Figure 1] FIG. 1 is a block diagram illustrating a device that uses information generated by a structure-concealing neural network model generation device according to the present disclosure. [Figure 2] FIG. 1 is a block diagram illustrating an example configuration of a structure-concealing neural network model generation device according to the present disclosure. [Figure 3] FIG. 10 is a schematic diagram showing an example of candidate structure information. [Figure 4] FIG. 10 is a schematic diagram showing an example of supernet information. [Figure 5] FIG. 2 is a schematic diagram showing an example of the structure of a SEL module. [Figure 6] FIG. 2 is a schematic diagram showing architecture parameters and architecture information. [Figure 7] FIG. 10 is a schematic diagram illustrating an example of subnet information. [Figure 8] FIG. 10 is a schematic diagram illustrating an example of structure concealment model information. [Figure 9] 10 is a flowchart illustrating an example of the process flow of a structure-concealing neural network model generation device according to the present disclosure. [Figure 10] FIG. 1 is a block diagram illustrating an example configuration of a structure-concealing neural network model generation device according to the present disclosure. [Figure 11] FIG. 1 is a schematic block diagram illustrating an example configuration of a computer related to a structure-concealing neural network model generation device according to the present disclosure. [Figure 12] 1 is a block diagram illustrating an overview of a structure-concealing neural network model generation device according to the present disclosure. FIG. DETAILED DESCRIPTION OF THE INVENTION

[0023] Hereinafter, embodiments according to the present disclosure will be described with reference to the drawings.

[0024] FIG. 1 is a block diagram showing a device (hereinafter referred to as an inference device) that uses information generated by a structure-hiding neural network model generation device according to the present disclosure. The inference device 101 includes a calculation device 102. The calculation device 102 includes an internal memory 103. The calculation device 102 is, for example, a CPU or a GPU. The internal memory 103 is a register file, a cache memory, or the like. It is difficult to steal information stored in the internal memory 103. The inference device 101 is also provided with an external memory 104. The external memory 104 is assumed to be an off-chip memory separate from the calculation device 102.

[0025] In this embodiment, the additionally learned subnet information 70 described later corresponds to the neural network structure.

[0026] 2 is a block diagram showing an example configuration of a structure-concealing neural network model generation device according to the present disclosure. The structure-concealing neural network model generation device 10 includes a supernet model construction unit 20, a supernet learning unit 30, a subnet construction unit 50, a subnet additional learning unit 60, and a structure-concealing model information generation unit 80.

[0027] The structure-concealing neural network model generation device 10 receives as input candidate structure information and a training data set.

[0028] The supernet model construction unit 20 receives the input candidate structure information and generates pre-learning supernet information based on the candidate structure information. The pre-learning supernet information is input to the supernet learning unit 30.

[0029] Here, we will explain the definitions of candidate structures and candidate structure information. A "candidate structure" is a structure that is a candidate for each block in the neural network structure. "Candidate structure information" is information that includes multiple candidate structures for each block.

[0030] FIG. 3 is a schematic diagram showing an example of candidate structure information. FIG. 3 shows candidate structures for each block of a neural network structure consisting of three blocks. Here, a "block" refers to a rough block of the neural network structure. For example, in neural network structures used for image recognition, object detection, etc., it is common to proceed with processing while gradually decreasing the spatial resolution, and portions that perform processing at the same spatial resolution can be treated as one block.

[0031] In the example shown in Fig. 3, for example, the first candidate structure for block 1 is "{type = Conv3x3}, number of layers = 1." This structure represents a structure in which a layer that performs a convolution operation with a kernel size of 3x3 is executed only once.

[0032] For example, the second candidate structure for block 1 is "{type=Conv3×3}, number of layers=2." This structure represents a structure in which a layer that performs a convolution operation with a kernel size of 3×3 is executed twice.

[0033] For example, the fourth candidate structure for block 1 is "{type=Conv5×5}, number of layers=1." This structure represents a structure in which a layer that performs a convolution operation with a kernel size of 5×5 is executed only once.

[0034] Furthermore, the candidate structure does not need to be the same for each block, and the type of candidate structure may be different for each block. The number of blocks may be other than three. In addition to Conv3×3 and Conv5×5, types may include bottleneck structures, skip connections, etc. Candidate structures with four or more layers may also exist. In addition to the type and number of layers, the candidate structure may include other parameters such as the number of channels and the expansion ratio of the inverted residual block. For example, the types may be Conv3×3, Conv5×5, and Conv7×7, and the number of layers may be 1 to 8. In this case, if the number of candidate structures per block is K, then K = 3 * 8 = 24.

[0035] FIG. 4 is a schematic diagram showing an example of supernet information. "Supernet information" is information indicating a neural network structure that encompasses all neural network structures included in the search space for neural network structure search. As described above, the supernet model construction unit 20 generates pre-learning supernet information based on the candidate structure information. The supernet information also includes an SEL module, as shown in FIG. 4. While FIG. 4 illustrates the supernet information in a graph for ease of understanding, the supernet information may be expressed in other ways. In FIG. 4, each of blocks 1 to 3 includes six candidate structures. The SEL module is a module that combines the outputs of the candidate structures in each block. The SEL module can be referred to as a predetermined module. Modules such as Conv3×3 and Conv5×5 include learnable parameters. These learnable parameters include weights and biases. These weights and biases are used in convolution operations. The supernet model constructing unit 20 determines the initial values ​​obtained by He initialization, for example, as the initial values ​​of the parameters of each module other than the SEL module (in this example, Conv3×3, Conv5×5).

[0036] Fig. 5 is a schematic diagram showing an example of the structure of an SEL module. Each of the SEL modules shown in Fig. 4 has six inputs and one output. The SEL module multiplies each of the six inputs by coefficients α1 to α6, adds up the results of the multiplications, and outputs the sum.

[0037] Here, the coefficients α1 to α6 of the SEL modules are learnable parameters. The supernet model construction unit 20 sets equal values ​​that sum to 1 as the initial values ​​of the coefficients α for each SEL module. In the example shown in FIG. 4, each block has six candidate structures, so the number of coefficients α is six for every SEL module. Therefore, in this example, the supernet model construction unit 20 sets the initial values ​​of the coefficients α1 to α6 to 0.16 for each SEL module.

[0038] In the supernet information before learning, each parameter is set to an initial value.

[0039] The supernet learning unit 30 receives the input learning data set and also receives pre-learning supernet information input from the supernet model construction unit 20. Here, the set of all parameters α of the SEL modules in the supernet information is called the architecture parameters. The supernet learning unit 30 generates learned supernet information 40 by updating the parameters (weights and biases) of modules other than the SEL module included in the supernet information and the architecture parameters (sets of all parameters α of the SEL modules) through learning using the learning data set. The "learned supernet information 40" is the supernet information after each parameter has been updated through learning using the learning data set.

[0040] As described above, the supernet learning unit 30 updates the parameters (weights and biases) of modules other than the SEL module included in the supernet information and the architecture parameters (sets of all parameters α of the SEL module) through learning using the learning dataset as training data. Therefore, in the example shown in Figure 4, the parameters (weights and biases) of each Conv3x3 and Conv5x5 and the parameter α of each SEL module are updated through the learning process.

[0041] As mentioned above, the set of all parameters α of the SEL modules in the supernet information is called the architecture parameter. Figure 6 is a schematic diagram showing the architecture parameters and architecture information. The architecture information will be described later. In the example shown in Figure 4, there are six coefficients α for each of the three SEL modules. Therefore, in this example, as shown in Figure 6(a), the architecture parameter is made up of 6*3=18 numerical values ​​α b,c Here, the subscript b represents the index of the block, and the subscript c represents the index of the candidate structure.

[0042] Figure 6(b) shows the initial values ​​of the architecture parameters. In each block, the sum of all α is approximately 1.

[0043] Figure 6(c) shows an example of the architecture parameters after learning. In each block, the sum of all α values ​​is 1.

[0044] The subnet construction unit 50 receives the learned supernet information 40 generated by the supernet learning unit 30. Then, based on the architecture parameters in the learned supernet information 40, the subnet construction unit 50 generates architecture information, which is information that identifies one candidate structure for each block, and subnet information determined by the architecture information. As described above, the "architecture information" is information that identifies one candidate structure for each block. The "subnet information" is information that indicates the neural network structure represented by the candidate structure selected for each block. For each block, the candidate structure corresponding to the largest α is selected. The "architecture information" then identifies the candidate structure corresponding to the largest α for each block. Therefore, the "subnet information" is determined by the "architecture information."

[0045] The subnet construction unit 50 outputs the generated architecture information to the outside. This architecture information is stored in the internal memory 103 (see FIG. 1) of the inference device 101. The subnet construction unit 50 may output the architecture information directly to the internal memory 103 of the inference device 101.

[0046] When generating the architecture information and the subnet information, the subnet construction unit 50 selects the maximum α b,c For example, assume that the architecture parameters shown in FIG. 6(c) are obtained in the learned supernet information 40. In this case, the subnet construction unit 50 selects the second candidate structure for block 1. The subnet construction unit 50 also selects the fourth candidate structure for block 2. The subnet construction unit 50 also selects the third candidate structure for block 3. The subnet construction unit 50 then generates architecture information and subnet information indicating a neural network structure composed of the selected candidate structures.

[0047] Fig. 6(d) is a schematic diagram showing an example of the architecture information generated in this example. As shown in Fig. 6(d), the architecture information includes an index of the selected candidate structure for each block. As a result, the architecture information identifies one candidate structure for each block.

[0048] FIG. 7 is a schematic diagram showing an example of subnet information generated in this example. As can be seen from FIG. 7, in the subnet information, a candidate structure identified by the architecture information is selected for each block. Furthermore, the subnet information does not include the SEL module. This is because the subnet information narrows down the candidate structure to one for each block, making it unnecessary to combine the outputs of multiple candidate structures. Furthermore, the subnet information does not include architecture parameters or architecture information.

[0049] The subnet additional learning unit 60 receives the input learning data set and also receives the subnet information generated by the subnet construction unit 50. The subnet additional learning unit 60 generates additionally learned subnet information 70 by updating the parameters in the subnet information through learning using the learning data set as training data. More specifically, the subnet additional learning unit 60 generates additionally learned subnet information 70 by updating the parameters (weights and biases) of each module in the subnet information through learning using the learning data set as training data. The "additionally learned subnet information 70" is subnet information in which the parameters included in the subnet information have been updated through learning after the subnet information was generated.

[0050] The structure concealment model information generation unit 80 receives the learned supernet information 40 generated by the supernet learning unit 30 and the additional learned subnet information 70 generated by the subnet additional learning unit 60. The structure concealment model information generation unit 80 uses the learned supernet information 40 and the additional learned subnet information 70 to generate structure concealment model information.

[0051] 8 is a schematic diagram showing an example of structure-concealed model information. The structure-concealed model information is information obtained by excluding the SEL modules and architecture parameters included in the learned supernet information 40, and then replacing the parameters of the part (module) corresponding to the subnet information among the parameters included in the learned supernet information with parameters included in the additional learned subnet information 70. In FIG. 8, the modules whose parameters have been replaced are highlighted with double lines.

[0052] Therefore, the structurally concealed model information generation unit 80 generates structurally concealed model information by excluding the SEL modules and architecture parameters included in the learned supernet information 40, and then replacing the parameters of the part (module) of the parameters included in the learned supernet information that corresponds to subnet information with the parameters included in the additionally learned subnet information 70.

[0053] In the structure-hiding model information, the parameters (weights and biases) of the parts (modules) that do not correspond to the subnet information (see FIG. 7) are parameters included in the learned supernet information 40. However, in the structure-hiding model information, the parameters of the parts that do not correspond to the subnet information may be parameters included in the supernet information before learning, or random values.

[0054] The structure-hiding model information generation unit 80 outputs the generated structure-hiding model information to the outside. This structure-hiding model information is stored in an external memory 104 (see FIG. 1 ) provided in the inference device 101. The structure-hiding model information generation unit 80 may output the structure-hiding model information directly to the external memory 104.

[0055] Here, the structure-hidden model information does not include the SEL module, architecture parameters, or architecture information. Furthermore, since the architecture information is stored in the internal memory 103, it is difficult for a third party to steal the architecture information. Therefore, even if a third party obtains only the structure-hidden model information stored in the external memory 104, it is difficult for the third party to extract the additionally learned subnet information 70.

[0056] Consider a case where a third party extracts additionally learned subnet information 70 from structure-hiding model information without architecture information. Also, let the number of blocks be B, and the average number of candidate structures per block be K. In this case, the number of possible combinations of subnet information is K. B In order for a third party to obtain additional learned subnet information 70 without architecture information, they can use the evaluation dataset to BIt is necessary to perform inference processing for all the subnet information and find the subnet information with the best inference accuracy, which takes a very long time. For example, consider the case where an evaluation is performed using an evaluation dataset consisting of 1,000 images of image data, using hardware that can perform inference on 100 images of image data per second. Here, for example, if K=24 and B=4, then K B = 331776 combinations must be evaluated, and this evaluation takes 3317760 seconds, or about 40 days. In reality, the values ​​of K and B are expected to be larger, making it extremely difficult for a third party to extract the additional learned subnet information 70.

[0057] Therefore, the generated neural network structure (additionally learned subnet information 70) can be kept secret.

[0058] The capacity of the structure concealed model information is larger than the capacity of the additionally learned subnet information 70, but is at most K times the capacity of the additionally learned subnet information 70.

[0059] Furthermore, when the inference device 101 is used by a legitimate user of the inference device 101 (see FIG. 1) rather than a third party, the calculation device 102 can easily extract parameters corresponding to the additionally learned subnet information 70 from the structure concealed model information by referring to the architecture information stored in the internal memory 103, and can execute the inference process. At this time, the calculation device 102 extracts not only the parameters corresponding to the additionally learned subnet information 70 but also unnecessary parameters, making it difficult for a third party to identify the additionally learned subnet information 70 even if bus communication between memories is intercepted.

[0060] The supernet model construction unit 20, the supernet learning unit 30, the subnet construction unit 50, the subnet additional learning unit 60, and the structure-confidential model information generation unit 80 are realized, for example, by a CPU of a computer that operates in accordance with a structure-confidential neural network model generation program. The CPU reads the structure-confidential neural network model generation program from a program recording medium such as a program storage device of the computer, and operates as the supernet model construction unit 20, the supernet learning unit 30, the subnet construction unit 50, the subnet additional learning unit 60, and the structure-confidential model information generation unit 80 in accordance with the structure-confidential neural network model generation program.

[0061] Next, the process will be described. Fig. 9 is a flowchart showing an example of the process of the structure-concealing neural network model generation device 10 according to the present disclosure. Note that detailed description of matters that have already been explained will be omitted.

[0062] First, the supernet model construction unit 20 generates supernet information based on the candidate structure information (step S1). In step S1, the supernet model construction unit 20 determines the initial values ​​of the parameters included in the supernet information (parameters of modules other than the SEL module and architecture parameters).

[0063] Next, the supernet learning unit 30 generates learned supernet information 40 by updating the parameters contained in the supernet information (parameters of modules other than the SEL module and architecture parameters) through learning using the learning dataset (step S2).

[0064] Next, the subnet construction unit 50 generates architecture information and subnet information based on the architecture parameters in the learned supernet information 40. The subnet construction unit 50 also outputs the architecture information (step S3). The output architecture information is stored in the internal memory 103 of the inference device 101 (see FIG. 1).

[0065] Next, the subnet additional learning unit 60 generates additionally learned subnet information 70 by updating the parameters in the subnet information through learning using the learning data set (step S4).

[0066] Next, the structure concealment model information generation unit 80 generates structure concealment model information using the learned supernet information 40 and the additionally learned subnet information 70. Specifically, the structure concealment model information generation unit 80 generates structure concealment model information by excluding the SEL module and architecture parameters included in the learned supernet information 40 and replacing the parameters included in the learned supernet information that correspond to subnet information with the parameters included in the additionally learned subnet information 70. The structure concealment model information generation unit 80 also outputs the structure concealment model information (step S5). The output structure concealment model information is stored in the external memory 104 provided in the inference device 101.

[0067] It is difficult to steal the architecture information stored in the internal memory 103. Furthermore, as described above, even if a third party were able to obtain the structure-confidential model information from the external memory 104, it would be difficult for them to obtain the additionally trained subnet information 70 without the architecture information. Therefore, the generated neural network structure (additionally trained subnet information 70) can be kept secret.

[0068] Even when training a normal neural network without using supernet information, the neural network structure can be concealed in the same way as in this embodiment by generating pseudo-information equivalent to structure-confidential model information or information equivalent to architecture information.

[0069] In the above embodiment, the subnet construction unit 50 calculates the maximum coefficient α b,cThe subnet construction unit 50 generates architecture information and subnet information by selecting a candidate structure corresponding to the maximum coefficient α b,c In addition to selecting the candidate structure corresponding to the second largest coefficient α b,c In this case, the first and second architecture information are stored in internal memory 103 of reasoning device 101.

[0070] Furthermore, in this case, the subnet additional learning unit 60 generates additional learned subnet information corresponding to the first subnet information (hereinafter referred to as first additional learned subnet information) and additional learned subnet information corresponding to the second subnet information (hereinafter referred to as second additional learned subnet information) through learning using the learning dataset. In addition to the above-described operations, the structure concealment model information generation unit 80 replaces the parameters included in the learned supernet information that correspond to the second subnet information with the parameters included in the second additional learned subnet information. As a result, the structure concealment model information includes the parameters of the first additional learned subnet information and the parameters of the second additional learned subnet information. This structure concealment model information is stored in the external memory 104.

[0071] As a result, by switching the architecture information provided depending on the user, it is possible to switch the additionally learned subnet information available to the user. For example, a user who pays a higher license fee than usual can be provided with the first architecture information and can use the first additionally learned subnet information, while a user who pays the normal license fee can be provided with the second architecture information and can use the second additionally learned subnet information. Even in this case, the first additionally learned subnet information and the second additionally learned subnet information can be kept secret.

[0072] Next, a modification of the above embodiment will be described. Fig. 10 is a block diagram showing an example configuration of a structure-confidential neural network model generation device according to the present disclosure. In this modification, the structure-confidential neural network model generation device 10 includes a supernet model construction unit 20, a supernet learning unit 30, and an output unit 90.

[0073] The supernet model building unit 20 and the supernet learning unit 30 are similar to the supernet model building unit 20 and the supernet learning unit 30 in the above embodiment (see FIG. 2), and therefore a description thereof will be omitted.

[0074] The output unit 90 receives the learned supernet information 40 generated by the supernet learning unit 30. Then, the output unit 90 extracts architecture parameters (see, for example, FIG. 6(c)) from the learned supernet information 40. Furthermore, the output unit 90 generates information (hereinafter referred to as "exclusion information") that excludes the SEL modules and architecture parameters from the learned supernet information 40. Then, the output unit 90 outputs the architecture parameters and the exclusion information separately. The output architecture parameters are stored in the internal memory 103 of the inference device 101. The output exclusion information is stored in the external memory 104 provided in the inference device 101. The output unit 90 may output the architecture parameters directly to the internal memory 103 of the inference device 101, and may output the exclusion information directly to the external memory 104.

[0075] The supernet model construction unit 20, the supernet learning unit 30, and the output unit 90 are realized, for example, by a CPU of a computer that operates in accordance with a structure-confidential neural network model generation program. The CPU reads the structure-confidential neural network model generation program from a program recording medium such as a program storage device of the computer, and operates as the supernet model construction unit 20, the supernet learning unit 30, and the output unit 90 in accordance with the structure-confidential neural network model generation program.

[0076] Depending on the architecture parameters, the maximum coefficient α b,c Therefore, the maximum coefficient α b,c By using the exclusion information and the additional learned subnet information, the subnet information can be identified and the subnet information can be kept secret. In this modification, additional learned subnet information is not generated, but as described above, the subnet information can be identified and the subnet information can be kept secret.

[0077] 11 is a schematic block diagram showing an example configuration of a computer related to the structure-concealing neural network model generation device of the present disclosure. The computer 2000 includes, for example, a CPU 2001, a main memory device 2002, an auxiliary memory device 2003, and an interface 2004.

[0078] The structure-confidential neural network model generation device 10 according to the embodiment and its modified examples of the present disclosure is realized by, for example, a computer 2000. The operation of the structure-confidential neural network model generation device 10 is stored in the form of a program (structure-confidential neural network model generation program) in an auxiliary storage device 2003. A CPU 2001 reads the program from the auxiliary storage device 2003, loads the program into a main storage device 2002, and executes the processes described in the above embodiment and its modified examples in accordance with the program.

[0079] The auxiliary storage device 2003 is an example of a non-transitory tangible medium. Other examples of non-transitory tangible media include a magnetic disk, a magneto-optical disk, a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), and a semiconductor memory connected via the interface 2004.

[0080] Next, an overview of the structure-confidential neural network model generation device according to the present disclosure will be described. Fig. 12 is a block diagram showing an overview of the structure-confidential neural network model generation device according to the present disclosure. The structure-confidential neural network model generation device includes supernet model construction means 72, supernet learning means 73, subnet construction means 75, subnet additional learning means 76, and structure-confidential model information generation means 78.

[0081] The supernet model construction means 72 (for example, the supernet model construction unit 20) generates supernet information based on the candidate structure information given as input.

[0082] The supernet learning means 73 (e.g., supernet learning unit 30) generates learned supernet information by learning using a learning data set given as input, and updating the parameters of modules other than a specified module (e.g., an SEL module) included in the supernet information, and the architecture parameters, which are the set of all parameters of the specified module.

[0083] The subnet construction means 75 (e.g., the subnet construction unit 50) generates architecture information, which is information that identifies one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputs the architecture information.

[0084] The subnet additional learning means 76 (for example, the subnet additional learning unit 60) generates additionally learned subnet information by updating parameters in the subnet information through learning using the learning data set.

[0085] The structure-confidential model information generating means 78 (e.g., structure-confidential model information generating unit 80) generates structure-confidential model information by excluding predetermined modules and architecture parameters contained in the learned supernet information, and then replacing the parameters contained in the learned supernet information that correspond to subnet information with parameters contained in the additional learned subnet information, and outputs the structure-confidential model information.

[0086] Such a configuration allows the generated neural network structure to be kept secret.

[0087] The above embodiment and its modifications can also be described as in the following supplementary notes, but are not limited to the following.

[0088] (Appendix 1) a supernet model construction means for generating supernet information based on candidate structure information given as input; a supernet learning means for generating learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters which are a set of all parameters of the predetermined module through learning using a learning data set given as an input; a subnet construction means for generating architecture information, which is information specifying one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputting the architecture information; a subnet additional learning means for generating additionally learned subnet information by updating parameters in the subnet information through learning using the learning data set; and a structure-hiding model information generating means for generating structure-hiding model information by excluding the predetermined module and the architecture parameter included in the learned supernet information, and then replacing parameters of a portion of the learned supernet information that corresponds to the subnet information with parameters included in the additionally learned subnet information, and outputting the structure-hiding model information. A structure-concealing neural network model generation device comprising:

[0089] (Appendix 2) The parameters of the modules other than the predetermined module are weights and biases in the convolution operation. 2. The structure-concealing neural network model generation device according to claim 1.

[0090] (Appendix 3) a supernet model construction means for generating supernet information based on candidate structure information given as input; a supernet learning means for generating learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters which are a set of all parameters of the predetermined module through learning using a learning data set given as an input; and an output means for separately outputting information obtained by excluding the predetermined module and the architecture parameters from the learned supernet information and the architecture parameters. A structure-concealing neural network model generation device comprising:

[0091] (Appendix 4) The computer Generate supernet information based on candidate structure information given as input; Generate learned supernet information by updating the parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module, through learning using a learning data set given as input; Based on the architecture parameters in the learned supernet information, generate architecture information that is information that identifies one candidate structure for each block and subnet information determined by the architecture information, and output the architecture information; generating additional learned subnet information by updating parameters in the subnet information through learning using the learning data set; The predetermined module and the architecture parameters included in the learned supernet information are excluded, and then the parameters included in the learned supernet information that correspond to the subnet information are replaced with the parameters included in the additionally learned subnet information, thereby generating structure-concealed model information and outputting the structure-concealed model information. A structure-hiding neural network model generation method comprising:

[0092] (Appendix 5) The computer Generate supernet information based on candidate structure information given as input; Generate learned supernet information by updating the parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module, through learning using a learning data set given as input; The information obtained by excluding the predetermined module and the architecture parameters from the learned supernet information is output separately from the architecture parameters. A structure-hiding neural network model generation method comprising:

[0093] (Appendix 6) On the computer, a supernet model construction process for generating supernet information based on candidate structure information given as input; a supernet learning process for generating learned supernet information by learning using a learning data set given as input, and updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters which are a set of all parameters of the predetermined module; a subnet construction process for generating architecture information, which is information specifying one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputting the architecture information; A subnet additional learning process that generates additionally learned subnet information by updating parameters in the subnet information through learning using the learning data set; and A structure-hiding model information generation process that generates structure-hiding model information by excluding the predetermined module and the architecture parameter included in the learned supernet information, and then replacing the parameters of the portion of the parameters included in the learned supernet information that corresponds to the subnet information with the parameters included in the additionally learned subnet information, and outputs the structure-hiding model information. A structure-hiding neural network model generation program for executing the above.

[0094] (Appendix 7) On the computer, a supernet model construction process for generating supernet information based on candidate structure information given as input; A supernet learning process that generates learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters that are a set of all parameters of the predetermined module through learning using a learning data set given as input; and an output process for separately outputting information obtained by excluding the predetermined module and the architecture parameters from the learned supernet information and the architecture parameters; A structure-hiding neural network model generation program for executing the above.

[0095] Some or all of the configurations described in Appendix 2, which are dependent on Appendix 1, may also be dependent on Appendix 3, Appendix 4, Appendix 5, Appendix 6, and Appendix 7 in the same dependency relationship as Appendix 2. Furthermore, not limited to Appendix 3, Appendix 4, Appendix 5, Appendix 6, and Appendix 7, some or all of the configurations described as appendices may be made dependent on various hardware, software, various recording means for recording software, or systems, within the scope of the above-described embodiment.

[0096] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. [Industrial Applicability]

[0097] The present disclosure is suitably applied to the generation of neural network structures. [Explanation of symbols]

[0098] 10. Structure-concealing neural network model generator 20 Supernet Model Construction Department 30 Supernet Learning Department 50 Subnet Construction Department 60 Subnet Additional Learning Unit 80 Structure-confidential model information generation unit 90 Output section

Claims

1. a supernet model construction means for generating supernet information based on candidate structure information given as input; a supernet learning means for generating learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters which are a set of all parameters of the predetermined module through learning using a learning data set given as an input; a subnet construction means for generating architecture information, which is information specifying one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputting the architecture information; a subnet additional learning means for generating additionally learned subnet information by updating parameters in the subnet information through learning using the learning data set; and a structure-hiding model information generating means for generating structure-hiding model information by excluding the predetermined module and the architecture parameter included in the learned supernet information, and then replacing parameters of a portion of the learned supernet information that corresponds to the subnet information with parameters included in the additionally learned subnet information, and outputting the structure-hiding model information. A structure-concealing neural network model generation device comprising:

2. The parameters of the modules other than the predetermined module are weights and biases in the convolution operation. The structure-concealing neural network model generating device according to claim 1 .

3. a supernet model construction means for generating supernet information based on candidate structure information given as input; a supernet learning means for generating learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters which are a set of all parameters of the predetermined module through learning using a learning data set given as an input; and an output means for separately outputting information obtained by excluding the predetermined module and the architecture parameters from the learned supernet information and the architecture parameters. A structure-concealing neural network model generation device comprising:

4. The computer Generate supernet information based on candidate structure information given as input; Generate learned supernet information by updating the parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module, through learning using a learning data set given as input; generating architecture information that identifies one candidate structure for each block and subnet information determined by the architecture information based on the architecture parameters in the learned supernet information, and outputting the architecture information; generating additional learned subnet information by updating parameters in the subnet information through learning using the learning data set; The predetermined module and the architecture parameters included in the learned supernet information are excluded, and then the parameters included in the learned supernet information that correspond to the subnet information are replaced with the parameters included in the additionally learned subnet information, thereby generating structure-concealed model information and outputting the structure-concealed model information. A structure-hiding neural network model generation method comprising:

5. The computer Generate supernet information based on candidate structure information given as input; Generate learned supernet information by updating the parameters of modules other than a predetermined module included in the supernet information and architecture parameters, which are a set of all parameters of the predetermined module, through learning using a learning data set given as input; The information obtained by excluding the predetermined module and the architecture parameters from the learned supernet information is output separately from the architecture parameters. A structure-hiding neural network model generation method comprising:

6. On the computer, a supernet model construction process for generating supernet information based on candidate structure information given as input; a supernet learning process for generating learned supernet information by learning using a learning data set given as input, and updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters which are a set of all parameters of the predetermined module; a subnet construction process for generating architecture information, which is information specifying one candidate structure for each block, and subnet information determined by the architecture information, based on the architecture parameters in the learned supernet information, and outputting the architecture information; A subnet additional learning process that generates additionally learned subnet information by updating parameters in the subnet information through learning using the learning data set; and A structure-hiding model information generation process that generates structure-hiding model information by excluding the predetermined module and the architecture parameter included in the learned supernet information, and then replacing the parameters of the portion of the parameters included in the learned supernet information that corresponds to the subnet information with the parameters included in the additionally learned subnet information, and outputs the structure-hiding model information. A structure-hiding neural network model generation program for executing the above.

7. On the computer, a supernet model construction process for generating supernet information based on candidate structure information given as input; A supernet learning process that generates learned supernet information by updating parameters of modules other than a predetermined module included in the supernet information and architecture parameters that are a set of all parameters of the predetermined module through learning using a learning data set given as input; and an output process for separately outputting information obtained by excluding the predetermined module and the architecture parameters from the learned supernet information and the architecture parameters; A structure-hiding neural network model generation program for executing the above.