BLAS/ARPACK/LAPACK

本文介绍了Spark机器学习库MLlib中的linalg包,主要依赖于Breeze库进行矩阵运算,包括SVD和PCA。Breeze基于netlib-java和jblas,这两者是对BLAS、LAPACK和ARPACK Fortran子库的包装。ARPACK主要用于大规模稀疏矩阵的部分特征值计算,而LAPACK则是一个全面的线性代数库,支持稠密和稀疏矩阵。BLAS作为基础线性代数子程序,为高级数学编程提供底层支持。Spark和MATLAB等工具通过这些库实现高效数值计算。
摘要由CSDN通过智能技术生成

来自wiki ARPACK  LAPACK BLAS

         

           首先,spark里面有个机器学习的库MLlib,MLlib里面有个线性代数包linalg,linalg里面主要实现了稠密矩阵,向量,还有三种分布式矩阵,我们主要用到的就是这个linalg包下面的SVD分解和PCA。观察源代码,发现linalg里面引用了Breeze库。Breeze是什么呢?就看本博客的第一篇文章。简单的说Breeze是用scala语言实现的数值运算库,里面有linalg这种线性运算包,可以进行矩阵,甚至是张量运算。Breeze又隶属于ScalaNLP 工程。ScalaNLP又是什么呢?这就扯远了。。。主要是Breeze又基于netlib-java jblas.然后呢,netlib-java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值