【发布时间】:2015-09-29 21:15:16
【问题描述】:
我想通过交叉验证使用 scikit-learn 对自定义内核 SVM 进行网格搜索。更准确地关注this example 我想定义一个像
这样的核函数def my_kernel(x, y):
"""
We create a custom kernel:
k(x, y) = x * M *y.T
"""
return np.dot(np.dot(x, M), y.T)
其中 M 是内核的一个参数(如高斯内核中的 gamma)。
我想通过GridSearchCV 提供这个参数 M,类似于
parameters = {'kernel':('my_kernel'), 'C':[1, 10], 'M':[M1,M2]}
svr = svm.SVC()
clf = grid_search.GridSearchCV(svr, parameters)
所以我的问题是:如何定义 my_kernel 以便 M 变量将由 GridSearchCV 给出?
【问题讨论】:
标签: scikit-learn svm cross-validation