💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
本文结合了多种先进的优化算法来改进极限学习机(ELM)在股票回归预测方面的性能,下面是对每种算法及其在优化ELM模型中潜在应用的简要说明:
-
蜣螂算法(BA, Beetle Antennae Algorithm): 蜣螂算法是一种相对较新的生物启发式优化算法,灵感来源于蜣螂(俗称屎壳郎)寻找食物和筑巢的行为。在优化过程中,它模仿蜣螂通过其触角探索环境以寻找最优路径的能力。将BA应用于ELM参数优化,可以期望找到那些能最大化模型预测准确性的权重和隐层节点数等参数组合。
-
减法优化器算法: 减法优化算法可能指的是一种较少直接提及的特定算法,但根据上下文推测,这可能是指一类旨在通过逐步减去或简化问题空间来寻找最优解的方法。在ELM框架内,这样的策略可以用于减少不必要的网络复杂度,如通过迭代移除对预测贡献较小的神经元或调整权重,以达到提高模型泛化能力的目的。
-
鲸鱼优化算法(WOA, Whale Optimization Algorithm): WOA是一种全球优化技术,灵感来源于鲸鱼的捕食行为,特别是它们的社会结构和狩猎策略。该算法通过模拟鲸鱼的搜寻、包围、追击等行为模式,有效探索搜索空间,寻找全局最优解。在优化ELM时,WOA能够帮助快速收敛到最佳的网络参数配置,包括输入权重、隐层节点数及激活函数的选择等。
综合应用策略:
- 融合优化:首先,可以考虑将这些算法进行单用或组合使用,比较它们在优化ELM模型参数时的效果。例如,先使用BA或WOA进行全局搜索以找到较优的参数范围,再利用减法优化器算法进行精细化调整,去除冗余提高效率。
- 特征选择:这些优化算法同样可以应用于特征选择阶段,帮助识别对股票预测最有效的少数关键指标,从而简化模型并提升预测精度。
- 交叉验证与超参数调优:为确保模型的稳健性,应用交叉验证方法评估不同优化策略下的ELM表现,并针对学习率、正则化项等超参数进行细致调优。
- 实证分析:最后,通过对历史股票数据的实际应用,分析并对比不同优化策略支持下的ELM模型在预测准确性、计算效率及泛化能力等方面的性能。
综上所述,将蜣螂算法、减法优化器算法和鲸鱼优化算法相结合优化极限学习机,在股票回归预测领域开展研究,不仅能够探索出更高效的模型调参策略,还有望推动人工智能在金融市场预测中的实际应用水平。
📚2 运行结果
可视化代码:
figure
plot(output_test,'markerfacecolor',[0.5,0.5,0.9],'MarkerSize',6,'linewidth',1.2)
hold on
plot(DBO_T_sim,'linewidth',1.2)
hold on
plot(SABO_T_sim,'linewidth',1.2)
hold on
plot(WOA_T_sim,'linewidth',1.2)
legend('真实y','DBO-ELM预测值','SABO-ELM预测值','WOA-ELM预测值')
xlabel('样本数')
ylabel('股票预测')
title('不同算法优化ELM预测结果对比')
%% 误差对比
figure
plot(DBO_error,'linewidth',1.3)
hold on
plot(SABO_error,'linewidth',1.3)
hold on
plot(WOA_error,'linewidth',1.3)
legend('DBO-ELM预测误差','SABO-ELM预测误差','WOA-ELM预测误差')
xlabel('样本数')
ylabel('股票预测')
title('不同算法误差对比')
%% 指标打印
disp(['ELM的MSE为:',num2str(mse0),',R2为:',num2str(r20),',MAE为:',num2str(mae0),',RMSE为:',num2str(rmse0),',MAPE为:',num2str(mape0)])
disp(['DBO-ELM的MSE为:',num2str(DBO_mse),',R2为:',num2str(DBO_R2),',MAE为:',num2str(DBO_MAE),',RMSE为:',num2str(DBO_RMSE),',MAPE为:',num2str(DBO_mape)])
disp(['SABO-ELM的MSE为:',num2str(SABO_mse),',R2为:',num2str(SABO_R2),',MAE为:',num2str(SABO_MAE),',RMSE为:',num2str(SABO_RMSE),',MAPE为:',num2str(SABO_mape)])
disp(['WOA-ELM的MSE为:',num2str(WOA_mse),',R2为:',num2str(WOA_R2),',MAE为:',num2str(WOA_MAE),',RMSE为:',num2str(WOA_RMSE),',MAPE为:',num2str(WOA_mape)])
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
🌈4 Matlab代码实现
资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取