Automated machine learning development system, automated machine learning development method, and program
Patent Information
- Application Number
- JP2025534163
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-12-12
- Publication Date
- 2026-09-08
- Estimated Expiration
- 2042-12-12
AI Technical Summary
【0018】 本発明によれば、全体的な自動機械学習開発システムをより高速にすることができる。
Smart Images

Figure 0007917076000001 
Figure 0007917076000002 
Figure 0007917076000003
Abstract
Description
[[Technical Field]]
[0001] The present invention relates to an automated machine learning development system, an automated machine learning development method, and a program. [[Background Art]]
[0002] In recent years, convolutional neural network (CNN) models have become the state-of-the-art solution for high-precision computer vision tasks. In real-time systems, CNN models are not only designed to achieve high accuracy, but also compressed to achieve real-time speed.
[0003] Designing a CNN model to achieve high accuracy requires optimization of a number of hyperparameters. Also, at the same time, designing a CNN model involves several candidates for each layer. Manually selecting the optimal candidate for each layer and optimizing hyperparameters is time-consuming and requires human expertise.
[0004] In recent years, a time-efficient technique, namely neural architecture search (NAS), has been developed. There are several types of developed NAS techniques, including One-shot NAS, Bayesian Optimization NAS, and Reinforcement learning-based NAS. The main objective of NAS is to find an optimal CNN model from a large search space. Since exploring the entire search space is computationally very difficult, NAS techniques attempt to efficiently find a CNN model with the desired accuracy.
[0005] The generated CNN model, while possessing the desired accuracy, is generally not sufficiently efficient in terms of execution time. Therefore, the generated model is compressed to achieve similar accuracy with reduced execution time. During compression, each layer of the CNN model is replaced with a lightweight layer, assuming that accuracy is nearly maintained. However, several lightweight layers may exist for each layer of the CNN model. Trying all possible combinations of lightweight candidate layers exhaustively for the entire CNN model is time-consuming.
[0006] There are several documents related to designing neural network architecture models. Patent document (PTL) 1 relates to an information processing method that enables the discovery of inference models that suppress quantization-induced losses.
[0007] Patent document 2 relates to composite model scaling for neural networks for determining the neural network architecture.
[0008] Patent Document 3 relates to a method for providing information on hyperparameters related to the performance of a learning model.
[0009] Patent document 4 relates to a method for searching for neural network structure models. [Prior art documents] [Patent Documents]
[0010] [Patent Document 1] WO2022 / 044465A1 [Patent Document 2] Special Publication No. 2022-523666 [Patent Document 3] Japanese Patent Publication No. 2022-065599 [Patent Document 4] Japanese Patent Publication No. 2021-064342 [Overview of the Initiative] [Problems that the invention aims to solve]
[0011] The following analysis is provided by the inventors.
[0012] The first problem with automated machine learning is that model compression is time-consuming. The primary reason for this is that there are several lightweight candidate layers for each layer of a CNN model. Trying every candidate exhaustively is time-consuming.
[0013] Therefore, one of the objectives of the present invention is to contribute to making the overall automated machine learning development system faster. [Means for solving the problem]
[0014] The automated machine learning development system of the present invention uses an alpha analyzer block that analyzes training information during high-precision CNN model generation, thereby removing some candidates from the model compression search space. Using the reduced number of candidate layers, model compression can be performed more quickly.
[0015] According to a first aspect of the present invention, an automated machine learning development system comprising a neural architecture search block, an alpha analyzer block, a model compression block, and a model deployment block, The aforementioned neural architecture search block is, -Receive the dataset, - Build a large CNN model, The aforementioned large CNN model includes at least a backbone, neck, and head, The backbone includes a series of interconnected layers, each containing multiple candidate sublayers connected in parallel. An α parameter is assigned to the output of each candidate sublayer of the backbone, and the output of each candidate sublayer is multiplied by its respective trained α parameter value. -The backbone of the large CNN model is trained by training the weights and alpha parameter values of all candidate sublayers of the backbone of the large CNN model using the dataset, - Based on the highest alpha parameter value trained, select the best candidate sublayer for each of the layers, and construct a small CNN model including a derived backbone containing the best candidate sublayer selected for at least each of the layers, the neck, and the head. -The derived backbone of the small CNN model is trained using the dataset. -This outputs a trained small CNN model that includes the trained alpha parameter values and trained derived backbone of the large CNN model. The α analyzer block is, - The trained α parameter value is received from the neural architecture search block, - Based on the trained α parameter values, rank all of the candidate sublayers of each of the layers, and compare the trained α parameter values with the sizes of the candidate sublayers. - Remove weaker candidate sublayers from the candidate search space, such as candidate sublayers having a larger size than the candidate sublayer having the highest α parameter value, or candidate sublayers having an α parameter value that is less than the highest α parameter value by a predetermined threshold, thereby reducing the candidate search space for model compression. - The reduced candidate search space, including the reduced number of candidate sublayers, is output to the model compression block. The aforementioned model compression block is -Receive the trained small CNN model from the neural architecture search block and the reduced candidate search space from the alpha analyzer block. -compressing the trained small CNN model into a lightweight CNN model by replacing the sublayer in each layer of the trained derived backbone of the smaller CNN model with the remaining candidate sublayers in the reduced candidate search space, the model deployment block is configured to: deploy the lightweight CNN model on target hardware, an automated machine learning development system can be provided.
[0016] According to a second aspect of the present invention, there is provided a computer comprising: -receiving a dataset; and -constructing a large CNN model, wherein the large CNN model comprises at least a backbone, a neck and a head, the backbone comprises sequentially connected layers, each layer comprising a plurality of candidate sublayers connected in parallel, an α parameter is assigned to an output of each candidate sublayer of the backbone, and the output of each said candidate sublayer is multiplied by a respective trained α parameter value, the computer is configured to perform: -training the backbone of the large CNN model by training weights and α parameter values of all candidate sublayers of the backbone of the large CNN model using the dataset; -selecting a best candidate sublayer for each of said layers based on trained highest α parameter values, and constructing a small CNN model comprising a derived backbone including at least the best candidate sublayer selected for each of said layers, the neck and the head; -training the derived backbone of the small CNN model using the dataset; and -outputting a trained small CNN model including the trained α parameter values of the large CNN model and the trained derived backbone, wherein the computer is configured to perform: - The step of receiving the trained alpha parameter value, - A step of ranking all of the candidate sublayers of each of the layers based on the trained α parameter values, and comparing the trained α parameter values with the sizes of the candidate sublayers, - A step of reducing the candidate search space for model compression by removing weak candidate sublayers from each of the layers, which are candidate sublayers having a size larger than the candidate sublayer having the highest α parameter value, or candidate sublayers having an α parameter value that is less than the highest α parameter value by a predetermined threshold, -The step of outputting a reduced candidate search space that includes a reduced number of candidate sublayers, The aforementioned computer, - The steps of receiving the trained small CNN model from the neural architecture search block and the reduced candidate search space from the alpha analyzer block, - The step of compressing the trained small CNN model into a lightweight CNN model by replacing the sublayers in each layer of the trained derived backbone of the smaller CNN model with the remaining candidate sublayers in the reduced candidate search space, The aforementioned computer, - A step of deploying the lightweight CNN model onto the target hardware, We can provide an automated machine learning development method, which includes [specific features / techniques]. This method is tied to a specific machine, a computer, that executes the automated machine learning development method.
[0017] According to a third aspect of the present invention, a computer, - The process of receiving the dataset, -Execute the process of building a large CNN model, The aforementioned large CNN model includes at least a backbone, neck, and head, The backbone includes a series of interconnected layers, each containing multiple candidate sublayers connected in parallel. An α parameter is assigned to the output of each candidate sublayer of the backbone, and the output of each candidate sublayer is multiplied by its respective trained α parameter value. To the aforementioned computer, - A process of training the backbone of the large CNN model by training the weights and alpha parameter values of all candidate sublayers of the backbone of the large CNN model using the dataset, - A process of selecting the best candidate sublayer for each of the layers based on the highest alpha parameter value trained, and constructing a small CNN model including a derived backbone containing the best candidate sublayer selected for each of the layers, the neck, and the head. - A process of training the derived backbone of the small CNN model using the dataset, -Execute a process that outputs a trained small CNN model containing the trained alpha parameter values and the trained derived backbone of the large CNN model. To the aforementioned computer, - The process of receiving the trained alpha parameter values, - A process of ranking all of the candidate sublayers of each of the layers based on the trained α parameter values, and comparing the trained α parameter values with the sizes of the candidate sublayers, - A process to reduce the candidate search space for model compression by removing weaker candidate sublayers from each of the layers, which are candidate sublayers that are larger in size than the candidate sublayer having the highest α parameter value, or candidate sublayers that have an α parameter value that is less than the highest α parameter value by a predetermined threshold, -Execute a process to output a reduced candidate search space that includes the reduced number of candidate sublayers. To the aforementioned computer, - Processing to receive the trained small CNN model from the neural architecture search block and the reduced candidate search space from the alpha analyzer block, -The process of compressing the trained small CNN model into a lightweight CNN model is performed by replacing the sublayers in each layer of the trained derived backbone of the smaller CNN model with the remaining candidate sublayers in the reduced candidate search space. To the aforementioned computer, - A process to deploy the lightweight CNN model onto the target hardware. We can provide computer programs that execute the above. These programs can be recorded on a computer-readable storage medium. The storage medium can be non-temporary, such as semiconductor memory, hard disk, magnetic recording medium, or optical recording medium. The present invention can also be embodied as a computer program product. [Effects of the Invention]
[0018] According to the present invention, the overall automated machine learning development system can be made faster. [Brief explanation of the drawing]
[0019] [Figure 1] An example block diagram of the automated machine learning development system 100 according to one embodiment of the present invention is shown. [Figure 2] A flowchart of the Automated Machine Learning Development System 100 of Embodiments is shown. [Figure 3] A flowchart of the neural architecture search block 200 of one embodiment of the present invention is shown. [Figure 4] A flowchart of the alpha analyzer block 300 in one embodiment of the present invention is shown. [Figure 5] A flowchart of model compression block 400 in one embodiment of the present invention is shown. [Figure 6]An example of a supernet architecture constructed using the neural architecture search block 200 of one embodiment of the present invention is shown. [Figure 7] An example block diagram of a subnet 2001 architecture constructed by the neural architecture search block 200 of one embodiment of the present invention is shown. [Figure 8] An example block diagram of a subnet 2001B architecture compressed by model compression block 400 of one embodiment of the present invention is shown. [Figure 9] An example of a table representation of the ranking of candidate sublayers performed by the α analyzer block 300 of one embodiment of the present invention is shown. [Figure 10] This example shows a table representation of a reduced candidate search space, obtained by removing several candidate sublayers from the candidate search space input to the model compression block 400 by the alpha analyzer block 300 of one embodiment of the present invention. [Figure 11] This shows the configuration of the computer that constitutes the automated machine learning development system of the present invention. [Modes for carrying out the invention]
[0020] [One embodiment] An automated machine learning development system according to one embodiment of the present invention will be described in detail with reference to the drawings.
[0021] The reference numerals in the drawings attached to this summary are provided for convenience as examples to aid understanding and are not intended to limit the present invention. Furthermore, the connecting lines between blocks in the drawings include both bidirectional and unidirectional lines. Unidirectional arrows schematically represent the flow of the main signal (data) and do not exclude bidirectional flow. Although not shown, each connecting line in the circuit diagrams, block diagrams, internal configuration diagrams, and connection diagrams presented in this disclosure has input and output ports. The same applies to input / output interfaces.
[0022] Figure 1 shows an example block diagram of an automated machine learning development system 100 according to one embodiment of the present invention. The automated machine learning development system 100 includes at least a dataset 101 used for an object detection task, a neural architecture search block 200, an alpha analyzer block 300, a model compression block 400, and a model deployment block 500.
[0023] Figure 2 shows a flowchart of an automated machine learning development system 100 according to one embodiment of the present invention. The flowchart begins at step S101. Next, the neural architecture search block 200 performs the process in step S102. Next, the alpha analyzer block 300 performs the process in step S103. Next, the model compression block 400 performs the process in step S104. Finally, the model deployment block 500 performs the process in step S105. The flowchart then ends at step S106.
[0024] Dataset 101 for the object detection task includes images and labels. The images are input to supernet 2000 and subnet 2001, and the labels are predictions that supernet 2000 and subnet 2001 are intended to produce as output.
[0025] Next, the operation of the neural architecture search block 200 will be explained below.
[0026] First, high-precision CNN models are searched for using the neural architecture search block 200.
[0027] Neural architecture search block 200 receives dataset 101, constructs a large CNN model called supernet 2000 that includes at least a backbone, a neck, and a head, trains the backbone of supernet 2000, extracts and constructs a small CNN model called subnet 2001 that includes the backbone, the neck, and the head, trains the backbone of subnet 2001, and outputs the trained α parameter values of supernet 2000 and the subnet 2001 model. Figure 3 shows a flowchart of neural architecture search block 200 according to an embodiment of the present invention. Figure 6 shows an example of a supernet architecture constructed by neural architecture search block 200 according to an embodiment of the present invention. Figure 7 shows an example of a block diagram of a subnet 2001 architecture constructed by neural architecture search block 200 according to an embodiment of the present invention. The flowchart starts at step S201.
[0028] As shown in step S202 of Figure 3, first, neural architecture search block 200 constructs a large CNN model called supernet 2000 from scratch. In constructing supernet 2000, first, F consecutive CNN layers called fixed layers are arranged. Next, M candidate sublayers (also referred to as candidates) are arranged in parallel to form one large layer at the output of the last fixed layer (fixed block). As shown in Figure 6, layers 211 to 21N each include M candidate sublayers arranged in parallel, and are arranged consecutively N times. As shown in Figure 6, the indexing of CNN layers is B i j , where 0 < i ≦ n and 0 < j ≦ M. All layers B iIn contrast to the above, instead of a fixed number M of candidate sublayers, a variable number of candidate sublayers may be provided. A plurality of such sublayers connected in series and in parallel form the backbone (also referred to as a backbone unit) 201 of a supernet 2000. Each α parameter value is assigned to the output of each candidate sublayer of the backbone 201. As shown in FIG. 6, the indexing of α parameter values is α i j given by , where 0 < i ≦ n and 0 < j ≦ M. During forward propagation, the output of each candidate layer is multiplied by the respective i-th α parameter value. The parameter values of each layer may be normalized such that the sum of the α parameter values in each layer equals 1.
[0029] As shown in FIG. 6, at the output of the last layer 21N of the backbone 201, a neck layer 202 and a head layer 203 are connected in series. The neck layer 202 and the head layer 203 are designed according to the requirements of an object detection task.
[0030] After the supernet 2000 is constructed, as shown in step S203 of FIG. 3, the neural architecture search block 200 efficiently trains the weights of all candidate sublayers of the backbone 201 of the supernet 2000 and the α parameter values of the backbone 201 of the supernet 2000 using the dataset 101, thereby training the backbone 201 of the supernet 2000.
[0031] After training the backbone 201 of the supernet2000 is complete, from each of the M candidate sublayers in layers 211 to 21N of the backbone 201, only one candidate sublayer (the best candidate sublayer) with the best trained α parameter value (hereinafter also referred to as the α parameter value of the winner sublayer) is selected as the winner sublayer for each of layers 211 to 21N, and the rest are discarded by the neural architecture search block 200. Thus, as shown in Figure 7, only one candidate sublayer (the best candidate sublayer) remains in each of layers 211 to 21N, forming the derived backbone 2011. As shown in step S204 of Figure 3, together with the derived backbone 2011 and the existing neck 202 layer and head 203 layer, the neural architecture search block 200 constructs a new small CNN model called subnet 2001. The neural architecture search block 200 then trains the derived backbone 2011 of subnet 2001 using dataset 101, as shown in step S205 of Figure 3. After training the backbone 2011 of subnet 2001, the neural architecture search block 200 outputs the trained subnet 2001, which includes the trained alpha parameter values from the training of the supernet 2000's backbone 201, and the trained derived backbone 2011, ending in step S206 of the flowchart.
[0032] Next, the operation of the α analyzer block 300 will be explained below.
[0033] The alpha analyzer block 300 receives the trained alpha parameter values from the neural architecture search block, performs analysis, and outputs the reduced number of candidates to the model compression block 400.
[0034] Figure 4 shows a flowchart of the α analyzer block 300 of one embodiment of the present invention. Figure 9 shows an example of a table representation of the ranking of candidate sublayers performed by the α analyzer block 300 of one embodiment of the present invention. Figure 10 shows an example of a table representation of a reduced candidate search space, from which some candidate sublayers have been removed, which is input to the model compression block 400 by the α analyzer block 300 of one embodiment of the present invention. The flowchart begins at step S301.
[0035] First, the α analyzer block 300 ranks all candidate sublayers of each layer based on their α parameter values, as shown in step S302. The candidate sublayer with the highest α parameter value in each layer is selected as the winner sublayer, as shown in the "Winner" column of Figure 9. The candidate sublayer with the second highest α parameter value is selected as second place, as shown in the "Second Place" column of Figure 9. Similarly, rankings are made for third place, and so on, as shown in Figure 9. Next, one of the layers I is selected from the table in Figure 9, as shown in step S303 of Figure 4.
[0036] Next, the size of all candidate sublayers for ranks other than the winner is compared to the size of the winner sublayer. The definition of size varies depending on the use case. Some definitions of size, but not limited to them, include the number of multiply-accumulate operations, the number of weight parameters, or the execution time. Also, the α parameter value of all candidates for ranks other than the winner is compared to the α parameter value of the winner sublayer. As shown in step S304 of Figure 4, weak candidate sublayers within each layer that have a size larger than the winner sublayer or an α parameter value smaller by a predetermined threshold (Δ) than the α parameter value of the winner sublayer are removed from the candidate search space, which lists the candidate sublayers that will be replaced in each layer of the smaller CNN model backbone, thus reducing the candidate search space. In step S305 of Figure 4, a similar process to the removal of candidate sublayers is performed for the remaining layers. An example of the reduced candidate search space is shown in the table in Figure 10. The reduced candidate search space, including the reduced number of candidate sublayers, is output to the analyzer block 300. The flowchart ends at step S306.
[0037] Next, the operation of model compression block 400 is described below.
[0038] The model compression block 400 receives the trained subnet 2001 from the neural architecture search block 200 and the reduced candidate search space from the alpha analyzer block 300. The model compression block 400 then compresses subnet 2001 by replacing each layer of the backbone 2011 with lightweight sublayers so that accuracy is maintained as shown below.
[0039] Figure 5 shows a flowchart of the model compression block 400 in one embodiment of the present invention. Figure 8 shows an example block diagram of the subnet 2001B architecture compressed by the model compression block 400 in one embodiment of the present invention. The flowchart begins at step S401.
[0040] As shown in step S402 of Figure 5, the model compression block 400 starts with (or selects) one of the layers i for compression. Next, as shown in step S403 of Figure 5, the model compression block 400 replaces the winning sublayer in each layer within the reduced candidate search space, and successively tries all the remaining candidate sublayers, compressing subnet 2001 into lightweight subnet 2001B as shown in Figure 8. As shown in step S404 of Figure 5, the candidate sublayer with the smallest size and almost perfect accuracy (the candidate sublayer with the best evaluation result) is selected and replaces the original winning sublayer with the candidate sublayer with the best evaluation result (this is considered the new winner). As shown in step S405 of Figure 5, for all the remaining layers, the step is performed to evaluate all lightweight candidate sublayers against the original winning sublayer. The flowchart ends in step S406.
[0041] Finally, as shown in Figure 8, the lightweight subnet 2001B, which includes the backbone 2011B compressed by the model compression block 400, is given as an output by the model compression block 400. Here, X, Y, and Z represent examples of the replaced candidate sublayers in each of layers 1, 2, and N, respectively.
[0042] The model deployment block 500 receives the lightweight subnet 2001B from the model compression block 400 and efficiently deploys it onto the target hardware. The internal operation of the model deployment block 500 is outside the scope of this invention.
[0043] It is generally acknowledged that fully training the supernet's backbone 201 is difficult due to its large CNN structure. Consequently, the weights of all candidate sublayers are not fully trained. This makes it difficult to find the optimal backbone 2011 for the subnet 2001 model from the entire search space. Due to the insufficiently trained weights of the candidate sublayers, their respective alpha parameter values are likely not sufficiently trained and are very close to the winning sublayer. However, candidate sublayers with alpha parameter values that are too low are weak candidates and should no longer exist in the search space for model compression. Therefore, removing such weak candidates from the search space of model compression block 400 results in faster execution of model compression block 400. Faster execution of model compression block 400 ultimately makes the automated machine learning development system 100 faster.
[0044] In the automated machine learning development system 100 of one embodiment of the present invention, the neural architecture search block 200 can also search for the optimal subnet 2001 backbone 2011 for the neck 202 layer and the head 203 layer. Therefore, the alpha analyzer block 300 and the model compression block 400 can operate on the neck 202 layer and the head 203 layer, respectively.
[0045] Although embodiments of the present invention have been described above, the present invention is not limited to the embodiments described above, and further modifications, substitutions, and adjustments can be made without departing from the basic technical idea of the present invention. For example, the network configuration, the configuration of each element, and the message representation form shown in each drawing are examples to help understand the present invention. The present invention is not limited to the configurations shown in these drawings. Also, "A and / or B" in the above description is used to mean at least one of A or B. Even if not shown, in each block in the drawings, there are ports or interfaces at the connection points between inputs and outputs.
[0046] Furthermore, the procedure shown in one embodiment can be implemented by a program that enables a computer (9000 in Figure 11) to function as an automated machine learning development system. Such a computer is exemplified by a configuration comprising a CPU (Central Processing Unit) 9010, a communication interface 9020, memory 9030, and auxiliary storage device 9040 as shown in Figure 11. In other words, the CPU 9010 in Figure 11 should be configured to execute a processing program as the automated machine learning development system 100 and to perform update processing of each calculation parameter held in its auxiliary storage device 9040, etc.
[0047] In other words, each part (processing means, function) of the automated machine learning development system 100 shown in the above-described embodiment can be realized by a computer program that causes the processor mounted on the automated machine learning development system 100 to execute each of the above-described processes using its hardware.
[0048] Finally, preferred embodiments of the present invention are summarized. [First form] (See the first perspective above for information on automated machine learning development systems.) [Second form] In the first embodiment of the automated machine learning development system, the size of the candidate sublayer is preferably the number of sum-of-products operations, the number of weight parameters, or the execution time of the candidate sublayer. [Third form] The first and second forms of automated machine learning development systems use datasets that include images and labels. Preferably, the image is input to the large CNN model and the small CNN model, and the labels are predictions that the large CNN model and the small CNN model are intended to produce as outputs. [Fourth form] In any one of the first to third forms of an automated machine learning development system, it is preferable that the candidate search space lists candidate sublayers that will be replaced in each layer of the backbone of the smaller CNN model. [Fifth form] In any one of the first to fourth forms of an automated machine learning development system, it is preferable that the α parameter values of each layer are normalized such that the sum of the α parameter values within each layer is 1. [6th form] In any one of the first to fifth forms of the automated machine learning development system, it is preferable that the number of candidate sublayers within the layer varies from layer to layer. [Seventh form] (See the second perspective above for automated machine learning development methods) [Eighth form] In the seventh form of the automated machine learning development method, it is preferable that the size of the candidate sublayer is the number of sum-of-products operations, the number of weight parameters, or the execution time of the candidate sublayer. [Ninth form] (See the computer program from the third perspective above) [Tenth form] In the ninth form of the computer program, it is preferable that the size of the candidate sublayer is the number of multiply-accumulate operations, the number of weight parameters, or the execution time of the candidate sublayer.
[0049] Furthermore, the disclosures in the above-mentioned patent documents are incorporated into this book by reference. Within the framework of the full disclosure of the present invention (including the claims), further modifications and adjustments to the embodiments or examples are possible based on the fundamental technical concept. Also, within the framework of the disclosure of the present invention, various combinations or selections (including partial deletions) of various disclosed elements (including each element of each claim, each element of each embodiment or example, each element of each drawing, etc.) are possible. In other words, the present invention naturally includes the full disclosure, including the claims, and various modifications and alterations that a person skilled in the art could make in accordance with the technical concept. In particular, with respect to the numerical ranges described in this book, any numerical value or sub-range included within that range should be interpreted as being specifically described, even if not otherwise stated. [Explanation of symbols]
[0050] 100 Automated Machine Learning Development Systems 101 datasets 200 Neural Architecture Search Blocks 201 The backbone of a supernet built with neural architecture search blocks. 2000 Supernet 2001 subnet 2001B Lightweight Subnet Derived backbone of subnets constructed using the 2011 Neural Architecture Search Block. Backbone of lightweight subnets compressed with 2011B model compression blocks 202 Neck layer of a supernet built with neural architecture search blocks 203 Head layer of a supernet built with neural architecture search blocks 300 α analyzer block 400 Model Compression Blocks 500 Model Deployment Blocks
Claims
1. An automated machine learning development system comprising a neural architecture search block, an alpha analyzer block, a model compression block, and a model deployment block, The aforementioned neural architecture search block is, -Receive the dataset, - Build a large CNN model, The aforementioned large CNN model includes at least a backbone, neck and head, The aforementioned backbone includes sequentially connected layers, each containing multiple candidate sublayers connected in parallel. An α parameter is assigned to the output of each candidate sublayer of the backbone, and the output of each candidate sublayer is multiplied by its respective trained α parameter value. - The backbone of the large CNN model is trained by training the weights and α parameter values of all candidate sublayers of the backbone of the large CNN model using the dataset, - Based on the highest α parameter value trained, select the best candidate sublayer for each of the layers, and construct a small CNN model including a derived backbone, the neck, and the head, which include at least the best candidate sublayer selected for each of the layers. - The derived backbone of the small CNN model is trained using the dataset. - This outputs a trained small CNN model that includes the trained alpha parameter values and trained derived backbone of the large CNN model. The α analyzer block is, - The trained α parameter value is received from the neural architecture search block, - Rank all of the candidate sublayers of each of the layers based on the trained α parameter values, and compare the trained α parameter values with the size of the candidate sublayers. - Remove weaker candidate sublayers from the candidate search space, such as candidate sublayers with a size larger than the candidate sublayer having the highest α parameter value, or candidate sublayers with an α parameter value smaller by a predetermined threshold than the highest α parameter value, thereby reducing the candidate search space for model compression. - The reduced candidate search space, including the reduced number of candidate sublayers, is output to the model compression block. The aforementioned model compression block is, - The trained small CNN model is received from the neural architecture search block, and the reduced candidate search space is received from the alpha analyzer block. - The trained small CNN model is compressed into a lightweight CNN model by replacing the sublayers in each layer of the trained derived backbone of the small CNN model with the remaining candidate sublayers in the reduced candidate search space. The aforementioned model deployment block is The aforementioned lightweight CNN model is deployed on the target hardware. Automated machine learning development system.
2. The automated machine learning development system according to claim 1, wherein the size of the candidate sublayer is the number of sum-of-accumulate operations, the number of weight parameters, or the execution time of the candidate sublayer.
3. The dataset includes images and labels. The automated machine learning development system according to claim 1, wherein the image is input to the large CNN model and the small CNN model, and the label is a prediction intended to be generated as output by the large CNN model and the small CNN model.
4. The automated machine learning development system according to claim 1, wherein the candidate search space displays a list of candidate sublayers in which each layer of the backbone of the small CNN model will be replaced.
5. The automated machine learning development system according to claim 1, wherein the alpha parameter values of each layer are normalized such that the sum of the alpha parameter values within each layer is 1.
6. The automated machine learning development system according to claim 1, wherein the number of candidate sublayers within the layer varies for each layer.
7. Computers - Steps to receive the dataset, - Includes the step of building a large CNN model, The aforementioned large CNN model includes at least a backbone, neck and head, The aforementioned backbone includes sequentially connected layers, each containing multiple candidate sublayers connected in parallel. An α parameter is assigned to the output of each candidate sublayer of the backbone, and the output of each candidate sublayer is multiplied by its respective trained α parameter value. The aforementioned computer, - The step of training the backbone of the large CNN model by training the weights and α parameter values of all candidate sublayers of the backbone of the large CNN model using the dataset, - A step of selecting the best candidate sublayer for each of the layers based on the highest α parameter value trained, and constructing a small CNN model including a derived backbone, a neck, and a head, which include at least the best candidate sublayer selected for each of the layers. - A step of training the derived backbone of the small CNN model using the dataset, - Includes the step of outputting a trained small CNN model that includes the trained alpha parameter values and trained derived backbone of the large CNN model, The aforementioned computer, - The step of receiving the trained alpha parameter value, - A step of ranking all of the candidate sublayers of each of the layers based on the trained α parameter values, and comparing the trained α parameter values with the size of the candidate sublayers, - A step of reducing the candidate search space for model compression by removing weaker candidate sublayers from each of the layers, which are candidate sublayers that are larger in size than the candidate sublayer having the highest α parameter value, or candidate sublayers that have an α parameter value that is smaller by a predetermined threshold than the highest α parameter value, - Includes the step of outputting a reduced candidate search space that includes a reduced number of candidate sublayers, The aforementioned computer, - The steps of receiving the trained small CNN model and the reduced candidate search space, - The process includes the step of compressing the trained small CNN model into a lightweight CNN model by replacing the sublayers in each layer of the trained derived backbone of the small CNN model with the remaining candidate sublayers in the reduced candidate search space, The aforementioned computer, - A step of deploying the lightweight CNN model onto the target hardware, An automated machine learning development method, including...
8. The automated machine learning development method according to claim 7, wherein the size of the candidate sublayer is the number of sum-of-accumulate operations, the number of weight parameters, or the execution time of the candidate sublayer.
9. On the computer, - The process of receiving the dataset, -Execute the process to build a large CNN model, The aforementioned large CNN model includes at least a backbone, neck and head, The aforementioned backbone includes sequentially connected layers, each containing multiple candidate sublayers connected in parallel. An α parameter is assigned to the output of each candidate sublayer of the backbone, and the output of each candidate sublayer is multiplied by its respective trained α parameter value. To the aforementioned computer, - A process of training the backbone of the large CNN model by training the weights and α parameter values of all candidate sublayers of the backbone of the large CNN model using the dataset, - A process of selecting the best candidate sublayer for each of the layers based on the highest α parameter value trained, and constructing a small CNN model including a derived backbone, a neck, and a head, which includes at least the best candidate sublayer selected for each of the layers. - A process of training the derived backbone of the small CNN model using the dataset, -Execute a process that outputs a trained small CNN model including the trained α parameter values and the trained derived backbone of the large CNN model. To the aforementioned computer, - The process of receiving the trained alpha parameter values, - A process of ranking all of the candidate sublayers of each of the layers based on the trained α parameter values, and comparing the trained α parameter values with the size of the candidate sublayers, - A process to reduce the candidate search space for model compression by removing weaker candidate sublayers from the candidate search space, which are candidate sublayers that are larger in size than the candidate sublayer having the highest α parameter value, or candidate sublayers that have an α parameter value that is less than the highest α parameter value by a predetermined threshold, - Execute a process to output a reduced candidate search space that includes the reduced number of candidate sublayers. To the aforementioned computer, - Processing to receive the trained small CNN model and the reduced candidate search space, - The process of compressing the trained small CNN model into a lightweight CNN model is performed by replacing the sublayers in each layer of the trained derived backbone of the small CNN model with the remaining candidate sublayers in the reduced candidate search space. To the aforementioned computer, - The process of deploying the lightweight CNN model onto the target hardware. A computer program that executes something.
10. The computer program according to claim 9, wherein the size of the candidate sublayer is the number of sum-of-accumulate operations, the number of weight parameters, or the execution time of the candidate sublayer.
Citation Information
Patent Citations
Method, device and equipment for generating search space and storage medium
CN112100466A
Neural network architecture search method and electronic equipment
CN115222011A
Method, device, and recording medium for retrieving neural network structure model
JP2021064342A
Tuning algorithm recognition visualization method for analyzing and adjusting hyper parameter optimization process of machine learning model
JP2022065599A
Complex Model Scaling for Neural Networks
JP2022523666A