是否有人成功地加快了使用numba和jit编译的学习模型。我正在研究的具体模型是回归模型,如Logistic回归。
我可以使用numba来优化我使用sklearn模型编写的函数,但是模型函数本身并不受此影响,也没有被优化,因此没有提供显著的速度增长。有没有优化学习功能的方法?
任何有关这方面的信息将不胜感激。
发布于 2015-07-15 21:09:49
Scikit-learn大量使用numpy,其中大部分是用C编写的,并且已经编译(因此没有资格进行JIT优化)。
此外,LogisticRegression模型本质上是具有适当损失函数的LinearSVC。我可能对此略有误解,但无论如何,它使用LIBLINEAR来解决问题,这也是一个编译后的C库。
scikit-learn的制造者还大量使用python到编译的系统之一Pyrex,我认为,这再次导致优化的机器编译代码不符合JIT编译的条件。
发布于 2016-05-16 13:54:01
数组的@numba.vectorize和matricies的@numba.guvectorise是装饰器,因为它们可以组合循环操作。它们生成所谓的“ufunc”来实现这个目标,但是不必自己手动编写c代码,而是从python输入生成它。
请参阅:http://numba.pydata.org/numba-doc/dev/user/vectorize.html
https://stackoverflow.com/questions/31435024
复制相似问题