VMD如何确定分解层数(四):通过原始信号和分解信号之间的MAPE判断(一定准则判断)

之前的博文已经介绍了三种关于VMD分解的方法,这里同样介绍一种,通过一定判据来确定VMD分解层数的方法。

同样,VMD分解的一些原理,不做赘述,大家看下《浅谈VMD---变分模态分解》,这一篇博主之前写的文章即可。

本文介绍的新方法,关于分解层数的判断依据,相应公式比较简单,如下。

                           

f代表要分解的原始数据,uk(t)代表分解后的各个模态。公式的含义就是求取,原始数据,与分解后各个模态相加后的数据,之间的MAPE(说的有点绕口哈,但是这样不会引起歧义。)代表 分解后各模态的相加值。

(如果不明白什么是MAPE,自己动手查一下,很简单,是一个精度度量标准。)

具体的判断方式,原文表述如下:

“但是,模型需要一个预设的模态数k,这限制了该方法的适应性,因为模态数的较大偏差会导致一些模态被丢弃或导致模态混合。因此,在VMD技术中引入了残能与原始信号能量之比作为优化指标,即原始信号分解后的残差。当比值小于1%时,确定最终模态数”

上文中,提到的残差,即:,当残差与原始信号的比值小于1%时,即可选定最佳分解模态数。

直接上代码:

我们在代码中做了一个循环,分解层数从2到10。并记录每一次分解后,计算得到的MAPE值。

这是具体计算的结果,

 

将结果呈现在下图:

因为分解层数从2开始循环到10,序号1-9就对应着分解层数2-10,很简单的逻辑问题。

根据判断标准,最开始小于1%的为序号7,也就是分解层数为8最合适(符合判定依据)。

以上就是本文所介绍的VMD确定分解层的一种方法。大家可参考下原文理解。

Hourly Day-Ahead Wind Power Prediction Using the Hybrid Model of Variational Model Decomposition and Long Short-Term Memory - 百度学术 (baidu.com)icon-default.png?t=M4ADhttps://xueshu.baidu.com/usercenter/paper/show?paperid=1t1u0vd09q1j04u08d4m0t908p419297tip:不同的数据,出现1%临界值时,会有不同的分解层数。大家不要有固定思维,看看自己的数据合不合适,这里提供一种方法。

  • 4
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值