[已答复] 变分模态分解VMD中如何设置参数alpha和K使分解效果更好?通过调节alpha和K可以改变什么?

[复制链接]
matlab9038 发表于 2019-9-11 10:18:33
本帖最后由 matlab9038 于 2019-9-11 10:22 编辑

最近在研究变分模态分解(VMD)对复合仿真信号进行分解,对于分解的效果一直不是很满意。在分析的过程中只调节了alpha和K的值我在网上查到了一些资料,alpha代表每个模态初始中心约束强度,K代表模态数这两个参数对分解的结果影响比较大alpha的值初始值为2000,在分析仿真信号时,我一般会把K的值设为分量的个数,但是得到的结果不是很理想,目前的疑问有如下几点:
1. alpha的值如何调节,才能使分解的结果和原始信号比较符合;
2. 在分析仿真信号时,假如由已知的3个信号(其中一个信号为噪声信号)合成了复合信号,对复合信号分解时,K值设为3,但是分解出的信号会受到噪声的影响,如果K设为2的话,得到的分解结果比较理想,但是我不太明白为什么会这样?在处理实验得到的数据时又该如何确定K的值?请问有什么方法呢?
3.变分模态分解得到的分信号形状和原始的分信号一模一样吗?还是只是得到原始信号中不同频率的分信号?我在网上看到这样一种说法,变分模态分解认为信号是由不同频率占优的子信号叠加而成,这个意思是指变分模态分解得到的分信号形状和原始的不一定一样吗?是不是只需要分解后的各信号中包含不同的频率就行了?希望懂的人可以解答一下哦



24 条回复


我想毕业! 发表于 2019-9-15 19:21:02
朋友我最近也在想究竟怎么确定阿尔法值和K值的大小分解效果更好,你现在搞清楚了吗?搞清楚了的话可以麻烦您帮我讲解讲解吗?:'( 还有各个imf的中心频率怎么确定啊?

hero_LOB 发表于 2019-10-4 16:37:47
我想毕业! 发表于 2019-9-15 19:21
朋友我最近也在想究竟怎么确定阿尔法值和K值的大小分解效果更好,你现在搞清楚了吗?搞清楚了的话可以麻烦 ...

你好,请问阿尔法值怎么确定你弄清楚了没啊,中心频率好像看那个omega?

#99# 发表于 2019-11-6 11:32:10
我也用的VMD 去分解时间序列 发现的确是imf和原序列重合不了 而且拟合程度不高 不像EEMD和EMD CEEMD
这样会影响我的预测吗 还有IMF  的个数如何去确定啊  是不是将imf进行傅里叶变换看是否模态混叠

matlab9038 发表于 2019-11-6 21:40:34
#99# 发表于 2019-11-6 11:32
我也用的VMD 去分解时间序列 发现的确是imf和原序列重合不了 而且拟合程度不高 不像EEMD和EMD CEEMD
这样会 ...

应该确定VMD的分解个数和alpha值,这两个很重要

#99# 发表于 2019-11-8 21:27:35
matlab9038 发表于 2019-11-6 21:40
应该确定VMD的分解个数和alpha值,这两个很重要

到底该如何确定?

matlab9038 发表于 2019-11-12 10:26:55
#99# 发表于 2019-11-8 21:27
到底该如何确定?

有很多方法,峭度准则、基于。。算法的参数优化,目前我也还没弄清楚

66啊 发表于 2019-11-12 20:20:10
我最近再用优化算法,但是存在不确定性

matlab9038 发表于 2019-11-13 16:53:39
66啊 发表于 2019-11-12 20:20
我最近再用优化算法,但是存在不确定性

你用的什么优化算法呀,可以附上程序吗

passerby456 发表于 2019-11-22 16:23:09

我的数据事离散数据,一列时间一列数值,怎么确定T、fs、t?
求大佬解答

zyrzyr77 发表于 2019-12-5 11:41:22
alpha   - the balancing parameter of the data-fidelity constraint 数据保真度约束的平衡参数????
代码注释的怎么跟你们说的不太一样?

上山砍柴 发表于 2019-12-16 22:38:22
这个贡献率怎么跑出来啊,有计算过的没
YD`3V$TTA%LS[E(Q)P_MPB5.png

有一种勇气 发表于 2020-1-7 10:50:50
参数优化变分模态分解的代码可以分享一下吗?

matlab9038 发表于 2020-1-7 17:16:45

你现在研究到什么程度了

有一种勇气 发表于 2020-1-7 17:40:50
matlab9038 发表于 2020-1-7 17:16
你现在研究到什么程度了

我昨天才开始准备做,想用粒子群优化优化这两个参数,目前还有做出来,楼主有相关的代码可以分享一下吗?万分感谢

sevenbyee 发表于 2020-1-8 21:41:41
#99# 发表于 2019-11-6 11:32
我也用的VMD 去分解时间序列 发现的确是imf和原序列重合不了 而且拟合程度不高 不像EEMD和EMD CEEMD
这样会 ...

楼主大大可以请教您一下怎么用VMD分解自己的时间序列数据嘛:loveliness:

冷冷的eason 发表于 2020-2-17 13:10:51
我是写了粒子群优化VMD,但是运行速度挺慢、因为粒子群初始参数随机化的问题,每次优化结果都不同

康康康康 发表于 2020-9-14 11:23:55
matlab9038 发表于 2019-11-6 21:40
应该确定VMD的分解个数和alpha值,这两个很重要

请问楼主有优化VMD a和K 参数的优化算法的代码吗,很急需,能给予万分感谢

LeeSnails 发表于 2020-9-14 19:02:30
康康康康 发表于 2020-9-14 11:23
请问楼主有优化VMD a和K 参数的优化算法的代码吗,很急需,能给予万分感谢 ...

请问 能不能一起交流一下VMD呀  :'(

ztr57680398 发表于 2020-9-20 17:26:18
这个问题我也想了解,是不是用过优化算法来选择最合适的惩罚参数啊。我看了一篇论坛写的通过分段的方式可以缓解,有没有用哦

yumiyyd 发表于 2020-11-23 10:33:18
冷冷的eason 发表于 2020-2-17 13:10
我是写了粒子群优化VMD,但是运行速度挺慢、因为粒子群初始参数随机化的问题,每次优化结果都不同 ...

请问您可以分享一下您的VMD优化算法吗

康康康康 发表于 2021-3-15 10:00:26
请问有人知道中心频率怎么计算啊,是程序运行出来的Omega每一列的最后一个数就是对应每个模态的中心频率吗,但是只有零点几啊,为什么呢?

研究生小白 发表于 2021-9-6 20:39:43
康康康康 发表于 2021-3-15 10:00
请问有人知道中心频率怎么计算啊,是程序运行出来的Omega每一列的最后一个数就是对应每个模态 ...

中心频率乘以采样频率就是实际的频率

源道 发表于 2022-5-6 14:07:50
yumiyyd 发表于 2020-11-23 10:33
请问您可以分享一下您的VMD优化算法吗

请问您可以分享一下您的VMD优化算法吗

路人甲z 发表于 6 天前
我在设置优化算法的时候目标函数应该怎么设置呀??怎么样才能说明VMD分解的效果好呢??
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表