【IT168 资讯】这里有几个选项可以加速你的机器学习原型。效果最明显的是使用GPGP,因为一张合适的Nvidia显卡会让你回到1K到2K之间。别忘了,你可能需要升级电源和散热风扇。但是,如果你的部门(像大多数人一样)处于预算限制之下(尽管也许你只是把它当作学习经验,或者仅仅是为了娱乐的目的),那么可能需要找到一个加速处理和节省大量资金的中间地带。
这儿给出关于开发平台的一些基本假设/先决条件:
·电脑是基于Intel的(最好是多核心)。
·ML代码是Python,很大程度上依赖于Python数学库。
·愿意将标准Python库替换为针对专有CPU的等效版本。
当然,以上配置肯能不适合每个人,但就适合程度来说,这占据到很大的一部分比例。加速不会达到像增加1,000个GPGPU内核那样的速度,但是它可能会使速度提高三倍,在矩阵适合你CPU的非常好的位置的情况下(L1 / L2现金,数量核心等),加速因子甚至可以接近两位数。
首先,它只适用于英特尔。通常,开源软件不会利用专有的、非标准的指令和操作。由于他们的工程师为这些库编写代码,我们可以期望他们已经挤压了在执行过程中可能会遇到的所有性能问题。价格不是问题,因为它是免费的。你可以从这儿了解更多并下载(https://software.intel.com/en-us/distribution-for-python)。有苹果、Linux和Windows的发行版。库套件有两种:Python 2.7和Python 3.6。
如果你想搞清楚这些库是什么以及它们是如何工作的,英特尔已经提供了一个丰富的30分钟视频(https://software.intel.com/en-us/videos/achieving-high-performance-computing-with-the-intel-distribution-for-python)。
另外(这在视频中有所解释),如果你在云中使用Anaconda(https://anaconda.org),则性能提升可以一直持续存在。由于你的应用程序很可能在云中运行,因此应用程序将拥有比开发站更多的内核和RAM的服务器,你可能会获得更高的速度。也应该能够轻松地将代码移动到云中,并可能将速度提高200倍。
关于RAM的进一步说明:由于计算的改进集中在CPU周围,如果数据适合RAM,则只能看到这些改进。如果你把另外的16、32或64 GB的RAM扔进你的盒子,你将能够适当地(按照今天的标准)解决一些大的训练空间。
今天,大多数机器学习工作都是在严格的原型/测试循环中完成的。数据结构使用最终数据的小部分进行实验。随后,随着原型的改进测试,数据集的大小也随之增加。这样一个小而重要的计算加速将允许你在进入云之前沿着发展螺旋进一步前进。