作为没有任何预处理的交叉验证的例子,我可以这样做:
tuned_params = [{"penalty" : ["l2", "l1"]}]
from sklearn.linear_model import SGDClassifier
SGD = SGDClassifier()
from sklearn.grid_search import GridSearchCV
clf = GridSearchCV(myClassifier, params, verbose=5)
clf.fit(x_train, y_train)
Run Code Online (Sandbox Code Playgroud)
我想用类似的东西预处理我的数据
from sklearn import preprocessing
x_scaled = preprocessing.scale(x_train)
Run Code Online (Sandbox Code Playgroud)
但是在设置交叉验证之前执行此操作不是一个好主意,因为培训和测试集将一起标准化.如何设置交叉验证以在每次运行时单独预处理相应的培训和测试集?
我想sklearn.grid_search.GridSearchCV()在多个处理器上并行使用.这是我第一次这样做,但我的初步测试显示它似乎正在起作用.
我试图理解文档的这一部分:
n_jobs:int,默认值为1并行运行的作业数.
pre_dispatch:int,或string,optional控制在并行执行期间调度的作业数.减少此数量可有助于避免在分配的作业多于CPU可处理的内容时消耗内存消耗.这个参数可以是:
无,在这种情况下,所有作业都会立即创建并生成.将此用于轻量级和快速运行的作业,以避免因按需生成作业而导致的延迟一个int,给出生成的总作业的确切数量一个字符串,给出一个表达式作为n_jobs的函数,如' 2*n_jobs'
有人可以为我打破这个吗?我无法理解之间的差异n_jobs和pre_dispatch.如果我设置n_jobs = 5和pre-dispatch=2,这是怎么从刚刚设置不同n_jobs=2?
我是 emacs 新手,以前从未使用过 package-install。我在 Windows 上使用 emacs 24.4,但我想在安装在 ssh 进入的 unix 服务器上的 emacs 上执行相同的操作。
这些说明说我可以安装auto-complete,M-x package-install [RET] auto-complete [RET]但是当我这样做时,我得到了[No match]。为什么是这样?我该如何安装它?