PyLops -- 一个用于大规模优化的线性算子Python库

摘要:线性算符和优化是信号和图像处理、遥感和逆问题中许多算法的核心。对于小到中等规模的问题,现有的软件包(如MATLAB、Python numpy和scipy)允许显式构建稠密(或稀疏)矩阵,并进行代数运算(如计算矩阵-向量乘积和矩阵操作),语法与其相应的解析形式非常接近。然而,许多实际应用的大规模算符不能用显式矩阵表示,通常迫使从业人员放弃方便的线性代数语法,而这种语法对于显式矩阵则很容易。 PyLops是一个开源的Python库,提供了一个灵活且可扩展的框架,用于创建和组合所谓的线性算符,这些基于类的实体代表矩阵并继承了它们关联的语法便利,但不依赖于显式矩阵的创建。我们展示了PyLops算符相对于显式矩阵计算可以显著减少内存加载和CPU计算,并且仍然允许用户无缝地使用他们现有的紧凑矩阵基于语法,该语法可以扩展到任何问题规模,因为不需要显式矩阵。

作者:Matteo Ravasi, Ivan Vasconcelos

论文ID:1907.12349

分类:Mathematical Software

分类简称:cs.MS

提交时间:2019-07-30

PDF 下载: 英文版 中文版pdf翻译中