DSP acceleration implementation method and device for slender matrix indirect singular value decomposition based on two-norm constraint
Through the indirect singular value decomposition method of thin matrix constrained by two-norm, DSP is used to accelerate Jacobi rotation transformation, solving the problem of low computational efficiency in the processing of thin matrix in traditional methods, achieving more efficient singular value decomposition, suitable for infrared Weak object detection.
Patent Information
- Application Number
- CN202411058343.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-02
- Publication Date
- 2024-12-17
AI Technical Summary
The traditional Jacobi rotation transformation is incomputed when processing elongated matrices, resulting in insufficient efficiency of singular value decomposition in infrared weak target detection.
The indirect singular value decomposition method of thin matrix with two-norm constraints is used to orthogonalize the orthogonal matrix through DSP using Jacobi rotation transformation, and convert the data type and zero relaxation factor when the preset conditions and convergence conditions are met. , reduce the amount of iterative updates.
The calculation efficiency of singular value decomposition of slender matrix is improved, the data volume and iteration speed are reduced, and the calculation speed is accelerated. It is suitable for image decomposition processing in infrared weak target detection.
Smart Images

Figure CN119149888A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of digital signal processing, and in particular to a DSP acceleration implementation method and device for indirect singular value decomposition of a slender matrix with a two-norm constraint. Background Art
[0002] Singular value decomposition is one of the important matrix decompositions in linear algebra. It is a generalization of eigendecomposition on arbitrary matrices and is widely used in image processing, signal processing, artificial intelligence and other fields. In infrared weak target detection, the image needs to be decomposed to obtain the background image and the target image. In the process of decomposing the image, multiple singular value decompositions are required to obtain the main information of the image. Common singular value decomposition methods include methods based on QR (orthogonal triangle) iteration and methods based on Jacobi (unilateral Jacobi) iteration. However, the traditional Jacobi rotation transform has the problem of low computational efficiency when processing slender matrices. Summary of the invention
[0003] In order to solve the above problems existing in the prior art, the present invention provides a DSP accelerated implementation method and device for indirect singular value decomposition of a thin matrix with a two-norm constraint.
[0004] According to a first aspect of an embodiment of the present invention, a DSP accelerated implementation method for indirect singular value decomposition of a thin matrix with a two-norm constraint is provided, the method comprising:
[0005] Obtain the matrix to be orthogonalized of the initial data type according to the input matrix;
[0006] Performing orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain the processed matrix to be orthogonalized;
[0007] When the second-order norm of the column vector in the processed matrix to be orthogonalized meets the preset condition, the data type of the processed matrix to be orthogonalized is converted from the initial data type to the target data type and orthogonalization is performed again;
[0008] After the relaxation factor corresponding to the matrix to be orthogonalized after the orthogonalization is set to zero, the orthogonalization process is continued until the convergence condition is met to obtain the iteratively completed matrix;
[0009] A left singular matrix, a right singular matrix and singular values of the input matrix are obtained according to the iterated matrix.
[0010] Optionally, after obtaining the matrix to be orthogonalized according to the input matrix, the method further includes:
[0011] Dividing the matrix to be orthogonalized into a plurality of column blocks; wherein each column block contains the same number of column vectors;
[0012] The DSP uses the Jacobi rotation transformation to perform orthogonalization processing on multiple column blocks corresponding to the matrix to be orthogonalized.
[0013] Optionally, the orthogonalizing the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain the processed matrix to be orthogonalized includes:
[0014] Performing intra-block orthogonalization processing on the plurality of column blocks by using the Jacobi rotation transformation through the DSP to obtain a plurality of column blocks that have undergone intra-block orthogonalization processing;
[0015] The DSP uses the Jacobi rotation transformation to perform inter-block orthogonalization processing on the multiple column blocks that have undergone intra-block orthogonalization processing to obtain multiple processed column blocks.
[0016] Optionally, the initial data type is a double-precision floating point type, and the target data type is a single-precision floating point type.
[0017] Optionally, the preset conditions are as follows:
[0018] ||c1||2≥||c2||2≥||c3||2≥…≥||c k-2 ||2≥||c k-1 ||2≥||c k ||2;
[0019] Among them, ||·||2 means finding the second-order norm, c n represents the nth column vector in the processed matrix to be orthogonalized, n∈[1,k], and k represents the total number of column vectors in the processed matrix to be orthogonalized.
[0020] Optionally, the convergence condition is as follows:
[0021]
[0022] Among them, d n represents the nth column vector in the matrix to be orthogonalized after this orthogonalization process, d n ' represents the nth column vector in the matrix to be orthogonalized after the relaxation factor is set to zero and the orthogonalization process is continued, and ε is the threshold value approaching 0.
[0023] Optionally, obtaining a left singular matrix, a right singular matrix and singular values of the input matrix according to the iterated matrix includes:
[0024] Obtaining a right singular matrix of the input matrix according to the iteratively completed matrix and the second-order norm corresponding to the iteratively completed matrix;
[0025] Obtaining singular values of the input matrix according to the second-order norm corresponding to the iteratively completed matrix;
[0026] A left singular matrix of the input matrix is obtained according to the right singular matrix and singular values of the input matrix.
[0027] According to a second aspect of an embodiment of the present invention, a DSP accelerated implementation device for indirect singular value decomposition of a thin matrix with a two-norm constraint is provided, the device comprising:
[0028] A matrix acquisition module, used for obtaining a matrix to be orthogonalized of an initial data type according to an input matrix;
[0029] A first matrix processing module, used for performing orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain the processed matrix to be orthogonalized;
[0030] A data type conversion module, used for converting the data type of the processed matrix to be orthogonalized from an initial data type to a target data type and performing an orthogonalization process again when the second-order norm of the column vector in the processed matrix to be orthogonalized meets a preset condition;
[0031] The second matrix processing module is used to set the relaxation factor corresponding to the matrix to be orthogonalized after the orthogonalization processing to zero and then continue the orthogonalization processing until the convergence condition is met to obtain the iteratively completed matrix;
[0032] The singular value decomposition module is used to obtain the left singular matrix, the right singular matrix and the singular values of the input matrix according to the iterated matrix.
[0033] The technical solution provided by the present invention may include the following beneficial effects:
[0034] Compared with the prior art, the present invention has higher computational efficiency in singular value decomposition of slender matrices. The present invention processes the input matrix and uses the matrix to be orthogonalized corresponding to the input matrix to perform singular value decomposition. Compared with the original input matrix, the amount of data is smaller, and only the matrix to be orthogonalized is iteratively updated during the iteration process, which greatly reduces the amount of calculation and makes the iteration faster. The present invention judges the convergence of the algorithm based on the second-order norm of the matrix column vector before and after the iteration, which reduces the amount of calculation and speeds up the calculation.
[0035] Other features and advantages of the present invention will be described in detail in the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the following specific embodiments, they are used to explain the present invention but do not constitute a limitation of the present invention. In the accompanying drawings:
[0037] Figure 1 The present invention is a flowchart of a DSP accelerated implementation method of a two-norm constrained thin matrix indirect singular value decomposition according to an exemplary embodiment.
[0038] Figure 2 is a schematic diagram showing a Jacobi rotation transformation according to an exemplary embodiment.
[0039] Figure 3 The diagram is a schematic diagram showing a process of intra-block orthogonalization according to an exemplary embodiment.
[0040] Figure 4 The diagram is a schematic diagram showing a process of inter-block orthogonalization processing according to an exemplary embodiment.
[0041] Figure 5 It is a comparison diagram between a traditional method and the method of the present invention according to an exemplary embodiment.
[0042] Figure 6 The invention is a block diagram of a DSP accelerated implementation device of a two-norm constrained thin matrix indirect singular value decomposition according to an exemplary embodiment. DETAILED DESCRIPTION
[0043] In order to facilitate the understanding of the scheme of the present invention, the relevant state of the prior art and the inventive concept of the present invention are first briefly described.
[0044] Singular value decomposition is one of the important matrix decompositions in linear algebra. It is a generalization of eigendecomposition on any matrix and is widely used in image processing, signal processing, artificial intelligence and other fields. In infrared dim target detection, it is necessary to decompose the image to obtain the background image and the target image. In the process of decomposing the image, multiple singular value decompositions are required to obtain the main information of the image. Common singular value decomposition methods include QR iteration-based methods and Jacobi iteration-based methods, among which the Jacobi algorithm is easy to implement parallel processing and speed up the calculation speed. Infrared dim target detection is usually implemented by an embedded combination of DSP (Digital Signal Processor) + FPGA (Field Programmable Gate Array). Since Jacobi rotation transformation involves repeated data reading and writing, frequent vector exchange, and a large number of loop iterations, FPGA development is difficult. Therefore, the present invention proposes a DSP acceleration implementation method of indirect singular value decomposition of a slender matrix with a two-norm constraint to solve this technical problem.
[0045] Figure 1 FIG. 1 is a flowchart of a DSP accelerated implementation method of a two-norm constrained thin matrix indirect singular value decomposition according to an exemplary embodiment. Figure 1 As shown, the method includes the following steps.
[0046] S101. Obtain a matrix to be orthogonalized of an initial data type according to an input matrix.
[0047] For example, the process of obtaining the matrix to be orthogonalized according to the input matrix in the present invention can be referred to as follows:
[0048] Assume that the size of the input matrix A is m rows × n columns, and its data type is single-precision floating point number. The matrix B to be orthogonalized is equal to the product of the transpose of the input matrix A and the input matrix A itself, that is, B = A T A. The obtained matrix B to be orthogonalized is saved as a double-precision floating point type, that is, the initial data type of the matrix B to be orthogonalized is a double-precision floating point type. For example, when the size of the input matrix is 256 rows × 128 columns, the matrix B to be orthogonalized = A T A, whose order is 128.
[0049] Optionally, after S101, the method may further include:
[0050] The matrix to be orthogonalized is divided into a plurality of column blocks; wherein each column block contains the same number of column vectors;
[0051] The Jacobi rotation transformation is used to perform orthogonalization processing on multiple column blocks corresponding to the matrix to be orthogonalized through DSP.
[0052] For example, when performing orthogonalization processing on a matrix, the present invention first processes the matrix to be orthogonalized into multiple column blocks. The specific process can be referred to as follows:
[0053] Assuming that the number of DSP cores used for calculation is p, and the number of columns of the matrix to be orthogonalized is n, the matrix to be orthogonalized is divided into 2p column blocks by column. If n is divisible by 2p, each column block contains n / 2p column data. On the contrary, the first 2p-1 column blocks contain n / 2p+1 column data, and the 2pth column block contains n-(n / 2p+1)×(2p-1) column data. For example, when the number of DSP cores used for calculation is 8 and the number of columns of the matrix to be orthogonalized is 128, the matrix to be orthogonalized is divided into 16 column blocks, each containing 8 columns of data.
[0054] S102, performing orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain a processed matrix to be orthogonalized.
[0055] Optionally, S102 may include: performing intra-block orthogonalization processing on multiple column blocks by using Jacobi rotation transformation through DSP to obtain multiple column blocks that have undergone intra-block orthogonalization processing;
[0056] The Jacobi rotation transformation is used to perform inter-block orthogonalization processing on a plurality of column blocks that have undergone intra-block orthogonalization processing through DSP to obtain a plurality of processed column blocks.
[0057] In one embodiment, Figure 2 is a schematic diagram of a Jacobi rotation transformation according to an exemplary embodiment. Figure 2 As shown, 8-core parallel processing is used to divide the matrix to be orthogonalized into 16 column blocks. According to the index generated by the ring sequence, each core rotates two column blocks at a time, and the rotation transformation between all column blocks is completed within 15 stages, making the matrix gradually orthogonal.
[0058] It is worth mentioning that the orthogonalization process is divided into intra-block orthogonalization and inter-block orthogonalization. The process of intra-block orthogonalization can be referred to as follows:
[0059] Figure 3 is a schematic diagram showing a process of intra-block orthogonalization processing according to an exemplary embodiment, such as Figure 3 As shown in the figure, during the intra-block orthogonalization process, a round of Jacobi rotation transformation has 15 stages. In the first stage of each round of rotation transformation, each DSP core regards the two column blocks it is responsible for processing as a whole and performs rotation transformation on the whole. Figure 3As shown in the figure, taking core 0 as an example, in the first stage, core 0 is responsible for processing the 15th column block and the 16th column block, and these two column blocks are combined into a large column block containing 16 columns of data, and the block is orthogonalized. The matrix data is stored in the external storage space DDR of the DSP, and the data needs to be transferred to the internal storage space L2 for calculation to speed up the processing. Figure 3 As shown, core 0 first moves the first column vector and the second column vector of the large column block from DDR to L2, i.e. a1 and a2. Calculate the inner product of the square of the second-order norm of the two column vectors and the two column vectors, i.e. and Let x = α-β, y = 2γ, Where λ is the relaxation factor, 0≤λ<1.
[0060] From the above parameters, the Jacobi rotation matrix can be calculated:
[0061]
[0062] The calculation formulas for sinθ and cosθ are as follows:
[0063] If x>0, then
[0064]
[0065] If x≤0, then
[0066]
[0067] in,
[0068]
[0069] According to the Jacobi rotation matrix, a1 and a2 are rotated to obtain a1′ and a2′ after an orthogonalization process.
[0070] a1′=cosθ×a1-sinθ×a2
[0071] a2′=sinθ×a1+cosθ×a2;
[0072] Setting the initial relaxation factor λ>0 can make the second-order norm of a1′ larger than the second-order norm of a2′.
[0073] After completing the orthogonalization of the two column vectors, a1′ remains in L2, waiting to be orthogonalized with the subsequent column vectors. a2′ is transmitted back to DDR to update the second column data of the column block. Then the third column data is moved from DDR to L2, the rotation matrix is calculated again and the orthogonal transformation of a1′ and a3 is completed to obtain a1″ and a3′. a1″ remains in L2, waiting for subsequent processing, and a3′ is transmitted back to DDR to update the third column data of the column block. Repeat the above steps until the first column data and other column data have completed the orthogonal transformation, and then the final iterative result is Transmitted back to DDR, updating the first column data of the column block; The superscript (15) indicates that a1 has been orthogonalized 15 times, that is, a1 and other column vectors in the same column block have been orthogonalized. Then, the second column data is taken out, and the above steps are repeated to complete the orthogonal transformation of the second column data and the 3rd to 16th column data, and the second column data of the column block is updated again until the orthogonalization between all column vectors in the block is completed.
[0074] Figure 4 is a schematic diagram showing a process of inter-block orthogonalization processing according to an exemplary embodiment, such as Figure 4 As shown, during the inter-block orthogonalization process, since the intra-block orthogonalization process has been completed, the subsequent stage of orthogonalization process only occurs between column blocks, and the orthogonal transformation is no longer repeated within the column block.
[0075] like Figure 4 As shown in the figure, taking core 0 as an example, in the inter-block orthogonalization process, core 0 is responsible for the orthogonalization process between the 16th column block and the 2nd column block. The column blocks with lower sequence numbers are in front, and the column blocks with higher sequence numbers are in the back. Core 0 first takes out the first column vector a1 of the 2nd column block and the first column vector b1 of the 16th column block, calculates the Jacobi rotation matrix, completes the orthogonal transformation of the two column vectors, and obtains a1′ and b1′. b1′ is transmitted back to DDR, and a1′ continues to perform orthogonal transformation with the remaining column vectors of the 16th column block. After completion, the final iterated Move from L2 to DDR, update the first column vector of the second column block. Repeat the above steps to complete the orthogonal transformation between all column vectors between two column blocks.
[0076] It is worth mentioning that during the intra-block orthogonalization processing and inter-block orthogonalization processing, the data in the L2 of the DSP is the temporary data for calculation, and the data saved in the DDR is the final data.
[0077] S103, when the second-order norm of the column vector in the processed matrix to be orthogonalized meets the preset condition, converting the data type of the processed matrix to be orthogonalized from the initial data type to the target data type and performing an orthogonalization process again.
[0078] Optionally, the preconditions are as follows:
[0079] ||c1||2≥||c2||2≥||c3||2≥…≥||c k-2 ||2≥||c k-1 ||2≥||c k ||2;
[0080] Among them, ||·||2 means finding the second-order norm, c n Represents the nth column vector in the matrix to be orthogonalized after processing, n∈[1,k], and k represents the total number of column vectors in the matrix to be orthogonalized after processing.
[0081] It is understandable that each time the matrix to be orthogonalized is orthogonalized, it needs to determine whether it meets the preset conditions. Only when the preset conditions are met will its data type be converted and orthogonalized again and the subsequent steps be performed. The target data type is single-precision floating point type. When the second-order norm of the column vector in the processed matrix to be orthogonalized meets the preset conditions, the data type of the matrix to be orthogonalized is converted from double-precision floating point type to single-precision floating point type, which can speed up the calculation.
[0082] S104, setting the relaxation factor corresponding to the matrix to be orthogonalized after the orthogonalization process to zero, and then continuing the orthogonalization process until the convergence condition is met, thereby obtaining an iteratively completed matrix.
[0083] Optionally, the convergence condition is as follows:
[0084]
[0085] Among them, d n represents the nth column vector in the matrix to be orthogonalized after this orthogonalization process, d n ' represents the nth column vector in the matrix to be orthogonalized after the relaxation factor is set to zero and the orthogonalization process is continued, and ε is the threshold value approaching 0.
[0086] It can be understood that the matrix to be orthogonalized after the orthogonalization process is a matrix obtained by converting the data type of the matrix to be orthogonalized after the process from an initial data type to a target data type and then performing an orthogonalization process again.
[0087] S105. Obtain a left singular matrix, a right singular matrix and singular values of the input matrix according to the iterated matrix.
[0088] Optionally, S105 may include:
[0089] The right singular matrix of the input matrix is obtained according to the iteratively completed matrix and the second-order norm corresponding to the iteratively completed matrix;
[0090] The singular values of the input matrix are obtained according to the second-order norm corresponding to the matrix completed by iteration;
[0091] Returns the left singular matrix of input matrix from the right singular matrix and singular values of input matrix.
[0092] It can be understood that when the number of rows of the input matrix A is greater than or equal to the number of columns, the iterated matrix is denoted as Z, and the second-order norm of its column vector is ||z n ||2, n=1~k. The right singular matrix V can be calculated by dividing the column vectors of the iterated matrix Z by the corresponding second-order norm, and the singular values of the input matrix A are The left singular matrix is:
[0093] U=AVΣ -1 ;
[0094]
[0095] According to the above formula, the left singular matrix, the right singular matrix and the singular values of the input matrix can be obtained according to the matrix completed by iteration.
[0096] In one embodiment, Figure 5 is a comparison diagram of a traditional method and the method of the present invention according to an exemplary embodiment, using a DSP chip of model TMS320C6678, with a main frequency set to 1 GHz, an initial relaxation factor λ = 0.001, and a threshold value ε = 1e -5 . The 8-core parallel singular value decomposition of matrices with 128 columns and different numbers of rows is performed. The time consumed by the two algorithms is as follows: Figure 5 As shown, according to Figure 5 , under the condition that the number of matrix columns remains unchanged, when the number of matrix rows and columns is equal, the method of the present invention takes less time, but the time difference with the traditional method (traditional Jacobi algorithm) is not much. However, as the number of rows increases, the time difference between the method of the present invention and the traditional method increases, and the acceleration ratio gradually increases. For slender matrices with a number of rows far greater than the number of columns, the method of the present invention has higher computational efficiency.
[0097] Figure 6 is a block diagram of a DSP acceleration implementation device for indirect singular value decomposition of a thin matrix with a two-norm constraint according to an exemplary embodiment, such as Figure 6 As shown, the device 600 includes:
[0098] A matrix acquisition module 601 is used to obtain a matrix to be orthogonalized of an initial data type according to an input matrix;
[0099] The first matrix processing module 602 is used to perform orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain a processed matrix to be orthogonalized;
[0100] A data type conversion module 603 is used to convert the data type of the processed matrix to be orthogonalized from the initial data type to the target data type and perform an orthogonalization process again when the second-order norm of the column vector in the processed matrix to be orthogonalized meets a preset condition;
[0101] The second matrix processing module 604 is used to set the relaxation factor corresponding to the matrix to be orthogonalized after the orthogonalization process to zero and then continue the orthogonalization process until the convergence condition is met to obtain an iteratively completed matrix;
[0102] The singular value decomposition module 605 is used to obtain the left singular matrix and the right singular matrix and the singular values of the input matrix according to the iterated matrix.
[0103] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0104] The preferred embodiments of the present invention are described in detail above in conjunction with the accompanying drawings. However, the present invention is not limited to the specific details in the above embodiments. Within the technical concept of the present invention, a variety of simple modifications can be made to the technical solution of the present invention, and these simple modifications all belong to the protection scope of the present invention.
[0105] It should also be noted that the various specific technical features described in the above specific embodiments can be combined in any suitable manner without contradiction. In order to avoid unnecessary repetition, the present invention will not further describe various possible combinations.
[0106] In addition, various embodiments of the present invention may be arbitrarily combined, and as long as they do not violate the concept of the present invention, they should also be regarded as the contents disclosed by the present invention.
Claims
1. A DSP accelerated implementation method for indirect singular value decomposition of a slender matrix with a two-norm constraint, characterized in that: The method comprises: Obtain the matrix to be orthogonalized of the initial data type according to the input matrix; Performing orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain the processed matrix to be orthogonalized; When the second-order norm of the column vector in the processed matrix to be orthogonalized meets the preset condition, the data type of the processed matrix to be orthogonalized is converted from the initial data type to the target data type and orthogonalization is performed again; After the relaxation factor corresponding to the matrix to be orthogonalized after the orthogonalization is set to zero, the orthogonalization process is continued until the convergence condition is met to obtain the iteratively completed matrix; A left singular matrix, a right singular matrix and singular values of the input matrix are obtained according to the iterated matrix.
2. The DSP accelerated implementation method of the indirect singular value decomposition of a thin matrix with a two-norm constraint according to claim 1 is characterized in that: After obtaining the matrix to be orthogonalized according to the input matrix, the method further includes: Dividing the matrix to be orthogonalized into a plurality of column blocks; wherein each column block contains the same number of column vectors; The DSP uses the Jacobi rotation transformation to perform orthogonalization processing on multiple column blocks corresponding to the matrix to be orthogonalized.
3. The DSP accelerated implementation method of the indirect singular value decomposition of a thin matrix with a two-norm constraint according to claim 2 is characterized in that: The method of performing orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain the processed matrix to be orthogonalized includes: Performing intra-block orthogonalization processing on the plurality of column blocks by using the Jacobi rotation transformation through the DSP to obtain a plurality of column blocks that have undergone intra-block orthogonalization processing; The DSP uses the Jacobi rotation transformation to perform inter-block orthogonalization processing on the multiple column blocks that have undergone intra-block orthogonalization processing to obtain multiple processed column blocks.
4. The DSP accelerated implementation method of the indirect singular value decomposition of a thin matrix with a two-norm constraint according to claim 1 is characterized in that: The initial data type is a double-precision floating point type, and the target data type is a single-precision floating point type.
5. The DSP accelerated implementation method of the indirect singular value decomposition of a thin matrix with a two-norm constraint according to claim 1 is characterized in that: The pre-conditions are as follows: ||c1||2≥||c2||2≥||c3||2≥…≥||c k-2 ||2≥||c k-1 ||2≥||c k ||2; Among them, ||·||2 means finding the second-order norm, c n represents the nth column vector in the processed matrix to be orthogonalized, n∈[1,k], and k represents the total number of column vectors in the processed matrix to be orthogonalized.
6. The DSP accelerated implementation method of the indirect singular value decomposition of a thin matrix with a two-norm constraint according to claim 5 is characterized in that: The convergence conditions are as follows: Among them, d n represents the nth column vector in the matrix to be orthogonalized after this orthogonalization process, d n ' represents the nth column vector in the matrix to be orthogonalized after the relaxation factor is set to zero and the orthogonalization process is continued, and ε is the threshold value approaching 0.
7. The DSP accelerated implementation method of the indirect singular value decomposition of a thin matrix with a two-norm constraint according to claim 1 is characterized in that: The step of obtaining a left singular matrix, a right singular matrix and singular values of the input matrix according to the iterated matrix comprises: Obtaining a right singular matrix of the input matrix according to the iteratively completed matrix and the second-order norm corresponding to the iteratively completed matrix; Obtaining singular values of the input matrix according to the second-order norm corresponding to the iteratively completed matrix; A left singular matrix of the input matrix is obtained according to the right singular matrix and singular values of the input matrix.
8. A DSP accelerated implementation device for indirect singular value decomposition of a slender matrix with a two-norm constraint, characterized in that: The device comprises: A matrix acquisition module, used for obtaining a matrix to be orthogonalized of an initial data type according to an input matrix; A first matrix processing module, used for performing orthogonalization processing on the matrix to be orthogonalized by using Jacobi rotation transformation through DSP to obtain the processed matrix to be orthogonalized; A data type conversion module, used for converting the data type of the processed matrix to be orthogonalized from an initial data type to a target data type and performing an orthogonalization process again when the second-order norm of the column vector in the processed matrix to be orthogonalized meets a preset condition; The second matrix processing module is used to set the relaxation factor corresponding to the matrix to be orthogonalized after the orthogonalization processing to zero and then continue the orthogonalization processing until the convergence condition is met to obtain the iteratively completed matrix; The singular value decomposition module is used to obtain the left singular matrix, the right singular matrix and the singular values of the input matrix according to the iterated matrix.
Citation Information
Cited By
Singular value decomposition acceleration method and device based on GPGPU (General Purpose Graphics Processing Unit)
CN119537381A
