3
我想通过使用scikit-learn的交叉验证为自定义内核SVM执行网格搜索。更确切地说以下this example 我想定义就像在scikit-learn中交叉验证自定义内核SVM
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为内核的参数(如高斯内核伽马)内核功能。
我想通过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给予?