在数据科学计算、机器学习、深度学习领域,Python是最流行的语言。在数据科学领域,Python有非常丰富的包可以选择,numpy、scipy、pandas、scikit-learn、matplotlib。但这些库仅限于单机计算。当数据量很大时,比如50GB甚至500GB的数据集,这些库的处理能力就捉襟见肘,打开都非常困难,更别说分析了。本文为大家介绍几款好用的加速工具,可以很好的补充现有PyData技术栈的不足。使用这些工具,您甚至可以轻松处理数十亿的数据。MarsMars是用于numpy、pandas和scikit-learn的并行分布式加速器。它是由阿里云高级软件工程师秦旭野等人开发的基于张量的大规模数据计算的统一框架。它目前在GitHub上是开源的。这个工具可以在多个工作站上使用,即使在单个CPU上,它执行矩阵运算的速度也比NumPy(MKL)快。项目地址:https://github.com/mars-proje...官方文档:https://docs.mars-project.ioDaskDask是一个可以在集群中进行分布式计算的并行计算库,可以使用它在处理大量数据时更加方便和简洁。与Spark等大型数据处理框架相比,Dask更为轻量。Dask更侧重于与其他框架结合,如:Numpy、Pandas、Scikit-learning,这样可以更方便的进行分布式并行计算。项目地址:https://github.com/dask/dask官方文档:https://docs.dask.org/en/latest/CuPyCuPy是一个借助CUDAGPU库在NVIDIAGPU上实现Numpy数组的库。基于Numpy数组的实现,GPU自带的多个CUDA核心可以带来更好的并行加速。CuPy接口是Numpy的镜像,在大多数情况下,它可以作为Numpy的直接替代品。用户只需将Numpy代码替换为兼容的CuPy代码,即可实现GPU加速。项目地址:https://github.com/cupy/cupy官方文档:https://docs-cupy.chainer.org...VaexVaex是一个开源的DataFrame库,适用于与你的硬盘空间一样大的表格数据集,它可以有效地可视化、探索、分析甚至实践机器学习。Vaex利用内存映射、高效外核算法、延迟计算等概念来获得最佳性能(不浪费内存)。一旦数据以内存映射格式存储,即使其磁盘大小超过100GB,也可以用VaexIt立即打开(0.052秒)。项目地址:https://github.com/vaexio/vaex官方文档:https://vaex.readthedocs.io/e...
