您知道 scikit-learn 中的模型是否使用自动多线程或仅使用顺序指令吗?
Thanks
不会。默认情况下,所有 scikit-learn 估计器仅在单个线程上工作。
但话又说回来,这一切都取决于算法和问题。如果算法需要顺序数据,我们就无能为力。如果数据集是多类或多标签并且算法在一对一的基础上工作,那么它可以使用多线程。
寻找一个参数n_jobs
在您想要使用的实用程序或算法中,并将其设置为-1
用于使用多线程。
For eg.
逻辑回归如果处理二进制问题只会训练一个模型,这将需要顺序数据,所以这里使用n_jobs
没有影响。但它像 OvR 一样处理多类问题,因此必须使用相同的数据来训练许多估计器。在这种情况下,您可以使用n_jobs=-1
.
决策树分类器本质上是多类启用的,不需要训练多个模型。所以我们那里没有那个参数。
集成方法如随机森林分类器将训练多个估计器(无论问题类型如何),它们分别处理数据的某些部分,所以在这里我们再次可以利用n_jobs
.
交叉验证实用程序,例如cross_val_score or 网格搜索简历将再次处理数据的某些部分或某些单独的参数,这些参数独立于其他折叠,因此这里我们也可以使用多线程功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)