校园网站建设申请报告,安徽省建设安全协会网站,网站开发完整项目平台网站开发,建行企业银行app下载1. 什么是矩阵分解和低秩分解 矩阵分解是将一个矩阵表示为若干结构更简单或具有特定性质的矩阵的组合或乘积的过程。低秩分解#xff08;Low Rank Decomposition#xff09;是其中一种方法#xff0c;旨在将原矩阵近似为两个或多个秩较低的矩阵的乘积#xff0c;从而降低复…1. 什么是矩阵分解和低秩分解 矩阵分解是将一个矩阵表示为若干结构更简单或具有特定性质的矩阵的组合或乘积的过程。低秩分解Low Rank Decomposition是其中一种方法旨在将原矩阵近似为两个或多个秩较低的矩阵的乘积从而降低复杂度、节省存储空间或提取潜在特征。 矩阵的秩是指矩阵中线性无关的行或列的最大数目它反映了矩阵所包含的信息的“维度”。比如一个秩为2的矩阵说明它的行空间或列空间是二维的。低秩分解可能就是把一个矩阵分解成两个或多个秩较低的矩阵的乘积从而近似原始矩阵。
2. 分解的用途 比如在推荐系统中用户-物品评分矩阵可能非常大且稀疏通过低秩分解可以找到潜在因素从而进行预测。或者图像压缩把图像矩阵分解成低秩形式减少存储空间。
3. 具体如何操作 假设有一个大矩阵A其秩r实际上很高或者说满秩。但如果我们想用更低秩的矩阵来近似它比如用秩kkr的两个矩阵B和C的乘积来近似A即A≈BC其中B的列数等于C的行数且这个共同的维度是k。这样原来的矩阵A的每个元素可以表示为B的行和C的列的点积。这样的话存储B和C所需的存储空间可能比原矩阵A小很多特别是当k远小于原矩阵的行数和列数时。 例如假设原矩阵A是m×n的那么存储它需要m×n个元素。如果分解成Bm×k和Ck×n那么总共有k×(m n)个元素。当k远小于m和n时存储量就减少了很多。比如m1000n1000k10那么原矩阵需要1,000,000个元素分解后的两个矩阵只需要10×(10001000)20,000个元素节省了98%的空间。不过这样会损失一些信息所以需要找到最优的B和C使得BC尽可能接近A。这时候可能需要用某种优化方法比如最小化A和BC的Frobenius范数差异如下公式也就是最小二乘法。 求解此公式的方法 奇异值分解SVD截断前 k 个奇异值得到最优低秩近似Eckart–Young 定理。 交替最小二乘法ALS交替固定 B 优化 C再固定 C 优化 B。