全文共5211字,预计学习时长10分钟

GPU加速如今变得越来越重要。这种转变的两个主要驱动因素是:
1. 世界每年的数据量都在翻倍。
2. 由于量子领域的限制,摩尔定律即将结束。
为了证实这一转变,越来越多的在线数据科学平台正在添加支持GPU的解决方案。例如:Kaggle、谷歌Colaboratory、Microsoft Azure和亚马逊网络服务(AWS)。
本文首先介绍NVIDIA开源Python RAPIDS库,接着实际说明RAPIDS如何将数据分析速度提高到原来的50倍。
本文使用的所有代码都可以在GitHub (https://github.com/pierpaolo28/Artificial-Intelligence-Projects/tree/master/NVIDIA-RAPIDS AI?source=post_page---------------------------)和谷歌Colaboratory (https://colab.research.google.com/drive/1oEoAxBbZONUqm4gt9w2PIzmLTa7IjjV9?source=post_page---------------------------)中找到并使用。
RAPIDS
为了处理大量的数据,在过去几年中提出了许多解决方案,比如MapReduce, Hadoop and Spark。
RAPIDS现在被设计为数据处理的下一个发展阶段。由于其Apache Arrow的内存格式,与Spark内存处理相比,RAPIDS可以提高50倍左右的速度(图1),此外,还可以从一个扩展到多个GPU。
所有RAPIDS库都是基于Python的,并且都设计了类似于Pandas和Sklearn的接口,以便采用。

所有RAPIDS包现在都可以在 Anaconda, Docker and cloud-based solutions (如谷歌Colaboratory)上免费使用。
RAPIDS结构是基于不同的库来实现数据科学从一端到另一端的加速(图2),其主要组成部分为:
• cuDF =用于执行数据处理任务(如Pandas)。
• cuML =用于创建机器学习模型(如Sklearn)。
• cuGraph =用于执行绘图任务(图论Graph Theory)。
RAPIDS还结合了:用于深度学习的PyTorch & Chainer,用于可视化的Kepler GL,以及用于分布计算的Dask。

演示
现在,将演示如何使用RAPIDS比使用Pandas和Sklearn更快地进行数据分析。使用到的所有代码都可以在谷歌 Google Colaboratory上找到,所以可以随时亲自测试!
为了使用RAPIDS,首先让谷歌Colaboratory notebook与Tesla T4 GPU在GPU模式下使用,然后安装所需的依赖项(指南可在Google Colabortory notebook上找到)。
预处理
一旦一切都设置好了,就可以导