葡萄酒数据集:带多项式核 SVM 超参数调优,多策略寻最优准确率!
```python from sklearn import svm from sklearn.datasets import load_wine from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score # 加载葡萄酒数据集 wine = load_wine() X = wine.data y = wine.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 定义超参数的取值范围 degree_values = [2, 3, 4, 5] c_values = [0.1, 1, 10, 100] best_accuracy = 0 best_degree = 0 best_c = 0 # 遍历超参数组合进行调优 for degree in degree_values: for c in c_values: # 创建支持向量机分类器 clf = svm.SVC(kernel='poly', degree=degree, C=c) # 训练模型 clf.fit(X_train, y_train) # 在测试集上进行预测 y_pred = clf.predict(X_test) # 计算准确率 accuracy = accuracy_score(y_test, y_pred) # 更新最优超参数和准确率 if accuracy > best_accuracy: best_accuracy = accuracy best_degree = degree best_c = c print("最优的 degree 取值为:", best_degree) print("最优的 C 取值为:", best_c) print("最大准确率为:", best_accuracy) ``` 额外需要注意的逻辑点: 1. 数据划分的随机性可能会影响结果,可多次运行以获取更稳定的评估。 2. 超参数的取值范围可以根据实际情况进一步扩大或细化。 3. 考虑使用交叉验证来更全面地评估模型性能。 ######[AI写代码神器 | 418点数解答 | 2024-12-17 22:15:53]
- 易语言:实现搜索通配符功能,解决搜索内容超255问题(字节豆包 | 32点数解答 | 2026-02-09 16:44:31)62
- 代码优化:“A_寻找通配符”子程序的改进之路(字节豆包 | 1248点数解答 | 2026-02-09 16:45:52)63
- 易语言:A_寻找通配符子程序完整实现及详细代码解读(字节豆包 | 1368点数解答 | 2026-02-09 16:49:12)61
- Java代码实现从JSON数据中提取ID,涉及“数据”与“项目 - 知识库”结构(字节豆包 | 603点数解答 | 2025-04-15 22:48:51)255
- C++ 实现:计算一排鹅与最高、最矮鹅的身高差及代码详解(字节豆包 | 549点数解答 | 2025-11-16 20:19:06)105
- 编程揭秘:计算 𝑛! 在 𝑃 进制下末尾零个数的方法与代码实现(DeepSeek | 549点数解答 | 2026-01-11 17:49:54)63
- 易语言代码优化:自动出售物资子程序整合与优化全解析(DeepSeek | 2181点数解答 | 2025-07-23 10:26:29)230
- 大文件多线程上传流程全解析:从步骤说明到代码示例及注意事项(字节豆包 | 1079点数解答 | 2025-09-24 13:45:27)130
- 易语言:实现 Api 读取整数型内存数据的代码剖析(字节豆包 | 34点数解答 | 2026-02-09 11:48:57)34
- Visual C++ 6.0:实现 n×n 矩阵最大最小元素所在行对调及输出(字节豆包 | 648点数解答 | 2024-11-02 10:23:57)322
- 洛谷:根据邮件重量与加急情况精准计算邮费(字节豆包 | 88点数解答 | 2024-11-09 15:33:30)422
- Python实现:根据邮件重量与加急选择精准计算邮费(阿里通义 | 554点数解答 | 2024-11-09 15:34:05)430