目前Python有很多科学计算库,其中NumPy和SciPy是最著名的。然而,这些数据库往往给代数操作和语法使用带来不必要的麻烦,无法直观地管理数据类型。因此,基于此,以Armadilo为底层的PyArmadilo库重构了像Matlab和Octave这样容易使用的语法。此外,由于Pybind11的使用相对简单,Pyarmadilo使用Pybind11连接C++和Python。这个数据库最近正式发行。
1、PyArmadilo的研发经验
Armadilo是C++中与Eigen并驾齐驱的科学计算库。它以其简单易用的特点受到程序员和科学家的青睐,也受到Facebook的青睐、NASA、Boeing、Siemens、DeutscheBank、MIT、CMU、广泛应用于Stanford等公司和大学。此外,Armadilo和Rcpp的主要作者共同开发了Rcparmadilo,这是R语言中最重要的科学计算库,Github每月下载97.2万个。此外,Armadillo作为著名的开源机器学习库之一,也备受关注。
根据Armaddillo主要作者Conradsandsandsanderson的指导建议,Data61级实习生Jasonrumengan在昆士兰科技大学(QUT)本科学习期间,新南威尔士大学(UNSW)本科学习期间,JasonRumengan开发了这个Pyarmadillo库。在Pyarmadilo中,Terry被Conrad邀请与Jason合作开发mat和cube。这两种类型都是中国人。Jason主要负责mat部分和编译,Terry主要负责cube部分、文档和测试。
项目地址:https://github.com/terryyz/PyArmadillo。
具体来说,Pyarmadillo是Python语言强调易用性的线性代数库。该库的设计目的是提供类似于Matlab或Octave的高级语法和功能,使用户能够以熟悉和自然的方式表达数学操作。
PyArmadillo也是一个矩阵和多维数据集(cube)有200多个相关函数用于存储对象中的数据。所有功能均可用于平面结构,并支持整数、浮点和复数。该库集成了LAPACK或IntelMKL、OpenBLAS等高性能替代产品提供了多种矩阵分解。
2、安装指南
PyArmadillo 如下图所示:
安装 PyArmadillo 满足以下要求:
大于 Python3.6,推荐为 3.8 及以上;
支持至少 C++ 11 标准的 C++ 编译器;
至少 8G RAM;
64-bit 的 CPU, 最好 4 核以上;
安装前已安装 OpenBLAS 和 LAPACK。
3、目前支持的操作系统
Linux;
MacOS;
Window x64 (x86 暂时不支持)。
当前 PyArmadillo 仅为 MVP(minimum viable product),更多的功能仍在开发中。