Calculation device and calculation method

The computing device generates non-single-chain contraction rules based on tensor characteristics, addressing the challenge of accurately connecting correlated small tensors to enhance high-rank tensor reproduction accuracy.

JP7876727B1Active Publication Date: 2026-06-19MITSUBISHI ELECTRIC CORP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
MITSUBISHI ELECTRIC CORP
Filing Date
2025-03-10
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

Existing computing devices struggle to generate accurate contraction rules for connecting multiple small tensors that are physically strongly correlated in two or more different coordinate axes, leading to deteriorated accuracy in reproducing high-rank tensors.

Method used

A computing device comprising a small tensor generation unit that generates small tensors with identification information, a small tensor update unit that updates tensor elements, and a high-rank tensor reproduction unit that reproduces high-rank tensors using non-single-chain contraction rules based on the characteristics of symmetry, correlation, or coupling between small tensors.

🎯Benefits of technology

Enables the generation of accurate reduction rules for connecting multiple small tensors with high correlation across different axes, improving the reproduction accuracy of high-rank tensors.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

The computing unit includes a small tensor generator (1) that generates small tensors, which are multiple tensors having fewer elements than the number of elements in a high-rank tensor, from a high-rank tensor, which is a tensor having elements representing quantities associated with each of multiple sub-regions contained in a high-dimensional region that is a region of two or more dimensions, and a contraction rule for reconstructing the high-rank tensor by connecting the multiple small tensors. The small tensor generator (1) generates a non-single-chain contraction rule as the contraction rule, based on the characteristics of the identification information that identifies each small tensor.
Need to check novelty before this filing date? Find Prior Art

Description

【Technical Field】 【0001】 The present disclosure relates to an arithmetic unit and an arithmetic method. 【Background Art】 【0002】 There is an arithmetic unit that generates a reduction rule for reproducing a high-rank tensor by connecting a plurality of tensors (hereinafter referred to as "small tensors") having a number of elements smaller than the number of elements held by the high-rank tensor, and connecting between the plurality of small tensors. A high-rank tensor is a tensor having elements representing quantities associated with each of a plurality of sub-regions included in a high-dimensional region that is a two-dimensional or higher-dimensional region. As such an arithmetic unit, for example, Non-Patent Document 1 discloses a technique for generating a rule for linearly connecting between a plurality of small tensors as a reduction rule for reproducing a high-rank tensor. 【Prior Art Documents】 【Non-Patent Documents】 【0003】 【Non-Patent Document 1】 Egor Kornev et.al, “Numerical solution of the incompressible Navier-Stokes equations for chemical mixers via quantum-inspired Tensor Train Finite Element Method”, arXiv:2305.10784 【Summary of the Invention】 【Problems to be Solved by the Invention】 【0004】 The computing device disclosed in Non-Patent Document 1 can generate contraction rules for linearly connecting multiple small tensors, but it cannot generate contraction rules for connecting multiple small tensors that are considered to be physically strongly correlated in two or more different coordinate axes. As a result, the computing device disclosed in Non-Patent Document 1 has the problem that when reproducing a high-rank tensor using multiple small tensors and contraction rules, the accuracy of the reproduction of the high-rank tensor may deteriorate. 【0005】 This disclosure was made to solve the above-mentioned problems, and aims to provide a computing device that can generate reduction rules for connecting multiple small tensors that are considered to be physically highly correlated in two or more different coordinate axes. [Means for solving the problem] 【0006】 The computing device according to this disclosure comprises: a small tensor generation unit that generates a plurality of small tensors having identification information which is all or part of the information representing a subdomain in a high-dimensional region, and a reduction rule from a high-rank tensor having elements representing quantities associated with a high-dimensional region which is a region of two or more dimensions; a small tensor update unit that updates the elements of each of the plurality of small tensors; and a high-rank tensor reproduction unit that reproduces a high-rank tensor using the plurality of small tensors with updated elements and the reduction rule, wherein the small tensor generation unit Based on identification information representing the properties of symmetry, correlation, degree of entanglement, or coupling between two or more of the aforementioned small tensors, This generates non-single-chain contraction rules. [Effects of the Invention] 【0007】 According to this disclosure, it is also possible to generate reduction rules for connecting multiple small tensors that are considered to be physically highly correlated in two or more different coordinate axes. [Brief explanation of the drawing] 【0008】 [Figure 1] This is a configuration diagram showing the arithmetic unit according to Embodiment 1. [Figure 2] This is a hardware configuration diagram showing the hardware of the computing device according to Embodiment 1. [Figure 3] This is a hardware diagram of a computer where the computing unit is implemented by software or firmware. [Figure 4] This is a flowchart showing the calculation method, which is the processing procedure of the arithmetic unit. [Figure 5] Figure 5A is an explanatory diagram showing an example in which a tensor representing a quantity associated with each of several subregions contained in a two-dimensional domain is represented by a combination of a minor tensor 31 and a contraction rule 32. Figure 5B is an explanatory diagram showing an example in which a tensor representing a quantity associated with each of several subregions contained in a three-dimensional domain is represented by a combination of a minor tensor 31 and a contraction rule 32. Figure 5C is an explanatory diagram showing a case in which, among several subregions contained in a two-dimensional domain, the minor tensor 31 relating to some of the subregions is connected only to the minor tensor 31 aligned in the x direction, and not to the minor tensor 31 aligned in the y direction. [Figure 6] Figure 6A is an explanatory diagram showing a one-directional intermediate tensor, and Figure 6B is an explanatory diagram showing a two-directional intermediate tensor. [Figure 7] Figure 7A is an explanatory diagram showing an example where the resonance amount generated in the resonators 41 corresponds to the elements of a small tensor when a flow channel 42 is provided between multiple resonators 41, and Figure 7B is an explanatory diagram showing an example where a reduction rule is generated that connects small tensors with strong interactions among multiple small tensors. [Figure 8] This is a configuration diagram showing the arithmetic unit according to Embodiment 3. [Figure 9] This is a hardware configuration diagram showing the hardware of the computing device according to Embodiment 3. [Figure 10] This flowchart shows the process of modifying the reduction rule by the small tensor generation unit 4. [Figure 11] Figure 11A is an explanatory diagram showing an example of a reduction rule generated by the small tensor generation unit 4, and Figures 11B and 11C are explanatory diagrams showing examples of reduction rules after modification by the small tensor generation unit 4. 【Best Mode for Carrying Out the Invention】 【0009】 Hereinafter, in order to explain the present disclosure in more detail, embodiments for carrying out the present disclosure will be described with reference to the accompanying drawings. 【0010】 Embodiment 1. FIG. 1 is a configuration diagram showing an arithmetic unit according to Embodiment 1. FIG. 2 is a hardware configuration diagram showing the hardware of the arithmetic unit according to Embodiment 1. The arithmetic unit shown in FIG. 1 includes a small tensor generation unit 1, a small tensor update unit 2, and a high-rank tensor reproduction unit 3. 【0011】 The small tensor generation unit 1 is realized, for example, by the small tensor generation circuit 11 shown in FIG. 2. The small tensor generation unit 1 includes a tensor generation processing unit 1a and a reduction rule generation unit 1b. The small tensor generation unit 1, for example, acquires a high-rank tensor from the outside. The high-rank tensor is a tensor having elements representing amounts associated with each of a plurality of sub-regions included in a high-dimensional region that is a region of two or more dimensions. The small tensor generation unit 1 generates a plurality of small tensors each having a number of elements less than the number of elements of the high-rank tensor. 【0012】 The second and higher dimensions related to the high-dimensional region include, for example, spatial dimension, time dimension, frequency dimension, wave number dimension, or dimensions convertible from those dimensions. Also, the second and higher dimensions may be, for example, a combination of spatial dimension, time dimension, frequency dimension, wave number dimension, or dimensions convertible from those dimensions. The dimension convertible from those dimensions means a dimension convertible from any one of spatial dimension, time dimension, frequency dimension, and wave number dimension. The region of the second and higher dimensions includes, for example, a region defined by time and Euclidean coordinates. The quantity associated with each sub-region indicates, for example, any one of a physical quantity, a traffic volume, a pixel value, or the analysis result of a machine learning model that analyzes image data. Examples of the physical quantity include, for example, a flow velocity. The high-dimensional region includes, for example, a plurality of sub-regions divided in a mesh shape. The mesh number, which is identification information for identifying a small tensor associated with each sub-region, is defined in binary. The mesh number is attached to the small tensor, for example, as an index of the small tensor. The index may be the entire binary number indicating the mesh number or a part of the binary number indicating the mesh number. Here, the mesh number, which is identification information for identifying a small tensor, is defined in binary. However, this is only an example, and the mesh number is not limited to being defined in binary. 【0013】 The small tensor generation unit 1 generates a contraction rule for reproducing a high-rank tensor by connecting between a plurality of small tensors. Specifically, the small tensor generation unit 1 generates a non-single-chain contraction rule based on the characteristics of the identification information for identifying each small tensor. Examples of the characteristics of the identification information for identifying a small tensor include, for example, the symmetry of mesh numbers that are two or more pieces of identification information or the correlation between two or more mesh numbers. The small tensor generation unit 1 outputs the small tensor to the small tensor update unit 2 and outputs the contraction rule to the high-rank tensor reproduction unit 3. 【0014】 The tensor generation processing unit 1a acquires a high-rank tensor from the outside. The tensor generation processing unit 1a generates a plurality of small tensors having a number of elements less than the number of elements that the high-rank tensor has. The tensor generation processing unit 1a outputs a plurality of small tensors and the identification information for identifying each small tensor to the contraction rule generation unit 1b. The contraction rule generation unit 1b acquires a plurality of small tensors and the identification information for identifying each small tensor from the tensor generation processing unit 1a. The contraction rule generation unit 1b generates non-single-chain contraction rules based on the characteristics of the identification information, as contraction rules for reproducing high-rank tensors. The reduction rule generation unit 1b outputs multiple small tensors to the small tensor update unit 2 and outputs the reduction rule to the high-rank tensor reproduction unit 3. 【0015】 The small tensor update unit 2 is implemented, for example, by the small tensor update circuit 12 shown in Figure 2. The small tensor update unit 2 obtains multiple small tensors from the small tensor generation unit 1. The small tensor update unit 2 updates the elements that each small tensor possesses. The small tensor update unit 2 outputs each small tensor after the element update to the high-rank tensor reconstruction unit 3. 【0016】 The high-rank tensor reproduction unit 3 is realized, for example, by the high-rank tensor reproduction circuit 13 shown in Figure 2. The high-rank tensor reproduction unit 3 obtains the contraction rules from the small tensor generation unit 1 and obtains the small tensor after element updates from the small tensor update unit 2. The high-rank tensor reconstruction unit 3 reconstructs the high-rank tensor using a small tensor and a contraction rule. 【0017】 In Figure 1, the small tensor generation unit 1, the small tensor update unit 2, and the high-rank tensor reproduction unit 3, which are components of the arithmetic unit, are assumed to be implemented by dedicated hardware as shown in Figure 2. That is, the arithmetic unit is assumed to be implemented by a small tensor generation circuit 11, a small tensor update circuit 12, and a high-rank tensor reproduction circuit 13. The small tensor generation circuit 11, the small tensor update circuit 12, and the high-rank tensor reproduction circuit 13 can each be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof. 【0018】 The components of the computing device are not limited to those implemented by dedicated hardware; the computing device may also be implemented by software, firmware, or a combination of software and firmware. Software or firmware is stored as a program in the computer's memory. A computer refers to the hardware that executes programs, and includes, for example, a CPU (Central Processing Unit), GPU (Graphics Processing Unit), central processing unit, processing unit, arithmetic unit, microprocessor, microcomputer, processor, or DSP (Digital Signal Processor). 【0019】 Figure 3 is a hardware configuration diagram of a computer where the computing unit is implemented by software or firmware. When the computing unit is implemented by software or firmware, a program is stored in memory 21 that instructs the computer to execute the respective processing procedures in the small tensor generation unit 1, the small tensor update unit 2, and the high-rank tensor reproduction unit 3. The computer's processor 22 then executes the program stored in memory 21. 【0020】 Furthermore, Figure 2 shows an example where each component of the arithmetic unit is implemented by dedicated hardware, and Figure 3 shows an example where the arithmetic unit is implemented by software or firmware, etc. However, this is only one example, and some components of the arithmetic unit may be implemented by dedicated hardware, while the remaining components may be implemented by software or firmware, etc. 【0021】 Next, we will explain the operation of the arithmetic unit shown in Figure 1. Figure 4 is a flowchart showing the calculation method, which is the processing procedure of the arithmetic unit. The tensor generation processing unit 1a of the small tensor generation unit 1 obtains a high-rank tensor from an external source. The tensor generation processing unit 1a generates multiple small tensors from a high-rank tensor (step ST1 in Figure 4). The tensor generation processing unit 1a outputs multiple minor tensors and identification information for each minor tensor to the reduction rule generation unit 1b. 【0022】 The contraction rule generation unit 1b obtains multiple minor tensors and identification information that identifies each minor tensor from the tensor generation processing unit 1a. The contraction rule generation unit 1b generates non-single-chain contraction rules based on the characteristics of the identification information as contraction rules to reproduce high-rank tensors (step ST1 in Figure 4). The reduction rule generation unit 1b outputs multiple small tensors to the small tensor update unit 2 and outputs the reduction rule to the high-rank tensor reproduction unit 3. Specifically, the tensor generation processing unit 1a decomposes a high-rank tensor into a plurality of smaller tensors and a reduction rule by, for example, singular value decomposition. Examples of singular value decompositions include LU decomposition, QR decomposition, QLP decomposition, or incomplete LU decomposition. Alternatively, a combination of LU decomposition, QR decomposition, QLP decomposition, or incomplete LU decomposition can be used. 【0023】 The Bond dimension, which is the degree of freedom of the contraction rule, can increase exponentially with each decomposition. When performing singular value decomposition of a high-rank tensor, the exponential increase in the Bond dimension can be suppressed by approximating the high-rank tensor with a small tensor. The approximation may be performed each time a decomposition is made, or it may be performed under predetermined conditions, for example, when the bond dimension is greater than or equal to a predetermined value. It is known that the state can be approximated accurately by orthogonalization using decomposition methods such as singular value decomposition before approximating the small tensor. In the method of approximating along with decomposition, the generation and approximation of the small tensor are performed simultaneously, thus reducing the number of orthogonalization steps. 【0024】 Contraction rules include, for example, the sum-of-products operation or the Kronecker product. Alternatively, contraction rules can be a combination of either the sum-of-products operation or the Kronecker product with other rules such as the tensor product. Specifically, when a sum-of-products operation is used as a contraction rule to map matrices A and B to matrix C, the contraction rule can be expressed as shown in equation (1) below. When the Kronecker product is used as the contraction rule to map matrices A and B to matrix C, the contraction rule can be expressed as shown in equation (2) below. 【0025】 TIFF0007876727000001.tif25166 In equations (1) and (2), a i,k is an element of matrix A, b k,j c is an element of matrix B. i,j These are the components of matrix C. 【0026】 Figure 5 is an explanatory diagram showing an example of a small tensor 31 and a reduction rule 32 generated by the small tensor generation unit 1. In the example in Figure 5, the small tensor 31 is represented by nodes, and the reduction rules 32 are represented by lines connecting multiple small tensors 31. Of the multiple reduction rules 32, at least some are based on properties between two or more mesh numbers, and the set of small tensors 31 is connected in a non-single-chain manner. 【0027】 Figure 5A shows an example in which a tensor representing a quantity associated with each of several subdomains contained within a two-dimensional domain is represented by a combination of a small tensor 31 and a contraction rule 32. In the example in Figure 5A, eight small tensors 31 are arranged in the x-direction (the eight small tensors 31 positioned towards the foreground in the figure), and eight small tensors 31 are arranged in the y-direction (the eight small tensors 31 positioned towards the background in the figure). In the example in Figure 5A, both the x-direction and the y-direction are the left-right direction in the figure. Of the mesh numbers m and n that identify the small tensor 31, the mesh number m in the x-direction is represented in binary. A binary number is a sequence of one or more bits that are "1" or "0". If, for example, there are 11 bits that are either "1" or "0", then the first bit represents the ones place in binary, the second bit represents the twos place in binary, and the eleventh bit represents the 1024s place. Therefore, the 11th bit is 1024 times larger in scale than the 1st bit. Of the mesh numbers m and n used to identify the small tensor 31, the mesh number n in the y-direction is also expressed in binary. 【0028】 In the example in Figure 5A, when the mesh number in the x-direction is represented by the binary number "abcdefgh", of the eight small tensors 31 arranged in the x-direction, the leftmost small tensor 31 represents "a", the second small tensor 31 from the left represents "b", and the rightmost small tensor 31 represents "h". Therefore, among the eight minor tensors 31 arranged in the x-direction, the leftmost minor tensor 31 has the largest scale, and the scales of the minor tensors 31 to the right are progressively smaller, with the rightmost minor tensor 31 having the smallest scale. When the mesh number in the y direction is represented by the binary number "stuvwxyz", of the eight small tensors 31 arranged in the y direction, the leftmost small tensor 31 represents "s", the second small tensor 31 from the left represents "t", and the rightmost small tensor 31 represents "z". Therefore, among the eight minor tensors 31 arranged in the y-direction, the leftmost minor tensor 31 has the largest scale, and the minor tensors 31 to the right have progressively smaller scales, with the rightmost minor tensor 31 having the smallest scale. Therefore, among the eight small tensors 31 arranged in the y direction, the correlation is likely to be high among the eight small tensors 31 arranged in the x direction, where the order of the small tensors counted from the left in the x direction is close to the order of the small tensors counted from the left in the y direction. In other words, there is likely to be a high correlation among multiple small tensors 31 with similar scales. On the other hand, among the eight small tensors 31 arranged in the y direction, the correlation between the small tensors 31 whose order from the left in the x direction is farther from the order from the left in the y direction is considered to be small. In other words, the correlation between multiple small tensors 31 with vastly different scales is considered to be small. 【0029】 Specifically, it can be assumed that the leftmost of the eight minor tensors 31 arranged in the y-direction has the greatest correlation with the leftmost of the eight minor tensors 31 arranged in the x-direction. Of the eight minor tensors 31 arranged in the y-direction, the second minor tensor 31 from the left can be assumed to have the greatest correlation with the second minor tensor 31 from the left among the eight minor tensors 31 arranged in the x-direction. Of the eight minor tensors 31 arranged in the y-direction, the rightmost minor tensor 31 can be assumed to have the greatest correlation with the rightmost minor tensor 31 among the eight minor tensors 31 arranged in the x-direction. 【0030】 Since multiple small tensors 31 with similar scales exhibit high correlation, and multiple small tensors 31 with vastly different scales exhibit low correlation, it is expected that the reproducibility of high-rank tensors will be improved if multiple small tensors 31 with similar scales are coupled, while multiple small tensors 31 with vastly different scales are not coupled. 【0031】 In the example in Figure 5A, among the eight small tensors 31 aligned in the x-direction, if the difference in scale between two small tensors 31 is within 2, the correlation between them is considered large, and small tensors 31 with high correlation are connected to each other. In other words, the eight small tensors 31 are connected in a linear fashion. Similarly, among the eight small tensors 31 aligned in the y-direction, if the difference in scale between two small tensors 31 is within 2x, the correlation between those two small tensors 31 is considered large, and the small tensors 31 with high correlation are connected to each other. In other words, the eight small tensors 31 are connected in a linear fashion. Furthermore, assuming that the correlation between two small tensors 31 whose order of small tensors counted from the left in the x-direction is the same as the order of small tensors counted from the left in the y-direction is large, small tensors 31 with high correlation are connected. The connections between the small tensors 31 aligned in the x-direction and the small tensors 31 aligned in the y-direction are chain-like connections, and in the example in Figure 5A, there are eight such connections. Therefore, the non-single chain configuration shown in Figure 5A is a combination of two linear connections and eight chain-like connections. 【0032】 In the example in Figure 5A, two small tensors 31 with a scale difference of less than 2 in the x-direction are coupled. However, this is just one example, and a high correlation between two small tensors 31 is not limited to those with a scale difference of less than 2. For example, even if the scale difference is within 4 times, or within 8 times, two small tensors 31 with a scale difference of less than 4 times or less than 8 times may be coupled. Similarly, in the y-direction, small tensors 31 with a scale difference of 2 or less are coupled. However, this is just one example, and a large correlation between two small tensors 31 is not limited to those with a scale difference of 2 or less. For example, even if the scale difference is 4 or less, or 8 or less, small tensors 31 with a scale difference of 4 or less, or 8 or less, are coupled. Here, the difference in scale between the two small tensors 31 is defined by a magnification factor. However, this is just one example, and the difference in scale between the two small tensors 31 could also be defined by an index other than a magnification factor. An example of such an index other than a magnification factor would be the correlation characteristics of vortices in a subdomain. 【0033】 Figure 5A shows an example in which tensors representing quantities associated with each of several subregions contained in a two-dimensional domain are represented by a combination of a minor tensor 31 and a contraction rule 32. However, this is only one example; for example, as shown in Figure 5B, tensors representing quantities associated with each of several subregions contained in a three-dimensional domain may also be represented by a combination of a minor tensor 31 and a contraction rule 32. 【0034】 Furthermore, as shown in Figure 5C, for example, among the multiple subregions included in the two-dimensional region, some subregions of the small tensor 31 may be connected only to the small tensor 31 aligned in the x-direction and not to the small tensor 31 aligned in the y-direction. Of the eight small tensor 31 aligned in the x-direction, for example, the leftmost small tensor 31 may be connected only to the second small tensor 31 from the left and not to the small tensor 31 aligned in the y-direction. In the example in Figure 5C, a non-single-chain reduction rule 32 is generated based on the characteristics of the mesh numbers that identify two or more small tensors among the multiple subregions. Figure 5B is an explanatory diagram illustrating an example in which a tensor representing a quantity associated with each of several subregions contained within a three-dimensional domain is represented by a combination of a minor tensor 31 and a contraction rule 32. Figure 5C is an explanatory diagram showing a case where, among multiple subregions contained in a two-dimensional domain, a small tensor 31 relating to some subregions is connected only to small tensors 31 aligned in the x-direction, and not to small tensors 31 aligned in the y-direction. 【0035】 The small tensor update unit 2 obtains multiple small tensors from the small tensor generation unit 1. The small tensor update unit 2 updates the elements of each small tensor (step ST2 in Figure 4). The update of elements by the small tensor update unit 2 corresponds to an operation on the quantity associated with each subdomain. If the quantity associated with each subdomain is, for example, flow velocity, then the update of elements in the small tensor would be the time evolution of the flow velocity in each subdomain. The element updates performed by the small tensor update unit 2 may, for example, use operators or linear equations. Since general tensor network update methods are well-known techniques, a detailed explanation is omitted. The small tensor update unit 2 outputs each small tensor after the element update to the high-rank tensor reconstruction unit 3. 【0036】 The high-rank tensor reproduction unit 3 obtains the contraction rule from the small tensor generation unit 1 and obtains the small tensor from the small tensor update unit 2. The high-rank tensor reproduction unit 3 reproduces the high-rank tensor using a small tensor and a contraction rule (step ST3 in Figure 4). High-rank tensors can be reproduced, for example, by performing contraction calculations on multiple small tensors according to the contraction rule shown in equation (1) or equation (2). 【0037】 The reproduction of a high-rank tensor by the high-rank tensor reproduction unit 3 includes not only directly reproducing the elements representing the quantities associated with each of the subdomains of the high-rank tensor, but also reproducing the feature quantities of the quantities associated with each subdomain without reproducing the elements. Examples of feature quantities associated with subdomains include the expected value of a physical quantity or the variance of a physical quantity. If the computing device shown in Figure 1 is, for example, a computing device applicable to thermal fluid analysis, then the quantities associated with each sub-region correspond to the results of the thermal fluid analysis. Therefore, if the high-rank tensor reproduction unit 3 displays the high-rank tensor reproduction results on, for example, an external display device, the user viewing the display device can confirm the results of the thermal fluid analysis. Furthermore, the computing device shown in Figure 1 is not limited to thermal fluid analysis, but can also be applied to structural analysis, electric field analysis, vibration analysis, or acoustic analysis, for example. 【0038】 Furthermore, when the high-rank tensor reproduction unit 3 reproduces a high-rank tensor, it first performs contractions between small tensors of different dimensions, and then performs contractions between two or more small tensors of the same dimension. In the example shown in Figure 5A, the high-rank tensor reconstruction unit 3 performs contraction between tensors of similar scale in the x-direction and between tensors of similar scale in the y-direction before performing contraction between tensors of similar scale in the x-direction and between tensors of similar scale in the y-direction. This reduces the contraction rules of the intermediate tensors generated by the contraction, which can reduce the amount of memory required. 【0039】 For example, if the number of each coordinate axis is long compared to the number of dimensions of the domain, the unidirectional intermediate tensor shown in Figure 6A will have many contraction rules, and the degrees of freedom of the contraction rules will be accumulated multiple times. The unidirectional intermediate tensor is a tensor that reproduces the numbers of the same dimensions of the intermediate tensor. As a result, the rank of the unidirectional intermediate tensor increases. On the other hand, two-directional intermediate tensors, as shown in Figure 6B, have fewer contraction rules, so their rank is lower than that of one-directional intermediate tensors. Since the number of elements in a tensor can be calculated by multiplying the degrees of freedom of the identification information that identifies the tensor, two-directional intermediate tensors with lower ranks often require less memory than one-directional intermediate tensors with higher ranks. Figure 6A is an explanatory diagram showing a one-directional intermediate tensor, and Figure 6B is an explanatory diagram showing a two-directional intermediate tensor. 【0040】 In the example shown in Figure 5B, the high-rank tensor reconstruction unit 3 performs a contraction calculation between tensors with similar scales in the x-direction, y-direction, and z-direction before performing contraction calculations between tensors with similar scales in the x-direction, y-direction, and z-direction. If the number of each coordinate axis is long compared to the number of dimensions of the domain, performing contraction limited to one direction and generating numbers of the same dimension may result in a large number of contraction rules and an increase in required memory. By performing contraction calculations on tensors with similar scales between tensors aligned in the x-direction, y-direction, and z-direction, contraction can be performed before the required memory increases significantly. 【0041】 In the above embodiment 1, the computing device is configured to include a small tensor generation unit 1 that generates small tensors, which are multiple tensors having fewer elements than the number of elements in a high-rank tensor, from a high-rank tensor, which is a tensor having elements representing quantities associated with each of multiple sub-regions contained in a high-dimensional region of two or more dimensions, and a reduction rule for reconstructing a high-rank tensor by connecting the multiple small tensors. The small tensor generation unit 1 generates a non-single-chain reduction rule as the reduction rule, based on the characteristics of the identification information that identifies each small tensor. Therefore, the computing device can also generate reduction rules for connecting multiple small tensors that are considered to be physically strongly correlated in two or more different coordinate axes. As a result, when reconstructing a high-rank tensor using multiple small tensors and reduction rules, the degradation of the reproduction accuracy of the high-rank tensor can be suppressed. 【0042】 In the computing device shown in Figure 1, the small tensor generation unit 1 generates non-single-chain reduction rules based on the correlation between two or more pieces of identification information as characteristics of the identification information that identifies each small tensor. However, this is just one example, and the small tensor generation unit 1 may also generate non-single-chain reduction rules based on the symmetry between two or more pieces of identification information as characteristics of the identification information that identifies each small tensor. 【0043】 If the small tensor generation unit 1 is configured to generate non-single-chain contraction rules based on the symmetry between two or more pieces of identification information as characteristics of the identification information that identifies each small tensor, then it is also possible to generate contraction rules for connecting multiple small tensors that are considered to have strong physical symmetry in two or more different coordinate axes. Furthermore, the small tensor generation unit 1 may generate non-single-chain reduction rules based on a quantity similar to either the symmetry between two or more pieces of identification information or the correlation between two or more pieces of identification information, as a characteristic of the identification information that identifies each small tensor. Examples of quantities similar to either include the degree of coupling between two or more pieces of identification information, or the degree of entanglement between two or more pieces of identification information. Furthermore, the small tensor generator 1 may generate non-single-chain reduction rules based on the background of the elements corresponding to each subdomain. As the background of the elements corresponding to each subdomain, for example, the translational symmetry of the physical model for the higher-dimensional region can be used. 【0044】 The small tensor generator 1 may generate non-single-chain reduction rules based on the structure of the higher-dimensional region, as shown in Figure 7. Figure 7A is an explanatory diagram illustrating an example where the resonance amount generated in the resonators 41 corresponds to the elements of a small tensor when a flow channel 42 is provided between multiple resonators 41. In the example shown in Figure 7A, the interaction between adjacent resonators 41 is considered to be large in the x-direction. Among the resonators 41 arranged in the y-direction, the interaction between adjacent resonators 41 is considered to be large among the five resonators 41 located in the third position from the left in the x-direction. Figure 7B is an explanatory diagram illustrating an example in which a contraction rule is generated that connects highly interacting minor tensors among multiple minor tensors. The two small tensors on the far right, and the two small tensors second from the right, each interact with each other in the gap through which the fluid flows. The two small tensors, fifth from the right, interact with each other through structural resonance. 【0045】 In the computing device shown in Figure 1, the small tensor generation unit 1 defines the identification information for each small tensor as a mesh number. However, this is just one example; if the elements representing quantities associated with each of the multiple sub-regions included in the high-dimensional domain are, for example, point cloud data, then the identification information could be, for example, a number that identifies multiple points included in the point cloud. 【0046】 In the arithmetic unit shown in Figure 1, the small tensor update unit 2 updates the elements of the small tensor using operators. However, this is just one example; when random or predetermined values ​​are given to the elements of the small tensor, the small tensor update unit 2 may perform an optimization calculation or a convergence calculation of the elements. In this case, not only can a high-rank tensor be reproduced, but the computational cost of tensor decomposition can be omitted. 【0047】 Embodiment 2. Embodiment 1 shows a computing device applicable to, for example, thermal fluid analysis. Embodiment 2 describes a computing device applicable to traffic data analysis. The configuration of the arithmetic unit according to Embodiment 2 is the same as that of the arithmetic unit according to Embodiment 1. Therefore, Figure 1 is a diagram showing the configuration of the arithmetic unit according to Embodiment 2. 【0048】 Even when applied to the analysis of traffic data, the small tensor generation unit 1 can generate non-single-chain reduction rules as reduction rules, based on the characteristics of the identification information that identifies each small tensor. This section describes an example where the correlation in traffic data analysis is thought to change depending on the scale of the subdomain. For example, if a machine learning model for analyzing image data is available, providing the machine learning model with image data showing traffic conditions will yield the results of the machine learning model's analysis of the traffic data. In this case, the quantities associated with each sub-region are the results of the machine learning model's analysis. If the computing device according to Embodiment 2 is a computing device applicable to the analysis of traffic data, the quantities associated with each sub-region correspond to the results of the traffic data analysis. Therefore, if the high-rank tensor reproduction unit 3 displays the high-rank tensor reproduction results on, for example, an external display device, the user viewing the display device can confirm the results of the traffic data analysis. 【0049】 For example, when analyzing traffic data using machine learning, the correlation between the parameters used to analyze pedestrians and the parameters used to analyze vehicles is likely to be small. On the other hand, considering the time scales of pedestrians and automobiles, the correlation is likely to be smaller when the time scales are far apart and larger when the time scales are similar. Therefore, the correlation changes depending on the time scale. For example, in a technology that classifies the types of traffic participants using image data obtained from a camera, the spatial scale of traffic participants is considered to differ from the spatial scale of other traffic participants and the spatial scale of structures. Therefore, the correlation changes depending on the spatial scale. 【0050】 Time scales and spatial scales often have relationships related to symmetry or correlation. Therefore, the small tensor generator 1 can generate non-single-chain reduction rules based on at least one of the time scale or spatial scale. The small tensor generator 1 may generate non-single-chain reduction rules based on the wave number dimension or frequency dimension instead of the time scale or spatial scale. The wave number dimension or frequency dimension can be obtained, for example, by performing a Fourier analysis on the elements of a subdomain. Furthermore, the small tensor generator 1 may generate non-single-chain reduction rules based on momentum in quantum mechanics. Momentum p is expressed as p = hk / 2π, where h is Planck's constant, π is pi, and k is the wave number. Here, momentum p is the dimension transformed from the wave number dimension. 【0051】 Embodiment 3. Embodiment 3 describes an arithmetic unit in which the small tensor generation unit 4 modifies the reduction rule based on the elements updated by the small tensor update unit 2. 【0052】 Figure 8 is a configuration diagram showing the arithmetic unit according to Embodiment 3. In Figure 8, the same reference numerals as in Figure 1 indicate the same or corresponding parts, so a detailed explanation is omitted. Figure 9 is a hardware configuration diagram showing the hardware of the arithmetic unit according to Embodiment 3. In Figure 9, the same reference numerals as in Figure 2 indicate the same or corresponding parts, so a detailed explanation is omitted. The computing device shown in Figure 8 comprises a small tensor generation unit 4, a small tensor update unit 2, and a high-rank tensor reproduction unit 3. 【0053】 The small tensor generation unit 4 is implemented, for example, by the small tensor generation circuit 14 shown in Figure 9. It comprises a small tensor generation unit 4, a tensor generation processing unit 4a, and a reduction rule generation unit 4b. The small tensor generator 4 obtains a high-rank tensor from an external source, for example. The small tensor generator 4 generates small tensors, which are multiple tensors having fewer elements than a high-rank tensor. The small tensor generation unit 4 generates reduction rules to reconstruct a high-rank tensor by connecting multiple small tensors. Specifically, the small tensor generation unit 4 generates non-single-chain reduction rules based on the characteristics of the identification information that identifies each small tensor. The small tensor generator 4 modifies the contraction rule based on the elements updated by the small tensor update unit 2. The small tensor generation unit 4 outputs the small tensor to the small tensor update unit 2 and outputs the reduction rule to the high-rank tensor reproduction unit 3. 【0054】 The tensor generation processing unit 4a obtains a high-rank tensor from an external source. The tensor generation processing unit 4a generates multiple small tensors, each having fewer elements than the high-rank tensor. The tensor generation processing unit 4a outputs multiple minor tensors and identification information for each minor tensor to the reduction rule generation unit 4b. The contraction rule generation unit 4b obtains multiple minor tensors and identification information that identifies each minor tensor from the tensor generation processing unit 4a. The contraction rule generation unit 4b generates non-single-chain contraction rules based on the characteristics of the identification information, as contraction rules for reproducing high-rank tensors. Furthermore, the contraction rule generation unit 4b modifies the contraction rule based on the elements updated by the small tensor update unit 2. The reduction rule generation unit 4b outputs multiple small tensors to the small tensor update unit 2 and outputs the modified reduction rule to the high-rank tensor reproduction unit 3. 【0055】 In Figure 8, the small tensor generation unit 4, the small tensor update unit 2, and the high-rank tensor reproduction unit 3, which are components of the arithmetic unit, are assumed to be implemented by dedicated hardware as shown in Figure 9. That is, the arithmetic unit is assumed to be implemented by a small tensor generation circuit 14, a small tensor update circuit 12, and a high-rank tensor reproduction circuit 13. The small tensor generation circuit 14, the small tensor update circuit 12, and the high-rank tensor reproduction circuit 13 can each be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof. 【0056】 The components of the computing device are not limited to those implemented by dedicated hardware; the computing device may also be implemented by software, firmware, or a combination of software and firmware. Software or firmware is stored as a program in the computer's memory. A computer refers to the hardware that runs programs, such as a CPU, GPU, central processing unit, processing unit, arithmetic unit, microprocessor, microcomputer, processor, or DSP. 【0057】 When the computing unit is implemented by software or firmware, a program that causes the computer to execute the respective processing procedures in the small tensor generation unit 4, the small tensor update unit 2, and the high-rank tensor reproduction unit 3 is stored in the memory 21 shown in Figure 3. Then, the processor 22 shown in Figure 3 executes the program stored in the memory 21. 【0058】 Furthermore, Figure 9 shows an example where each component of the arithmetic unit is implemented by dedicated hardware, while Figure 3 shows an example where the arithmetic unit is implemented by software or firmware, etc. However, this is merely one example, and it is also possible that some components of the arithmetic unit are implemented by dedicated hardware, and the remaining components are implemented by software or firmware, etc. 【0059】 Next, we will explain the operation of the arithmetic unit shown in Figure 8. However, since it is the same as the arithmetic unit shown in Figure 1 except for the small tensor generation unit 4, we will mainly explain the operation of the small tensor generation unit 4 here. 【0060】 The small tensor generator 4 generates multiple small tensors having fewer elements than the high-rank tensor, similar to the small tensor generator 1 shown in Figure 1. The small tensor generation unit 4 generates non-single-chain reduction rules based on the characteristics of the identification information that identifies each small tensor. The small tensor generation unit 4 outputs multiple small tensors to the small tensor update unit 2 and outputs the reduction rule to the high-rank tensor reproduction unit 3. 【0061】 The small tensor update unit 2 obtains multiple small tensors from the small tensor generation unit 4. The small tensor update unit 2 updates the elements of each small tensor, similar to the first embodiment. The small tensor update unit 2 outputs each small tensor after the element update to the small tensor generation unit 4 and the high-rank tensor reproduction unit 3, respectively. 【0062】 The small tensor generation unit 4 obtains each of the updated small tensors from the small tensor update unit 2. The small tensor generator 4 modifies the contraction rule based on the elements updated by the small tensor update unit 2. The following describes in detail the process by which the small tensor generation unit 4 modifies the reduction rules. Figure 10 is a flowchart showing the process of modifying the reduction rule by the small tensor generation unit 4. 【0063】 For the sake of explanation, here we will assume that the reduction rule initially generated by the small tensor generator 4 is the reduction rule shown in Figure 11A. Figure 11A is an explanatory diagram showing an example of a reduction rule generated by the small tensor generator 4. After the elements of the small tensor have been updated by the small tensor update unit 2, the small tensor generation unit 4 obtains the correlation results between multiple small tensors at each scale. The correlation results between multiple small tensors across each scale may be obtained from an external device (not shown), or they may be estimated by the small tensor generation unit 4 based on the characteristics of the identification information, as described in Embodiment 1. The correlation results between multiple small tensors at specific scales change depending on the element updates performed by the small tensor update unit 2. When the correlation between multiple small tensors at a particular scale is greater than a certain threshold, combining multiple small tensors at that scale can represent a high-rank tensor more efficiently than not combining them. 【0064】 The small tensor generation unit 4 compares the correlation between multiple small tensors at each scale with a certain threshold (step ST11 in Figure 10). The certain threshold may be stored in the internal memory of the small tensor generation unit 4, or it may be provided from outside the arithmetic unit shown in Figure 8. The small tensor generation unit 4 modifies the generated contraction rule by performing contraction between multiple small tensors at each scale, as shown in Figure 11B or Figure 11C, if the correlation between multiple small tensors at each scale is above a threshold (step ST13 in Figure 10). The contraction here is performed between multiple small tensors at the scale where the correlation is above a threshold. Contraction between multiple small tensors can be performed, for example, by a sum-of-products operation as shown in equation (1), or by a Kronecker product as shown in equation (2). 【0065】 Figures 11B and 11C are explanatory diagrams showing examples of reduction rules after modification by the small tensor generator 4. For example, in fluid dynamics analysis, when multiple vortices of a particular scale are generated, or when a strong correlation is thought to exist at a specific scale, the contraction rule is changed to one shown in Figure 11C by performing a contraction between small tensors with indices close to that specific scale. 【0066】 The small tensor generator 4 modifies the contraction rule by decomposing the contracted tensor (step ST14 in Figure 10) if the correlation between multiple small tensors at each scale falls below a threshold (step ST12 in Figure 10: NO) when the current contraction rule is, for example, one of the contraction rules shown in Figure 11B or Figure 11C. For example, singular value decomposition can be used as a method for decomposing the tensor. For example, one approach is to change the contraction rule shown in Figure 11B or Figure 11C to the contraction rule shown in Figure 11A. The decomposition here refers to the decomposition of tensors at a scale where the correlation is below a threshold among multiple scales. 【0067】 In the above embodiment 3, the arithmetic device shown in Figure 8 is configured such that the small tensor generation unit 4 modifies the reduction rules based on the elements after the small tensor update unit 2. Therefore, the arithmetic device shown in Figure 8, like the arithmetic device shown in Figure 1, can generate reduction rules for connecting multiple small tensors that are considered to be physically strongly correlated in two or more different coordinate axes, and can also improve the accuracy of high-rank tensor reproduction compared to the arithmetic device shown in Figure 1. [Industrial applicability] 【0068】 The computing device relating to this disclosure can be used, for example, for analyzing image data. 【0069】 Furthermore, this disclosure allows for free combination of each embodiment, modification of any component in each embodiment, or omission of any component in each embodiment. [Explanation of Symbols] 【0070】 1 Small tensor generation unit, 1a Tensor generation processing unit, 1b Reduction rule generation unit, 2 Small tensor update unit, 3 High-rank tensor reproduction unit, 4 Small tensor generation unit, 4a Tensor generation processing unit, 4b Reduction rule generation unit, 11 Small tensor generation circuit, 12 Small tensor update circuit, 13 High-rank tensor reproduction circuit, 14 Small tensor generation circuit, 21 Memory, 22 Processor, 31 Small tensor, 32 Reduction rule, 41 Resonator, 42 Flow channel.

Claims

[Claim 1] A small tensor generation unit generates a plurality of small tensors, each containing identification information that is all or part of the information representing a subdomain in a high-dimensional region, and a reduction rule, from a high-rank tensor having elements that represent quantities associated with a high-dimensional region which is a region of two or more dimensions. A small tensor update unit that updates the elements of each of the multiple small tensors, It comprises a high-rank tensor reconstruction unit that reconstructs a high-rank tensor using multiple small tensors whose elements have been updated and a reduction rule, The aforementioned small tensor generation unit is, Based on identification information representing properties such as symmetry, correlation, degree of entanglement, or coupling between two or more of the aforementioned small tensors, a non-single-chain reduction rule is generated. A computing device characterized by the following features. [Claim 2] The second or higher dimension relating to the aforementioned higher-dimensional region includes a spatial dimension, a time dimension, a frequency dimension, a wavenumber dimension, or a dimension that can be converted from any of the spatial dimension, the time dimension, the frequency dimension, and the wavenumber dimension. The arithmetic device according to claim 1, characterized by its features. [Claim 3] The quantities associated with each subregion are: This can be any of the following: physical quantities, traffic volume, pixel values, or the results of an analysis by a machine learning model that analyzes image data. The computing device according to claim 1 or 2, characterized in that it is a computing device according to claim 2. [Claim 4] The aforementioned higher-dimensional region is a two-dimensional region. In the aforementioned two-dimensional region, when there are two sets of multiple small tensors aligned in the same direction, The aforementioned small tensor generation unit is, As the aforementioned non-single-chain contraction rule, a contraction rule is generated that shows the linking of any small tensor in one set with any small tensor in the other set. The computing device according to claim 1 or 2, characterized in that it is a computing device according to claim 2. [Claim 5] The aforementioned small tensor generation unit is, Based on the elements after the update by the small tensor update unit, the reduction rule is modified. The computing device according to claim 1 or 2, characterized in that it is a computing device according to claim 2. [Claim 6] The aforementioned high-rank tensor reproduction unit is, When reconstructing a high-rank tensor, we first perform contractions between small tensors of different dimensions, and then perform contractions between two or more small tensors of the same dimension. The computing device according to claim 1 or 2, characterized in that it is a computing device according to claim 2. [Claim 7] A calculation method performed by a computing device, The small tensor generation unit generates a plurality of small tensors, each containing identification information which is all or part of the information representing a subdomain in the high-dimensional region, and a reduction rule, from a high-rank tensor having elements that represent quantities associated with a high-dimensional region which is a region of two or more dimensions. The small tensor update unit includes the step of updating the elements of each of the multiple small tensors, The high-rank tensor reconstruction unit comprises the step of reconstructing a high-rank tensor using multiple small tensors whose elements have been updated and a reduction rule, The aforementioned small tensor generation unit is, Based on identification information representing properties such as symmetry, correlation, degree of entanglement, or coupling between two or more of the aforementioned small tensors, a non-single-chain reduction rule is generated. A calculation method characterized by the following.

Citation Information

Patent Citations

  • Flow rate prediction device, pattern estimation device, flow rate prediction method, pattern estimation method and program

    JP2017220000A

  • Communication device, information processing method, and program

    JP2022035932A

  • Information processing device, information processing system, information processing method, and recording medium

    WO2018235177A1