MULTIDIMENSIONAL DATA GENERATION DEVICE, METHOD, AND COMPUTER-READABLE RECORDING MEDIUM
20230185876 · 2023-06-15
Assignee
Inventors
Cpc classification
G06F7/78
PHYSICS
G06F17/16
PHYSICS
International classification
G06F17/16
PHYSICS
Abstract
The transforming means 72 transforms first multidimensional data in which the number of elements of dimension of channel is C and the number of elements of each dimension other than the dimension of channel is 1 into second multidimension of a predetermined form. The channel dimension element number increase means 73 generates third multidimensional data in which the number of elements of the dimension of channel is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1. The transposition means 74 performs transposition on the third multidimensional data so that the number of elements of the dimension of channel becomes C. The generation means 75 generates multidimensional data in which the number of elements of the dimension of channel is C and the number of elements of each dimension other than the dimension of channel is predetermined number of elements.
Claims
1. A multidimensional data generation device comprising: a transformation unit, implemented by a processor, and that transforms first multidimensional data in which the number of elements of dimension of channel is C and the number of elements of each dimension other than the dimension of channel is 1 into second multidimensional data in which the number of elements of one dimension out of dimensions other than the dimension of channel is C and the number of elements of each dimension other than the one dimension is 1; a channel dimension element number increase unit, implemented by the processor, and that generates third multidimensional data in which the number of elements of the dimension of channel is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1 with a common value of N weights on the second multidimensional data, when product of predetermined number of elements for each dimension other than the dimension of channel is N; a transposition unit, implemented by the processor, and that performs for predetermined transposition on the third multidimensional data so that the number of elements of the dimension of channel becomes C; and a generation unit, implemented by the processor, and that generates multidimensional data in which the number of elements of the dimension of channel is C and the number of elements of each dimension other than the dimension of channel is predetermined number of elements, based on the multidimensional data after the predetermined transposition.
2. The multidimensional data generation device according to claim 1, wherein the channel dimension element number increase unit generates the third multidimensional data, by performing the convolution layer process with a filter size of 1×1 with a common value 1 of N weights on the second multidimensional data.
3. The multidimensional data generation device according to claim 1, wherein the channel dimension element number increase unit generates the third multidimensional data, by performing the convolution layer process with a filter size of 1×1 with a common predetermined value of N weights on the second multidimensional data, and the generation unit divides a value of each element in the multidimensional data by the predetermined value, after generating the multidimensional data.
4. The multidimensional data generation device according to claim 1, wherein the first multidimensional data, the second multidimensional data, the third multidimensional data, the multidimensional data after the predetermined transposition, and the multidimensional data generated by the generation unit are 3 dimensional data.
5. A multidimensional data generation method comprising: transforming first multidimensional data in which the number of elements of dimension of channel is C and the number of elements of each dimension other than the dimension of channel is 1 into second multidimensional data in which the number of elements of one dimension out of dimensions other than the dimension of channel is C and the number of elements of each dimension other than the one dimension is 1; generating third multidimensional data in which the number of elements of the dimension of channel is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1 with a common value of N weights on the second multidimensional data, when product of predetermined number of elements for each dimension other than the dimension of channel is N; performing predetermined transposition on the third multidimensional data so that the number of elements of the dimension of channel becomes C; and generating multidimensional data in which the number of elements of the dimension of channel is C and the number of elements of each dimension other than the dimension of channel is predetermined number of elements, based on the multidimensional data after the predetermined transposition.
6. A non-transitory computer-readable recording medium in which a multidimensional data generation program is recorded, wherein the multidimensional data generation program causes a computer to execute: a transformation process of transforming first multidimensional data in which the number of elements of dimension of channel is C and the number of elements of each dimension other than the dimension of channel is 1 into second multidimensional data in which the number of elements of one dimension out of dimensions other than the dimension of channel is C and the number of elements of each dimension other than the one dimension is 1; a channel dimension element number increase process of generating third multidimensional data in which the number of elements of the dimension of channel is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1 with a common value of N weights on the second multidimensional data, when product of predetermined number of elements for each dimension other than the dimension of channel is N; a transposition process of performing predetermined transposition on the third multidimensional data so that the number of elements of the dimension of channel becomes C; and a generation process of generating multidimensional data in which the number of elements of the dimension of channel is C and the number of elements of each dimension other than the dimension of channel is predetermined number of elements, based on the multidimensional data after the predetermined transposition.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
DESCRIPTION OF EMBODIMENTS
[0048] Example embodiment of the present invention is described below with reference to the drawings.
[0049]
[0050] The data input to the multidimensional data generation device 1 of the present example embodiment will now be described. The output data of the Sigmoid layer (see
[0051] In the first 3 dimensional data, the number of elements of the C dimension (the dimension of channel) is C and the number of elements of each dimension other than the C dimension is 1.
[0052] In the present example embodiment, the first 3 dimensional data is input to the multidimensional data generation device 1, and the multidimensional data generation device 1 generates 3 dimensional data in which the number of elements of the C dimension is C, the number of elements of the H dimension is H, and the number of elements of the W dimension is W. The number of elements of the C dimension “C” in the generated 3 dimensional data is the same as the number of elements of the C dimension (the dimension of channel) in the first 3 dimensional data. The number of elements of the H dimension “H” and the number of elements of the W dimension “W” in the generated 3 dimensional data are predetermined. In other words, the number of elements of each dimension in the generated 3 dimensional data is predetermined according to the 3 dimensional data U (see
[0053] The first multidimensional data input to the multidimensional data generation device 1 may be 2 dimensional data or multidimensional data of 4 or more dimensions, if the number of elements of the C dimension is C and the number of elements of each dimension other than the C dimension is 1. The multidimensional data generation device 1 may generate 2 dimensional data or multidimensional data of 4 or more dimensions as multidimensional data. However, the multidimensional data generation device 1 generates multidimensional data of n dimension when multidimensional data of n dimension is input.
[0054]
[0055] When the first 3 dimensional data is input, the transformation unit 2 transforms the first 3 dimensional data into 3 dimensional data in which the number of elements of one dimension out of dimensions other than the C dimension (the dimension of channel) is C, and the number of elements of each dimension other than that one dimension is 1. In the present example embodiment, the case where “one dimension out of dimensions other than the C dimension” above is the W dimension will be used as an example, but it may also be the H dimension.
[0056] When “one dimension out of dimensions other than the C dimension” above is the W dimension, the transformation unit 2 transforms the first 3 dimensional data into 3 dimensional data in which the number of elements of the W dimension is C, and the number of elements of each of the other dimensions (the H dimension and the C dimension) is 1.
[0057] It is assumed that k is an integer from 0 to C−1. The transformation unit 2 transforms the first 3 dimensional data by replacing the element corresponding to the 0th of the H dimension, the 0th of the W dimension, and the kth of the C dimension in the first 3 dimensional data as the element corresponding to the 0th of the H dimension, the kth of the W dimension, and the 0th of the C dimension.
[0058] The multidimensional data after transformation by the transformation unit 2 is referred to as the second multidimensional data (in the present example embodiment, the second 3 dimensional data).
[0059] The size of the first 3 dimensional data is (1, 1, C), while the size of the second 3 dimensional data is (1, C, 1) (see
[0060] In the multidimensional data generated by the multidimensional data generation device 1 (3 dimensional data in the present example embodiment), the product of the predetermined number of elements for each dimension other than the C dimension (the dimension of channel) is N. In the present example embodiment, as mentioned above, the number of elements “H” in the H dimension and the number of elements “W” in the W dimension in the generated 3 dimensional data are predetermined. Therefore, N=H×W.
[0061] The channel dimension element number increase unit 3 generates 3 dimensional data in which the number of elements of the C dimension in the second 3 dimensional data is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1 with a common value of N weights on the second 3 dimensional data. The multidimensional data generated by the channel dimension element number increase unit 3 is referred to as the third multidimensional data (in the present example embodiment, the third 3 dimensional data). The size of the third 3 dimensional data is (1, C, N).
[0062] The elements in the 3 dimensional data can be specified by their 3 dimension coordinates. Then, a value of the element specified by the H dimension coordinate h, the W dimension coordinate w, and the C dimension coordinate c in the second 3 dimensional data is expressed as (h, w, c).sub.before. Similarly, the value of the element specified by the H dimension coordinate h, the W dimension coordinate w, and the C dimension coordinate c in the third 3 dimensional data is expressed as (h, w, c).sub.after.
[0063] In the present example embodiment, there are N weights used in the convolution layer process with a filter size of 1×1, and the values of the N weights are all predetermined to be “ 1”. Therefore, the value of the N weights is 1 in common. The weights may be referred to as filter values.
[0064] It is assumed that i is an integer from 0 to N−1. The i-th weight is then written as t.sub.i. t.sub.0=t.sub.1=t.sub.2= . . . =t.sub.n−1=1. The weight t.sub.i is used to calculate the value of each element of the i-th channel in the third 3 dimensional data.
[0065] For example, the channel dimension element number increase unit 3 calculates the value of (0, 0, 0).sub.after by the formula (1) shown below.
(0, 0, 0).sub.after=(0, 0, 0).sub.before×t.sub.0 (1)
[0066] The channel dimension element number increase unit 3 also finds the values of the other elements of the 0th channel in the third 3 dimensional data by the same calculation, using the weights t.sub.0.
[0067] The channel dimension element number increase unit 3 calculates the value of (0, 0, i).sub.after by the formula (2) shown below.
(0, 0, i).sub.after=(0, 0, 0).sub.before×t.sub.i (2)
[0068] The channel dimension element number increase unit 3 also finds the values of the other elements of the i-th channel in the third 3 dimensional data by the same calculation, using the weights t.sub.i.
[0069] Since t.sub.0=t.sub.1=t.sub.2= . . . ==1, as mentioned above, all of (0, 0, 0).sub.after, (0, 0, 1).sub.after, . . . , (0, 0, N−1).sub.after are equal to (0, 0, 0).sub.before.
[0070] The channel dimension element number increase unit 3 uses the above calculation to calculate the value of each element of the 0th channel, the value of each element of the 1st channel, . . . , the value of each element of the N−1th channel in the third 3 dimensional data. Then, the channel dimension element number increase unit 3 performs the same process at each position in the plane consisting of the H dimension and the W dimension in the second 3 dimensional data. In other words, the channel dimension element number increase unit 3 calculates the values of all elements in the third 3 dimensional data. Then, the channel dimension element number increase unit 3 derives the third 3 dimensional data. As a result, the third 3 dimensional data with size (1, C, N) is obtained.
[0071] It is assumed that j is an integer from 0 to C−1. As in the previous case, all of (0, j, 0).sub.after, (0, j, 1).sub.after, . . . , (0, j, N−1).sub.after are equal to (0, j, 0).sub.before.
[0072] The transposition unit 4 performs a predetermined transposition on the third 3 dimensional data generated by the channel dimension element number increase unit 3 so that the number of elements of the C dimension (the dimension of channel) becomes C.
[0073] Here, the transposition will be explained. The transposition is the operation of shifting the position of elements in multidimensional data by changing the order of coordinates in multidimension coordinates when the elements in multidimensional data are expressed in multidimension coordinates. The following is a specific explanation using 3 dimensional data as an example.
[0074] It is assumed that when h denotes the coordinates of the H dimension, w denotes the coordinates of the W dimension, and c denotes the coordinates of the C dimension, the element in the 3 dimensional data specified by the coordinates (h, w, c) is denoted as p(h, w, c). In addition, coordinates that rearrange the order of coordinates within (h, w, c) are considered to be, for example, (h, c, w). In this case, the operation of moving p(h, w, c) to p(h, c, w) is an example of transposition.
[0075] As a transposition such that the number of elements of the C dimension becomes C, the transposition unit 4 may perform a transposition on the third 3 dimensional data, moving p(h, w, c) to p(h, c, w) for the third 3 dimensional data. Alternatively, the transposition unit 4 may perform a transposition moving p(h, w, c) to p(c, h, w) for the third 3 dimensional data.
[0076] Here, first, the case where the transposition unit 4 performs a transposition on the third 3 dimensional data, moving p(h, w, c) to p(h, c, w) is shown. In this case, the size of the 3 dimensional data after the transposition is (1, N, C). In this case, the 3 dimensional data after the transposition is represented schematically as shown in
[0077] Based on the 3 dimensional data after the transposition, the generation unit 5 generates 3 dimensional data in which the number of elements of the C dimension is C and the number of elements of each dimension other than the C dimension is the predetermined number of elements. In the present example embodiment, based on the 3 dimensional data after the transposition, the generation unit 5 generates 3 dimensional data in which the number of elements of the C dimension is C, the number of elements of the H dimension is H, and the number of elements of the W dimension is W.
[0078] The generation unit 5, for example, generates H pieces of 3 dimensional data in which the number of elements of the H dimension is 1, the number of elements of the W dimension is W, and the number of elements of the C dimension is C (3 dimensional data whose size is (1, W, C)), by dividing the 3 dimensional data (3 dimensional data after transposing) shown schematically in
[0079] The generation unit 5 can generate the desired 3 dimensional data with size (H, W, C) by defining the H pieces of 3 dimensional data as the 0th to H−1st data in the H dimension, respectively. For example, the generation unit 5 may define the first 3 dimensional data obtained by dividing the 3 dimensional data after the transposition as described above as the 0th data of the H dimension, and the next 3 dimensional data as the 1st data of the H dimension, so that the obtained 3 dimensional data is sequentially defined as 0th to H−1st, thereby to generates the desired 3 dimensional data with size (H, W, C).
[0080]
[0081] The operation of generation unit 5 described above is an example of the operation to generate the 3 dimensional data shown in
[0082] The above explanation describes the case where the transposition unit 4 transposes p(h, w, c) to p(h, c, w) for the third 3 dimensional data. Next, the case where the transposition unit 4 transposes p(h, w, c) to p(c, h, w) for the third 3 dimensional data is explained. In this case, the size of the 3 dimensional data after the transposition is (N, 1, C). In this case, the 3 dimensional data after the transposition is represented schematically as shown in
[0083] For example, the generation unit 5 generates W pieces of 3 dimensional data in which the number of elements of the H dimension is H, the number of elements of the W dimension is 1, and the number of elements of the C dimension is C (3 dimensional data whose size is (H, 1, C)), by dividing the 3 dimensional data (3 dimensional data after transposing) shown schematically in
[0084] The generation unit 5 can generate the desired 3 dimensional data with size (H, W, C) by defining the W pieces of 3 dimensional data as the 0th to W−1st data in the W dimension, respectively. For example, the generation unit 5 may define the first 3 dimensional data obtained by dividing the 3 dimensional data after the transposition as described above as the 0th data of the W dimension, and the next 3 dimensional data as the 1st data of the W dimension, so that the obtained 3 dimensional data is sequentially defined as 0th to W−1st, thereby to generates the desired 3 dimensional data with size (H, W, C). In this case, the 3 dimensional data expressed as shown in
[0085] In this case, too, the operation of generation unit 5 described above is an example of the operation to generate the 3 dimensional data shown in
[0086] As explained above, the transposition performed by transposition unit 4 on the third 3 dimensional data may be the transposition that moves p(h, w, c) to p(h, c, w) or the transposition that moves p(h, w, c) to p(c, h, w).
[0087] The generation unit 5 outputs the desired 3 dimensional data generated based on the 3 dimensional data after the transposition, whose size is (H, W, C) (see
[0088] The transformation unit 2, the channel dimension element number increase unit 3, the transposition unit 4, and the generation unit 5 are realized, for example, by a CPU (Central Processing Unit) of a computer operating according to a multidimensional data generation program. For example, the CPU may read the multidimensional data generation program from a program storage medium such as a program storage device of the computer, and operate as the transformation unit 2, the channel dimension element number increase unit 3, the transposition unit 4, and the generation unit 5 according to the multidimensional data generation program. The channel dimension element number increase unit 3 may be realized by a dedicated circuit specialized for convolution layer process.
[0089] The transformation unit 2, the channel dimension element number increase unit 3, the transposition unit 4, and the generation unit 5 may each be realized by separate hardware. Moreover, as described above, the channel dimension element number increase unit 3 may be realized by a dedicated circuit specialized for convolution layer process.
[0090] Next, the processing flow will be described.
[0091] When the first 3 dimensional data is input, the transformation unit 2 transforms the first 3 dimensional data into the second 3 dimensional data (step S1).
[0092] The first 3 dimensional data is the output data of the Sigmoid layer in the SE block. In the first 3 dimensional data, the number of elements of the C dimension is C, and the number of elements of each dimension other than the C dimension (H dimension, W dimension) is 1 (see
[0093] The transformation unit 2 may transform the first 3 dimensional data into the second 3 dimensional data, by replacing the element corresponding to the 0th of the H dimension, the 0th of the W dimension, and the kth of the C dimension in the first 3 dimensional data as the element corresponding to the 0th of the H dimension, the kth of the W dimension, and the 0th of the C dimension. Here, k is an integer from 0 to C−1.
[0094] Next to step S1, the channel dimension element number increase unit 3 generates 3 dimensional data (the third 3 dimensional data. see
[0095] Next, the transposition unit 4 performs transposition on the third 3 dimensional data so that the number of elements of the C dimension is C (step S3). The transposition performed by transposition unit 4 on the third 3 dimensional data may be the transposition that moves p(h, w, c) to p(h, c, w) or the transposition that moves p(h, w, c) to p(c, h, w).
[0096] Next to step S3, based on the 3 dimensional data after the transposition (see
[0097] The generation unit 5 outputs the generated 3 dimensional data to, for example, the element-wise product calculation device (The figure is omitted). The element-wise product calculation device may calculate the element-wise product of the 3 dimensional data U (see
[0098] According to the present example embodiment, when the first 3 dimensional data is input, the transformation unit 2 transforms the first 3 dimensional data into the second 3 dimensional data. Then, the channel dimension element number increase unit 3 generates 3 dimensional data (the third 3 dimensional data) in which the number of elements of the C dimension in the second 3 dimensional data is increased from 1 to N(=H×W), by performing a convolution layer process with a filter size of 1×1 on the second 3 dimensional data. The transposition unit 4 performs the transposition on the third 3 dimensional data, and the generation unit 5 generates 3 dimensional data whose size is (H, W, C), based on the 3 dimensional data after the transposition.
[0099] Thus, the multidimensional data generation device 1 in the present example embodiment generates the 3 dimensional data (see
[0100] In other words, according to the present example embodiment, when the 3 dimensional data in which the number of elements of the C dimension is C and the number of elements of each dimension other than the C dimension (H dimension and W dimension) is 1 is given, the 3 dimensional data in which the number of elements of the C dimension is C and the number of elements of each dimension other than the C dimension (H dimension and W dimension) is predetermined, can be generated at high speed.
[0101] Therefore, by using the multidimensional data generation device 1 in the present example embodiment, the processing speed of the SE block can be increased.
[0102] The 3 dimensional data generated by the multidimensional data generation device 1 of the present example embodiment may not be intended to be used for the calculation of the element-wise product with the 3 dimensional data U (see
[0103] Next, a variation of the example embodiment of the invention will be described.
[0104] The above example embodiment describes the case where the values of the N weights in the convolution layer process with a filter size of 1×1 performed by the channel dimension element number increase unit 3 are “1”. The values of the N weights in the convolution layer process with a filter size 1×1 performed by the channel dimension element number increase unit 3 may be common with a predetermined value other than “1”. Hereafter, this predetermined value is referred to as α.
[0105] That is, the channel dimension element number increase unit 3 generates 3 dimensional data (the third 3 dimensional data) in which the number of elements of the C dimension in the second 3 dimensional data is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1 with a common value α of N weights on the second 3 dimensional data. In this case, the value of each element in the third 3 dimensional data is α times the value of the corresponding element in the third 3 dimensional data in the aforementioned example embodiment.
[0106] Thus, in this case, for example, after generating the 3 dimensional data with size (H, W, C) based on the 3 dimensional data after the transposition, the generation unit 5 may divide the value of each element in the third 3 dimensional data by α. As a result, the same 3 dimensional data as in the aforementioned example embodiment (see
[0107] In the aforementioned example embodiment, the case where the multidimensional data generation device 1 generates 3 dimensional data was shown. The multidimensional data generation device 1 may generate multidimensional data other than 3 dimensional data.
[0108] For example, it is assumed that the multidimensional data generation device 1 generates 4 dimensional data. In this case, 4 dimensional data is input to the multidimensional data generation device 1 as the first multidimensional data. The dimensions in this case are the H dimension, the W dimension, the T dimension, and the C dimension. The H dimension, the W dimension, and the C dimension are the same as the H dimension, the W dimension, and the C dimension in the aforementioned example embodiment. In this case, 4 dimensional data in which the number of elements of the C dimension is C and the size is (1,1,1,C) is input to the multidimensional data generation device 1 as the first multidimensional data.
[0109] The number of elements of the H dimension “H”, the number of elements of the W dimension “W”, and the number of elements of the T dimension “T” in the 4 dimensional data to be generated are predetermined. In this case, N=H×W×T.
[0110] The transformation unit 2 may transform the first multidimensional data into the second multidimensional data in the same way as in the aforementioned example embodiment.
[0111] In this case, 4 dimensional data with size (1, C, 1, N) is generated by the channel dimension element number increase unit 3, for example. Then, the transposition unit 4 performs a transposition, for example, moving p(h, w, t, c) to p(h, c, t, w) to p(h, w, t, c). Note that t is a T dimension coordinate. In this example, as the transposition results, 4 dimensional data with size (1, N, 1, C) is obtained. Then, the generation unit 5 divides the multidimensional data after the transposition by W elements of the W dimension direction, arranges the resulting multidimensional data in the H dimension, divides the multidimensional data by H elements of the H dimension direction, and arranges the resulting multidimensional data in the T dimension. The generation unit 5 can generate 4 dimensional data with size (H, W, T, C) by such a process. However, the process by which the generation unit 5 generates 4 dimensional data with size (H, W, T, C) is not limited to the above example.
[0112] Thus, the multidimensional data generation device 1 can be applied to the generation of multidimensional data other than 3 dimensional data.
[0113]
[0114] The multidimensional data generation device 1 of the example embodiment of the present invention is realized by a computer 1000. The operation of the multidimensional data generation device 1 is stored in the auxiliary memory 1003 in the form of a multidimensional data generation program. The CPU 1001 reads the multidimensional data generation program from auxiliary memory 1003 and expands it to the main memory 1002, and executes the process described in the above example embodiment according to the multidimensional data generation program.
[0115] The auxiliary memory 1003 is an example of a non-transitory tangible medium. Other examples of non-transitory tangible media include magnetic disks connected via interface 1004, magneto-optical disks, CD -ROM (Compact Disk Read Only Memory), DVD-ROM (Digital Versatile Disk Read Only Memory), semiconductor memory, etc. When the program is delivered to the computer 1000 through a communication line, the computer 1000 may expand the program in the main memory 1002 and execute the process described in the above example embodiment according to the program.
[0116] Some or all of each of the components may be realized by general-purpose or dedicated circuitry, processor, or a combination of these. These may comprise a single chip or multiple chips connected via a bus. Some or all of each of the components may be realized by a combination of the above-mentioned circuitry, etc. and a program.
[0117] When some or all of each of components is realized by multiple information processing devices, circuits, etc., the multiple information processing devices, circuits, etc. may be centrally located or distributed. For example, the information processing devices and circuits may be realized as a client-and-server system, a cloud computing system, etc., each of which is connected via a communication network.
[0118] The following is an overview of the invention.
[0119] The transformation means 72 (e.g., the transformation unit 2) transforms first multidimensional data in which the number of elements of dimension of channel is C and the number of elements of each dimension other than the dimension of channel is 1 into second multidimensional data in which the number of elements of one dimension out of dimensions other than the dimension of channel is C and the number of elements of each dimension other than the one dimension is 1.
[0120] The channel dimension element number increase means 73 (e.g., the channel dimension element number increase unit 3) generates third multidimensional data in which the number of elements of the dimension of channel is increased from 1 to N, by performing a convolution layer process with a filter size of 1×1 with a common value of N weights on the second multidimensional data, when product of predetermined number of elements for each dimension other than the dimension of channel is N.
[0121] The transposition means 74 (e.g., the transposition unit 4) performs predetermined transposition on the third multidimensional data so that the number of elements of the dimension of channel becomes C.
[0122] The generation means 75 (e.g., the generation unit 5) generates multidimensional data in which the number of elements of the dimension of channel is C and the number of elements of each dimension other than the dimension of channel is predetermined number of elements, based on the multidimensional data after the predetermined transposition.
[0123] With such a configuration, it is possible to generate, when given multidimensional data in which the number of elements of the dimension of channel is C and the number of elements of each dimension other than the dimension of channel is 1, multidimensional data in which the number of elements of each dimension other than the dimension of channel is a predetermined number of elements rapidly.
[0124] The channel dimension element number increase means 73 may generate the third multidimensional data, by performing the convolution layer process with a filter size of 1×1 with a common value 1 of N weights on the second multidimensional data.
[0125] the channel dimension element number increase means 73 may generate the third multidimensional data, by performing the convolution layer process with a filter size of 1×1 with a common predetermined value of N weights on the second multidimensional data, and the generation means 75 may divides a value of each element in the multidimensional data by the predetermined value, after generating the multidimensional data.
[0126] The first multidimensional data, the second multidimensional data, the third multidimensional data, the multidimensional data after the predetermined transposition, and the multidimensional data generated by the generation means may be 3 dimensional data.
[0127] Although the present invention has been described above with reference to example embodiment, the present invention is not limited to the above example embodiment. Various changes may be made to the structure and details of the present invention, that may be understood by those skilled in the art within the scope of the present invention.
INDUSTRIAL APPLICABILITY
[0128] The present invention is suitably applied to a multidimensional data generation device that generates multidimensional data.
REFERENCE SIGNS LIST
[0129] 1 Multidimensional data generation device
[0130] 2 Transformation unit
[0131] 3 Channel dimension element number increase unit
[0132] 4 Transposition unit
[0133] 5 Generation unit