【DNN,OFDM检测】基于DNN深度学习网络的OFDM信号检测算法的matlab仿真

1.软件版本

matlab2021a

2.部分核心代码

 

 

 

 

 

 


3.部分代码
clear variables;
close all;
load('TrainingData.mat');
load('ValidationData.mat');
%% Define training parameters
MiniBatchSize = 1000;
MaxEpochs = 100;
InputSize = 2*NumOFDMsym*NumSC;
NumHiddenUnits = 16;
NumClass = length(Label);
Layers = [ ...
sequenceInputLayer(InputSize)
lstmLayer(NumHiddenUnits,'OutputMode','last')
fullyConnectedLayer(NumClass)
softmaxLayer
classificationLayer];
Options = trainingOptions('adam',...
'InitialLearnRate',0.01,...
'ValidationData',{XValid,YValid}, ...
'ExecutionEnvironment','auto', ...
'GradientThreshold',1, ...
'LearnRateDropFactor',0.1,...
'MaxEpochs',MaxEpochs, ...
'MiniBatchSize',MiniBatchSize, ...
'Shuffle','every-epoch', ...
'Verbose',0,...
'Plots','training-progress');
%% Train DNN
Net = trainNetwork(XTrain,YTrain,Layers,Options);
save('TrainedNet','Net','MiniBatchSize');

4.操作步骤与仿真结论

 

 

 

 

 

5.参考文献

[1]刘步花, 丁丹, 杨柳. 基于DNN的OFDM系统非线性失真补偿[J]. 现代电子技术, 2021, 44(5):4.D236

 

posted @ 2022-11-19 11:21  fpga和matlab  阅读(108)  评论(0编辑  收藏  举报