You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

训练模型时遇'continuous'错误,从SVC切换至SVR需修改哪些部分?

问题解决:'continuous'错误及SVC转SVR的修改方案

一、解决'continuous'错误

你碰到的'continuous'错误,核心原因是LogisticRegression是分类模型,要求目标变量y是离散的类别值,但你的y_train/y_test是连续数值。

处理方案:

  • 先明确任务类型:如果是分类任务,检查y的数据类型,将其转为类别型(比如y_train = y_train.astype('category')),或者确认数据本身是离散标签格式;如果是回归任务,直接替换成回归类模型(比如LinearRegression、SVR等)。
  • 同时排查数据是否存在异常值或格式问题,确保y的取值符合分类任务的离散要求。

二、从SVC切换到SVR的修改要点

SVC是支持向量分类器,SVR是支持向量回归器,分别对应分类、回归任务,需修改以下关键部分:

1. 模型导入与初始化

原SVC示例代码:

from sklearn.svm import SVC
clf_svc = SVC()

修改为SVR:

from sklearn.svm import SVR
clf_svr = SVR()  # 可按需调整核函数、正则化参数,比如SVR(kernel='rbf', C=1.0)

2. 评估指标替换

分类任务用的accuracy_score、f1_score不适合回归任务,需替换为回归类指标:

from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score

# 训练预测后计算指标
pred = clf_svr.predict(X_test)
mae = mean_absolute_error(y_test, pred)
mse = mean_squared_error(y_test, pred)
r2 = r2_score(y_test, pred)

print(f"SVR MAE: {mae}")
print(f"SVR MSE: {mse}")
print(f"SVR R² Score: {r2}")

3. 任务逻辑确认

确保你的任务确实是回归任务(目标变量为连续值),如果是分类任务,不要切换到SVR,否则会导致模型逻辑错误。

内容的提问来源于stack exchange,提问作者Isabel Rosa Das Neves

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 01:45:32