如何实现svr中的几个参数优化,网格或者遗传算法有案例代码吗
来源:11-3 Soft Margin SVM
qq_慕姐45445
2019-03-05
如何实现svr中的几个参数优化,网格或者遗传算法有案例代码吗
2回答
-
qq_慕姐45445
提问者
2019-04-22
BOBO老师您好,看了你的回复我尝试了SVR的网格搜索不知道哪里出错了:
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
boston = datasets.load_boston()
x = boston.data
y = boston.target
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import Pipeline
from sklearn.svm import SVR
def RBFKernelsvr(C=1,gamma=1.0):
return Pipeline([
("std_scaler",StandardScaler()),
("svc",SVR(kernel="rbf",gamma=gamma,C=C))
])
svr = RBFKernelsvr()
# 准备待搜索的参数列表
C_PARM = [0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8]
param_grid = [
{
'gamma': [i for i in C_PARM],
'C':[i for i in range(1, 11)]
}
]
from sklearn.model_selection import GridSearchCV
grid_search = GridSearchCV(svr, param_grid)
grid_search.fit(x,y)
print(grid_search.best_estimator_)
print(grid_search.best_params_)
svr0=grid_search.best_estimator_
print(svr0.score(x,y))
042019-04-23 -
liuyubobobo
2019-03-06
课程中介绍的网格搜索算法,可以用于对任意机器学习算法进行调参。具体参考课程4-6所介绍的网格搜索。
在这个问答中,我又以逻辑回归为例,简述了怎么融合更为复杂的Pipeline,进行调参,可以参考:http://coding.imooc.com/learn/questiondetail/61679.html
将这个代码中的 LogisticRegression 类,换成SVR,就是对SVR调参了(当然要包含对应的参数):)
遗传算法不是这个课程的内容。抱歉。
继续加油!:)
00
相似问题