基于遗传算法优化TCN

您所在的位置:网站首页 python主页面代码 基于遗传算法优化TCN

基于遗传算法优化TCN

2023-03-31 23:34| 来源: 网络整理| 查看: 265

个人主页:研学社的博客 欢迎来到本博客❤️❤️ />

博主优势: 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。r/>⛳️座右铭:行百里者,半于九十。

1 概述

时间卷积网络( temporal convolutional network ,TCN)是一种新型的、可以对时间序列数据进行处理的神经网络架构,与传统的卷积神经网络相比,它可以更有效地提取时序数据的特征。TCN通过卷积神经网络( convolutional neural network , CNN)变化而来,它由多个残差单元构成。为了提高学习能力, TCN通过加入残差连接模块,使得该模型可以将信息以跨层的方式来进行传递,进而使模型的反馈和收敛速度进一步提升。图1为TCN模型的单个残差单元。在残差单元中一维扩张因果卷积发挥着重要作用,一维扩张因果卷积通过卷积系数来控制对输入的采样间隔,使得TCN 网络只需要通过很少的层,就能够拥有较长的感受野。同时和CNN不同TCN中的因果卷积不是双向,而是单向的,即模型中t时刻的输出只由前一层中t时刻及t时刻以前的输入来决定,这样避免了模型不会丢失掉历史信息及受到未来信息的影响,这也使得TCN模型变成了一种严格的时间约束模型。

2 运行结果

部分代码:

fig, ax = plt.subplots(1, 1, figsize=( 18,6)) plt.plot(actual_entire_lstm_tcn, label = 'Actual production') plt.plot(forecast_entire_lstm_tcn, label = 'GA-TCN-LSTM predicted values') # create the horizontal dashed line plt.axvline(x=train_X.shape[0] + 1, color='black', linestyle='--') plt.legend() # add text labels plt.text(1350, 17500, 'Training set', rotation=0, verticalalignment='center', style='italic', fontweight='bold') plt.text(1540, 15000, 'Testing set', rotation=0, verticalalignment='center', style='italic', fontweight='bold') plt.ylabel('Daily Oil Prodcution, bbl', fontsize=15) plt.xlabel('Days', fontsize=15) plt.xticks(fontsize=15) plt.yticks(fontsize=15) # Create a font object with bold weight font = FontProperties() font.set_weight('bold') plt.legend(fontsize=10, loc= 'upper right', prop=font) plt.savefig("GA-TCN-LSTM actual-forecast.png", dpi=1600, bbox_inches='tight') plt.show() 3 参考文献部分理论来源于网络,如有侵权请联系删除。

[1]赵星宇,吴泉军,朱威.基于CEEMDAN和TCN-LSTM模型的短期电力负荷预测[J].科学技术与工程,2023,23(04):1557-1564.

4 Python代码实现


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3