这项工作涉及通过核范数和 L21 最小化从其低维投影中恢复低秩和联合稀疏矩阵。 % 最小化 ||X||*+||DX||2,1(核范数 +l21 范数) % 受制于 A(X) = Y 我们同样使用分裂 Bregman 算法。 % 最小化 1/2||y-Ax||^2 +lambda1||W||* +lambda2||DZ||2,1 +eta1/2||WX-B1||^2 +eta2/2||ZX-B2||^2 %W 和 Z 是代理变量B1 和 B2 是 Bregman 变量Bregman 技术的使用提高了重建的收敛性和准确性。
2021-09-27 15:40:54 6KB matlab
1
使用C语言,利用稀疏矩阵,完成矩阵压缩存储。详细可见博文:https://blog.csdn.net/qq_44075108/article/details/115435408
2021-09-25 19:02:53 216KB 数据结构 C语言
1
matlab代码循环运行 SparseMatrix Implement the storage and operation of sparse matrix in matlab. 按行三数组与全存储相互转换 全存储转换为三数组 通过两个for循环将全矩阵转换为按行三数组存储模式,时间复杂度为$O(n^2)$,运行结果见下图,转换结果的正确性可以通过后续运算过程体现出来 三数组转换为全存储 通过两个for循环,其中一个for循环对行遍历,然后第二个for循环对该行非零元素(含对角元)进行遍历。假设每行非零元分布大体均匀,于是时间复杂度为$O(n\times \frac{N}{n}) = O(N)$,考虑极端情况,时间复杂度为$O(n\times N)$。 运行结果如下图所示,转换结果的正确性可以通过后续运算过程体现出来。 按行三数组与Matlab稀疏存储 Matlab稀疏存储转换为按行三数组存储 首先通过对非零行元素从小到大排序,然后对非零元按行进行遍历进而online转换为三数组存储,对某行全空对对角元进行操作,因为是online的,所以可以判断时间复杂度为$O(n)$ 运行结果如下图
2021-09-25 14:49:19 129KB 系统开源
1
稀疏矩阵的存储,包括:DIA(diagonal non-zeros)、ELLPACK、COO、CSR、HYB(ELLPACK+COO)、DOK(MAP-based)、LIL(List-based)等多种存储格式,内含文档与源码。没有哪种格式占绝对优势,视情况选用。当然还有四元树等其它方法,有兴趣的朋友请留言~
2021-09-24 15:26:53 82KB 稀疏矩阵,存储,dia ellpack coo csr
1
此函数使用方形稀疏矩阵 A 的填充级别 k 计算不完全 LU 分解的 LU 因子。 Matlab 的 ilu 函数提供基于阈值的丢弃策略的 ILU(0) 和 ILU,但不提供具有一般填充级别的 ILU(k)克。 该代码是作为 C++ MEX 文件实现的,并针对速度进行了优化,同时尝试最大限度地减少内存使用。 请注意,对于 ilu(0) 分解,应该使用 Matlab 的内置 ilu 函数,因为它已经针对这种情况进行了优化,并且速度会更快。 参考: 1. Saad, Y.,稀疏线性系统的迭代方法,SIAM,宾夕法尼亚州费城,第 2 版,2003 年。 2. Dong, X. 和 Cooperman, G.,计算机集群和多核机器上面向任务的并行 ILU(k) 预处理,预印本,arXiv:0803.0048 [cs.DC],2011 年。
2021-09-23 21:44:58 9KB matlab
1
稀疏矩阵运算器 以“带行逻辑链接信息”的三元组顺序表示矩阵,实现两个矩阵相加、相减和相乘的运算。稀疏矩阵的输入形式采用三元组表示,而运算结果的矩阵则以通常的阵列形式列出。
2021-09-08 12:30:47 3.49MB 稀疏 矩阵 MFC 运算器
1
Vcpkg安装稀疏矩阵工具Blaze所需程序包,包括配置过程
2021-09-08 12:02:47 302.46MB 稀疏矩阵库 Vcpkg Blaze SparseMatrix
1
##稀疏矩阵向量乘法与 MPI 并行 ###Design 使用 MPI 并行化稀疏矩阵向量乘法: 在步骤 1 中使用一维行分解读取文件并将数据分发到所有处理器,这需要 O(n) 然后 O(nnz) 其中 n 是行数,nnz 是矩阵。 矩阵 A 数据以 CSR 格式读入和存储,其中包括三个数组:行指针、非零的列索引和矩阵值。 步骤 1 还涉及使用 MPI Bcast 将数据分发到 p 个处理器。 每个进程准备使用 prepareRemoteVec 函数获取它需要的非本地 Vector 元素。 在这里,它遍历矩阵的本地列索引并检查所需的远程向量条目是什么,然后调整本地向量数据数组 (vSize + numRemoteVec) 的大小,以在数组末尾保存来自其他处理器的这些附加远程向量条目。 最后,我们需要重新索引本地列索引数组(之前指向全局向量数据索引)。 我们遍历本地列索引数组,并让它们指
2021-09-07 11:14:39 10KB C
1
使用CUDA和GPGPU为稀疏矩阵生成近似逆预处理器
2021-09-01 10:34:46 389KB 研究论文
1
行业-电子政务-基于稀疏矩阵的矿井高压电网漏电保护整定计算方法.zip