如何通过网格搜索优化模型评估效果?

2026-05-25 04:561阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计273个文字,预计阅读时间需要2分钟。

如何通过网格搜索优化模型评估效果?

了解如何评估一个模型的泛化能力:交叉验证+调整学习率参数来提升模型泛化能力+网格搜索:尝试我们关心的参数的所有可能组合+简单网格搜索+from sklearn。

如何通过网格搜索优化模型评估效果?

我们已经知道如何评估一个模型的泛化能力:交叉验证
接着学习如何通过调参来提升模型的泛化能力

⭐网格搜索:尝试我们所关心的参数的所有可能组合

1、简单网格搜索

from sklearn.svm import SVC from sklearn.model_selection import train_test_split from sklearn.datasets import load_iris #在两个参数上使用for循环 #加载数据 iris = load_iris() X_train,X_test,y_train,y_test = train_test_split(iris.data,iris.target,random_state=0) best_score = 0 p={} C = [0.001,0.01,0.1,1,10,100] G = [0.001,0.01,0.1,1,10,100] for c in C: for g in G: svc = SVC(C=c,gamma=g) svc.fit(X_train,y_train) score = svc.score(X_test,y_test) if score > best_score: best_score = score p = {'C':c,'gamma':g} print("best score:{}".format(best_score)) print('best parameters:{}'.format(p)) ''' 输出 ``` best score:0.9736842105263158 best parameters:{'C': 0.1, 'gamma': 1} ``` '''

本文共计273个文字,预计阅读时间需要2分钟。

如何通过网格搜索优化模型评估效果?

了解如何评估一个模型的泛化能力:交叉验证+调整学习率参数来提升模型泛化能力+网格搜索:尝试我们关心的参数的所有可能组合+简单网格搜索+from sklearn。

如何通过网格搜索优化模型评估效果?

我们已经知道如何评估一个模型的泛化能力:交叉验证
接着学习如何通过调参来提升模型的泛化能力

⭐网格搜索:尝试我们所关心的参数的所有可能组合

1、简单网格搜索

from sklearn.svm import SVC from sklearn.model_selection import train_test_split from sklearn.datasets import load_iris #在两个参数上使用for循环 #加载数据 iris = load_iris() X_train,X_test,y_train,y_test = train_test_split(iris.data,iris.target,random_state=0) best_score = 0 p={} C = [0.001,0.01,0.1,1,10,100] G = [0.001,0.01,0.1,1,10,100] for c in C: for g in G: svc = SVC(C=c,gamma=g) svc.fit(X_train,y_train) score = svc.score(X_test,y_test) if score > best_score: best_score = score p = {'C':c,'gamma':g} print("best score:{}".format(best_score)) print('best parameters:{}'.format(p)) ''' 输出 ``` best score:0.9736842105263158 best parameters:{'C': 0.1, 'gamma': 1} ``` '''