ML:根据不同机器学习模型输出的预测值+且与真实值相减得到绝对误差对比+误差可视化

举报
一个处女座的程序猿 发表于 2021/03/30 23:12:07 2021/03/30
【摘要】 ML:根据不同机器学习模型输出的预测值+且与真实值相减得到绝对误差对比+误差可视化       目录 输出结果 实现代码       输出结果   实现代码 # -*- coding: utf-8 -*- #ML:根据不同机器学习模型输出的预测值+且与真实值相减得到绝对误差对比+误差可视化 #Model_comparison_error_Pl...

ML:根据不同机器学习模型输出的预测值+且与真实值相减得到绝对误差对比+误差可视化

 

 

 

目录

输出结果

实现代码


 

 

 

输出结果

 

实现代码


  
  1. # -*- coding: utf-8 -*-
  2. #ML:根据不同机器学习模型输出的预测值+且与真实值相减得到绝对误差对比+误差可视化
  3. #Model_comparison_error_Plot()函数:根据不同模型预测值输出绝对误差对比且可视化
  4. def Model_comparison_error_Plot(list_str01,list_str02,list_num00, Xlabel,Ylabel,title):
  5. #数字列表相减功能:将两个字符串列表改为数字列表并相减
  6. #(1)、依次将两个字符串列表改为数字列表
  7. import numpy as np
  8. list_num01 = list(map(float, list_str01))
  9. list_num02 = list(map(float, list_str02))
  10. #(2)、列表内数字相减求差
  11. #T1、利用array方法
  12. list_array01 = np.array(list_num01)
  13. list_array02 = np.array(list_num02)
  14. list_array00 = np.array(list_num00) #定义标准列表
  15. list_subtraction01 = list_array00 - list_array01
  16. list_subtraction02 = list_array00 - list_array02
  17. print(list_array00)
  18. print('list_subtraction01', list_subtraction01)
  19. print('list_subtraction02', list_subtraction02)
  20. #T2、利用列表的for循环指针对应取出法
  21. error01 = []
  22. error02 = []
  23. for i in range(len(list_num00)):
  24. error01.append(round (list_num01[i] - list_num00[i],3) )
  25. error02.append(round (list_num02[i] - list_num00[i],3) )
  26. print(error01)
  27. print(error02)
  28. #(3)、绘制error曲线
  29. import matplotlib.pyplot as plt
  30. x = range(0,len(list_subtraction01))
  31. y1 = list_subtraction01
  32. y2 = list_subtraction02
  33. y_zero = [0 for x in range(0, len(list_subtraction01))]
  34. plt.plot(x,y_zero,'r--',label='zero')
  35. plt.plot(x,y1,'g',label='STD-DTR')
  36. plt.plot(x,y2,'b',label='STD-XGBR')
  37. plt.xlabel(Xlabel)
  38. plt.ylabel(Ylabel)
  39. plt.title(title)
  40. plt.legend(loc=1)
  41. plt.show()
  42. DTR_list = ['67.330', '66.794', '65.319', '65.435', '67.903', '67.743', '63.994', '62.466', '67.581', '67.505', '64.196', '63.726', '66.749', '67.363', '65.962', '65.630', '66.602', '66.956', '63.730', '63.858', '67.370', '66.902', '63.392', '63.408', '64.428', '73.083', '72.952', '73.561', '73.148', '73.258', '72.558']
  43. XGBR_list = ['66.398', '66.308', '66.197', '66.323', '66.388', '66.388', '65.761', '65.074', '65.516', '65.448', '65.534', '65.530', '64.163', '64.097', '62.860', '62.860', '63.771', '63.926', '62.667', '62.902', '62.981', '62.981', '62.987', '62.897', '66.465', '72.292', '71.947', '71.947', '71.947', '71.947', '71.928']
  44. real_list = [64, 68, 64, 68, 65, 65, 63, 63, 66, 65, 65, 65, 64, 65, 61, 62, 64, 63, 66, 60, 66, 62, 64, 61, 71, 75, 73, 73, 73, 73, 73]
  45. title = 'Comparisons and Visualization of Absolute Errors in Output of Predicted Values of Different Models'
  46. Xlabel = 'working condition'
  47. Ylabel = 'Absolute Error Value'
  48. Model_comparison_error_Plot(DTR_list,XGBR_list,real_list,Xlabel,Ylabel,title)

 

 

 

 

 

文章来源: yunyaniu.blog.csdn.net,作者:一个处女座的程序猿,版权归原作者所有,如需转载,请联系作者。

原文链接:yunyaniu.blog.csdn.net/article/details/94052293

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。