WO2016125476A1 - Determination method and program - Google Patents

Determination method and program Download PDF

Info

Publication number
WO2016125476A1
WO2016125476A1 PCT/JP2016/000462 JP2016000462W WO2016125476A1 WO 2016125476 A1 WO2016125476 A1 WO 2016125476A1 JP 2016000462 W JP2016000462 W JP 2016000462W WO 2016125476 A1 WO2016125476 A1 WO 2016125476A1
Authority
WO
WIPO (PCT)
Prior art keywords
filters
filter
determination method
neural network
division
Prior art date
Application number
PCT/JP2016/000462
Other languages
French (fr)
Japanese (ja)
Inventor
ミン ヤン キム
ルカ リガッツィオ
宗太郎 築澤
和紀 小塚
Original Assignee
パナソニックIpマネジメント株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2016006580A external-priority patent/JP2016146174A/en
Application filed by パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Priority to EP16746308.2A priority Critical patent/EP3255606B1/en
Priority to CN201680002592.8A priority patent/CN107077734B/en
Publication of WO2016125476A1 publication Critical patent/WO2016125476A1/en
Priority to US15/485,250 priority patent/US10558885B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present disclosure relates to a determination method and a program, and more particularly to a determination method and a program for determining a structure of a convolutional neural network.
  • Deep Learning is known as a machine learning methodology using a multilayer neural network.
  • a convolutional neural network is used (see Non-Patent Document 1, for example).
  • the convolutional neural network is composed of a multilayer neural network that repeats convolution and pooling of a local region.
  • Non-Patent Document 1 proposes a structure of a neural network in which a plurality of convolution layers are sandwiched between pooling layers as a structure of a convolution neural network, and this structure improves image recognition performance. It is disclosed that it can be improved.
  • a determination method for determining a structure of a convolutional neural network, in which N pieces of weights learned using a learning image group ( N is a natural number of 1 or more) as an initial value, and at least one of the N filters is added with a filter subjected to conversion used in the image processing field. And a division step of increasing the number of filters to M filters larger than N (M is a natural number of 2 or more).
  • FIG. 1 is a block diagram illustrating an example of the configuration of the determination apparatus according to the embodiment.
  • FIG. 2A is a diagram for explaining an overview of the identification processing of the convolutional neural network.
  • FIG. 2B is a diagram for explaining the outline of the identification processing of the convolutional neural network.
  • FIG. 3 is a diagram for explaining the outline of the division processing performed by the determination apparatus shown in FIG.
  • FIG. 4 is a diagram illustrating an example of the dividing process performed by the dividing unit illustrated in FIG.
  • FIG. 5 is a diagram for explaining an overview of the integration process performed by the determination apparatus shown in FIG.
  • FIG. 6 is a diagram illustrating an example of integration processing performed by the integration unit illustrated in FIG. 1.
  • FIG. 7 is a flowchart illustrating an example of the determination process in the embodiment.
  • FIG. 8 is a flowchart showing an example of detailed processing in step S20 shown in FIG.
  • FIG. 9 is a flowchart showing an example of detailed processing in step S30 shown in FIG.
  • FIG. 10 is a diagram illustrating an example of details of the algorithm of the determination process of the determination device according to the first embodiment.
  • FIG. 11 is a diagram illustrating an example of a determination process performed by the determination apparatus according to the first embodiment.
  • FIG. 12A is a diagram for describing the effectiveness of the integration processing according to the first embodiment.
  • FIG. 12B is a diagram for explaining the effectiveness of the integration processing according to the first embodiment.
  • FIG. 12C is a diagram for explaining the effectiveness of the integration processing according to the first embodiment.
  • FIG. 12A is a diagram for describing the effectiveness of the integration processing according to the first embodiment.
  • FIG. 12B is a diagram for explaining the effectiveness of the integration processing according to the first embodiment.
  • FIG. 12C is a diagram for explaining the effectiveness of the integration processing according to the first embodiment
  • FIG. 12D is a diagram for describing the effectiveness of the integration processing according to the first embodiment.
  • FIG. 13 is a diagram illustrating identification performance values in each of a plurality of data sets in the second embodiment.
  • FIG. 14 is a diagram illustrating an example of a model structure using the MNIST data set.
  • FIG. 15 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the MNIST model structure.
  • FIG. 16 is a diagram illustrating an error rate when the division processing or the integration processing according to the present disclosure is performed on the GTSRB1 model structure.
  • FIG. 17 is a diagram illustrating an output value of an error function when the GTSRB1 model structure and the GTSRB1 model structure subjected to the division process or the integration process of the present disclosure are optimized.
  • FIG. 18 is a diagram illustrating an example of a model structure using the GTSRB data set.
  • FIG. 19 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the GTSRB-3DNN model structure.
  • FIG. 20 is a diagram illustrating an error rate when the division processing or the integration processing according to the present disclosure is performed on the CIFAR-10 model structure.
  • FIG. 21 is a diagram illustrating a comparison of identification calculation times when the integration processing of the present disclosure is performed.
  • DNN Deep Neural Network
  • parameter determination is usually started after the structure of the multilayer neural network is manually determined by experts in the field.
  • the structure of the multi-layer neural network occupies a considerable part in the above performance improvement, and is determined depending on repeated experiments by highly experienced experts.
  • Non-Patent Document 1 proposes a structure of a neural network in which a plurality of convolution layers are sandwiched by sandwiching a plurality of convolution layers between pooling layers as described above.
  • the structure is complicated and can be determined (designed) only by an expert.
  • the inventors e.g. have come up with a determination method and a program for determining the structure of a convolutional neural network simply (or automatically) while performing parameter determination.
  • the determination method is a determination method for determining the structure of a convolutional neural network, and N weights (N is a natural number equal to or greater than 1) in which weights are learned using a learning image group. ) Filter as an initial value, and at least one of the N filters, a filter subjected to conversion used in the field of image processing is added to obtain the N filters. A dividing step of increasing the number of filters to larger M (M is a natural number of 2 or more).
  • the division step includes a division evaluation step of evaluating the identification performance of the M filters by causing the M filters to learn weights using the learning image group, When the discrimination performance evaluated in the evaluation step is equal to or lower than the discrimination performance of the N filters, the division step may be performed again.
  • the M filters are clustered and a cluster-centered filter is selected, so that the M filters are reduced to L filters (L is a natural number of 1 or more) smaller than the M filters.
  • An integration step for integration may be included.
  • the M filters may be clustered into L clusters determined in advance using a k-means method.
  • the M filters may be clustered using an affinity affinity propagation method.
  • the transformation may include rotational transformation at a randomly determined angle
  • the division step may add a filter that has undergone the rotational transformation to at least one of the N filters.
  • the conversion includes addition of Gaussian noise having a standard deviation that is randomly determined, and in the division step, a filter having the Gaussian noise added is added to at least one of the N filters. You may do that.
  • the conversion includes a contrast conversion that converts the contrast ratio to be determined at random, and in the division step, a filter that has been subjected to the contrast conversion on at least one of the N filters. It may be added.
  • the conversion includes a scale conversion for converting to a scale determined at random.
  • a filter that has undergone the scale conversion is added to at least one of the N filters. You may do that.
  • FIG. 1 is a block diagram illustrating an example of the configuration of the determination apparatus 10 according to the present embodiment.
  • FIG. 2A and FIG. 2B are diagrams for explaining an outline of the identification processing of the convolutional neural network.
  • the determination device 10 is realized by a computer or the like.
  • CNN convolutional neural network
  • a convolutional neural network is often used in the field of image recognition, and extracts a feature amount from an image by performing convolution with a filter on a two-dimensional image.
  • the convolutional neural network is composed of a multilayer network that repeats convolution and pooling.
  • the coefficient of the filter effective for identification constituting the convolutional layer is learned using a large amount of data such as a large amount of learning images (learning image group).
  • the coefficient can be obtained by performing learning to acquire invariance to various deformations by repeating convolution using a filter and pooling that collects reactions in a certain region using a large amount of data. It has been found that the discrimination performance of the convolutional neural network depends on the filters constituting the convolutional layer.
  • a convolutional neural network composed of a two-layer network in which a learning image group is used as a large amount of data and a filter coefficient effective for image identification is learned. Yes. And the process which identifies the numerical image which shows 9 to such a convolution neural network is shown.
  • a ramp function ReLU is used as an activation function after convolution by a filter.
  • the filters constituting the convolution layer of the convolutional neural network are determined as the structure of the convolutional neural network.
  • a filter constituting at least one convolution layer is determined.
  • the determination apparatus 10 can determine the convolution neural network comprised by the convolution layer which has the determined filter.
  • the acquisition unit 11 acquires a plurality of filters as initial values or acquires a learning image.
  • the acquisition unit 11 acquires N (N is a natural number of 1 or more) filters whose weights have been learned using the learning image group as initial values.
  • the acquisition unit 11 may acquire a plurality of filters divided by the dividing unit 12 and a plurality of filters integrated by the integration unit 13 as initial values.
  • the acquisition unit 11 acquires a learning image group.
  • the learning image group is a data set of a plurality of images prepared in advance, such as an MNIST data set and a GTSRB data set.
  • FIG. 3 is a diagram for explaining an overview of the division process performed by the determination apparatus 10 illustrated in FIG. 1.
  • FIG. 4 is a diagram illustrating an example of the dividing process performed by the dividing unit 12 illustrated in FIG. Note that the plurality of filters illustrated in FIG. 3A correspond to the plurality of filters constituting one of the two convolution layers illustrated in FIG. 2B. Further, the pre-division filter shown in FIG. 4A corresponds to a plurality of filters shown in FIG.
  • the dividing unit 12 performs a dividing process on a plurality of filters acquired as initial values, such as N filters acquired by the acquiring unit 11. For example, the dividing unit 12 performs a dividing process on a plurality of filters (32 in the figure) as shown in FIG. 3A, and the number of filters (in the figure shown in FIG. 3B). 96).
  • the dividing unit 12 adds N filters that have undergone conversion used in the image processing field to at least one of the N filters as an initial value, thereby adding N filters.
  • a division process for increasing the number of filters to larger M (M is a natural number of 2 or more) is performed.
  • the dividing unit 12 when the identification performance of the M filters is higher than the identification performance of the N filters, the dividing unit 12 further performs at least one of the M filters in the image processing field. It is also possible to perform division processing for increasing the M filters to P filters larger than M (P is a natural number of 3 or more) by adding filters to which conversion is used. Further, such division processing may be repeated up to a specified number of times that is a predetermined number of times by a user using the determination device 10 or the like. The number of filters after the increase may be determined by the user who uses the determination device 10.
  • the division unit 12 may perform the division process on the N filters again.
  • the identification performance of a plurality of filters means the identification performance of a convolutional neural network having the plurality of filters. The same applies to the following.
  • the dividing unit 12 includes a random converting unit 121, a filter adding unit 122, and an identification performance evaluating unit 123.
  • the random conversion unit 121 performs conversion used in the image processing field on at least one of the plurality of filters acquired by the acquisition unit 11 as an initial value.
  • the filter adding unit 122 adds a filter subjected to conversion used in the image processing field by the random conversion unit 121 to a plurality of filters acquired by the acquisition unit 11 as initial values and stored in a memory (not illustrated). .
  • the conversion performed by the random conversion unit 121 may be performed by selecting from image conversions (conversion sets) known in the image processing field. For example, when the conversion performed by the random conversion unit 121 is a rotation conversion at a randomly determined angle, the random conversion unit 121 may perform the rotation conversion on at least one of the N filters. And the filter addition part 122 should just add the filter which the said random conversion part 121 performed the said rotation conversion.
  • the random conversion unit 121 applies the Gaussian noise to at least one of the N filters. Can be given. And the filter addition part 122 should just add the filter to which the random conversion part 121 gave the said Gaussian noise.
  • the random conversion unit 121 when the conversion performed by the random conversion unit 121 includes a contrast conversion that converts the contrast ratio to be determined at random, the random conversion unit 121 applies to at least one of the N filters. What is necessary is just to perform the said contrast conversion. And the filter addition part 122 should just add the filter which the said random conversion part 121 performed the said contrast conversion.
  • the random conversion unit 121 applies the change to at least one of the N filters. Scale conversion should be applied. And the filter addition part 122 should just add the filter which the said random conversion part 121 performed the said scale conversion.
  • the conversion is rotation conversion at a randomly determined angle, provision of Gaussian noise with a randomly determined standard deviation, contrast conversion for converting to a randomly determined contrast ratio, or randomly
  • the present invention is not limited to the case where scale conversion is performed so that the scale is determined.
  • contrast inversion conversion, isometric conversion, or the like may be included, and two or more combinations of these (conversion sets) may be included. If you select a rotation transformation at a randomly determined angle (random rotation transformation) and a randomly determined standard deviation Gaussian noise addition (random Gaussian noise addition) from the transformation set, the convolutional neural network A consistent improvement in identification performance can be expected.
  • an example of this case will be described with reference to FIG.
  • the pre-division filter shown in (a) of FIG. 4 is a plurality of filters that are initial values acquired by the acquisition unit 11, and the filter shown in (b) of FIG. 4 is one of the pre-division filters. It is a filter.
  • the random conversion unit 121 performs the rotation conversion (described as random rotation conversion in the drawing) and the Gaussian noise of the filter shown in FIG. Giving (denoting the addition of random Gaussian noise) and generating a rotation filter and a blurred filter.
  • the filter adding unit 122 temporarily adds the rotation filter and the blurred filter generated by the random conversion unit 121 to a plurality of filters that are initial values.
  • the identification performance evaluation unit 123 described later evaluates the identification performance of a filter in which a rotation filter and a blurred filter are added to a plurality of filters that are initial values. Then, when the identification performance of the plurality of filters that are the initial values is higher, as shown in FIG. 4E, a filter in which a rotation filter and a blurred filter are added to the plurality of filters that are the initial values Is used as a post-division filter, and the division processing of the division unit 12 is terminated.
  • the post-division filter shown in (e) of FIG. 4 corresponds to the filter shown in (b) of FIG.
  • the identification performance evaluation unit 123 uses the learning image group to cause the filter increased by the added filter to learn the weight and evaluate the identification performance of the increased filter. More specifically, the identification performance evaluation unit 123 uses the learning image group to cause the filter of the convolutional neural network having the filter increased by the added filter in the convolution layer to learn the weight, and to increase the filter Evaluate the discrimination performance of
  • the discriminating performance evaluation unit 123 divides the increased filter after dividing the increased filter when the discriminating performance of the increased filter evaluated is higher than the discriminating performance of the plurality of filters acquired by the acquisition unit 11 that is the initial value. Adopt as.
  • the identification performance evaluation unit 123 causes the random conversion unit 121 to perform initial initialization when the evaluated identification performance of the increased filter is equal to or less than the identification performance of the plurality of filters acquired by the acquisition unit 11 that is the initial value. The division process is performed again on the plurality of value filters.
  • the discrimination performance evaluation unit 123 uses the learning image group to learn the weights of, for example, M filters that have increased from N to M, thereby improving the discrimination performance of the M filters. evaluate.
  • the discrimination performance evaluation unit 123 employs the M filters as post-division filters when the discrimination performance of the evaluated M filters is higher than the discrimination performance of the N filters that are the initial values.
  • the discriminating performance evaluation unit 123 causes the random conversion unit 121 to receive The filter is divided again.
  • the dividing unit 12 has been described as performing the dividing process using the plurality of filters acquired by the acquiring unit 11 as initial values, but the present invention is not limited to this.
  • the division process may be performed again using the divided filter after the division process as an initial value, or the division process may be performed using the integrated filter output by the integration unit 13 as an initial value.
  • the identification performance evaluation unit 123 calculates the filter identification performance increased by the division process and the filter identification performance increased by the previous division process instead of the initial value. Compare.
  • FIG. 5 is a diagram for explaining an overview of the integration process performed by the determination apparatus 10 illustrated in FIG. 1.
  • FIG. 6 is a diagram illustrating an example of integration processing performed by the integration unit 13 illustrated in FIG.
  • a plurality of filters (pre-integration filters) shown in FIG. 6A correspond to a plurality of filters shown in FIG. 5A, and a plurality of filters shown in FIG.
  • the post-integration filter corresponds to a plurality of filters shown in FIG.
  • the integration unit 13 performs integration processing on a plurality of filters acquired as initial values, such as the N filters acquired by the acquisition unit 11 and the filters after the division processing. For example, the integration unit 13 performs integration processing on a plurality of filters (156 in the figure) as shown in FIG. 5A, and the number of filters (in the figure, FIG. 5B). To 32).
  • the integration unit 13 performs an integration process to reduce the number of the plurality of filters by clustering the divided filters that have been divided by the dividing unit 12 and selecting a cluster-centered filter. This is because overlearning can be prevented, and the recognition performance can be improved, for example, by reducing the error rate during identification and performing image recognition with higher accuracy.
  • the plurality of filters that the integration unit 13 performs the integration process is not limited to the post-division filter that has been subjected to the division process by the division unit 12, but may be a plurality of filters that are acquired by the acquisition unit 11 as initial values.
  • the integration unit 13 includes a clustering unit 131 and a filter selection unit 132.
  • the clustering unit 131 clusters the M filters that are the post-division filters subjected to the division processing by the division unit 12. As a result, the clustering unit 131 clusters the M filters into L clusters.
  • the clustering unit 131 may cluster the M filters into L clusters that are determined in advance using the k-means method, or the result of clustering the M filters using the affinity-propagation method. , It may be clustered into L clusters.
  • the k-means method uses a cluster average as a data distribution and classifies it into a given number K of clusters.
  • the affinity-propagation method is a clustering method recently proposed by Frey et al., And it is not necessary to determine the number of clusters in advance, and the algorithm automatically determines the number of clusters.
  • Affinityationpropagation method is a method of alternately updating and converging responsibility and availability, so there is no dependency on initial value, and clustering accuracy is better than existing clustering methods represented by k-means method etc. .
  • the clustering method using the k-means method or the affinity-propagation method is an existing clustering method, and thus detailed description thereof is omitted here.
  • the filter selection unit 132 selects a cluster-centered filter from the M filters clustered into L clusters by the clustering unit 131 and stored in a memory (not shown).
  • the filter selection unit 132 calculates the vector centroids of a plurality of filters belonging to each of the L clusters, and selects the filter closest to the vector centroid, thereby becoming the cluster centers of the L clusters. Select a filter.
  • the integration unit 13 integrates the M filters that are the post-division filters subjected to the division process in the division unit 12 into L filters (L is a natural number of 1 or more) smaller than the M filters.
  • the pre-integration filter shown in (a) of FIG. 6 is the division filter shown in (e) of FIG. 4 and is a post-division filter that has been subjected to division processing by the division unit 12.
  • FIG. 6B shows an example in which clustering is performed by determining the boundary line from the data distribution so that the predetermined number of clusters is obtained using the k-means method.
  • the clustering unit 131 uses the k-means method for the pre-integration filter shown in FIG. Clustering is performed so that a predetermined number of clusters is determined in advance. Then, as shown in FIG. 6C, the filter selection unit 132 selects a filter (denoted as filter a in the figure) that is closest to the cluster center of each of a predetermined number of clusters, and serves as an integrated filter. adopt.
  • the clustering unit 131 may cluster the N filters acquired by the acquisition unit 11 as initial values.
  • the filter selection unit 132 selects a cluster-centered filter for each cluster among N filters that are clustered by the clustering unit 131 and stored in a memory (not shown) or the like.
  • the integration unit 13 can integrate the N filters acquired by the acquisition unit 11 as initial values into a smaller number of filters.
  • the integration unit 13 may further include an identification performance evaluation unit that uses the learning image group to cause the post-integration filter to learn the weight and evaluate the identification performance of the post-integration filter.
  • an identification performance evaluation unit that uses the learning image group to cause the post-integration filter to learn the weight and evaluate the identification performance of the post-integration filter.
  • the integration process is performed again. If clustering is performed using the k-means method, the integration unit 13 changes the predetermined number of clusters and performs integration processing again. If the clustering is performed using the Affinity propagation method, the integration unit 13 The integration process may be performed again by changing parameters in the algorithm such as diagonal elements of the matrix.
  • the output unit 15 outputs the filter divided by the dividing unit 12 or the filter integrated by the integrating unit 13 as a filter constituting the convolutional neural network determined by the determining device 10.
  • the output unit 15 is not an essential component and may be a memory.
  • the filter divided by the dividing unit 12 or the filter integrated by the integrating unit 13 is stored as a filter constituting the convolutional neural network determined by the determining device 10.
  • FIG. 7 is a flowchart showing an example of the determination process in the present embodiment.
  • FIG. 8 is a flowchart showing an example of detailed processing in step S20 shown in FIG.
  • FIG. 9 is a flowchart showing an example of detailed processing in step S30 shown in FIG.
  • step S10 the determination apparatus 10 performs an acquisition process.
  • step S10 the weights of a plurality of filters constituting one or more convolution layers constituting the convolutional neural network are learned using the learning image group (S9).
  • the determination device 10 acquires, as an initial value, N (N is a natural number of 1 or more) filters constituting at least one convolution layer among a plurality of filters whose weights have been learned using the learning image group. (S11).
  • step S20 the determination apparatus 10 performs a division process.
  • the determination apparatus 10 evaluates the identification performance of the M filters by using the learning image group to learn the weights of the M filters, and exceeds the identification performance of the initial N filters. Is determined (S23).
  • step S23 when the identification performance of the M filters is equal to or lower than the identification performance of the N filters (No in S23) and is equal to or less than a predetermined number of times (specified number) (No in S24), Returning to S21, the division process is performed again. On the other hand, when the identification performance of the M filters is higher than the identification performance of the N filters (Yes in S24), the division process is terminated.
  • step S10 When the division process is repeated up to a predetermined number of times (a prescribed number), in step S10, a post-division filter, which is M filters that have been divided, is acquired as the initial value filter, and step S20 is performed again. Good.
  • step S30 the determination apparatus 10 performs integration processing.
  • the determination apparatus 10 clusters the M filters that have been divided in step S20, which is an initial value filter (S31).
  • the determination apparatus 10 clusters the M filters that have been divided in step S20 into L (L is a natural number greater than or equal to 1) clusters as a result.
  • the determination apparatus 10 selects a cluster-centered filter for each of the L clusters (S32). In this way, the determination apparatus 10 integrates M filters into L filters that are smaller than M.
  • step S20 and the integrating process in step S30 may be performed independently, or the integrating process in step S30 may be performed first, followed by the dividing process in step S20. Further, as described above, the integration process of step S30 may be performed after the division process of step S20 is repeated up to a predetermined number of times (specified number of times).
  • FIG. 10 is a diagram illustrating an example of details of the algorithm of the determination process of the determination device 10 according to the first embodiment.
  • the algorithm described by “// SPLIT” is an example of the above-described division processing algorithm
  • the algorithm described by “// SPLIT” is an example of the above-described division processing algorithm.
  • “ ⁇ 0 , ⁇ 1 , ⁇ 2 ” indicates the evaluation value of the discrimination performance
  • “Kernel” indicates a filter that constitutes at least one convolution layer of the convolution neural network.
  • FIG. 11 is a diagram illustrating an example of a determination process performed by the determination apparatus 10 according to the first embodiment. That is, in this embodiment, an example in which the integration process is performed first and then the division process is performed is shown.
  • the determination device 10 performs integration processing on 150 filters as initial values, reduces the number of filters to 32, and learns weights using a learning image group. In addition, the identification performance of 32 filters is evaluated.
  • clustering is performed using the k-means method as shown in FIG.
  • the determination device 10 performs a division process on the 32 filters whose weights are learned using the learning image group, increases the number of filters to 96, and uses the learning image group. After learning the weights, the identification performance of the 32 filters is evaluated.
  • the division processing of the present embodiment as shown in FIG. 10, rotation conversion at an angle determined at random and addition of Gaussian noise with a standard deviation determined at random are performed.
  • 12A to 12D are diagrams for explaining the effectiveness of the integration processing of the present embodiment.
  • FIG. 12A shows an example of a test image, and an image in which a sign displaying 120 is tilted by about 30 degrees is shown. Further, the test image shown in FIG. 12A is misclassified by a convolutional neural network having a filter as an initial value in which the weight is learned by the learning image.
  • FIG. 12B is a diagram showing the softmax probability of the test image shown in FIG. 12A.
  • the response value of the output of 43 classes of the convolutional neural network having the filter as the initial value is shown by the softmax probability.
  • the maximum value of output probability is output as a recognition result.
  • FIG. 12C is a diagram showing an example of the softmax probability of the test image shown in FIG. 12A classified by the convolutional neural network having the filter after the division processing shown in FIG. Thereby, when the convolutional neural network having the filter after the division processing classifies (identifies) the test image shown in FIG. 12A, the response value to the correct answer label is improved, and it is understood that the correct classification is performed without misclassification. .
  • FIG. 12D is a diagram showing an example of the softmax probability of the image shown in FIG. 12A classified by the convolutional neural network having 32 filters after the integration process shown in FIG.
  • the convolutional neural network having 32 filters after the integration process classifies (identifies) the test image shown in FIG. 12A
  • the response value in FIG. 12C is further improved, and it is correctly classified without misclassification. Recognize.
  • Example 2 Since the effectiveness of the division processing and the integration processing according to the present disclosure has been verified using a plurality of data sets including a learning image and a test image, the experimental result will be described as a second embodiment.
  • FIG. 13 is a diagram showing identification performance values when a plurality of data sets are used in the second embodiment.
  • FIG. 13 shows the value of discrimination performance when using the MNIST (Mixed National Institute of Standards and Technology database) data set, GTSRB (German Traffic Sign Recognition Benchmark) and CIFAR-10 (Canadian Institute for Advanced Research) data set ( Reference value) is shown.
  • MNIST Mated National Institute of Standards and Technology database
  • GTSRB German Traffic Sign Recognition Benchmark
  • CIFAR-10 Canadian Institute for Advanced Research
  • FIG. 14 is a diagram illustrating an example of a model structure (MNIST model structure) using the MNIST data set.
  • the MNIST data set is composed of 60,000 learning images and 10,000 test images of 28 ⁇ 28 size handwritten numerals.
  • the MNIST model structure is composed of a convolutional neural network composed of two layers of concatenation and two layers of convolution, and a pooling layer is provided after each convolution layer using the ReLU activation function.
  • FIG. 13 shows an error rate of 0.82% as an identification performance value (reference value) when a test image of the MNIST data set is identified by the MNIST model structure learned from the learning image of the MNIST data set. It is shown.
  • FIG. 15 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the MNIST model structure.
  • SPLIT [1] in FIG. 1 indicates that the first filter (ORIGINAL) is divided, and MERGE [4] is No.1. It shows that four filters SPLIT [1] are integrated.
  • 100 filters (ORIGINAL) constituting the first convolution layer among the two convolution layers of the MNIST model structure are divided to increase to 200 filters, and the weight is re-applied in the learning image.
  • An error rate of 0.58% when learning (SPLIT [1]) is shown.
  • the 200 filters (SPLIT [1]) subjected to the division processing are further integrated and reduced to 100 filters, and the error rate is 0 when the weight is re-learned with the learning image (MERGE [4]). .59% is shown.
  • the error rate when the division process or the integration process of the present disclosure is performed on the MNIST model structure is improved by almost 30% with respect to the error rate of the comparative example or the MNIST model structure.
  • the error rate is reduced by 0.01% by the integration processing after the division processing, the identification performance is almost maintained.
  • the GTSRB data set consists of 43 different classes of 39,209 learning images and 12,630 test images of standard German road signs. Note that the size of the image included in the GTSRB data set is not uniform from 15 ⁇ 15 pixels to 250 ⁇ 250 pixels, and if used as it is, the number of pixels included in one block at the time of learning fluctuates and affects recognition. To do. Therefore, in this embodiment, all the images of the GTSRB data set are resized to 48 ⁇ 48, and a preprocessing technique such as histogram smoothing or contrast normalization is applied.
  • the GTSRB data set to which the preprocessing technique is applied is referred to as a GTSRB data set.
  • the model structure (GTSRB1 model structure) using the GTSRB data set is a convolutional neural network composed of three convolution layers and two all connection layers.
  • FIG. 13 shows an error rate of 2.44% as an identification performance value (reference value) when the test image of the GTSRB data set is identified in the GTSRB1 model structure learned from the learning image of the GTSRB data set. It is shown.
  • FIG. 16 is a diagram illustrating an error rate when the division processing or integration processing of the present disclosure is performed on the GTSRB1 model structure.
  • “N” of 4N in FIG. 16 indicates that the filter is divided by Gaussian noise
  • “R” of 5R indicates that the filter is divided by rotational transformation.
  • MERGE [No. ], SPLIT [No. ] Is represented in the same manner as described above. It can be seen that in all experiments where the split or integration process of the present disclosure was performed on the GTSRB1 model structure, a fairly good performance was achieved, or a performance equivalent to a considerably smaller model size was achieved.
  • FIG. 17 is a diagram illustrating an output value of an error function when the GTSRB1 model structure and the GTSRB1 model structure subjected to the division process or the integration process of the present disclosure are optimized.
  • GTSRB1_original and GTSRB1_merge were compared in the case of the same number of parameters.
  • the GTSRB1 model structure is compared with the output value of the error function when the GTSRB1 model structure is learned (optimized) with the learning image of the GTSRB data set
  • the divided or integrated GTSRB1 model structure of the present disclosure is obtained. It can be seen that the output value of the error function when learning is performed with the learning image of the GTSRB data set is lower. That is, it can be seen that the structure of the convolutional neural network effective for image recognition can be easily determined by performing the dividing process or the integrating process of the present disclosure.
  • FIG. 18 is a diagram illustrating an example of a model structure (GTSRB-3DNN model structure) using the GTSRB data set.
  • the GTSRB-3DNN model structure is a convolutional neural network consisting of 3 convolutional layers and 2 fully connected layers, using different image sizes of 48x48 pixels, 38x48 pixels and 28x48 pixels as input. . Therefore, the GTSRB-3DNN model structure is a collective model structure as compared with the GTSRB-3DNN model structure, which is a simple model structure.
  • FIG. 13 shows an error rate of 1.24 as a discrimination performance value (reference value) when a test image of the GTSRB data set is discriminated from the GTSRB-3DNN model structure learned from the learning image of the GTSRB data set. %It is shown.
  • FIG. 19 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the GTSRB-3DNN model structure.
  • CIFAR-10 The CIFAR-10 data set consists of 50,000 learning images and 10,000 test images in 10 categories.
  • the model structure using the CIFAR-10 data set utilized a convolutional neural network composed of three convolutional layers disclosed in Non-Patent Document 1.
  • FIG. 13 shows an error as a discrimination performance value (reference value) when a CIFAR-10 model structure trained with a CIFAR-10 dataset learning image is used to identify a test image of the CIFAR-10 dataset. A rate of 10.4% is shown.
  • FIG. 20 is a diagram illustrating an error rate when the division processing or the integration processing according to the present disclosure is performed on the CIFAR-10 model structure.
  • Example 3 Since the effectiveness of the integration processing of the present disclosure has been verified from the viewpoint of identification calculation time, the experimental result will be described as a third embodiment.
  • FIG. 21 is a diagram showing a comparison of identification calculation times when the integration processing of the present disclosure is performed.
  • the first row shown in FIG. 21 shows the calculation time when 10 48 ⁇ 48 pixel images are identified using the GTSRB1 model structure (ORIGINAL) after learning with the learning image of the GTSRB data set. 8MS is shown.
  • the second or third line shown in FIG. 21 is obtained by performing integration processing once or twice on the GTSRB1 model structure and learning with the learning image of the GTSRB data set (MERGE [1] or MERGE Using [2]), the calculation time of 14.1 MS or 12.6 MS when ten 48 ⁇ 48 pixel images are identified is shown.
  • ten 48 ⁇ 48 pixel images are identified using the GTSRB-3DNN model structure (ORIGINAL) after learning with the learning image of the GTSRB data set.
  • a calculation time of 27.9 MS is shown.
  • the integration processing of the present disclosure is performed on the GTSRB-3DNN model structure and is learned using the learning image of the GTSRB data set (MERGE [4]).
  • a speed of 19.4 MS when 10 48 ⁇ 48 pixel images are identified is shown.
  • the structure of the convolutional neural network can be determined more simply (or automatically). More specifically, according to the determination device 10 and the determination method thereof in the present embodiment, the division processing and the integration processing are performed using, as an initial value, a filter constituting at least one convolutional layer of a convolutional neural network learned by deep learning. By repeating the above, the structure of the convolution neural network effective for image recognition can be determined easily or automatically.
  • the division process is a process of converting effective filters to increase the number of filters that are likely to be effective for image recognition
  • the integration process is a process of integrating redundant filters by clustering and leaving only effective filters.
  • the conversion used in the division process may be selected from image conversions (conversion sets) known in the image processing field. Since consistent improvement can be expected, rotation conversion at a randomly determined angle and provision of Gaussian noise with a standard deviation determined at random may be selected and used for conversion.
  • a clustering method used in the integration process a known clustering method such as a k-means method or an affinity-propagation method may be used.
  • the determination apparatus 10 etc. in this Embodiment demonstrated as performing a division
  • the determination device 10 or the like in the present embodiment performs a division process on a plurality of filters constituting at least one convolution layer. At least one of the determination processes may be performed. In addition, after performing at least one of the division process and the determination process on the plurality of filters constituting the one convolution layer, the division process is performed on the plurality of filters constituting the convolution layer different from the one convolution layer. And at least one of the determination processes may be performed. That is, the determination device 10 or the like in the present embodiment may perform at least one of the division process and the determination process on a part or all of the filter of the convolutional neural network as the initial value.
  • the determination method according to the present disclosure has been described in the embodiment, but the subject or the device that performs each process is not particularly limited. It may be processed by a processor or the like (described below) embedded in a specific device located locally. Further, it may be processed by a cloud server or the like arranged at a location different from the local device.
  • the above apparatus is specifically a computer system including a microprocessor, ROM, RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like.
  • a computer program is stored in the RAM or hard disk unit.
  • Each device achieves its functions by the microprocessor operating according to the computer program.
  • the computer program is configured by combining a plurality of instruction codes indicating instructions for the computer in order to achieve a predetermined function.
  • a part or all of the constituent elements constituting the above-described apparatus may be configured by one system LSI (Large Scale Integration).
  • the system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically, a computer system including a microprocessor, ROM, RAM, and the like. .
  • a computer program is stored in the RAM.
  • the system LSI achieves its functions by the microprocessor operating according to the computer program.
  • a part or all of the constituent elements constituting the above-described device may be constituted by an IC card or a single module that can be attached to and detached from each device.
  • the IC card or the module is a computer system including a microprocessor, a ROM, a RAM, and the like.
  • the IC card or the module may include the super multifunctional LSI described above.
  • the IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may have tamper resistance.
  • the present disclosure may be the method described above. Further, the present invention may be a computer program that realizes these methods by a computer, or may be a digital signal composed of the computer program.
  • the present disclosure provides a computer-readable recording medium such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a BD ( It may be recorded on a Blu-ray (registered trademark) Disc), a semiconductor memory, or the like.
  • the digital signal may be recorded on these recording media.
  • the computer program or the digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, a data broadcast, or the like.
  • the present disclosure may be a computer system including a microprocessor and a memory, and the memory may store the computer program, and the microprocessor may operate according to the computer program.
  • program or the digital signal is recorded on the recording medium and transferred, or the program or the digital signal is transferred via the network or the like and executed by another independent computer system. You may do that.
  • the present disclosure can be used for a determination apparatus and a determination method for determining a structure of a convolutional neural network effective for recognition, and in particular, a convolutional neural that can be executed even in an embedded system that is effective for image recognition and has less computational power than a personal computer system.
  • the present invention can be used for a determination apparatus and a determination method for determining a network structure.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

Provided is a determination method for determining a structure of a convolutional neural network, comprising: an acquisition step (S10) of acquiring, as initial values, N filters (where N is a natural number greater than or equal to 1) for which weights are learned using an image group for learning; and a segmenting step (S20) of increasing the N filters to M filters (where M is a natural number greater than or equal to 2), with M being greater than N, by carrying out conversions which are used in an image processing sector upon at least one of the N filters and appending the filters whereupon the conversion is carried out.

Description

決定方法およびプログラムDetermination method and program
 本開示は、決定方法およびプログラムに関し、特に畳み込みニューラルネットワークの構造を決定する決定方法およびそのプログラムに関する。 The present disclosure relates to a determination method and a program, and more particularly to a determination method and a program for determining a structure of a convolutional neural network.
 近年、Deep Learningを使用することにより、画像認識の性能が劇的に向上している。Deep Learningは、多層のニューラルネットワークを使った機械学習の方法論として知られ、このような多層ニューラルネットワークには、例えば畳み込みニューラルネットワークが用いられる(例えば非特許文献1参照)。ここで、畳み込みニューラルネットワークは、局所領域の畳み込み(Convolution)とプーリング(Pooling)とを繰り返す多層のニューラルネットワークからなる。非特許文献1では、畳み込みニューラルネットワークの構造として、プーリング層の間に複数の畳み込み層を挟み込むことにより畳み込み層を多層化したニューラルネットワークの構造が提案されており、この構造により画像認識の性能を向上させることができることが開示されている。 In recent years, the performance of image recognition has improved dramatically by using Deep Learning. Deep Learning is known as a machine learning methodology using a multilayer neural network. For such a multilayer neural network, for example, a convolutional neural network is used (see Non-Patent Document 1, for example). Here, the convolutional neural network is composed of a multilayer neural network that repeats convolution and pooling of a local region. Non-Patent Document 1 proposes a structure of a neural network in which a plurality of convolution layers are sandwiched between pooling layers as a structure of a convolution neural network, and this structure improves image recognition performance. It is disclosed that it can be improved.
 上記課題を解決するために、本開示の一形態に係る決定方法は、畳み込みニューラルネットワークの構造を決定するための決定方法であって、学習用画像群を用いて重みが学習されたN個(Nは1以上の自然数)のフィルタを初期値として取得する取得ステップと、前記N個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記N個のフィルタを前記N個より大きいM個(Mは2以上の自然数)のフィルタに増加させる分割ステップとを含む。 In order to solve the above-described problem, a determination method according to an aspect of the present disclosure is a determination method for determining a structure of a convolutional neural network, in which N pieces of weights learned using a learning image group ( N is a natural number of 1 or more) as an initial value, and at least one of the N filters is added with a filter subjected to conversion used in the image processing field. And a division step of increasing the number of filters to M filters larger than N (M is a natural number of 2 or more).
 なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータで読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。 These general or specific modes may be realized by a system, a method, an integrated circuit, a computer program, or a recording medium such as a computer-readable CD-ROM. The system, method, integrated circuit, computer You may implement | achieve with arbitrary combinations of a program and a recording medium.
 本開示によれば、畳み込みニューラルネットワークの構造をより簡便に決定することができる決定方法等を実現できる。 According to the present disclosure, it is possible to realize a determination method that can more easily determine the structure of the convolutional neural network.
図1は、実施の形態の決定装置の構成の一例を示すブロック図である。FIG. 1 is a block diagram illustrating an example of the configuration of the determination apparatus according to the embodiment. 図2Aは、畳み込みニューラルネットワークの識別処理の概要について説明するための図である。FIG. 2A is a diagram for explaining an overview of the identification processing of the convolutional neural network. 図2Bは、畳み込みニューラルネットワークの識別処理の概要について説明するための図である。FIG. 2B is a diagram for explaining the outline of the identification processing of the convolutional neural network. 図3は、図1に示す決定装置が行う分割処理の概要を説明するための図である。FIG. 3 is a diagram for explaining the outline of the division processing performed by the determination apparatus shown in FIG. 図4は、図1に示す分割部が行う分割処理の一例を示す図である。FIG. 4 is a diagram illustrating an example of the dividing process performed by the dividing unit illustrated in FIG. 図5は、図1に示す決定装置が行う統合処理の概要を説明するための図である。FIG. 5 is a diagram for explaining an overview of the integration process performed by the determination apparatus shown in FIG. 図6は、図1に示す統合部が行う統合処理の一例を示す図である。FIG. 6 is a diagram illustrating an example of integration processing performed by the integration unit illustrated in FIG. 1. 図7は、実施の形態における決定処理の一例を示すフローチャートである。FIG. 7 is a flowchart illustrating an example of the determination process in the embodiment. 図8は、図7に示すステップS20の詳細処理の一例を示すフローチャートである。FIG. 8 is a flowchart showing an example of detailed processing in step S20 shown in FIG. 図9は、図7に示すステップS30の詳細処理の一例を示すフローチャートである。FIG. 9 is a flowchart showing an example of detailed processing in step S30 shown in FIG. 図10は、実施例1における決定装置の決定処理のアルゴリズムの詳細の一例を示す図である。FIG. 10 is a diagram illustrating an example of details of the algorithm of the determination process of the determination device according to the first embodiment. 図11は、実施例1における決定装置の決定処理の一例を示す図である。FIG. 11 is a diagram illustrating an example of a determination process performed by the determination apparatus according to the first embodiment. 図12Aは、実施例1の統合処理の有効性について説明するための図である。FIG. 12A is a diagram for describing the effectiveness of the integration processing according to the first embodiment. 図12Bは、実施例1の統合処理の有効性について説明するための図である。FIG. 12B is a diagram for explaining the effectiveness of the integration processing according to the first embodiment. 図12Cは、実施例1の統合処理の有効性について説明するための図である。FIG. 12C is a diagram for explaining the effectiveness of the integration processing according to the first embodiment. 図12Dは、実施例1の統合処理の有効性について説明するための図である。FIG. 12D is a diagram for describing the effectiveness of the integration processing according to the first embodiment. 図13は、実施例2における複数のデータセットそれぞれにおける識別性能の値を示す図である。FIG. 13 is a diagram illustrating identification performance values in each of a plurality of data sets in the second embodiment. 図14は、MNISTデータセットを用いるモデル構造の一例を示す図である。FIG. 14 is a diagram illustrating an example of a model structure using the MNIST data set. 図15は、MNISTモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。FIG. 15 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the MNIST model structure. 図16は、GTSRB1モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。FIG. 16 is a diagram illustrating an error rate when the division processing or the integration processing according to the present disclosure is performed on the GTSRB1 model structure. 図17は、GTSRB1モデル構造と、本開示の分割処理または統合処理したGTSRB1モデル構造とを最適化したときの誤差関数の出力値を示す図である。FIG. 17 is a diagram illustrating an output value of an error function when the GTSRB1 model structure and the GTSRB1 model structure subjected to the division process or the integration process of the present disclosure are optimized. 図18は、GTSRBデータセットを用いるモデル構造の一例を示す図である。FIG. 18 is a diagram illustrating an example of a model structure using the GTSRB data set. 図19は、GTSRB―3DNNモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。FIG. 19 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the GTSRB-3DNN model structure. 図20は、CIFAR-10モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。FIG. 20 is a diagram illustrating an error rate when the division processing or the integration processing according to the present disclosure is performed on the CIFAR-10 model structure. 図21は、本開示の統合処理を行った場合の識別計算時間の比較を示す図である。FIG. 21 is a diagram illustrating a comparison of identification calculation times when the integration processing of the present disclosure is performed.
 (発明の基礎となった知見)
 近年、DNN(Deep Neural Network)などの多層のニューラルネットワークは、画像認識のみならず音声認識や機械翻訳などの機械学習に用いることで、それらの性能を著しく向上させている。DNNは、理論的に実証されたモデリングおよび汎化能力により、それらの性能を向上させる成果を得ている。当該成果は、実質的には、パラメータ検出を高速に行う訓練アルゴリズムを改善することに加え、増加し続けるデータセットを改善すること、および、新規のコンピュータプラットフォームを強化することにより得ることができる。
(Knowledge that became the basis of the invention)
In recent years, a multilayer neural network such as DNN (Deep Neural Network) has been remarkably improved in its performance by being used not only for image recognition but also for machine learning such as speech recognition and machine translation. DNN has been successful in improving their performance with theoretically proven modeling and generalization capabilities. The results can be obtained substantially by improving training algorithms that perform parameter detection at high speed, improving ever-increasing data sets, and enhancing new computer platforms.
 しかしながら、通常、多層のニューラルネットワークの構造がその分野の専門家により手動で決定された後に、パラメータ決定(いわゆる訓練)を開始する。そして、多層のニューラルネットワークの構造は上記の性能の向上においてかなりの部分を占めており、かなり経験を積んだ専門家による繰り返し実験に依存して決定される。 However, parameter determination (so-called training) is usually started after the structure of the multilayer neural network is manually determined by experts in the field. The structure of the multi-layer neural network occupies a considerable part in the above performance improvement, and is determined depending on repeated experiments by highly experienced experts.
 例えば、非特許文献1では、上述したように、プーリング層の間に複数の畳み込み層を挟み込むことにより畳み込み層を多層化したニューラルネットワークの構造が提案されている。しかしながら、当該構造は、複雑であり、専門家のみ決定(設計)することができる構造である。 For example, Non-Patent Document 1 proposes a structure of a neural network in which a plurality of convolution layers are sandwiched by sandwiching a plurality of convolution layers between pooling layers as described above. However, the structure is complicated and can be determined (designed) only by an expert.
 つまり、専門家以外の者では、画像認識に有効な畳み込みニューラルネットワークの構造をうまく決定(設計)できないという問題がある。 That is, there is a problem that a person other than an expert cannot determine (design) the structure of a convolutional neural network effective for image recognition.
 そこで、発明者(ら)は、パラメータ決定を行いながら畳み込みニューラルネットワークの構造を簡便に(または自動的に)決定する決定方法およびそのプログラムを想到した。 Therefore, the inventors (e.g.) have come up with a determination method and a program for determining the structure of a convolutional neural network simply (or automatically) while performing parameter determination.
 すなわち、本開示の一形態に係る決定方法は、畳み込みニューラルネットワークの構造を決定するための決定方法であって、学習用画像群を用いて重みが学習されたN個(Nは1以上の自然数)のフィルタを初期値として取得する取得ステップと、前記N個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記N個のフィルタを前記N個より大きいM個(Mは2以上の自然数)のフィルタに増加させる分割ステップとを含む。 That is, the determination method according to an aspect of the present disclosure is a determination method for determining the structure of a convolutional neural network, and N weights (N is a natural number equal to or greater than 1) in which weights are learned using a learning image group. ) Filter as an initial value, and at least one of the N filters, a filter subjected to conversion used in the field of image processing is added to obtain the N filters. A dividing step of increasing the number of filters to larger M (M is a natural number of 2 or more).
 これにより、畳み込みニューラルネットワークの構造をより簡便に決定することができるので、専門家以外の者でも、画像認識に有効な畳み込みニューラルネットワークの構造を利用することができる。 This makes it possible to more easily determine the structure of the convolutional neural network, so that non-experts can use the structure of the convolutional neural network that is effective for image recognition.
 また、例えば、前記分割ステップでは、前記学習用画像群を用いて、前記M個のフィルタに重みを学習させることにより、前記M個のフィルタの識別性能を評価する分割評価ステップを含み、前記分割評価ステップにおいて評価された識別性能が、前記N個のフィルタの識別性能以下である場合には、前記分割ステップを再度行うとしてもよい。 Further, for example, the division step includes a division evaluation step of evaluating the identification performance of the M filters by causing the M filters to learn weights using the learning image group, When the discrimination performance evaluated in the evaluation step is equal to or lower than the discrimination performance of the N filters, the division step may be performed again.
 また、例えば、さらに、前記M個のフィルタをクラスタリングし、クラスタ中心のフィルタを選択することで、前記M個のフィルタを、前記M個より小さいL個(Lは1以上の自然数)のフィルタに統合する統合ステップを含むとしてもよい。 Further, for example, the M filters are clustered and a cluster-centered filter is selected, so that the M filters are reduced to L filters (L is a natural number of 1 or more) smaller than the M filters. An integration step for integration may be included.
 また、例えば、前記統合ステップでは、前記M個のフィルタをk-means法を用いて予め定められたL個のクラスタにクラスタリングするとしてもよい。 Further, for example, in the integration step, the M filters may be clustered into L clusters determined in advance using a k-means method.
 また、例えば、前記統合ステップでは、前記M個のフィルタをAffinity propagation法を用いてクラスタリングするとしてもよい。 Further, for example, in the integration step, the M filters may be clustered using an affinity affinity propagation method.
 また、例えば、前記変換は、ランダムに決定される角度での回転変換を含み、前記分割ステップでは、前記N個のフィルタの少なくとも一に対して前記回転変換を施したフィルタを追加するとしてもよい。 Further, for example, the transformation may include rotational transformation at a randomly determined angle, and the division step may add a filter that has undergone the rotational transformation to at least one of the N filters. .
 また、例えば、前記変換は、ランダムに決定される標準偏差のガウシアンノイズの付与を含み、前記分割ステップでは、前記N個のフィルタの少なくとも一に対して前記ガウシアンノイズの付与を施したフィルタを追加するとしてもよい。 In addition, for example, the conversion includes addition of Gaussian noise having a standard deviation that is randomly determined, and in the division step, a filter having the Gaussian noise added is added to at least one of the N filters. You may do that.
 また、例えば、前記変換は、ランダムに決定されるコントラスト比となるように変換するコントラスト変換を含み、前記分割ステップでは、前記N個のフィルタの少なくとも一に対して前記コントラスト変換を施したフィルタを追加するとしてもよい。 In addition, for example, the conversion includes a contrast conversion that converts the contrast ratio to be determined at random, and in the division step, a filter that has been subjected to the contrast conversion on at least one of the N filters. It may be added.
 また、例えば、前記変換は、ランダムに決定されるスケールとなるように変換するスケール変換を含み、前記分割ステップでは、前記N個のフィルタの少なくとも一に対して前記スケール変換を施したフィルタを追加するとしてもよい。 In addition, for example, the conversion includes a scale conversion for converting to a scale determined at random. In the division step, a filter that has undergone the scale conversion is added to at least one of the N filters. You may do that.
 以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることもできる。 Each of the embodiments described below shows a specific example of the present disclosure. Numerical values, shapes, components, steps, order of steps, and the like shown in the following embodiments are merely examples, and are not intended to limit the present disclosure. In addition, among the constituent elements in the following embodiments, constituent elements that are not described in the independent claims indicating the highest concept are described as optional constituent elements. In all the embodiments, the contents can be combined.
 (実施の形態)
 以下では、図面を参照しながら、実施の形態における決定装置10の決定方法等の説明を行う。
(Embodiment)
Below, the determination method of the determination apparatus 10 in embodiment is demonstrated, referring drawings.
 [決定装置10の構成]
 図1は、本実施の形態の決定装置10の構成の一例を示すブロック図である。図2Aおよび図2Bは、畳み込みニューラルネットワークの識別処理の概要について説明するための図である。
[Configuration of Determination Device 10]
FIG. 1 is a block diagram illustrating an example of the configuration of the determination apparatus 10 according to the present embodiment. FIG. 2A and FIG. 2B are diagrams for explaining an outline of the identification processing of the convolutional neural network.
 図1に示す決定装置10は、取得部11と、分割部12と、統合部13と、出力部15とを備え、畳み込みニューラルネットワークの構造を決定する。決定装置10は、コンピュータ等で実現される。 1 includes an acquisition unit 11, a division unit 12, an integration unit 13, and an output unit 15, and determines the structure of a convolutional neural network. The determination device 10 is realized by a computer or the like.
 ここで、畳み込みニューラルネットワーク(Convolutional Neural Network:CNN)の一般的な処理について以下説明する。 Here, general processing of a convolutional neural network (CNN) will be described below.
 畳み込みニューラルネットワークは、画像認識分野でよく使われ、2次元画像に対してフィルタによる畳み込みを行うことで、画像から特徴量を抽出する。畳み込みニューラルネットワークは、上述したように、畳み込みとプーリングとを繰り返す多層ネットワークからなる。そして、畳み込みニューラルネットワークにおいて畳み込み層を構成する識別に有効なフィルタの係数を、大量の学習用画像(学習用画像群)などの大量のデータを用いて学習させる。当該係数は、大量のデータを用いて、フィルタによる畳み込みと、一定領域の反応をまとめるプーリングとを繰り返すことで多様な変形に対する不変性を獲得する学習を行うことにより得られる。なお、畳み込みニューラルネットワークの識別性能は、畳み込み層を構成するフィルタに依存することがわかっている。 A convolutional neural network is often used in the field of image recognition, and extracts a feature amount from an image by performing convolution with a filter on a two-dimensional image. As described above, the convolutional neural network is composed of a multilayer network that repeats convolution and pooling. In the convolutional neural network, the coefficient of the filter effective for identification constituting the convolutional layer is learned using a large amount of data such as a large amount of learning images (learning image group). The coefficient can be obtained by performing learning to acquire invariance to various deformations by repeating convolution using a filter and pooling that collects reactions in a certain region using a large amount of data. It has been found that the discrimination performance of the convolutional neural network depends on the filters constituting the convolutional layer.
 図2A及び図2Bに示す例では、大量のデータとして学習用画像群を用いて、画像識別に有効なフィルタの係数を学習された、2層のネットワークで構成される畳み込みニューラルネットワークが示されている。そして、このような畳み込みニューラルネットワークに、9を示す数字画像を識別させる処理が示されている。なお、図2A及び図2Bでは、フィルタによる畳み込みの後、活性化関数としてランプ関数(ReLU)が用いられている。 In the example shown in FIG. 2A and FIG. 2B, a convolutional neural network composed of a two-layer network is shown in which a learning image group is used as a large amount of data and a filter coefficient effective for image identification is learned. Yes. And the process which identifies the numerical image which shows 9 to such a convolution neural network is shown. In FIGS. 2A and 2B, a ramp function (ReLU) is used as an activation function after convolution by a filter.
 本実施の形態の決定装置10では、畳み込みニューラルネットワークの構造として、畳み込みニューラルネットワークの畳み込み層を構成するフィルタを決定する。なる、畳み込み層が複数ある場合には、少なくとも一の畳み込み層を構成するフィルタを決定する。もちろん、すべての畳み込み層を構成するフィルタを決定してもよい。これにより、決定装置10は、決定したフィルタを有する畳み込み層で構成される畳み込みニューラルネットワークを決定することができる。 In the determination apparatus 10 according to the present embodiment, the filters constituting the convolution layer of the convolutional neural network are determined as the structure of the convolutional neural network. In the case where there are a plurality of convolution layers, a filter constituting at least one convolution layer is determined. Of course, you may determine the filter which comprises all the convolution layers. Thereby, the determination apparatus 10 can determine the convolution neural network comprised by the convolution layer which has the determined filter.
 [取得部11]
 取得部11は、初期値としての複数のフィルタを取得したり、学習用画像を取得したりする。
[Acquisition unit 11]
The acquisition unit 11 acquires a plurality of filters as initial values or acquires a learning image.
 より具体的には、取得部11は、学習用画像群を用いて重みが学習されたN個(Nは1以上の自然数)のフィルタを初期値として取得する。なお、取得部11は、分割部12で分割処理された複数のフィルタや統合部13で統合処理された複数のフィルタを初期値として取得してもよい。 More specifically, the acquisition unit 11 acquires N (N is a natural number of 1 or more) filters whose weights have been learned using the learning image group as initial values. Note that the acquisition unit 11 may acquire a plurality of filters divided by the dividing unit 12 and a plurality of filters integrated by the integration unit 13 as initial values.
 また、取得部11は、学習用画像群を取得する。ここで、学習用画像群とは、例えばMNISTデータセットやGTSRBデータセットなど、予め用意された複数の画像のデータセットである。 Also, the acquisition unit 11 acquires a learning image group. Here, the learning image group is a data set of a plurality of images prepared in advance, such as an MNIST data set and a GTSRB data set.
 [分割部12]
 図3は、図1に示す決定装置10が行う分割処理の概要を説明するための図である。図4は、図1に示す分割部12が行う分割処理の一例を示す図である。なお、図3の(a)に示される複数のフィルタは、図2Bに示される2つの畳み込み層のうちの一方を構成する複数のフィルタに対応する。また、図4の(a)に示される分割前フィルタは、図3の(a)に示される複数のフィルタに対応する。
[Division unit 12]
FIG. 3 is a diagram for explaining an overview of the division process performed by the determination apparatus 10 illustrated in FIG. 1. FIG. 4 is a diagram illustrating an example of the dividing process performed by the dividing unit 12 illustrated in FIG. Note that the plurality of filters illustrated in FIG. 3A correspond to the plurality of filters constituting one of the two convolution layers illustrated in FIG. 2B. Further, the pre-division filter shown in FIG. 4A corresponds to a plurality of filters shown in FIG.
 分割部12は、取得部11が取得したN個のフィルタなど、初期値として取得された複数のフィルタに対して分割処理を行う。例えば分割部12は、図3の(a)に示されるような、複数のフィルタ(図では32個)に対して分割処理を行い、図3の(b)に示される数のフィルタ(図では96個)に増加させる。 The dividing unit 12 performs a dividing process on a plurality of filters acquired as initial values, such as N filters acquired by the acquiring unit 11. For example, the dividing unit 12 performs a dividing process on a plurality of filters (32 in the figure) as shown in FIG. 3A, and the number of filters (in the figure shown in FIG. 3B). 96).
 より具体的には、分割部12は、初期値としてのN個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで当該N個のフィルタをN個より大きいM個(Mは2以上の自然数)のフィルタに増加させる分割処理を行う。 More specifically, the dividing unit 12 adds N filters that have undergone conversion used in the image processing field to at least one of the N filters as an initial value, thereby adding N filters. A division process for increasing the number of filters to larger M (M is a natural number of 2 or more) is performed.
 ここで、分割部12は、当該M個のフィルタの識別性能が、上記N個のフィルタの識別性能より上である場合に、さらに、当該M個のフィルタの少なくとも一に対して画像処理分野で用いられる変換を施したフィルタを追加することで当該M個のフィルタをM個より大きいP個(Pは3以上の自然数)のフィルタに増加させる分割処理を行うとしてもよい。また、このような分割処理を、決定装置10を利用するユーザ等が予め定めた回数である規定回数まで繰り返すとしてもよい。また、増加後のフィルタの数は、決定装置10を使用する使用者により決定されているとしてもよい。 Here, when the identification performance of the M filters is higher than the identification performance of the N filters, the dividing unit 12 further performs at least one of the M filters in the image processing field. It is also possible to perform division processing for increasing the M filters to P filters larger than M (P is a natural number of 3 or more) by adding filters to which conversion is used. Further, such division processing may be repeated up to a specified number of times that is a predetermined number of times by a user using the determination device 10 or the like. The number of filters after the increase may be determined by the user who uses the determination device 10.
 また、分割部12は、当該M個のフィルタの識別性能が、上記N個のフィルタの識別性能以下である場合には、上記のN個のフィルタに対する分割処理を再度行うとしてもよい。 In addition, when the identification performance of the M filters is equal to or lower than the identification performance of the N filters, the division unit 12 may perform the division process on the N filters again.
 なお、上記において、複数のフィルタの識別性能とは、当該複数のフィルタを有する畳み込みニューラルネットワークの識別性能を意味する。以下も同様である。 In the above, the identification performance of a plurality of filters means the identification performance of a convolutional neural network having the plurality of filters. The same applies to the following.
 本実施の形態では、図1に示すように分割部12は、ランダム変換部121と、フィルタ追加部122と、識別性能評価部123と、を備える。 In the present embodiment, as shown in FIG. 1, the dividing unit 12 includes a random converting unit 121, a filter adding unit 122, and an identification performance evaluating unit 123.
 ランダム変換部121は、初期値として取得部11により取得された複数のフィルタのうちの少なくとも一に対して、画像処理分野で用いられる変換を施す。フィルタ追加部122は、初期値として取得部11により取得され、不図示のメモリなどに保存された複数のフィルタに、ランダム変換部121で画像処理分野で用いられる変換を施されたフィルタを追加する。 The random conversion unit 121 performs conversion used in the image processing field on at least one of the plurality of filters acquired by the acquisition unit 11 as an initial value. The filter adding unit 122 adds a filter subjected to conversion used in the image processing field by the random conversion unit 121 to a plurality of filters acquired by the acquisition unit 11 as initial values and stored in a memory (not illustrated). .
 ここで、ランダム変換部121が施す変換は、画像処理分野で既知の画像変換(変換セット)から選択したもので行えばよい。例えば、ランダム変換部121の施す変換が、ランダムに決定される角度での回転変換である場合、ランダム変換部121は、上記N個のフィルタの少なくとも一に対して当該回転変換を施せばよい。そして、フィルタ追加部122は、ランダム変換部121で当該回転変換を施されたフィルタを追加すればよい。 Here, the conversion performed by the random conversion unit 121 may be performed by selecting from image conversions (conversion sets) known in the image processing field. For example, when the conversion performed by the random conversion unit 121 is a rotation conversion at a randomly determined angle, the random conversion unit 121 may perform the rotation conversion on at least one of the N filters. And the filter addition part 122 should just add the filter which the said random conversion part 121 performed the said rotation conversion.
 また、例えば、ランダム変換部121の施す変換が、ランダムに決定される標準偏差のガウシアンノイズの付与である場合、ランダム変換部121は、上記のN個のフィルタの少なくとも一に対して当該ガウシアンノイズの付与を施せばよい。そして、フィルタ追加部122は、ランダム変換部121で当該ガウシアンノイズの付与を施されたフィルタを追加すればよい。 Further, for example, when the conversion performed by the random conversion unit 121 is addition of Gaussian noise with a standard deviation determined at random, the random conversion unit 121 applies the Gaussian noise to at least one of the N filters. Can be given. And the filter addition part 122 should just add the filter to which the random conversion part 121 gave the said Gaussian noise.
 また、例えば、ランダム変換部121の施す変換が、ランダムに決定されるコントラスト比となるように変換するコントラスト変換を含む場合、ランダム変換部121は、上記のN個のフィルタの少なくとも一に対して当該コントラスト変換を施せばよい。そして、フィルタ追加部122は、ランダム変換部121で当該コントラスト変換を施されたフィルタを追加すればよい。 For example, when the conversion performed by the random conversion unit 121 includes a contrast conversion that converts the contrast ratio to be determined at random, the random conversion unit 121 applies to at least one of the N filters. What is necessary is just to perform the said contrast conversion. And the filter addition part 122 should just add the filter which the said random conversion part 121 performed the said contrast conversion.
 また、例えば、ランダム変換部121の施す変換が、ランダムに決定されるスケールとなるように変換するスケール変換である場合、ランダム変換部121は、上記のN個のフィルタの少なくとも一に対して当該スケール変換を施せばよい。そして、フィルタ追加部122は、ランダム変換部121で当該スケール変換を施されたフィルタを追加すればよい。 Further, for example, when the conversion performed by the random conversion unit 121 is a scale conversion that performs conversion so as to have a randomly determined scale, the random conversion unit 121 applies the change to at least one of the N filters. Scale conversion should be applied. And the filter addition part 122 should just add the filter which the said random conversion part 121 performed the said scale conversion.
 なお、当該変換は、ランダムに決定される角度での回転変換、ランダムに決定される標準偏差のガウシアンノイズの付与、ランダムに決定されるコントラスト比となるように変換するコントラスト変換、または、ランダムに決定されるスケールとなるように変換するスケール変換を含む場合に限らない。例えば、コントラスト反転変換や等長変換などでもよく、これら(変換セット)のうちの2以上の組み合わせを含むとしてもよい。変換セットのうち、ランダムに決定される角度での回転変換(ランダム回転変換)と、ランダムに決定される標準偏差のガウシアンノイズの付与(ランダムガウシアンノイズ付与)とを選択した場合、畳み込みニューラルネットワークの識別性能に一貫した改善が期待できる。以下この場合の例について図4を用いて説明する。 Note that the conversion is rotation conversion at a randomly determined angle, provision of Gaussian noise with a randomly determined standard deviation, contrast conversion for converting to a randomly determined contrast ratio, or randomly The present invention is not limited to the case where scale conversion is performed so that the scale is determined. For example, contrast inversion conversion, isometric conversion, or the like may be included, and two or more combinations of these (conversion sets) may be included. If you select a rotation transformation at a randomly determined angle (random rotation transformation) and a randomly determined standard deviation Gaussian noise addition (random Gaussian noise addition) from the transformation set, the convolutional neural network A consistent improvement in identification performance can be expected. Hereinafter, an example of this case will be described with reference to FIG.
 図4の(a)に示される分割前フィルタは、取得部11が取得した初期値である複数のフィルタであり、図4の(b)に示されるフィルタは、分割前フィルタのうちの一のフィルタである。ランダム変換部121は、図4の(c)に示されるように、図4の(b)に示されるフィルタに対して、上記回転変換(図でランダム回転変換と記載)と、上記ガウシアンノイズの付与(ランダムガウシアンノイズ付与と記載)とを行い、回転フィルタとぼけたフィルタとを生成する。フィルタ追加部122は、図4の(d)に示されるように、ランダム変換部121で生成された回転フィルタとぼけたフィルタとを初期値である複数のフィルタに一時的に追加する。後述する識別性能評価部123は、初期値である複数のフィルタに回転フィルタとぼけたフィルタとが追加されたフィルタの識別性能を評価する。そして、初期値である複数のフィルタの識別性能より上である場合に、図4の(e)に示されるように、初期値である複数のフィルタに回転フィルタとぼけたフィルタとが追加されたフィルタを採用して分割後フィルタとし、分割部12の分割処理を終了する。なお、図4の(e)に示される分割後フィルタは、図3の(b)に示されたフィルタに対応する。 The pre-division filter shown in (a) of FIG. 4 is a plurality of filters that are initial values acquired by the acquisition unit 11, and the filter shown in (b) of FIG. 4 is one of the pre-division filters. It is a filter. As shown in FIG. 4C, the random conversion unit 121 performs the rotation conversion (described as random rotation conversion in the drawing) and the Gaussian noise of the filter shown in FIG. Giving (denoting the addition of random Gaussian noise) and generating a rotation filter and a blurred filter. As shown in FIG. 4D, the filter adding unit 122 temporarily adds the rotation filter and the blurred filter generated by the random conversion unit 121 to a plurality of filters that are initial values. The identification performance evaluation unit 123 described later evaluates the identification performance of a filter in which a rotation filter and a blurred filter are added to a plurality of filters that are initial values. Then, when the identification performance of the plurality of filters that are the initial values is higher, as shown in FIG. 4E, a filter in which a rotation filter and a blurred filter are added to the plurality of filters that are the initial values Is used as a post-division filter, and the division processing of the division unit 12 is terminated. The post-division filter shown in (e) of FIG. 4 corresponds to the filter shown in (b) of FIG.
 識別性能評価部123は、学習用画像群を用いて、追加されたフィルタにより増加したフィルタに重みを学習させて、当該増加したフィルタの識別性能を評価する。より具体的には、識別性能評価部123は、学習用画像群を用いて、追加されたフィルタにより増加したフィルタを畳み込み層に有する畳み込みニューラルネットワークのフィルタに重みを学習させて、当該増加したフィルタの識別性能を評価する。 The identification performance evaluation unit 123 uses the learning image group to cause the filter increased by the added filter to learn the weight and evaluate the identification performance of the increased filter. More specifically, the identification performance evaluation unit 123 uses the learning image group to cause the filter of the convolutional neural network having the filter increased by the added filter in the convolution layer to learn the weight, and to increase the filter Evaluate the discrimination performance of
 識別性能評価部123は、評価した当該増加したフィルタの識別性能が、初期値である取得部11により取得された複数のフィルタの識別性能より上である場合に、当該増加したフィルタを分割後フィルタとして採用する。なお、識別性能評価部123は、評価した当該増加したフィルタの識別性能が、初期値である取得部11により取得された複数のフィルタの識別性能以下である場合に、ランダム変換部121に、初期値の複数のフィルタに対して再度分割処理を行わせる。 The discriminating performance evaluation unit 123 divides the increased filter after dividing the increased filter when the discriminating performance of the increased filter evaluated is higher than the discriminating performance of the plurality of filters acquired by the acquisition unit 11 that is the initial value. Adopt as. In addition, the identification performance evaluation unit 123 causes the random conversion unit 121 to perform initial initialization when the evaluated identification performance of the increased filter is equal to or less than the identification performance of the plurality of filters acquired by the acquisition unit 11 that is the initial value. The division process is performed again on the plurality of value filters.
 より具体的には、識別性能評価部123は、学習用画像群を用いて、例えばN個からM個に増加したM個のフィルタに重みを学習させることにより、M個のフィルタの識別性能を評価する。識別性能評価部123は、評価した当該M個のフィルタの識別性能が、初期値であるN個のフィルタの識別性能より上である場合に、当該M個のフィルタを分割後フィルタとして採用する。一方、識別性能評価部123は、評価した当該M個のフィルタの識別性能が、初期値であるN個のフィルタの識別性能以下である場合、ランダム変換部121に、初期値であるN個のフィルタに対して再度分割処理を行わせる。 More specifically, the discrimination performance evaluation unit 123 uses the learning image group to learn the weights of, for example, M filters that have increased from N to M, thereby improving the discrimination performance of the M filters. evaluate. The discrimination performance evaluation unit 123 employs the M filters as post-division filters when the discrimination performance of the evaluated M filters is higher than the discrimination performance of the N filters that are the initial values. On the other hand, when the discriminating performance of the M filters evaluated is equal to or lower than the discriminating performance of N filters that are initial values, the discriminating performance evaluation unit 123 causes the random conversion unit 121 to receive The filter is divided again.
 なお、本実施の形態では、分割部12は、取得部11により取得された複数のフィルタを初期値として分割処理を行うとして説明したが、これに限らない。分割処理された分割後フィルタを初期値として再度分割処理を行うとしてもよいし、統合部13により出力された統合後のフィルタを初期値として分割処理を行うとしてもよい。 In the present embodiment, the dividing unit 12 has been described as performing the dividing process using the plurality of filters acquired by the acquiring unit 11 as initial values, but the present invention is not limited to this. The division process may be performed again using the divided filter after the division process as an initial value, or the division process may be performed using the integrated filter output by the integration unit 13 as an initial value.
 また、分割処理を複数回行わせる場合には、識別性能評価部123は、分割処理により増加したフィルタの識別性能と、初期値ではなく一つ前の分割処理により増加したフィルタの識別性能とを比較すればよい。 Further, when the division process is performed a plurality of times, the identification performance evaluation unit 123 calculates the filter identification performance increased by the division process and the filter identification performance increased by the previous division process instead of the initial value. Compare.
 [統合部13]
 図5は、図1に示す決定装置10が行う統合処理の概要を説明するための図である。図6は、図1に示す統合部13が行う統合処理の一例を示す図である。なお、図6の(a)に示される複数のフィルタ(統合前フィルタ)は、図5の(a)に示される複数のフィルタに対応し、図6の(d)に示される複数のフィルタ(統合後フィルタ)は、図5の(b)に示される複数のフィルタに対応する。
[Integration unit 13]
FIG. 5 is a diagram for explaining an overview of the integration process performed by the determination apparatus 10 illustrated in FIG. 1. FIG. 6 is a diagram illustrating an example of integration processing performed by the integration unit 13 illustrated in FIG. A plurality of filters (pre-integration filters) shown in FIG. 6A correspond to a plurality of filters shown in FIG. 5A, and a plurality of filters shown in FIG. The post-integration filter) corresponds to a plurality of filters shown in FIG.
 統合部13は、取得部11が取得したN個のフィルタや分割処理された分割後のフィルタなど、初期値として取得された複数のフィルタに対して統合処理を行う。例えば統合部13は、図5の(a)に示されるような、複数のフィルタ(図では156個)に対して統合処理を行い、図5の(b)に示される数のフィルタ(図では32個)に減少させる。 The integration unit 13 performs integration processing on a plurality of filters acquired as initial values, such as the N filters acquired by the acquisition unit 11 and the filters after the division processing. For example, the integration unit 13 performs integration processing on a plurality of filters (156 in the figure) as shown in FIG. 5A, and the number of filters (in the figure, FIG. 5B). To 32).
 より具体的には、統合部13は、分割部12において分割処理された分割後フィルタをクラスタリングし、クラスタ中心のフィルタを選択することにより、当該複数のフィルタの数を減少させる統合処理を行う。これにより、過学習を防ぐことができ、識別時のエラー率を下げ画像認識をより高精度に行えるなど、識別性能を向上させることができるからである。なお、統合部13が統合処理を行う複数のフィルタは、分割部12において分割処理された分割後フィルタに限らず、初期値として取得部11により取得された複数のフィルタであってもよい。 More specifically, the integration unit 13 performs an integration process to reduce the number of the plurality of filters by clustering the divided filters that have been divided by the dividing unit 12 and selecting a cluster-centered filter. This is because overlearning can be prevented, and the recognition performance can be improved, for example, by reducing the error rate during identification and performing image recognition with higher accuracy. Note that the plurality of filters that the integration unit 13 performs the integration process is not limited to the post-division filter that has been subjected to the division process by the division unit 12, but may be a plurality of filters that are acquired by the acquisition unit 11 as initial values.
 本実施の形態では、図1に示すように、統合部13は、クラスタリング部131と、フィルタ選択部132とを備える。 In the present embodiment, as shown in FIG. 1, the integration unit 13 includes a clustering unit 131 and a filter selection unit 132.
 クラスタリング部131は、分割部12において分割処理された分割後フィルタであるM個のフィルタをクラスタリングする。クラスタリング部131は、結果として、M個のフィルタをL個のクラスタにクラスタリングする。 The clustering unit 131 clusters the M filters that are the post-division filters subjected to the division processing by the division unit 12. As a result, the clustering unit 131 clusters the M filters into L clusters.
 ここで、クラスタリング部131は、M個のフィルタをk-means法を用いて予め定められたL個のクラスタにクラスタリングするとしてもよいし、M個のフィルタをAffinity propagation法を用いてクラスタリングした結果、L個のクラスタにクラスタリングするとしてもよい。k-means法とは、データの分布としてクラスタの平均を用い、与えられたクラスタ数K個に分類する方法である。一方、Affinity propagation法は、Freyらによって近年提案されたクラスタリング手法であり、予めクラスタ数を決めておく必要がなくアルゴリズムが自動的にクラスタ数を決定する。また、Affinity propagation法は、responsibilityとavailabilityとを交互に更新していって収束させる手法であるため初期値依存性がなく、k-means法などに代表される既存のクラスタリング方法よりクラスタリング精度が良い。なお、k-means法またはAffinity propagation法を用いてクラスタリングする方法は、既存のクラスタリング方法であるのでここでの詳細な説明は省略する。 Here, the clustering unit 131 may cluster the M filters into L clusters that are determined in advance using the k-means method, or the result of clustering the M filters using the affinity-propagation method. , It may be clustered into L clusters. The k-means method uses a cluster average as a data distribution and classifies it into a given number K of clusters. On the other hand, the affinity-propagation method is a clustering method recently proposed by Frey et al., And it is not necessary to determine the number of clusters in advance, and the algorithm automatically determines the number of clusters. In addition, Affinityationpropagation method is a method of alternately updating and converging responsibility and availability, so there is no dependency on initial value, and clustering accuracy is better than existing clustering methods represented by k-means method etc. . Note that the clustering method using the k-means method or the affinity-propagation method is an existing clustering method, and thus detailed description thereof is omitted here.
 フィルタ選択部132は、クラスタリング部131によりL個のクラスタにクラスタリングされ、不図示のメモリなどに保存されたM個のフィルタのうち、クラスタ中心のフィルタを選択する。ここで、例えば、フィルタ選択部132は、L個のクラスタそれぞれに属する複数のフィルタのベクトル重心を算出し、ベクトル重心に最も近いフィルタを選択することで、L個のクラスタそれぞれのクラスタ中心となるフィルタを選択すればよい。このようにして、統合部13は、分割部12において分割処理された分割後フィルタであるM個のフィルタを、当該M個より小さいL個(Lは1以上の自然数)のフィルタに統合する。 The filter selection unit 132 selects a cluster-centered filter from the M filters clustered into L clusters by the clustering unit 131 and stored in a memory (not shown). Here, for example, the filter selection unit 132 calculates the vector centroids of a plurality of filters belonging to each of the L clusters, and selects the filter closest to the vector centroid, thereby becoming the cluster centers of the L clusters. Select a filter. In this way, the integration unit 13 integrates the M filters that are the post-division filters subjected to the division process in the division unit 12 into L filters (L is a natural number of 1 or more) smaller than the M filters.
 以下、図6を用いて、クラスタリング部131がk-means法を用いてクラスタリングする場合の例について説明する。なお、図6の(a)に示される統合前フィルタは、図4の(e)に示される分割フィルタであり、分割部12において分割処理された分割後フィルタである。また、図6の(b)には、k-means法を用いて所定のクラスタ数となるようにデータの分布から境界線を決定することによりクラスタリングを行った場合の例が示されている。 Hereinafter, an example in which the clustering unit 131 performs clustering using the k-means method will be described with reference to FIG. The pre-integration filter shown in (a) of FIG. 6 is the division filter shown in (e) of FIG. 4 and is a post-division filter that has been subjected to division processing by the division unit 12. FIG. 6B shows an example in which clustering is performed by determining the boundary line from the data distribution so that the predetermined number of clusters is obtained using the k-means method.
 クラスタリング部131は、図6の(b)に示されるように、図6の(a)に示される統合前フィルタに対して、k-means法を用いて、決定装置10を使用する使用者などにより予め決定された所定のクラスタ数となるようにクラスタリングする。そして、フィルタ選択部132は、図6の(c)に示されるように、所定の数のクラスタそれぞれのクラスタ中心に一番近いフィルタ(図でフィルタaと表記)を選択し、統合後フィルタとして採用する。 As shown in FIG. 6B, the clustering unit 131 uses the k-means method for the pre-integration filter shown in FIG. Clustering is performed so that a predetermined number of clusters is determined in advance. Then, as shown in FIG. 6C, the filter selection unit 132 selects a filter (denoted as filter a in the figure) that is closest to the cluster center of each of a predetermined number of clusters, and serves as an integrated filter. adopt.
 なお、クラスタリング部131は、初期値として取得部11により取得されたN個のフィルタをクラスタリングするとしてもよい。この場合、フィルタ選択部132は、クラスタリング部131によりクラスタリングされ、不図示のメモリなどに保存されたN個のフィルタのうち、クラスタ毎にクラスタ中心のフィルタを選択する。このようにして、統合部13は、初期値として取得部11により取得されたN個のフィルタを、当該N個より小さい数のフィルタに統合することができる。 Note that the clustering unit 131 may cluster the N filters acquired by the acquisition unit 11 as initial values. In this case, the filter selection unit 132 selects a cluster-centered filter for each cluster among N filters that are clustered by the clustering unit 131 and stored in a memory (not shown) or the like. In this way, the integration unit 13 can integrate the N filters acquired by the acquisition unit 11 as initial values into a smaller number of filters.
 また、統合部13は、さらに、学習用画像群を用いて、統合後フィルタに重みを学習させて、統合後フィルタの識別性能を評価する識別性能評価部を備えるとしてもよい。この場合、識別性能評価部により評価された識別性能が、統合前フィルタの識別性能以下である場合には、統合処理を再度行う。統合部13は、k-means法を用いてクラスタリングしている場合には、所定のクラスタ数を変更して再度統合処理を行い、Affinity propagation法を用いてクラスタリングしている場合には、類似度行列の対角要素などアルゴリズム中のパラメータを変更して再度統合処理を行うとよい。 Further, the integration unit 13 may further include an identification performance evaluation unit that uses the learning image group to cause the post-integration filter to learn the weight and evaluate the identification performance of the post-integration filter. In this case, when the identification performance evaluated by the identification performance evaluation unit is equal to or lower than the identification performance of the pre-integration filter, the integration process is performed again. If clustering is performed using the k-means method, the integration unit 13 changes the predetermined number of clusters and performs integration processing again. If the clustering is performed using the Affinity propagation method, the integration unit 13 The integration process may be performed again by changing parameters in the algorithm such as diagonal elements of the matrix.
 [出力部15]
 出力部15は、分割部12で分割処理されたフィルタまたは統合部13で統合処理されたフィルタを、決定装置10により決定された畳み込みニューラルネットワークを構成するフィルタとして出力する。なお、出力部15は、必須の構成ではなく、メモリであってもよい。この場合、分割部12で分割処理されたフィルタまたは統合部13で統合処理されたフィルタを、決定装置10により決定された畳み込みニューラルネットワークを構成するフィルタとして保存する。
[Output unit 15]
The output unit 15 outputs the filter divided by the dividing unit 12 or the filter integrated by the integrating unit 13 as a filter constituting the convolutional neural network determined by the determining device 10. Note that the output unit 15 is not an essential component and may be a memory. In this case, the filter divided by the dividing unit 12 or the filter integrated by the integrating unit 13 is stored as a filter constituting the convolutional neural network determined by the determining device 10.
 [決定装置10の決定処理]
 次に、以上のように構成された決定装置10の決定処理について、図を用いて説明する。
[Determination Processing of Determination Device 10]
Next, the determination process of the determination apparatus 10 configured as described above will be described with reference to the drawings.
 図7は、本実施の形態における決定処理の一例を示すフローチャートである。図8は、図7に示すステップS20の詳細処理の一例を示すフローチャートである。図9は、図7に示すステップS30の詳細処理の一例を示すフローチャートである。 FIG. 7 is a flowchart showing an example of the determination process in the present embodiment. FIG. 8 is a flowchart showing an example of detailed processing in step S20 shown in FIG. FIG. 9 is a flowchart showing an example of detailed processing in step S30 shown in FIG.
 まず、ステップS10において、決定装置10は、取得処理を行う。 First, in step S10, the determination apparatus 10 performs an acquisition process.
 より具体的には、ステップS10の前に、学習用画像群を用いて、畳み込みニューラルネットワークを構成する1以上の畳み込み層を構成する複数のフィルタの重みが学習されている(S9)。決定装置10は、学習用画像群を用いて重みが学習された複数のフィルタのうち、少なくとも一の畳みこみ層を構成するN個(Nは1以上の自然数)のフィルタを初期値として取得する(S11)。 More specifically, prior to step S10, the weights of a plurality of filters constituting one or more convolution layers constituting the convolutional neural network are learned using the learning image group (S9). The determination device 10 acquires, as an initial value, N (N is a natural number of 1 or more) filters constituting at least one convolution layer among a plurality of filters whose weights have been learned using the learning image group. (S11).
 次に、ステップS20において、決定装置10は、分割処理を行う。 Next, in step S20, the determination apparatus 10 performs a division process.
 より具体的には、ステップS11において取得した初期値のN個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施し(S21)、画像処理分野で用いられる変換を施したフィルタを初期値のN個のフィルタに追加する(S22)。これにより初期値のN個のフィルタを、N個より大きいM個(Mは2以上の自然数)のフィルタに増加させることができる。ここで、当該変換は上述した変換セットのうちから選択したものを行えばよいが、詳細は上述したのでここでの説明は省略する。次いで、決定装置10は、学習用画像群を用いて、M個のフィルタに重みを学習させることにより、M個のフィルタの識別性能を評価し、初期値のN個のフィルタの識別性能より上かを判定する(S23)。ステップS23において、M個のフィルタの識別性能が、N個のフィルタの識別性能以下であり(S23でNo)、予め定めた回数(規定回数)以下である場合(S24でNo)には、ステップS21に戻り、分割処理を再度行う。一方、M個のフィルタの識別性能が、N個のフィルタの識別性能より上である場合(S24でYes)には、分割処理を終了する。 More specifically, at least one of the initial N filters acquired in step S11 is subjected to conversion used in the image processing field (S21), and the filter subjected to conversion used in the image processing field is converted. Add to the initial N filters (S22). Thereby, the N filters having the initial value can be increased to M filters (M is a natural number of 2 or more) larger than N filters. Here, the conversion may be performed by selecting one of the above-described conversion sets, but since the details have been described above, description thereof is omitted here. Next, the determination apparatus 10 evaluates the identification performance of the M filters by using the learning image group to learn the weights of the M filters, and exceeds the identification performance of the initial N filters. Is determined (S23). In step S23, when the identification performance of the M filters is equal to or lower than the identification performance of the N filters (No in S23) and is equal to or less than a predetermined number of times (specified number) (No in S24), Returning to S21, the division process is performed again. On the other hand, when the identification performance of the M filters is higher than the identification performance of the N filters (Yes in S24), the division process is terminated.
 なお、分割処理を予め定めた回数(規定回数)まで繰り返す場合には、ステップS10において、初期値のフィルタとして、分割処理したM個フィルタである分割後フィルタを取得し、再度ステップS20を行えばよい。 When the division process is repeated up to a predetermined number of times (a prescribed number), in step S10, a post-division filter, which is M filters that have been divided, is acquired as the initial value filter, and step S20 is performed again. Good.
 次に、ステップS30において、決定装置10は、統合処理を行う。 Next, in step S30, the determination apparatus 10 performs integration processing.
 より具体的には、決定装置10は、初期値のフィルタであるステップS20で分割処理されたM個のフィルタをクラスタリングする(S31)。ここで、決定装置10は、ステップS20で分割処理されたM個のフィルタを、結果としてM個より小さいL個(Lは1以上の自然数)のクラスタ数にクラスタリングする。次いで、決定装置10は、L個のクラスタそれぞれのクラスタ中心のフィルタを選択する(S32)。このようにして、決定装置10は、M個のフィルタを、M個より小さいL個のフィルタに統合する。 More specifically, the determination apparatus 10 clusters the M filters that have been divided in step S20, which is an initial value filter (S31). Here, the determination apparatus 10 clusters the M filters that have been divided in step S20 into L (L is a natural number greater than or equal to 1) clusters as a result. Next, the determination apparatus 10 selects a cluster-centered filter for each of the L clusters (S32). In this way, the determination apparatus 10 integrates M filters into L filters that are smaller than M.
 なお、ステップS20の分割処理とステップS30の統合処理とは、それぞれ単独で行うとしてもよいし、ステップS30の統合処理を先に行い、続いてステップS20の分割処理を行うとしてもよい。また、上述したように、ステップS20の分割処理を予め定めた回数(規定回数)まで繰り返した後に、ステップS30の統合処理を行うとしてもよい。 Note that the dividing process in step S20 and the integrating process in step S30 may be performed independently, or the integrating process in step S30 may be performed first, followed by the dividing process in step S20. Further, as described above, the integration process of step S30 may be performed after the division process of step S20 is repeated up to a predetermined number of times (specified number of times).
 [決定処理の有効性]
 次に、実施例を挙げて、上述した決定装置10の決定処理の有効性について説明する。
[Effectiveness of decision processing]
Next, the effectiveness of the determination process of the determination device 10 described above will be described by giving an example.
 (実施例1)
 図10は、実施例1における決定装置10の決定処理のアルゴリズムの詳細の一例を示す図である。
(Example 1)
FIG. 10 is a diagram illustrating an example of details of the algorithm of the determination process of the determination device 10 according to the first embodiment.
 図10において「//SPLIT」で記述されるアルゴリズムは、上述した分割処理のアルゴリズムの一例であり、「//SPLIT」で記述されるアルゴリズムは、上述した分割処理のアルゴリズムの一例である。また、「δ、δ、δ」は、識別性能の評価値を示しており、「Kernel」は、畳み込みニューラルネットワークの少なくとも一の畳み込み層を構成するフィルタを示している。 In FIG. 10, the algorithm described by “// SPLIT” is an example of the above-described division processing algorithm, and the algorithm described by “// SPLIT” is an example of the above-described division processing algorithm. Further, “δ 0 , δ 1 , δ 2 ” indicates the evaluation value of the discrimination performance, and “Kernel” indicates a filter that constitutes at least one convolution layer of the convolution neural network.
 図11は、実施例1における決定装置10の決定処理の一例を示す図である。すなわち、本実施例では、統合処理を先に行い、その後に分割処理を行った場合の例が示されている。 FIG. 11 is a diagram illustrating an example of a determination process performed by the determination apparatus 10 according to the first embodiment. That is, in this embodiment, an example in which the integration process is performed first and then the division process is performed is shown.
 より具体的には、実施例1における決定装置10は、初期値としての150個のフィルタに対して、統合処理を行い、32個のフィルタに減らし、学習用画像群を用いて重みを学習させた上で32個のフィルタの識別性能を評価する。なお、本実施例の統合処理では、図10に示されるようにk-means法を用いてクラスタリングを行っている。 More specifically, the determination device 10 according to the first embodiment performs integration processing on 150 filters as initial values, reduces the number of filters to 32, and learns weights using a learning image group. In addition, the identification performance of 32 filters is evaluated. In the integration process of this embodiment, clustering is performed using the k-means method as shown in FIG.
 そして、実施例1における決定装置10は、学習用画像群を用いて重みが学習させた32個のフィルタに対して、分割処理を行い、96個のフィルタに増やして、学習用画像群を用いて重みを学習させた上で32個のフィルタの識別性能を評価する。なお、本実施例の分割処理では、図10に示されるようにランダムに決定される角度での回転変換とランダムに決定される標準偏差のガウシアンノイズの付与とを行っている。 Then, the determination device 10 according to the first embodiment performs a division process on the 32 filters whose weights are learned using the learning image group, increases the number of filters to 96, and uses the learning image group. After learning the weights, the identification performance of the 32 filters is evaluated. In the division processing of the present embodiment, as shown in FIG. 10, rotation conversion at an angle determined at random and addition of Gaussian noise with a standard deviation determined at random are performed.
 図12A~図12Dは、本実施例の統合処理の有効性について説明するための図である。 12A to 12D are diagrams for explaining the effectiveness of the integration processing of the present embodiment.
 図12Aは、テスト用画像の一例を示しており、120が表示された標識が30度程度傾いた画像が示されている。また、図12Aに示すテスト用画像は、学習用画像により重みが学習された、初期値としてのフィルタを有する畳み込みニューラルネットワークにより誤分類されたものである。 FIG. 12A shows an example of a test image, and an image in which a sign displaying 120 is tilted by about 30 degrees is shown. Further, the test image shown in FIG. 12A is misclassified by a convolutional neural network having a filter as an initial value in which the weight is learned by the learning image.
 図12Bは、図12Aに示すテスト用画像のソフトマックス確率を示す図である。図12Bでは、初期値としてのフィルタを有する畳み込みニューラルネットワークの43クラスの出力の反応値がソフトマックス確率で示されている。カテゴリ識別を行うニューラルネットでは、出力確率の最大値を認識結果として出力する。初期値としてのフィルタを有する畳み込みニューラルネットワークが図12Aに示すテスト用画像(正解ラベル=7)を分類(識別)すると、カテゴリ15に大きな反応値が出力され、誤分類しているのがわかる。 FIG. 12B is a diagram showing the softmax probability of the test image shown in FIG. 12A. In FIG. 12B, the response value of the output of 43 classes of the convolutional neural network having the filter as the initial value is shown by the softmax probability. In a neural network that performs category identification, the maximum value of output probability is output as a recognition result. When the convolutional neural network having a filter as an initial value classifies (identifies) the test image (correct answer label = 7) shown in FIG. 12A, a large reaction value is output in category 15 and it can be seen that it is misclassified.
 図12Cは、図11に示す分割処理後のフィルタを有する畳み込みニューラルネットワークにより分類された図12Aに示すテスト用画像のソフトマックス確率の一例を示す図である。これにより、分割処理後のフィルタを有する畳み込みニューラルネットワークが図12Aに示すテスト用画像を分類(識別)すると、正解ラベルに対する反応値が改善され、誤分類せず正確に分類しているのがわかる。 FIG. 12C is a diagram showing an example of the softmax probability of the test image shown in FIG. 12A classified by the convolutional neural network having the filter after the division processing shown in FIG. Thereby, when the convolutional neural network having the filter after the division processing classifies (identifies) the test image shown in FIG. 12A, the response value to the correct answer label is improved, and it is understood that the correct classification is performed without misclassification. .
 図12Dは、図11に示す統合処理後の32個のフィルタを有する畳み込みニューラルネットワークにより分類された図12Aに示す画像のソフトマックス確率の一例を示す図である。統合処理後の32個のフィルタを有する畳み込みニューラルネットワークが図12Aに示すテスト用画像を分類(識別)すると、図12Cの反応値よりさらに改善され、誤分類せず正確に分類しているのがわかる。 FIG. 12D is a diagram showing an example of the softmax probability of the image shown in FIG. 12A classified by the convolutional neural network having 32 filters after the integration process shown in FIG. When the convolutional neural network having 32 filters after the integration process classifies (identifies) the test image shown in FIG. 12A, the response value in FIG. 12C is further improved, and it is correctly classified without misclassification. Recognize.
 (実施例2)
 本開示の分割処理および統合処理の有効性について、学習用画像およびテスト用画像からなる複数のデータセットを用いて検証したので、その実験結果を実施例2として説明する。
(Example 2)
Since the effectiveness of the division processing and the integration processing according to the present disclosure has been verified using a plurality of data sets including a learning image and a test image, the experimental result will be described as a second embodiment.
 図13は、実施例2における複数のデータセットそれぞれを用いた場合の識別性能の値を示す図である。図13には、MNIST(Mixed National Institute of Standards and Technology database)データセット、GTSRB(German Traffic Sign Recognition Benchmark)およびCIFAR-10(Canadian Institute for Advanced Research)データセットを用いた場合の識別性能の値(基準値)が示されている。 FIG. 13 is a diagram showing identification performance values when a plurality of data sets are used in the second embodiment. FIG. 13 shows the value of discrimination performance when using the MNIST (Mixed National Institute of Standards and Technology database) data set, GTSRB (German Traffic Sign Recognition Benchmark) and CIFAR-10 (Canadian Institute for Advanced Research) data set ( Reference value) is shown.
 [MNIST]
 図14は、MNISTデータセットを用いるモデル構造(MNISTモデル構造)の一例を示す図である。MNISTデータセットは、28×28サイズの手書き数字の60,000枚の学習用画像と10,000枚のテスト用画像とからなる。MNISTモデル構造は、図14に示すように、2層の結合層と2層の畳み込み層とからなる畳み込みニューラルネットワークで構成されており、ReLU活性化関数を使用した各畳み込み層の後にプーリング層を有する。図13には、MNISTデータセットの学習用画像で学習させたMNISTモデル構造に、MNISTデータセットのテスト用画像を識別させたときの識別性能の値(基準値)としてのエラー率0.82%が示されている。
[MNIST]
FIG. 14 is a diagram illustrating an example of a model structure (MNIST model structure) using the MNIST data set. The MNIST data set is composed of 60,000 learning images and 10,000 test images of 28 × 28 size handwritten numerals. As shown in FIG. 14, the MNIST model structure is composed of a convolutional neural network composed of two layers of concatenation and two layers of convolution, and a pooling layer is provided after each convolution layer using the ReLU activation function. Have. FIG. 13 shows an error rate of 0.82% as an identification performance value (reference value) when a test image of the MNIST data set is identified by the MNIST model structure learned from the learning image of the MNIST data set. It is shown.
 図15は、MNISTモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。ここで、図15のSPLIT[1]はNo.1のフィルタ(ORIGINAL)を分割したことを示し、MERGE[4]はNo.4のフィルタSPLIT[1]を統合したことを示す。図15では、MNISTモデル構造の2層の畳み込み層のうち1層目の畳み込み層を構成する100個のフィルタ(ORIGINAL)を分割処理して200個のフィルタに増やし、学習用画像で重みを再学習させた場合(SPLIT[1])のエラー率0.58%が示されている。また、分割処理された200個のフィルタ(SPLIT[1])をさらに統合処理して100個のフィルタに減らし、学習用画像で重みを再学習させた場合(MERGE[4])のエラー率0.59%が示されている。 FIG. 15 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the MNIST model structure. Here, SPLIT [1] in FIG. 1 indicates that the first filter (ORIGINAL) is divided, and MERGE [4] is No.1. It shows that four filters SPLIT [1] are integrated. In FIG. 15, 100 filters (ORIGINAL) constituting the first convolution layer among the two convolution layers of the MNIST model structure are divided to increase to 200 filters, and the weight is re-applied in the learning image. An error rate of 0.58% when learning (SPLIT [1]) is shown. Further, the 200 filters (SPLIT [1]) subjected to the division processing are further integrated and reduced to 100 filters, and the error rate is 0 when the weight is re-learned with the learning image (MERGE [4]). .59% is shown.
 一方、比較例としてMNISTモデル構造の1層目の畳み込み層を構成する100個のフィルタを分割処理せず、200個または300個のフィルタを初期状態から学習させた場合のエラー率0.78%または0.75%が示されている。 On the other hand, as a comparative example, an error rate of 0.78% when 100 filters constituting the first convolution layer of the MNIST model structure are not subjected to division processing and 200 or 300 filters are learned from the initial state. Or 0.75%.
 MNISTモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率は、比較例やMNISTモデル構造のエラー率に対して、ほぼ30%向上しているのがわかる。なお、分割処理後の統合処理により、エラー率は0.01%だけ下がっているものの、識別性能はほぼ維持している。 It can be seen that the error rate when the division process or the integration process of the present disclosure is performed on the MNIST model structure is improved by almost 30% with respect to the error rate of the comparative example or the MNIST model structure. Although the error rate is reduced by 0.01% by the integration processing after the division processing, the identification performance is almost maintained.
 [GTSRB]
 GTSRBデータセットは、ドイツの標準的な道路標識からなる、43の様々なクラスの39,209枚の学習用画像と12,630枚のテスト用画像とからなる。なお、GTSRBデータセットに含まれる画像のサイズは15×15ピクセルから250×250ピクセルと不均一であり、このまま用いると、学習の際の1ブロック当たりに含まれる画素数が変動し、認識に影響する。そこで、本実施例では、GTSRBデータセットの全ての画像を48×48にサイズ変更し、ヒストグラム平滑化やコントラスト正規化などの前処理技術を適用したものを使用した。以下、前処理技術を適用したGTSRBデータセットをGTSRBデータセットと記載する。
[GTSRB]
The GTSRB data set consists of 43 different classes of 39,209 learning images and 12,630 test images of standard German road signs. Note that the size of the image included in the GTSRB data set is not uniform from 15 × 15 pixels to 250 × 250 pixels, and if used as it is, the number of pixels included in one block at the time of learning fluctuates and affects recognition. To do. Therefore, in this embodiment, all the images of the GTSRB data set are resized to 48 × 48, and a preprocessing technique such as histogram smoothing or contrast normalization is applied. Hereinafter, the GTSRB data set to which the preprocessing technique is applied is referred to as a GTSRB data set.
 GTSRBデータセットを用いるモデル構造(GTSRB1モデル構造)は、3層の畳み込み層と2層の全結合層とからなる畳み込みニューラルネットワークである。図13には、GTSRBデータセットの学習用画像で学習させたGTSRB1モデル構造に、GTSRBデータセットのテスト用画像を識別させたときの識別性能の値(基準値)としてエラー率2.44%が示されている。 The model structure (GTSRB1 model structure) using the GTSRB data set is a convolutional neural network composed of three convolution layers and two all connection layers. FIG. 13 shows an error rate of 2.44% as an identification performance value (reference value) when the test image of the GTSRB data set is identified in the GTSRB1 model structure learned from the learning image of the GTSRB data set. It is shown.
 図16は、GTSRB1モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。ここで、図16の4Nの「N」はガウシアンノイズによりフィルタを分割したことを示し、5Rの「R」は回転変換によりフィルタを分割したことを示す。MERGE[No.]、SPLIT[No.]の表記方法は上述と同様である。GTSRB1モデル構造に対して本開示の分割処理または統合処理を行った全ての実験において、かなり良い性能を達成したか、または、モデルサイズをかなり小さくしたのと同等の性能を達成したことが分かる。 FIG. 16 is a diagram illustrating an error rate when the division processing or integration processing of the present disclosure is performed on the GTSRB1 model structure. Here, “N” of 4N in FIG. 16 indicates that the filter is divided by Gaussian noise, and “R” of 5R indicates that the filter is divided by rotational transformation. MERGE [No. ], SPLIT [No. ] Is represented in the same manner as described above. It can be seen that in all experiments where the split or integration process of the present disclosure was performed on the GTSRB1 model structure, a fairly good performance was achieved, or a performance equivalent to a considerably smaller model size was achieved.
 図17は、GTSRB1モデル構造と、本開示の分割処理または統合処理したGTSRB1モデル構造とを最適化したときの誤差関数の出力値を示す図である。ここで、GTSRB1_originalとGTSRB1_mergeは同一パラメータ数の場合を比較した。図17に示すように、GTSRB1モデル構造をGTSRBデータセットの学習用画像で学習(最適化)させたときの誤差関数の出力値と比較すると、本開示の分割処理または統合処理したGTSRB1モデル構造をGTSRBデータセットの学習用画像で学習させたときの誤差関数の出力値の方が低くなっているのがわかる。つまり、本開示の分割処理または統合処理することで、画像認識に有効な畳み込みニューラルネットワークの構造を簡便に決定することができるのがわかる。 FIG. 17 is a diagram illustrating an output value of an error function when the GTSRB1 model structure and the GTSRB1 model structure subjected to the division process or the integration process of the present disclosure are optimized. Here, GTSRB1_original and GTSRB1_merge were compared in the case of the same number of parameters. As shown in FIG. 17, when the GTSRB1 model structure is compared with the output value of the error function when the GTSRB1 model structure is learned (optimized) with the learning image of the GTSRB data set, the divided or integrated GTSRB1 model structure of the present disclosure is obtained. It can be seen that the output value of the error function when learning is performed with the learning image of the GTSRB data set is lower. That is, it can be seen that the structure of the convolutional neural network effective for image recognition can be easily determined by performing the dividing process or the integrating process of the present disclosure.
 図18は、GTSRBデータセットを用いるモデル構造(GTSRB―3DNNモデル構造)の一例を示す図である。 FIG. 18 is a diagram illustrating an example of a model structure (GTSRB-3DNN model structure) using the GTSRB data set.
 GTSRB―3DNNモデル構造は、3層の畳み込み層と2層の全結合層とからなる畳み込みニューラルネットワークであり、48×48ピクセル、38×48ピクセルおよび28x48ピクセルの異なる画像サイズを入力して使用する。そのため、GTSRB―3DNNモデル構造は、単純なモデル構造であるGTSRB―3DNNモデル構造と比較して集合的なモデル構造となる。図13には、GTSRBデータセットの学習用画像で学習させたGTSRB―3DNNモデル構造に、GTSRBデータセットのテスト用画像を識別させたときの識別性能の値(基準値)としてエラー率1.24%が示されている。 The GTSRB-3DNN model structure is a convolutional neural network consisting of 3 convolutional layers and 2 fully connected layers, using different image sizes of 48x48 pixels, 38x48 pixels and 28x48 pixels as input. . Therefore, the GTSRB-3DNN model structure is a collective model structure as compared with the GTSRB-3DNN model structure, which is a simple model structure. FIG. 13 shows an error rate of 1.24 as a discrimination performance value (reference value) when a test image of the GTSRB data set is discriminated from the GTSRB-3DNN model structure learned from the learning image of the GTSRB data set. %It is shown.
 図19は、GTSRB―3DNNモデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。本開示の分割処理または統合処理を、GTSRB―3DNNモデル構造に対して行った全ての実験において、かなり良い性能を達成したか、または、モデルサイズをかなり小さくしたのと同等の性能を達成したことが分かる。 FIG. 19 is a diagram illustrating an error rate when the division process or the integration process of the present disclosure is performed on the GTSRB-3DNN model structure. In all experiments where the partitioning or integration processing of the present disclosure was performed on the GTSRB-3DNN model structure, a fairly good performance was achieved, or a performance equivalent to a considerably small model size was achieved. I understand.
 [CIFAR-10]
 CIFAR-10データセットは、10カテゴリの50,000枚の学習用画像と10,000枚のテスト用画像とからなる。
[CIFAR-10]
The CIFAR-10 data set consists of 50,000 learning images and 10,000 test images in 10 categories.
 CIFAR-10データセットを用いるモデル構造(CIFAR-10モデル構造)は、非特許文献1に開示される3層の畳み込み層からなる畳み込みニューラルネットワークを利用した。図13には、CIFAR-10データセットの学習用画像で学習させたCIFAR-10モデル構造に、CIFAR-10データセットのテスト用画像を識別させたときの識別性能の値(基準値)としてエラー率10.4%が示されている。 The model structure using the CIFAR-10 data set (CIFAR-10 model structure) utilized a convolutional neural network composed of three convolutional layers disclosed in Non-Patent Document 1. FIG. 13 shows an error as a discrimination performance value (reference value) when a CIFAR-10 model structure trained with a CIFAR-10 dataset learning image is used to identify a test image of the CIFAR-10 dataset. A rate of 10.4% is shown.
 図20は、CIFAR-10モデル構造に対して本開示の分割処理または統合処理を行った場合のエラー率を示す図である。 FIG. 20 is a diagram illustrating an error rate when the division processing or the integration processing according to the present disclosure is performed on the CIFAR-10 model structure.
 図20に示されるように、本開示の分割処理または統合処理を、CIFAR-10モデル構造の畳み込み層を構成するフィルタ(ORIGINAL)に対して行った全ての実験において、性能を改善したか、または、同等の性能を達成したことがわかる。つまり、非特許文献1に開示されるような複雑、かつ高度に調整された畳み込みニューラルネットワークの構造に本開示の分割処理または統合処理を適用しても有効であることがわかる。 As shown in FIG. 20, in all experiments in which the division processing or the integration processing of the present disclosure was performed on the filter (ORIGINAL) constituting the convolutional layer of the CIFAR-10 model structure, It can be seen that equivalent performance was achieved. In other words, it can be seen that it is effective to apply the dividing process or the integrating process of the present disclosure to the structure of a complicated and highly adjusted convolutional neural network as disclosed in Non-Patent Document 1.
 (実施例3)
 本開示の統合処理の有効性について、識別計算時間の観点からも検証したので、その実験結果を実施例3として説明する。
(Example 3)
Since the effectiveness of the integration processing of the present disclosure has been verified from the viewpoint of identification calculation time, the experimental result will be described as a third embodiment.
 図21は、本開示の統合処理を行った場合の識別計算時間の比較を示す図である。 FIG. 21 is a diagram showing a comparison of identification calculation times when the integration processing of the present disclosure is performed.
 図21に示す1行目には、GTSRBデータセットの学習用画像で学習後のGTSRB1モデル構造(ORIGINAL)を用いて、10個の48×48ピクセルの画像を識別させたときの計算時間14.8MSが示されている。一方、図21に示す2行目または3行目には、GTSRB1モデル構造に対して1回または2回統合処理を行いGTSRBデータセットの学習用画像で学習させたもの(MERGE[1]またはMERGE[2])を用いて、10個の48×48ピクセルの画像を識別させたときの計算時間14.1MSまたは12.6MSが示されている。 The first row shown in FIG. 21 shows the calculation time when 10 48 × 48 pixel images are identified using the GTSRB1 model structure (ORIGINAL) after learning with the learning image of the GTSRB data set. 8MS is shown. On the other hand, the second or third line shown in FIG. 21 is obtained by performing integration processing once or twice on the GTSRB1 model structure and learning with the learning image of the GTSRB data set (MERGE [1] or MERGE Using [2]), the calculation time of 14.1 MS or 12.6 MS when ten 48 × 48 pixel images are identified is shown.
 また、図21に示す4行目には、GTSRBデータセットの学習用画像で学習後のGTSRB―3DNNモデル構造(ORIGINAL)を用いて、10個の48×48ピクセルの画像を識別させたときの計算時間27.9MSが示されている。一方、図21に示す5行目には、本開示の統合処理を、GTSRB―3DNNモデル構造に対して行い、GTSRBデータセットの学習用画像で学習させたもの(MERGE[4])を用いて、10個の48×48ピクセルの画像を識別させたときの速度19.4MSが示されている。 In the fourth row shown in FIG. 21, ten 48 × 48 pixel images are identified using the GTSRB-3DNN model structure (ORIGINAL) after learning with the learning image of the GTSRB data set. A calculation time of 27.9 MS is shown. On the other hand, in the fifth line shown in FIG. 21, the integration processing of the present disclosure is performed on the GTSRB-3DNN model structure and is learned using the learning image of the GTSRB data set (MERGE [4]). A speed of 19.4 MS when 10 48 × 48 pixel images are identified is shown.
 これにより、本開示の統合処理を行った全ての実験において、識別計算時間を改善したことが分かる。 This shows that the identification calculation time has been improved in all experiments in which the integration processing of the present disclosure was performed.
 [効果等]
 以上のように、本実施の形態における決定装置10およびその決定方法によれば、畳み込みニューラルネットワークの構造をより簡便(または自動的)に決定することができる。より具体的には、本実施の形態における決定装置10およびその決定方法によれば、Deep Learningで学習した畳み込みニューラルネットワークの少なくとも一の畳み込み層を構成するフィルタを初期値として、分割処理と統合処理とを繰り返すことにより、画像認識に有効な畳み込みニューラルネットワークの構造を簡便にまたは自動で決定することができる。
[Effects]
As described above, according to the determination device 10 and the determination method thereof in the present embodiment, the structure of the convolutional neural network can be determined more simply (or automatically). More specifically, according to the determination device 10 and the determination method thereof in the present embodiment, the division processing and the integration processing are performed using, as an initial value, a filter constituting at least one convolutional layer of a convolutional neural network learned by deep learning. By repeating the above, the structure of the convolution neural network effective for image recognition can be determined easily or automatically.
 ここで、分割処理は、有効なフィルタを変換して、画像認識に有効そうなフィルタを増やす処理であり、統合処理は、冗長なフィルタをクラスタリングで統合して有効なフィルタのみ残す処理である。分割処理で利用する変換は、画像処理分野で既知の画像変換(変換セット)から選択すればよい。一貫した改善が期待できることから、ランダムに決定される角度での回転変換とランダムに決定される標準偏差のガウシアンノイズの付与とを選択して変換に利用してもよい。統合処理で利用するクラスタリング方法も、k-means法またはAffinity propagation法など、既知のクラスタリング方法を利用すればよい。 Here, the division process is a process of converting effective filters to increase the number of filters that are likely to be effective for image recognition, and the integration process is a process of integrating redundant filters by clustering and leaving only effective filters. The conversion used in the division process may be selected from image conversions (conversion sets) known in the image processing field. Since consistent improvement can be expected, rotation conversion at a randomly determined angle and provision of Gaussian noise with a standard deviation determined at random may be selected and used for conversion. As a clustering method used in the integration process, a known clustering method such as a k-means method or an affinity-propagation method may be used.
 それにより、専門家以外の者でも、本実施の形態における決定装置10およびその決定方法を利用すれば、画像認識に有効な畳み込みニューラルネットワークの構造を得ることができそれを利用することができる。 Thereby, even a person other than an expert can use the determination device 10 and its determination method in the present embodiment to obtain a convolution neural network structure effective for image recognition and use it.
 なお、本実施の形態における決定装置10等は、分割処理と決定処理とを行うとして説明したが、少なくとも一方を行うとしてもよい。また、分割処理と決定処理とを行う順番や回数も、上述した例に限定されず、決定装置10の使用者が自由に決めてもよい。 In addition, although the determination apparatus 10 etc. in this Embodiment demonstrated as performing a division | segmentation process and a determination process, you may perform at least one. Further, the order and the number of times of performing the division process and the determination process are not limited to the above-described example, and the user of the determination apparatus 10 may freely determine.
 また、本実施の形態における決定装置10等は、初期値としての畳み込みニューラルネットワークを構成する畳み込み層が複数ある場合には、少なくとも一の畳み込み層を構成する複数のフィルタに対して、分割処理および決定処理の少なくも一方を行うとしてもよい。また、当該一の畳み込み層を構成する複数のフィルタに対して分割処理および決定処理の少なくとも一方を行った後に、当該一の畳み込み層と異なる畳み込み層を構成する複数のフィルタに対して、分割処理および決定処理の少なくも一方を行ってもよい。つまり、本実施の形態における決定装置10等は、初期値としての畳み込みニューラルネットワークのフィルタの一部または全部に対して分割処理および決定処理の少なくも一方を行うとしてもよい。 Further, when there are a plurality of convolution layers constituting the convolutional neural network as an initial value, the determination device 10 or the like in the present embodiment performs a division process on a plurality of filters constituting at least one convolution layer. At least one of the determination processes may be performed. In addition, after performing at least one of the division process and the determination process on the plurality of filters constituting the one convolution layer, the division process is performed on the plurality of filters constituting the convolution layer different from the one convolution layer. And at least one of the determination processes may be performed. That is, the determination device 10 or the like in the present embodiment may perform at least one of the division process and the determination process on a part or all of the filter of the convolutional neural network as the initial value.
 以上、実施の形態において本開示の決定方法について説明したが、各処理が実施される主体や装置に関しては特に限定しない。ローカルに配置された特定の装置内に組み込まれたプロセッサーなど(以下に説明)によって処理されてもよい。またローカルの装置と異なる場所に配置されているクラウドサーバなどによって処理されてもよい。 As described above, the determination method according to the present disclosure has been described in the embodiment, but the subject or the device that performs each process is not particularly limited. It may be processed by a processor or the like (described below) embedded in a specific device located locally. Further, it may be processed by a cloud server or the like arranged at a location different from the local device.
 なお、本開示は、さらに、以下のような場合も含まれる。 Note that the present disclosure further includes the following cases.
 (1)上記の装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。 (1) The above apparatus is specifically a computer system including a microprocessor, ROM, RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like. A computer program is stored in the RAM or hard disk unit. Each device achieves its functions by the microprocessor operating according to the computer program. Here, the computer program is configured by combining a plurality of instruction codes indicating instructions for the computer in order to achieve a predetermined function.
 (2)上記の装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。 (2) A part or all of the constituent elements constituting the above-described apparatus may be configured by one system LSI (Large Scale Integration). The system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically, a computer system including a microprocessor, ROM, RAM, and the like. . A computer program is stored in the RAM. The system LSI achieves its functions by the microprocessor operating according to the computer program.
 (3)上記の装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。 (3) A part or all of the constituent elements constituting the above-described device may be constituted by an IC card or a single module that can be attached to and detached from each device. The IC card or the module is a computer system including a microprocessor, a ROM, a RAM, and the like. The IC card or the module may include the super multifunctional LSI described above. The IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may have tamper resistance.
 (4)本開示は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。 (4) The present disclosure may be the method described above. Further, the present invention may be a computer program that realizes these methods by a computer, or may be a digital signal composed of the computer program.
 (5)また、本開示は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。 (5) Further, the present disclosure provides a computer-readable recording medium such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a BD ( It may be recorded on a Blu-ray (registered trademark) Disc), a semiconductor memory, or the like. The digital signal may be recorded on these recording media.
 また、本開示は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。 In the present disclosure, the computer program or the digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, a data broadcast, or the like.
 また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。 Further, the present disclosure may be a computer system including a microprocessor and a memory, and the memory may store the computer program, and the microprocessor may operate according to the computer program.
 また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。 In addition, the program or the digital signal is recorded on the recording medium and transferred, or the program or the digital signal is transferred via the network or the like and executed by another independent computer system. You may do that.
 (6)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。 (6) The above embodiment and the above modifications may be combined.
 本開示は、認識に有効な畳み込みニューラルネットワークの構造を決定するための決定装置および決定方法に利用でき、特に、画像認識に有効でパソコンシステムよりも計算能力がない埋め込みシステムでも実行可能な畳み込みニューラルネットワークの構造を決定するための決定装置および決定方法に利用できる。 The present disclosure can be used for a determination apparatus and a determination method for determining a structure of a convolutional neural network effective for recognition, and in particular, a convolutional neural that can be executed even in an embedded system that is effective for image recognition and has less computational power than a personal computer system. The present invention can be used for a determination apparatus and a determination method for determining a network structure.
 10 決定装置
 11 取得部
 12 分割部
 13 統合部
 15 出力部
 121 ランダム変換部
 122 フィルタ追加部
 123 識別性能評価部
 131 クラスタリング部
 132 フィルタ選択部
DESCRIPTION OF SYMBOLS 10 Determination apparatus 11 Acquisition part 12 Dividing part 13 Integration part 15 Output part 121 Random conversion part 122 Filter addition part 123 Identification performance evaluation part 131 Clustering part 132 Filter selection part

Claims (11)

  1.  畳み込みニューラルネットワークの構造を決定するための決定方法であって、
     学習用画像群を用いて重みが学習されたN個(Nは1以上の自然数)のフィルタを初期値として取得する取得ステップと、
     前記N個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記N個のフィルタを前記N個より大きいM個(Mは2以上の自然数)のフィルタに増加させる分割ステップとを含む、
     決定方法。
    A determination method for determining the structure of a convolutional neural network,
    An acquisition step of acquiring, as an initial value, N (N is a natural number of 1 or more) filters whose weights have been learned using the learning image group;
    By adding a filter subjected to transformation used in the image processing field to at least one of the N filters, the N filters can be changed to M larger than the N filters (M is a natural number of 2 or more). Including a split step to increase the filter,
    Decision method.
  2.  前記分割ステップでは、
     前記学習用画像群を用いて、前記M個のフィルタに重みを学習させることにより、前記M個のフィルタの識別性能を評価する分割評価ステップを含み、
     前記分割評価ステップにおいて評価された識別性能が、前記N個のフィルタの識別性能以下である場合には、前記分割ステップを再度行う、
     請求項1に記載の決定方法。
    In the dividing step,
    A division evaluation step of evaluating the identification performance of the M filters by using the learning image group to learn the weights of the M filters;
    If the discrimination performance evaluated in the division evaluation step is less than or equal to the discrimination performance of the N filters, the division step is performed again.
    The determination method according to claim 1.
  3.  さらに、前記M個のフィルタをクラスタリングし、クラスタ中心のフィルタを選択することで、前記M個のフィルタを、前記M個より小さいL個(Lは1以上の自然数)のフィルタに統合する統合ステップを含む、
     請求項1または2に記載の決定方法。
    Further, an integration step of integrating the M filters into L (L is a natural number of 1 or more) smaller than the M filters by clustering the M filters and selecting a cluster-centered filter. including,
    The determination method according to claim 1 or 2.
  4.  前記統合ステップでは、
     前記M個のフィルタをk-means法を用いて予め定められたL個のクラスタにクラスタリングする、
     請求項3に記載の決定方法。
    In the integration step,
    Clustering the M filters into L clusters predetermined using a k-means method;
    The determination method according to claim 3.
  5.  前記統合ステップでは、
     前記M個のフィルタをAffinity propagation法を用いてクラスタリングする、
     請求項3に記載の決定方法。
    In the integration step,
    Clustering the M filters using an affinity propagation method;
    The determination method according to claim 3.
  6.  前記変換は、ランダムに決定される角度での回転変換を含み、
     前記分割ステップでは、
     前記N個のフィルタの少なくとも一に対して前記回転変換を施したフィルタを追加する、
     請求項1~5のいずれか1項に記載の決定方法。
    The transformation includes a rotational transformation at a randomly determined angle;
    In the dividing step,
    Adding a filter that has undergone the rotational transformation to at least one of the N filters;
    The determination method according to any one of claims 1 to 5.
  7.  前記変換は、ランダムに決定される標準偏差のガウシアンノイズの付与を含み、
     前記分割ステップでは、
     前記N個のフィルタの少なくとも一に対して前記ガウシアンノイズの付与を施したフィルタを追加する、
     請求項1~6のいずれか1項に記載の決定方法。
    The transformation includes the application of Gaussian noise with a standard deviation determined at random;
    In the dividing step,
    Adding a filter to which the Gaussian noise is applied to at least one of the N filters;
    The determination method according to any one of claims 1 to 6.
  8.  前記変換は、ランダムに決定されるコントラスト比となるように変換するコントラスト変換を含み、
     前記分割ステップでは、
     前記N個のフィルタの少なくとも一に対して前記コントラスト変換を施したフィルタを追加する、
     請求項1~7のいずれか1項に記載の決定方法。
    The conversion includes a contrast conversion for converting to a randomly determined contrast ratio,
    In the dividing step,
    Adding a filter having undergone the contrast conversion to at least one of the N filters;
    The determination method according to any one of claims 1 to 7.
  9.  前記変換は、ランダムに決定されるスケールとなるように変換するスケール変換を含み、
     前記分割ステップでは、
     前記N個のフィルタの少なくとも一に対して前記スケール変換を施したフィルタを追加する、
     請求項1~8のいずれか1項に記載の決定方法。
    The transformation includes a scale transformation that transforms to a randomly determined scale;
    In the dividing step,
    Adding the scaled filter to at least one of the N filters;
    The determination method according to any one of claims 1 to 8.
  10.  畳み込みニューラルネットワークの構造を決定するための決定方法であって、
     学習用画像群を用いて重みが学習されたM個(Mは2以上の自然数)のフィルタを初期値として取得する取得ステップと、
    前記M個のフィルタをクラスタリングし、クラスタ中心のフィルタを選択することで、前記M個のフィルタを、前記M個より小さいL個(Lは1以上の自然数)のフィルタに統合する統合ステップを含む、
     決定方法。
    A determination method for determining the structure of a convolutional neural network,
    An acquisition step of acquiring, as an initial value, M (M is a natural number of 2 or more) filters whose weights have been learned using the learning image group;
    An integration step of clustering the M filters and selecting a cluster-centered filter to integrate the M filters into L filters smaller than the M (L is a natural number of 1 or more). ,
    Decision method.
  11.  畳み込みニューラルネットワークの構造の決定をコンピュータに実行させるためのプログラムであって、
     学習用画像群を用いて重みが学習されたN個(Nは1以上の自然数)のフィルタを初期値として取得する取得ステップと、
     前記N個のフィルタの少なくとも一に対して、画像処理分野で用いられる変換を施したフィルタを追加することで前記N個のフィルタを前記N個より大きいM個(Mは2以上の自然数)のフィルタに増加させる分割ステップとを含む、
     プログラム。
    A program for causing a computer to determine the structure of a convolutional neural network,
    An acquisition step of acquiring, as an initial value, N (N is a natural number of 1 or more) filters whose weights have been learned using the learning image group;
    By adding a filter subjected to transformation used in the image processing field to at least one of the N filters, the N filters can be changed to M larger than the N filters (M is a natural number of 2 or more). Including a split step to increase the filter,
    program.
PCT/JP2016/000462 2015-02-06 2016-01-29 Determination method and program WO2016125476A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP16746308.2A EP3255606B1 (en) 2015-02-06 2016-01-29 Determination method and program
CN201680002592.8A CN107077734B (en) 2015-02-06 2016-01-29 Determining method and recording medium
US15/485,250 US10558885B2 (en) 2015-02-06 2017-04-12 Determination method and recording medium

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562113174P 2015-02-06 2015-02-06
US62/113,174 2015-02-06
JP2016006580A JP2016146174A (en) 2015-02-06 2016-01-15 Determination method and program
JP2016-006580 2016-01-15

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/485,250 Continuation US10558885B2 (en) 2015-02-06 2017-04-12 Determination method and recording medium

Publications (1)

Publication Number Publication Date
WO2016125476A1 true WO2016125476A1 (en) 2016-08-11

Family

ID=56563830

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/000462 WO2016125476A1 (en) 2015-02-06 2016-01-29 Determination method and program

Country Status (1)

Country Link
WO (1) WO2016125476A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108073986A (en) * 2016-11-16 2018-05-25 北京搜狗科技发展有限公司 A kind of neural network model training method, device and electronic equipment
US11556771B2 (en) 2017-04-10 2023-01-17 Semiconductor Energy Laboratory Co., Ltd. Semiconductor neural network device including a synapse circuit comprising memory cells and an activation function circuit

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132554A (en) * 1998-10-21 2000-05-12 Sharp Corp Image retrieval device and method
JP2005044330A (en) * 2003-07-24 2005-02-17 Univ Of California San Diego Weak hypothesis generation device and method, learning device and method, detection device and method, expression learning device and method, expression recognition device and method, and robot device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132554A (en) * 1998-10-21 2000-05-12 Sharp Corp Image retrieval device and method
JP2005044330A (en) * 2003-07-24 2005-02-17 Univ Of California San Diego Weak hypothesis generation device and method, learning device and method, detection device and method, expression learning device and method, expression recognition device and method, and robot device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108073986A (en) * 2016-11-16 2018-05-25 北京搜狗科技发展有限公司 A kind of neural network model training method, device and electronic equipment
CN108073986B (en) * 2016-11-16 2020-05-12 北京搜狗科技发展有限公司 Neural network model training method and device and electronic equipment
US11556771B2 (en) 2017-04-10 2023-01-17 Semiconductor Energy Laboratory Co., Ltd. Semiconductor neural network device including a synapse circuit comprising memory cells and an activation function circuit

Similar Documents

Publication Publication Date Title
US10558885B2 (en) Determination method and recording medium
US9424493B2 (en) Generic object detection in images
CN113785305B (en) Method, device and equipment for detecting inclined characters
KR102486699B1 (en) Method and apparatus for recognizing and verifying image, and method and apparatus for learning image recognizing and verifying
CN105960647B (en) Compact face representation
CN115937655B (en) Multi-order feature interaction target detection model, construction method, device and application thereof
US20170124409A1 (en) Cascaded neural network with scale dependent pooling for object detection
US9418440B2 (en) Image segmenting apparatus and method
KR101581112B1 (en) Method for generating hierarchical structured pattern-based descriptor and method for recognizing object using the descriptor and device therefor
JP5591178B2 (en) Method for classifying objects in test images
US9239948B2 (en) Feature descriptor for robust facial expression recognition
CN105095880B (en) A kind of multi-modal Feature fusion of finger based on LGBP coding
JP2011013732A (en) Information processing apparatus, information processing method, and program
JPWO2019026104A1 (en) Information processing apparatus, information processing program, and information processing method
US11436491B2 (en) System and method for improving convolutional neural network-based machine learning models
CN108021908B (en) Face age group identification method and device, computer device and readable storage medium
CN117157678A (en) Method and system for graph-based panorama segmentation
KR20150088157A (en) Method of generating feature vector, generating histogram, and learning classifier for recognition of behavior
WO2020198173A1 (en) Subject-object interaction recognition model
WO2016125476A1 (en) Determination method and program
US8755594B2 (en) Information processing device and method, and program
KR101066343B1 (en) Method and apparatus of recognizing patterns using maximization of mutual information based code selection for local binary patterns, and recoding medium thereof
CN114467098A (en) Learned threshold pruning for deep neural networks
JP2006127446A (en) Image processing device, image processing method, program, and recording medium
Virupakshappa et al. Traffic sign recognition based on prevailing bag of visual words representation on feature descriptors

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16746308

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2016746308

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE