我一直在尝试进行网格搜索,但有些事情似乎已经过时了。 我的代码是:
grid_search_0 = GridSearchCV(estimator=Pipeline([('vectorizer', CountVectorizer()), ('tfidf', TfidfTransformer()), ('clf', LinearSVC())]),
param_grid={'C': 3**np.arange(-3, 3, dtype='float'),
'gamma': 3**np.arange(-6, 0, dtype='float'), },
cv=10,
scoring=make_scorer(roc_auc_score, needs_threshold=True),
verbose=1,
n_jobs=-1,)
我收到了错误
ImportError: [joblib] Attempting to do parallel computing without protecting your import on a system that does not support forking. To use parallel-computing in a script, you must protect your main loop using "if __name__ == '__main__'". Please see the joblib documentation on Parallel for more information
有没有人遇到并解决过这个问题?我做错了什么?
答案 0 :(得分:2)
这是错误消息的建议,这对您有用吗?
if __name__ == '__main__':
grid_search_0 = GridSearchCV(estimator=Pipeline([('vectorizer', CountVectorizer()), ('tfidf', TfidfTransformer()), ('clf', LinearSVC())]),
param_grid={'C': 3**np.arange(-3, 3, dtype='float'),
'gamma': 3**np.arange(-6, 0, dtype='float'), },
cv=10,
scoring=make_scorer(roc_auc_score, needs_threshold=True),
verbose=1,
n_jobs=-1)
有关其重要性的更多信息,请参阅this Stack Overflow question/answer