✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
⛄ 内容介绍
本文提出了一种基于注意力机制的混合CNN-LSTM系统模型,如图1所示。该模型由CNN网络、LSTM网络、融合层和全连接层4部分构成。该模型的主要思路为:在通道1中,利用BiLSTM网络进行双向全局时间特征的充分提取;同时,在通道2中,利用一维卷积神经网络(one-dimensionalconvolutionalneuralnetwork,1DCNN)对时序信号沿时间轴正方向进行局部非相关性特征的提取,以获得更多的时间特征,并在注意力机制的作用下合理地选择分配权重;然后将通道1和通道2的数据特征进行融合,实现特征合并;最后通过全连接层(fullconnectedlayer,FC)进行回归层预测。通道中引入Dropout层的目的在于防止模型出现过拟合,引入批归一化的目的在于提高模型收敛速度,实现较低的训练时间。
⛄ 部分代码
function [solution,Ps,Ms]=improved_ga(G,n,rows,cols)
genes=gen_init_genes(n,rows,cols);
cost=compute_f_(genes);
[~,idx]=max(cost);
maxp=compute_P(genes(idx,:,:));
maxm=compute_M(genes(idx,:,:));
Ps=[];
Ms=[];
for it=1:G
parents=select(genes,cost,16);
snotallow=cross_(parents);
mutp=0.6*((G-it)/G).^2;%这个0.6是变异初始概率
snotallow=improved_mut(sons,mutp);
cost_=compute_f_(sons);
cost=[cost cost_];
genes=[genes;sons];
[maxcost,idx]=max(cost);
maxcost
bestgene=genes(idx,:,:);
if rem(it,70)==69%这里每隔几轮保留精英基因
[~,idx]=sort(-cost);
cost=cost(idx(1:n));
genes=genes(idx(1:n),:,:);
end
[~,idx]=max(cost);
maxp=compute_P(genes(idx,:,:));
Ps=[Ps maxp];
maxm=compute_M(genes(idx,:,:));
Ms=[Ms maxm];
end
[~,idx]=max(cost);
solutinotallow=genes(idx,:,:);
end
⛄ 运行结果
⛄ 参考文献
[1] 唐一强, 杨霄鹏, 朱圣铭. 基于注意力机制的混合CNN-BiLSTM低轨卫星信道预测算法[J]. 系统工程与电子技术, 2022, 44(12):3863-3870.
[2] 郭招. 基于时空信息和深度学习的视频总结和标题生成[D]. 电子科技大学, 2017.
[3] 徐先峰, 黄刘洋, 龚美. 基于卷积神经网络与双向长短时记忆网络组合模型的短时交通流预测[J]. 工业仪表与自动化装置, 2020.
[4] 张清, 张文川, 冉兴程. 基于CNN-BiLSTM和注意力机制的恶意域名检测[J]. 中国电子科学研究院学报, 2022, 17(9):8.