ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

反归一化

2022-09-12 14:02:45  阅读:169  来源: 互联网

标签:plt scaler pred 预测值 归一化 data


问题描述:归一化后使用模型进行预测,将预测的结果反归一化为初始的数据规模,预测值与真实值进行画图比较。

1、将特征和标注进行拆分,分别进行归一化

2、特征的归一化

1 from sklearn.preprocessing import MinMaxScaler       # 导包
2 data.name = data.columns     # 获取列名
3 for i in data.name:
4     data[i] = MinMaxScaler().fit_transform(data[i].values.reshape(-1, 1))

3、标注的归一化

1 from sklearn import preprocessing      # 导包
2 
3 scaler= preprocessing.MinMaxScaler(feature_range=(-1, 1)).fit(Y)      # Y是标注
4 Y_scaled = scaler.transform(Y)       # Y_scaled是归一化后的值,此时是 ndarray 类型的值。

4、拆分训练集和测试集

5、使用模型进行预测得到Y_pred

6、将Y_pred进行反归一化,恢复原始的数据规模

1 Y_ = scaler.inverse_transform(Y_pred.reshape(-1,1))         # 反归一化,此时是ndarray类型的值
2 Y_ = pd.DataFrame(Y_, columns=['A'])              # 将ndarray转换为df形式,并设置列名

7、画图进行观察预测值和真实值的曲线

1 plt.figure()       # 设置画板
2 # Y_true.index = [i for i in range(0, len(...))]       # 重置下标,如果下标不一致可以使用这个句子进行调整
3 plt.plot(Y_true['A'], label='真实值')     # 真实值绘图
4 plt.plot(Y_['A'], label='预测值')         # 预测值绘图
5 plt.legend(bbox_to_anchor=(1.05, 0), loc=3, borderaxespad=0)     # 设置图例,我一般将图例放置在右下角
6 plt.show()         # 显示图像

标签:plt,scaler,pred,预测值,归一化,data
来源: https://www.cnblogs.com/xiaoliang-333/p/16686048.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有