python - 内核 GridSearchCV 参数

标签 python kernel svm gridsearchcv

我们可以像下面这样在Gridserach中搜索内核吗:

我们应该避免哪些参数组合?

parameters = {'C': [0.1, 1, 10, 100, 1000],  
              'gamma': [1, 0.1, 0.01, 0.001, 0.0001,'auto'], 
              'kernel': ['linear', 'poly', 'rbf', 'sigmoid']} 
  Svm = GridSearchCV(Svm, param_grid=parameters, cv=kf,verbose=10)

最佳答案

原则上可以在GridSearch中搜索kernel。但您应该记住,'gamma' 仅对 'rbf''poly''sigmoid'< 有用。这意味着当 'kernel''linear' 时,您将进行冗余计算。更好的方法是使用字典列表而不是字典作为 param_grid 的输入参数:

svm_linear = {'C': [0.1, 1, 10, 100, 1000], 
              'kernel': ['linear']} 
svm_others = {'C': [0.1, 1, 10, 100, 1000],
              'gamma': [1, 0.1, 0.01, 0.001, 0.0001,'auto'], 
              'kernel': ['poly', 'rbf', 'sigmoid']}
parameters = [svm_linear, svm_others]
Svm = GridSearchCV(Svm, param_grid=parameters, cv=kf,verbose=10)

您可以在 scikit-learn 文档中找到类似的参数设置:https://scikit-learn.org/stable/auto_examples/model_selection/plot_grid_search_digits.html

希望这个回答对您有用。 :)

关于python - 内核 GridSearchCV 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64145366/

相关文章:

python - 如何解释作为最后一层 sigmoid 激活输出的深度学习模型的概率预测?

python - mac osx 10.10.2 无法升级python 六包

linux - 为什么在 Linux 中红黑树优先于 AVL 树进行内存管理?

c++ - Opencv 3 SVM trainAuto 是否也缩放标签?

machine-learning - 支持向量机理解

python - Python 可以识别 Excel 单元格中的公式吗?

linux - Linux 是如何记住它的内核堆栈指针的?

assembly - 使引导加载程序和内核成为iso?

java - 使用 Weka 运行 LibSVM 时出现此异常意味着什么?

python - 如何在 python3 中使用列表理解替换值?