Information processing apparatus, information processing method, and computer-readable recording medium

By grouping candidate operations in Neural Architecture Search based on operation characteristics and convergence rates, the method ensures fair evaluation and selection, addressing the issue of bad candidate operations being selected over good ones, and improving the training efficacy of the SuperNet.

WO2025088670A1PCT designated stage expired Publication Date: 2025-05-01NEC CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/038178
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-23
Publication Date
2025-05-01

AI Technical Summary

Technical Problem

In Neural Architecture Search (NAS), bad candidate operations with faster convergence rates tend to get selected over good candidate operations with slower convergence rates, leading to inefficient training and potential selection of suboptimal models.

Method used

The proposed solution involves grouping candidate operations within each layer based on various criteria such as operation type, number of parameters, kernel size, and convergence rates, and then performing machine learning to select the best candidate operations for each group, ensuring fair evaluation and selection.

Benefits of technology

This approach helps in suppressing the selection of bad candidate operations by ensuring that good candidate operations with slower convergence rates are given sufficient time to converge, thereby improving the training efficacy of the SuperNet and enhancing the chances of selecting optimal models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2023038178_01052025_PF_FP_ABST
    Figure JP2023038178_01052025_PF_FP_ABST
Patent Text Reader

Abstract

An information processing apparatus 100 includes: a group setting unit 10 that executes grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; a learning processing unit 20 that performs machine learning on the machine learning model network, and selects one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and a candidate operation output unit 30 outputs a machine learning model composed of the selected candidate operations.
Need to check novelty before this filing date? Find Prior Art

Description

INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND COMPUTER-READABLE RECORDING MEDIUM

[0001] The present disclosure relates to an information processing apparatus, an information processing method, and a non-transitory computer readable medium storing a program for realizing these.

[0002] In the era of artificial intelligence, the research and development of the convolutional neural network (CNN) model has seen tremendous growth in the field of computer vision. The vital reason behind the growth of the CNN model is its ability to achieve high accuracy on various computer vision tasks such as image classification, object detection, segmentation, and so on.

[0003] However, designing the architecture of the CNN model requires human expertise and is time-consuming. The primary reason for the time consumption is that several options for the convolutional operation type exist. Additionally, adjusting the number of parameters employed in the selected convolution operations type requires human expertise and consumes additional time. In the case of real-time application, the architecture of the CNN models is not only designed based on solely to achieve high accuracy but also with the purpose of achieving high speed.

[0004] One of the prominent solutions to tackle the problem of the requirement of human expertise and time consumption is the neural architecture search (NAS). The NAS is defined as the methodology to automatically explore several options of the convolutional operation type and also automatically explore the number of parameters to employ in the selected convolutional operation type. There exist several variants of the NAS method, for example, reinforcement learning-based NAS, Bayesian optimization-based NAS, one-shot NAS, few-shot NAS, zero-shot NAS, evolutionary NAS, and so on. Different NAS methods have different merits and demerits. Among the different NAS methods, one-shot NAS is one of the faster methods in terms of the exploration of the design space.

[0005] In one-shot NAS, several candidates of convolutional operations types like standard convolution, dilated convolution, group convolution, pooling, eltwise operation, and so on with different parameter numbers (if applicable) are arranged in parallel in a layer. Several such layers are stacked sequentially to form a large CNN architecture commonly referred to as SuperNet (Registered trademark). In the case of the object detection task, convolutional operation-based layers, commonly referred to as the neck and head, are also present in the SuperNet. At the output of each candidate operation, a special architecture parameter (α) is added.

[0006] During the training of the SuperNet using the training Dataset, the parameters of candidate operation, as well as special architecture parameter (α), are trained. At the end of the training, the candidate operation with the highest special architecture parameter (α) values in a layer is selected to form the final neural network commonly referred to as a subnet or AI model in the current embodiment system.

[0007] Ideally, the AI model obtained from the SuperNet should consist of good candidate operation such that high accuracy and high speed, if applicable, can be achieved. However, if the efficiency of the SuperNet training is not good, then it may lead to the selection of the bad candidate operations. The primary reason for such inefficient SuperNet training is bad candidate operations sometimes tend to converge faster and might get selected in the final model. While the good candidate sometimes tends to converge slower and do not get selected in the final model.

[0008] In other words, the special architecture parameter (α) values of the bad candidate operation tend to get higher at the beginning of the SuperNet training because of faster convergence, while the special architecture parameter (α) values of the good candidate operations tend to get smaller at the beginning of the SuperNet training because of slower convergence.

[0009] To overcome such an in-efficient SuperNet training scenario, it becomes essential that good candidate operations are trained until convergence, which can lead to respective the special architecture parameter (α) values becoming higher. However, the amount of time required for training large neural networks like SuperNet becomes significantly large.

[0010] Contrary, if training time is kept shorter, then the potential risk of unfair evaluation of the good candidate operation and bad candidate operations being selected exist. Therefore, a tradeoff exists between the efficiency of the SuperNet training vs. the amount of time for the SuperNet training.

[0011] One of the solutions to such a problem was proposed in Non-Patent Literature 1. The Non-Patent literature 1 proposes Progressive elimination of the candidate operations, where during SuperNet training, one or few candidate operation(s) at every interval of training gets eliminated, based on the special architecture parameter (α) values.

[0012] At every interval, the candidate operation with the smallest special architecture parameter (α) values get eliminated, and hence progressively, the number of candidate operations becomes lesser. At the end of SuperNet training, the last candidate operation remaining is selected for the final model.

[0013] [NPL1] Progressive Differentiable Architecture Search Bridging the Depth Gap between Search and Evaluation; Xin Chen, Lingxi Xie, Jun Wu, Qi Tian; <https: / / arxiv.org / abs / 1904.12760>

[0014] However, the problem in the Non-Patent Literature1 is that there exists a possibility that good candidate operation having slow convergence might have tended to get smaller special architecture parameter (α) values at the beginning of SuperNet training.

[0015] Such a situation may lead elimination of good candidate operations in the early phase of the SuperNet training. If a good candidate operation gets eliminated in the beginning, then the risk of the bad candidate operation getting selected in the end arises.

[0016] As above, the primary problem of the one-shot NAS is bad candidate operations getting selected instead good candidate operations. The reason for the primary problem is some bad candidate operations tends to have faster convergence rate as compared to good candidate operations, leading to higher special architecture parameter (α) value and thereby getting selected.

[0017] One example of an object of the present disclosure is to suppress the occurrence of a situation in which a bad candidate operation is selected in Neural Architecture Search.

[0018] In order to achieve the foregoing object, an information processing apparatus according to one aspect of the present discloser includes: a group setting means for executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; a learning processing means for performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and a candidate operation output means for outputting a machine learning model composed of the selected candidate operations.

[0019] In order to achieve the foregoing object, an information processing method according to another aspect of the present discloser includes: executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and outputting a machine learning model composed of the selected candidate operations.

[0020] In order to achieve the foregoing object, a computer-readable recording medium according to still another aspect of the present discloser has recorded therein a program, and the program includes an instruction to cause the computer to execute: executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and outputting a machine learning model composed of the selected candidate operations.

[0021] As described above, according to the present discloser, it is possible to suppress the occurrence of a situation in which a bad candidate operation is selected in Neural Architecture Search.

[0022] FIG. 1 is a block diagram schematically illustrating a configuration of an example of the information apparatus.FIG. 2 is a block diagram more specifically illustrating a configuration of the example of the information apparatus.FIG. 3 is a diagram illustrating an example of a SuperNet.FIG. 4 is a diagram illustrating an example of grouping of candidate operations performed in the example embodiment.FIG. 5 is a diagram illustrating an example of the SuperNet after candidate operations is selected.FIG. 6 is a diagram illustrating a state in which one group is set for each layer in the SuperNet.FIG. 7 is a diagram illustrating an example of an output SuperNet.FIG. 8 is a flowchart illustrating an example of the operation of the information processing apparatus.FIG.9 is a block diagram illustrating an example of a computer that realizes the information processing apparatus.

[0023] (Example embodiment) Example embodiment of the present discloser is described in detail below referring to the accompanying drawings.

[0024] Configuration of Apparatus First, a configuration of an information processing apparatus 100 according to the example embodiment will be described using FIG. 1. FIG. 1 is a block diagram schematically illustrating a configuration of an example of the information apparatus.

[0025] The information processing apparatus illustrated in FIG. 1 is an apparatus for generating a machine learning model. As illustrated in FIG. 1, the information processing apparatus 100 includes a group setting unit 10, a learning processing unit 20 and a candidate operation output unit 30.

[0026] The group setting unit 10 execute grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and sets one or more groups for each of the layers. The learning processing unit 20 performs machine learning on the machine learning model network. And then, the learning processing unit 20 selects one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning. The candidate operation output unit 30 outputs the machine learning model composed of the selected candidate operations.

[0027] As described above, in the machine learning of the machine learning model network, the information processing apparatus 100 groups the candidate operations constituting each layer and selects the candidate operation for each group. Therefore, although the convergence is fast, bad candidate operations can be efficiently excluded. That is, according to the information processing apparatus 100, it is possible to suppress the occurrence of a situation in which a bad candidate operation is selected in Neural Architecture Search.

[0028] Next, the configuration and function of the information processing apparatus 100 will be described in detail using FIGS. 2 to 7 in addition to FIG. 1. FIG. 2 is a block diagram more specifically illustrating a configuration of the example of the information apparatus.

[0029] As illustrated in FIG. 2, the information processing apparatus 100 includes a network building unit 40 in addition to the group setting unit 10, the learning processing unit 20 and the candidate operation output unit 30 described above. In FIG. 2, reference numeral 31 denotes a dataset used as a training dataset in the machine learning of the machine learning model network. Reference numeral 50 denotes the machine learning model (AI model) outputted from the candidate operation output unit 30.

[0030] The dataset 31 comprises of images and labels indicating a content of the corresponding image. In the AI model 50, the image is an explanatory variable, and the label is an objective variable. The trained AI model 50 outputs a predicted label when an image is input.

[0031] The network building unit 40 builds the machine learning model network. In the example embodiment, the network building unit 40 builds a SuperNet 60 illustrated in FIG.3 as the machine learning model network. FIG. 3 is a diagram illustrating an example of a SuperNet.

[0032] The SuperNet 60 comprises a number of layers of candidate operations arranged in parallel, and then a number of such layers are arranged. The number of candidate operations and the choice of candidate operation in each layer are not limited. The output of each candidate operation in all layers is assigned the special architecture parameter (α). In case of object detection task, the neck 80 and the head 90 are added as additional blocks as illustrated in FIG.3. The neck 80 and the head 90 are convolutional layers.

[0033] The sample example of the SuperNet 60 illustrated in FIG. 3. consist of several candidate operation in each layer. Further, in FIG. 3, the following candidate operations are illustrated. Standard convolution operation with kernel size 3x3 and expand ratio 1 referred as k3e1 candidate operation 7010 Standard convolution operation with kernel size 3x3 and expand ratio 3 referred as k3e3 candidate operation 7011 Standard convolution operation with kernel size 3x3 and expand ratio 6 referred as k3e6 candidate operation 7012 Standard convolution operation with kernel size 5x5 and expand ratio 1 referred as k5e1 candidate operation 7013 Standard convolution operation with kernel size 5x5 and expand ratio 3 referred as k5e3 candidate operation 7014 Standard convolution operation with kernel size 5x5 and expand ratio 6 referred as k5e6 candidate operation 7015, Average pooling with kernel size 3x3 referred as Avg.k3 candidate operation 7016 Average pooling with kernel size 5x5 referred as Avg.k5 candidate operation 7017 Maximum pooling with kernel size 3x3 referred as Max.k3 candidate operation 7018 Maximum with kernel size 5x5 referred as Max.k5 candidate operation 7019 Additionally, as illustrated in FIG.3, for the object detection task, SuperNet 60 has neck 80 and head 90 that are the convolution operation-based layer.

[0034] The group setting unit 10 receives built SuperNet 60 from the network building unit 40 as input. The group setting unit 10 performs the grouping of the candidate operations in each layer. In each layer, there exist several candidate operations. All the candidate operations in each layer is grouped based on certain strategies. The number of groups into which candidate operations are grouped may vary from layer to layer. And the number of groups may vary from one SuperNet to another SuperNet.

[0035] The strategy used for grouping also may vary from layer to layer and may vary one SuperNet to another SuperNet. The group setting unit 10 executes grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics. The rule is not limited to the above.

[0036] Grouping based on operation type means candidate operations having similar operation types are grouped in one group, for example, candidate operation with convolution type in one group, pooling operation type in another group, eltwise operation type in another group and so on.

[0037] Grouping based on the number of parameters means that candidate operations having a similar range of parameters are grouped in one group. For example, candidate operations with a large number of parameters are in one group like standard convolution operation, candidate operations with very few parameters are in another group, like group convolution operation or dilated convolution operation. And in this case, candidate operations with no parameters are in another group, like skip operation, eltwise operation, channel shuffle operation and so on, too.

[0038] Grouping based on the kernel size means that candidate operations having similar size of kernel array are grouped in one group. For example, candidate operation with kernel size 3x3 are in one group, like standard convolution operation with kernel size 3x3, max pooling operation with kernel size 3x3, candidate operations with kernel size 1x1 are in another group, like point-wise convolution operation, scale operation and so on.

[0039] Grouping based on the number of multiplication and addition computations means that candidate operations having similar range of multiplication and addition computations are grouped in one group. For example, candidate operations with large number of multiplication and addition computations are in one group like standard convolution operation, group convolution operation or dilated convolution operation, candidate operations with very few multiplication and addition computations are in another group like, eltwise operation, batchnorm operation. And in this case, candidate operations with no multiplication and addition computations are in another group, like skip operation, channel shuffle operation, and so on, too.

[0040] Grouping based on similar latency means that grouping based on the amount of execution time consumed by a candidate operation on a particular hardware. For example, candidate operations with large latency are grouped in one group, like standard convolution and eltwise operations, candidate operations with small latency are in another group, like shuffle channel operation, or scale operation. And in this case, candidate operations with almost negligible latency are in another group, like skip operation, concatenation operation and so on, too.

[0041] Grouping based on non-similar operation type, means that candidate operations having non-similar operation type are grouped in one group. For example, candidate operations with convolution type operation or skip operation are grouped in one group, pooling operation and eltwise operation are grouped in another group. And in this case, shuffle channel operation, batchnorm operation and so on are grouped in another group, too.

[0042] Grouping may be based on some kind of expert’s heuristics. And so on, grouping may be a combination of two or more of the grouping strategies described above (hybrid based).

[0043] FIG. 4 is a diagram illustrating an example of grouping of candidate operations performed in the example embodiment. In the example of FIG. 4, hybrid based is adopted as the grouping strategy. And then, in the example of FIG.4, in each layer, one group is formed by candidate operations with standard convolution operation with kernel size 3x3, another group is formed by candidate operations with standard convolution operation with kernel size 5x5, and still another group is formed by candidate operations with pooling operation.

[0044] At the output of all the candidate operation, special architecture parameter (α) is assigned. Specifically, as illustrated in FIG.4, at the output of k3e1 candidate operation 7010 in first layer, α1L1g1which indicates special architecture parameter (α) of 1stcandidate in 1stgroup of 1stlayer. At the output Max.k5 candidate operation 7019 in first layer, α4L1g3which indicates special architecture parameter (α) of 4thcandidate in 3rdgroup of 1stlayer. Furthermore, at the output Max.k5 candidate operation 7039 in nthlayer, α4Lng3which indicates special architecture parameter (α) of 4thcandidate in 3rdgroup of nthlayer.

[0045] The group setting unit 10 executes grouping of the candidate operation in each layer of the SuperNet 60, using the mentioned strategies. And then, the group setting unit 10 outputs the SuperNet 60 in which the candidate operations are grouped to the learning processing unit 20.

[0046] The learning processing unit 20 receives the SuperNet 60 with grouped candidate operations as input. The learning processing unit 20 performs machine learning of the received SuperNet 60. By the machine learning of the SuperNet 60, weight parameters and special architecture parameters (α) of all the candidate operations are trained and updated.

[0047] Specifically, the learning processing unit 20 partially executes training of the SuperNet 60. After partial training of the SuperNet 60, the learning processing unit 20 selects a candidate operation with the largest value of the special architecture parameter (α) in each group for each layer.

[0048] The bad candidate operations having high convergence rate effects other candidate operations only in the group to which it belongs, even if the value of its special architecture parameter (α) is high. Thereby the good candidate operations having slower convergence rate will not be eliminated even if it does not have higher special architecture parameter (α) compared to bad candidate operations belonging to other groups. Such scenario introduces fairness in the evaluation among the candidate operation with different convergence rate. With the help fairness evaluation and sufficient convergence time, probability of good candidate being selected increase. Which thereby enhance the training efficacy of SuperNet 60.

[0049] At the end of selection of candidate operations, depending upon the number of groups in each layer, corresponding number of candidate operations in respective layer will remain. FIG. 5 is a diagram illustrating an example of the SuperNet after candidate operations is selected. As illustrated in FIG. 5, in the first layer, k3e1 candidate operation 7010, k5e3 candidate operation 7014, and Max.k5 candidate operation 7019, are selected by the learning processing unit 20. In the second layer, k3e3 candidate operation 7021, k5e1 candidate operation 7023, and Avg.k3 candidate operation 7026, are selected by the learning processing unit 20.

[0050] The learning processing unit 20 outputs, to the candidate operation output unit 30, the reduced SuperNet 60 in which the number of candidate operations in each layer is reduced by the partial training. However, in the example embodiment, as will be described below, the grouping by the group setting unit 10 and the machine learning by the learning processing unit 20 are performed until a single candidate operation is selected in all the layers.

[0051] If more than one candidate operations are remaining in any of the SuperNet 60 layer, than the partially trained and reduced SuperNet 60 is given as output to group setting unit 10. The group setting unit 10 again performs the grouping based on any of the grouping strategies. All the remaining candidate operation in each layers are grouped based on certain strategy. The number of groups into which remaining candidate operation are grouped may vary from layer to layer and one SuperNet to another SuperNet. The strategy being employed for grouping also may vary from layer to layer and one SuperNet to another SuperNet. Also, if not too many candidate operations are remaining, then all candidate operations can be grouped in one group as well for each layer as illustrated in fig. 6. FIG. 6 is a diagram illustrating a state in which one group is set for each layer in the SuperNet. The group setting unit 10 outputs the SuperNet 60 that has been grouped again to the learning processing unit 20.

[0052] The Learning processing unit 20 receives the SuperNet 60 that has been grouped again, as input. The Learning processing unit 20 performs machine learning of the received SuperNet 60. The learning processing unit 20 trains and updates the weight parameters and special architecture parameter (α) of all the candidate operations also in the current machine learning of the SuperNet 60 by using the dataset. In addition, in this case, training may be performed only on a layer in which the number of candidate operations is no single. The SuperNet 60 is partially trained.

[0053] After the training of the SuperNet 60, the learning processing unit 20 also selects the candidate operation with largest value of the special architecture parameter (α) in each group for each layer this time. At this time, if there is a single group in the layer, only one candidate operation remains. When the SuperNet 60 is reduced until a single candidate operation is obtained in all the layers, the learning processing unit 20 passes the reduced SuperNet 60 to the candidate operation output unit 30.

[0054] The candidate operation output unit 30 outputs the reduced SuperNet 60 as illustrated in FIG.7. FIG. 7 is a diagram illustrating an example of an output SuperNet. Such reduced SuperNet 60 is AI model. Also commonly reduced SuperNet 60 is referred as Subnet.

[0055] Operation of Apparatus Next, operation of the information processing apparatus 100 according to the example embodiment will be described using FIG. 8. FIG. 8 is a flowchart illustrating an example of the operation of the information processing apparatus. In the following description, FIGS. 1 to 7 are referred to as appropriate. In the example embodiment, the information processing method is implemented by operating the information processing apparatus 100. Accordingly, the description of the information processing method according to the example embodiment is replaced with the following description of the operations of the information processing apparatus 100.

[0056] As illustrated in FIG. 8, first, the network building unit 40 builds the SuperNet 60 as the machine learning model network (Step S1). An example of the SuperNet 60 is illustrated in FIG.3.

[0057] Next, the group setting unit 10 receives the SuperNet 60 built in step S1, and groups the candidate operations for each layer constituting the SuperNet 60 (step S2).

[0058] Next, the learning processing unit 20 performs machine learning on the SuperNet 60 in which the candidate operations are grouped in step S2, using the dataset 31 (step S3).

[0059] Next, after the training in step S4, the learning processing unit 20 selects a candidate operation with the largest value of the special architecture parameter (α) in each group for each layer and removes the remaining candidate operations (step S4).

[0060] Next, the learning processing unit 20 determines whether or not the selected candidate operation is single in all the layers of the SuperNet 60 (step S5).

[0061] As a result of the determination in step S5, when the selected candidate operation is no single in all the layers of the SuperNet 60, the learning processing unit 20 passes the SuperNet 60 after the execution of step S4 to the group setting unit 10 and causes the group setting unit 10 to execute step S2 again. Thereafter, steps S3 to S5 are also executed again.

[0062] On the other hand, as a result of the determination in step S5, when the selected candidate operation is single in all the layers of the SuperNet 60, the learning processing unit 20 passes the SuperNet 60 after the execution of step S4 to the candidate operation outputting unit 30. As a result, the candidate operation output unit 30 outputs the reduced SuperNet 60 illustrated in FIG. 7, that is, the AI model 50 (step S6).

[0063] In this way, when any one of the layers of the SuperNet 60 has two or more candidate operations, steps S2 to S5 are repeatedly executed, and a Subnet is finally output.

[0064] Thus, according to the example embodiment, a good candidate operation with slow convergence rate in one group is not removed early due to the presence of a candidate operation with fast convergence rate in another group. Thus, because the candidate operations in the SuperNet 60 are evaluated on a group basis, fairness is provided in the evaluation, thereby increasing the probability that the good candidate operation will be selected in the final AI model 50. In addition, in the example embodiment, because the SuperNet 60 can be trained in a partially iterative manner, it can take a lot of time to train good candidate operations with slow convergence rate, thereby improving the efficiency of the training of the SuperNet 60.

[0065] Program It suffices for a program in the example embodiment to be a program that causes a computer to carry out steps S1 to S6 illustrated in FIG. 8. Also, by this program being installed and executed in the computer, the information processing apparatus100 and the information processing method according to the example embodiment can be realized. In this case, a processor of the computer functions and performs processing as the group setting unit 10, the learning processing unit 20, the candidate operation output unit 30 and the network building unit 40. The computer includes general-purpose PC, smartphone and tablet-type terminal device.

[0066] Furthermore, the program according to the example embodiment may be executed by a computer system constructed with a plurality of computers. In this case, for example, each computer may function as one of the group setting unit 10, the learning processing unit 20, the candidate operation output unit 30 and the network building unit 40.

[0067] Physical configuration Using FIG. 9, the following describes a computer that realizes the information processing apparatus100 by executing the program according to the example embodiment. FIG.9 is a block diagram illustrating an example of a computer that realizes the information processing apparatus.

[0068] As shown in FIG. 9, a computer 110 includes a CPU (Central Processing Unit) 111, a main memory 112, a storage device 113, an input interface 114, a display controller 115, a data reader / writer 116, and a communication interface 117. These components are connected in such a manner that they can perform data communication with one another via a bus 121.

[0069] The computer 110 may include a GPU (Graphics Processing Unit) or an FPGA (Field-Programmable Gate Array) in addition to the CPU 111, or in place of the CPU 111. In this case, the GPU or the FPGA can execute the programs according to the example embodiment.

[0070] The CPU 111 deploys the program according to the example embodiment, which is composed of a code group stored in the storage device 113 to the main memory 112, and carries out various types of calculation by executing the codes in a predetermined order. The main memory 112 is typically a volatile storage device, such as a DRAM (dynamic random-access memory).

[0071] Also, the program according to the example embodiment is provided in a state where it is stored in a computer-readable recording medium 120. Note that the program according to the present example embodiment may be distributed over the Internet connected via the communication interface 117.

[0072] Also, specific examples of the storage device 113 include a hard disk drive and a semiconductor storage device, such as a flash memory. The input interface 114 mediates data transmission between the CPU 111 and an input device 118, such as a keyboard and a mouse. The display controller 115 is connected to a display device 119, and controls display on the display device 119.

[0073] The data reader / writer 116 mediates data transmission between the CPU 111 and the recording medium 120, reads out the program from the recording medium 120, and writes the result of processing in the computer 110 to the recording medium 120. The communication interface 117 mediates data transmission between the CPU 111 and another computer.

[0074] Specific examples of the recording medium 120 include: a general-purpose semiconductor storage device, such as CF (CompactFlash (Registered trademark)) and SD (Secure Digital); a magnetic recording medium, such as a flexible disk; and an optical recording medium, such as a CD-ROM (Compact Disk Read Only Memory).

[0075] Note that the information processing apparatus 100 can also be realized by using items of hardware that respectively correspond to the components, such as an electronic circuit, rather than the computer in which the program is installed. Furthermore, a part of the information processing apparatus 100 may be realized by the program, and the remaining part of the information processing apparatus 100 may be realized by hardware. The computer is not limited to the computer illustrated in FIG. 9.

[0076] A part or an entirety of the above-described example embodiment can be represented by (Supplementary Note 1) to (Supplementary Note 15) described below but is not limited to the description below.

[0077] (Supplementary Note 1) An information processing apparatus comprising: a group setting means for executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; a learning processing means for performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and a candidate operation output means for outputting a machine learning model composed of the selected candidate operations.

[0078] (Supplementary Note 2) The information processing apparatus according to Supplementary Note 1, wherein, in the case that two or more candidate operations selected in any of the plurality of layers, the group setting means executes grouping for the selected candidate operations in the layer in which there are two or more selected candidate operations, the learning processing means performs machine learning on the machine learning model network composed of the selected candidate operations, and selects the candidate operations again in the layer in which there are two or more candidate operations, the candidate operation output means outputs a machine learning model composed of the selected candidate operations when the selected candidate operation is single in all the layers.

[0079] (Supplementary Note 3) The information processing apparatus according to Supplementary Note 1, wherein the group setting means executes grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics.

[0080] (Supplementary Note 4) The information processing apparatus according to Supplementary Note 1, further comprising: a network building means for building the machine learning model network.

[0081] (Supplementary Note 5) The information processing apparatus according to Supplementary Note 1, wherein network building means builds a SuperNet as the machine learning model network.

[0082] (Supplementary Note 6) An information processing method comprising: executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and outputting a machine learning model composed of the selected candidate operations.

[0083] (Supplementary Note 7) The information processing method according to Supplementary Note 6, further comprising: in the case that two or more candidate operations selected in any of the plurality of layers, executing grouping for the selected candidate operations in the layer in which there are two or more selected candidate operations, performing machine learning on the machine learning model network composed of the selected candidate operations, and selecting the candidate operations again in the layer in which there are two or more candidate operations, outputting means outputs a machine learning model composed of the selected candidate operations when the selected candidate operation is single in all the layers.

[0084] (Supplementary Note 8) The information processing method according to Supplementary Note 6, wherein in the group setting, executing grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics.

[0085] (Supplementary Note 9) The information processing method according to Supplementary Note 6, further comprising: building the machine learning model network.

[0086] (Supplementary Note 10) The information processing method according to Supplementary Note 6, wherein in the network building, building a SuperNet as the machine learning model network.

[0087] (Supplementary Note 11) A computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause a computer to carry out: executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and outputting a machine learning model composed of the selected candidate operations.

[0088] (Supplementary Note 12) The computer-readable recording medium according to Supplementary Note 11, further the program including instructions that cause a computer to carry out: in the case that two or more candidate operations selected in any of the plurality of layers, executing grouping for the selected candidate operations in the layer in which there are two or more selected candidate operations, performing machine learning on the machine learning model network composed of the selected candidate operations, and selecting the candidate operations again in the layer in which there are two or more candidate operations, outputting means outputs a machine learning model composed of the selected candidate operations when the selected candidate operation is single in all the layers.

[0089] (Supplementary Note 13) The computer-readable recording medium according to Supplementary Note 11, wherein in the group setting, executing grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics.

[0090] (Supplementary Note 14) The computer-readable recording medium according to Supplementary Note 11, further the program including instructions that cause a computer to carry out: building the machine learning model network.

[0091] (Supplementary Note 15) The computer-readable recording medium according to Supplementary Note 11, wherein in the network building, building a SuperNet as the machine learning model network.

[0092] Although the invention of the present application has been described above with reference to the example embodiment, the invention of the present application is not limited to the above-described example embodiment. Various changes that can be understood by a person skilled in the art within the scope of the invention of the present application can be made to the configuration and the details of the invention of the present application.

[0093] As described above, according to the present discloser, it is possible to suppress the occurrence of a situation in which a bad candidate operation is selected in Neural Architecture Search. The present discloser is useful in machine learning systems, and the like.

[0094] 10 Group setting unit 20 Learning processing unit 30 Candidate operation output unit 31 Data set 40 Network building unit 50 Machine learning model (AI model) 60 SuperNet 70 SuperNet Backbone 80 Neck 90 Head 100 Information processing apparatus 110 Computer 111 CPU 112 Main memory 113 Storage device 114 Input interface 115 Display controller 116 Data reader / writer 117 Communication interface 118 Input device 119 Display device 120 Recording medium 121 Bus 501 AI model Backbone 700 Fix block in SuperNet Backbone 7010 standard convolution operation with kernel size 1x1 and expand ratio 1 in 1st layer 7011 standard convolution operation with kernel size 3x3 and expand ratio 1 in 1st layer 7020 standard convolution operation with kernel size 1x1 and expand ratio 1 in 2nd layer 7021 standard convolution operation with kernel size 3x3 and expand ratio 1 in 2nd layer

Claims

1. An information processing apparatus comprising: a group setting means for executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; a learning processing means for performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and a candidate operation output means for outputting a machine learning model composed of the selected candidate operations.

2. The information processing apparatus according to claim 1, wherein, in the case that two or more candidate operations selected in any of the plurality of layers, the group setting means executes grouping for the selected candidate operations in the layer in which there are two or more selected candidate operations, the learning processing means performs machine learning on the machine learning model network composed of the selected candidate operations, and selects the candidate operations again in the layer in which there are two or more candidate operations, the candidate operation output means outputs a machine learning model composed of the selected candidate operations when the selected candidate operation is single in all the layers.

3. The information processing apparatus according to claim 1, wherein the group setting means executes grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics.

4. The information processing apparatus according to claim 1, further comprising: a network building means for building the machine learning model network.

5. The information processing apparatus according to claim 1, wherein network building means builds a SuperNet as the machine learning model network.

6. An information processing method comprising: executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and outputting a machine learning model composed of the selected candidate operations.

7. The information processing method according to claim 6, further comprising: in the case that two or more candidate operations selected in any of the plurality of layers, executing grouping for the selected candidate operations in the layer in which there are two or more selected candidate operations, performing machine learning on the machine learning model network composed of the selected candidate operations, and selecting the candidate operations again in the layer in which there are two or more candidate operations, outputting means outputs a machine learning model composed of the selected candidate operations when the selected candidate operation is single in all the layers.

8. The information processing method according to claim 6, wherein in the group setting, executing grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics.

9. The information processing method according to claim 6, further comprising: building the machine learning model network.

10. The information processing method according to claim 6, wherein in the network building, building a SuperNet as the machine learning model network.

11. A computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause a computer to carry out: executing grouping, in a machine learning model network in which a large number of candidate operations are arranged for each layer, the candidate operations, and setting one or more groups for each of the layers; performing machine learning on the machine learning model network, and selecting one or more candidate operations for each group using parameter value which is given to each of the candidate operations by performing machine learning; and outputting a machine learning model composed of the selected candidate operations.

12. The computer-readable recording medium according to claim 11, further the program including instructions that cause a computer to carry out: in the case that two or more candidate operations selected in any of the plurality of layers, executing grouping for the selected candidate operations in the layer in which there are two or more selected candidate operations, performing machine learning on the machine learning model network composed of the selected candidate operations, and selecting the candidate operations again in the layer in which there are two or more candidate operations, outputting means outputs a machine learning model composed of the selected candidate operations when the selected candidate operation is single in all the layers.

13. The computer-readable recording medium according to claim 11, wherein in the group setting, executing grouping for the selected candidate operations according to a rule using as criteria at least one of operation type, number of parameters, kernel size, number of multiplication and addition computation, similar latency, non-similar operation type, and heuristics.

14. The computer-readable recording medium according to claim 11, further the program including instructions that cause a computer to carry out: building the machine learning model network.

15. The computer-readable recording medium according to claim 11, wherein in the network building, building a SuperNet as the machine learning model network.

Citation Information

Patent Citations

  • Neural Architecture Search Method, Image Processing Method And Apparatus, And Storage Medium

    US20220215227A1

  • Neural network building method and apparatus

    US20230141145A1