Python 在scikit learn'中指定say n_jobs=-1时;s包,我们需要先导入joblib.Parallel吗?
当使用scikit learn软件包(该软件包可以选择Python 在scikit learn'中指定say n_jobs=-1时;s包,我们需要先导入joblib.Parallel吗?,python,scikit-learn,parallel-processing,joblib,Python,Scikit Learn,Parallel Processing,Joblib,当使用scikit learn软件包(该软件包可以选择n_作业的值进行并行处理)时,我们是否需要首先导入joblib.parallel,或者scikit learn软件包是否可以在并行处理中工作,而无需首先导入joblib.parallel 一些具有并行处理功能的scikit学习包包括: sklearn.linear_模型.逻辑回归 xgboost.XGBRegressor xgboost.XGBClassifier 等等 Q:“…我们是否需要首先导入joblib.Parallel或scik
n_作业
的值进行并行处理)时,我们是否需要首先导入joblib.parallel
,或者scikit learn软件包是否可以在并行处理中工作,而无需首先导入joblib.parallel
一些具有并行处理功能的scikit学习包包括:
- sklearn.linear_模型.逻辑回归
- xgboost.XGBRegressor
- xgboost.XGBClassifier
joblib.Parallel
或scikit learn软件包是否需要先导入joblib.Parallel
”
B是正确的:scikit learn将发挥作用,因为它的设计和实施是正确的,以便管理自己的内部需求,以便导入它有意依赖的任何包。这是一个专业的软件标准,它充分考虑了自身的内部依赖性,不是吗
以下人员的奖金部分: 那些确实想看到诀窍的人-检查在一个包源代码级别上完成的继承方式,从下面报告的文件中可以明显看出:
不,您不必导入
joblib
谢谢@Chris。查看具有并行处理选项的各种scikit学习包的源代码,如果我们没有首先导入joblib
,包如何定位joblib
?非常感谢。非常感谢@user3666197对您的帮助。这里的关键是scikit学习包具有来自scikit学习的baseestimator的内置继承
(base) Tue Mar 17 12:00:34 a64FX:~$ grep -R "joblib.Parallel" /home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/decomposition/online_lda.py: parallel : joblib.Parallel (optional)
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/decomposition/online_lda.py: Pre-initialized instance of joblib.Parallel.
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/decomposition/online_lda.py: parallel : joblib.Parallel
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/decomposition/online_lda.py: Pre-initialized instance of joblib.Parallel
Binary file /home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/decomposition/__pycache__/online_lda.cpython-35.pyc matches
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py: print("Using %s as joblib.Parallel backend instead of %s "
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py: """Callback used by joblib.Parallel's multiprocessing backend.
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/externals/joblib/_dask.py: joblib.Parallel will never access those results
/home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/externals/joblib/_dask.py: # See 'joblib.Parallel.__call__' and 'joblib.Parallel.retrieve' for how
Binary file /home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/externals/joblib/__pycache__/parallel.cpython-35.pyc matches
Binary file /home/r2d2/anaconda2/pkgs/scikit-learn-0.20.0-py35h4989274_1/lib/python3.5/site-packages/sklearn/externals/joblib/__pycache__/_dask.cpython-35.pyc matches