SKLearn在其常见问题解答中提出了广泛的要求:
在神经网络之外,GPU 在今天的机器学习中并没有发挥重要作用,而且通过仔细选择算法通常可以实现更大的速度提升。
有人愿意为或反对这一主张添加颜色吗?
SKLearn在其常见问题解答中提出了广泛的要求:
在神经网络之外,GPU 在今天的机器学习中并没有发挥重要作用,而且通过仔细选择算法通常可以实现更大的速度提升。
有人愿意为或反对这一主张添加颜色吗?
GPU 并不天生适合所有机器学习算法。一个自然的竞争者是天生需要无数矩阵乘法的竞争者。这是有道理的,因为图形处理器本来就是为此而设计的。然而,对于像随机森林这样的算法,这可能不是那么重要。将信息传输到 GPU 也存在成本。任何 O(n) 的算法都不应该在 GPU 上计算,因为它需要 O(n) 来传递数据。GPU 还存在其他一些处理 RAM 和线程的问题,每一个问题通常都会使项目的 GPU 变体变得比其价值更麻烦。
此外,将 GPU 添加到 sklearn 框架会固有地增加硬件依赖性和复杂性,这对于浅层算法来说似乎是不必要的。奇怪的是,如果你需要访问你的 GPU,你正在处理一个神经网络,它有它自己独特的架构挑战。我认为将深度学习分离到它自己的模块中(看看 tensorflow/pytorch/etc 项目有多大)比强制 Sklearn 添加硬件依赖项以获得边际计算收益要有意义得多。