深度学习输入不同预测结果相同或类似

问题:SVR模型在训练过程中进行预测时,使用测试集和验证集效果不错。但是训练好之后,加载模型进行预测时,不同的输入都预测出相同的结果。

解决方法:归一化问题,预测时要与训练时用同一个scale_fit归一化。

训练时归一化
scale = StandardScaler()

scale_x = scale.fit(x)

x = scale_x.transform(x)

预测时用同一个scale_x归一化,再预测
x_ test= scale_x.transform(x_test)

clf = joblib.load(svr_save_path)

clf.predict(x_test)

 

一般使用方法:

a) 先用fit

scaler = preprocessing.StandardScaler().fit(X)

这一步可以得到scaler,scaler里面存的有计算出来的均值和方差

 

b) 再用transform

scaler.transform(X)

这一步再用scaler中的均值和方差来转换X,使X标准化

 

c) 那么在预测的时候, 也要对数据做同样的标准化处理,即也要用上面的scaler中的均值和方差来对预测时候的特征进行标准化

注意:测试数据和预测数据的标准化的方式要和训练数据标准化的方式一样, 必须用同一个scaler来进行transform

StandardScaler()使用方法参考链接:https://blog.csdn.net/u011734144/article/details/84066784

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值