对峰值预测性能的评价指标

  • 一、指标解释
  • 二、计算设计
  • 三、代码如下
  • 四、小结

一、指标解释

我在研究论文的时候观察到了一个性能指标,叫做PPTS(Peak percentage of threshold statistic),翻译过来是:阈值统计的峰值百分比。这篇论文中给出的定义为:
computes the average absolute relative error of predictands of the top γ% streamflow data.The lower the PPTS,the better the capability to forecast peak flow. Note that the recorded streamflow values are arranged in descending order to compute the PPTS and that the threshold level γ denotes the percentage of data selected from the beginning of the arranged data sequence. The parameter G is the number of values above the threshold level γ.
计算公式为:

可以从公式看到,这个PPTS其实就是 一个 平均绝对百分比误差(Mean Absolute Percentage Error,MAPE),但是是将原来的流量序列进行一个降序排列,选择top γ%的数据进行MAPE的计算。

二、计算设计

我利用这个概念自己设计了一个PPTS的计算

  1. 得到y_true(原始流量)的最大值y_max,与最小值y_min。
  2. 设置delta=y_max-y_min。
  3. 设置一个百分比γ,设阈值为Gamma,Gamma=y_min+p*delta
  4. 利用eff=np.where(y_true>Gamma)得到满足y_true>Gamma的元素所在的矩阵位置。
  5. 对满足条件的流量值计算相对误差的绝对值。
  6. 最后求取平均值即可

三、代码如下

// An highlighted block
def PPTS(y_true, y_pred):"""参数:y_true -- 测试集目标真实值y_pred -- 测试集目标预测值返回:mape -- MAPE 评价指标"""p=0.01y_max=np.max(y_true)y_min=np.min(y_true)delta=y_max-y_minGamma = y_min+p*deltamape=0label= np.where(y_true > Gamma)eff=label[0]l=len(eff)for i,a in enumerate(eff):mape = mape+(np.abs((y_true[a,:] - y_pred[a,:]) / y_true[a,:]) * 100)ppts = mape/ lreturn ppts

四、小结

自己设计的这个指标与论文中的PPTS还是有一些不同的,它其实是计算了top(1-γ)的MAPE,不过同样能评估模型对峰值的计算性能了。

峰值预测性能指标PPTS(Peak percentage of threshold statistic)相关推荐

  1. 密度峰值聚类(Density Peak Cluster,DPC)——Python实现

    密度峰值聚类(Density Peak Cluster,DPC)--Python实现 时间:2022/6/29 文章目录 密度峰值聚类(Density Peak Cluster,DPC)--Pytho ...

  2. 独家 | 可预测COVID-19病例峰值的新算法

    作者:Esther Shein 翻译:王晓颖 校对:吴金笛 本文长度为3900字,建议阅读10分钟 本文介绍了新的COVID-19病例峰值预测算法. 标签:COVID-19 预警系统的模型使用的数据是 ...

  3. 【数值分析×机器学习】稀疏矩阵向量乘(SpMV)的运行时间预测(有点意思)

    英文标题:Performance Modeling of the Sparse Matrix-vector Product via Convolutional Neural Networks 中文标题 ...

  4. 初勘数据处理之预测算法(随机森林random forest)附matlab源码

    初勘数据处理之预测算法(随机森林random forest)附matlab源码 集成学习方法 集成学习方法,是整合多个分类方法的预测结果,以提高分类准确率.集成学习方法先用训练数据构建一组基分类器,再 ...

  5. R时间序列分析|SP500股指的ARIMA模型预测与残差ARCH效应分析

    R时间序列分析|S&P500股指的ARIMA模型预测与残差ARCH效应分析 前言 一.数据及分析目的 二.数据探索 三.ARIMA模型构建 四.残差分析 五.模型预测 前言 由于R语言对新手并 ...

  6. 【负荷预测】基于神经网络的负荷预测和价格预测(Matlab代码实现)

    目录 1 概述 2 基于神经网络的负荷预测(Matlab实现) 2.1 代码 2.2 结果  2.3 回归树模型的进一步改进  3 基于神经网络的价格预测(Matlab代码实现)  4 阅读全文(Ma ...

  7. 峰值旁瓣matlab,基于置信图峰值旁瓣比优化的遮挡目标跟踪方法与流程

    本发明属于图像处理技术领域,涉及一种基于置信图峰值旁瓣比优化的遮挡 目标跟踪方法. 背景技术: 目标跟踪是计算机视觉中的热点问题,在行为分析.智能监控.智能交通. 汽车导航以及人机交互等领域扮演着十分 ...

  8. 新型冠状病毒传染性有多强?何时达到疫情峰值?来看一下数学和统计建模结果...

    我是夕小瑶,一只热爱科研和AI的小狐狸 来源 | 机器之心(id: almosthuman2014) 引语:在疫情肆虐的这几天里,国内外的流行病学家.统计学家都没闲着,他们基于疫情爆发初期的一些数据建 ...

  9. 新型冠状病毒传染性有多强?何时达到峰值?来看一下数学和统计建模结果

    点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自机器之心. 机器之心报道 参与:张倩.杜伟 「在家待着就能为国家做贡献」其实不只是一句玩笑话.在疫情肆虐的这几天里,国内外的流行病学家.统计学 ...

最新文章

  1. 为什么 HashMap 加载因子一定是0.75?而不是0.8,0.6?
  2. 搜星流程(1)-[Qualcomm][BSP-GPS]
  3. 今年美国数据中心投资规模超182亿美元 超前三年总和
  4. java程序设置jvm_Java程序员应在2018年学习的3种JVM语言
  5. vector简单应用
  6. java web购物车_java web开发——购物车功能实现
  7. android 播放音乐卡顿,Android MediaPlayer+SeekBar播放音频出现卡顿边长可能问题
  8. js中WINDOW对象中的navigator成员对象
  9. 21世纪——交互设计
  10. [转载] 中华典故故事(孙刚)——01 天要下雨_娘要嫁人
  11. 图像识别深度学习主流方案平台比较
  12. 电涡流传感器9200-06-05-10-00本特利
  13. MySQL数据库 资源
  14. 2017年微商方向选择
  15. 计算机编程语言排行榜—TIOBE世界编程语言排行榜(2021年10月份最新版)
  16. 听听别人怎么说:VueJS 与 ReactJS
  17. Levenshtein Distance编辑距离应用实践——拼写检查(Java fork/join框架实现)
  18. 互联网金融-资金账户系统设计
  19. 制作Retropie系统树莓派掌机(三)
  20. 怎么把图片转换成BMP格式

热门文章

  1. Verilog固定优先级仲裁器——Fixed Priority Arbiter
  2. Selenium浏览器自动化测试使用(1)
  3. 目录 | Flink源码走读
  4. Debian11.2安装Python3.10.5
  5. 管中窥豹——应试教育与一流科学人才差距有多远
  6. Deep Learning Hangzhou Meetup--华为2012实验室深度学习国际群 联合举办
  7. 《Windows Server 2012网络操作系统项目教程》实训报告
  8. pytorch获取模型的中间层输出结果
  9. 【编程思想】计算机领域的所有问题都可以通过增加一个间接的中间层来解决
  10. linux debian u盘安装,Debian U盘安装盘,debian安装盘