首页 > 行业资讯 > 【OFDM通信】基于深度学习的OFDM系统信号检测附matlab代码

【OFDM通信】基于深度学习的OFDM系统信号检测附matlab代码

时间:2022-07-07 来源: 浏览:

【OFDM通信】基于深度学习的OFDM系统信号检测附matlab代码

天天Matlab 天天Matlab
天天Matlab

TT_Matlab

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。

收录于合集 #雷达通信matlab源码 68个

1 简介

提供了一种基于深度学习的时变OFDM系统信号检测方法,生成信号检测网络模型输入数据集,构建一个信号检测网络模型,在网络训练前需预设好训练和测试参数,采用在线生成训练数据和测试数据的方式训练网络,测试数据喂入信号检测网络,信号检测网络模型根据喂入的特征向量,产生预测出的发送数据比特,与真实的发送数据比特进行对比,测试网络当前的性能.本发明于针对快速时变OFDM系统,结合深度学习方法,利用循环神经网络处理时间序列的优势,简化了接收机架构,成功实现信号的解调,改进了快速时变OFDM系统中的信号检测性能,本发明有效减小了系统实现复杂度,同时也提升了系统整体的误比特率性能.

2 部分代码

%% TrainDNN % % This script is to set up parameters for training the deep neural network % (DNN). % The DNN is trained for the selected subcarrier based on the training % data. %% Clear workspace clear variables; close all; %% Load training and validation data load ( ’TrainingData.mat’ ) ; load( ’ValidationData.mat’ ); %% Define training parameters MiniBatchSize = 1000 ; MaxEpochs = 100 ; InputSize = 2 *NumOFDMsym*NumSC; NumHiddenUnits = 16 ; NumClass = length(Label); %% Form DNN layers Layers = [ ... sequenceInputLayer(InputSize) lstmLayer(NumHiddenUnits, ’OutputMode’ , ’last’ ) fullyConnectedLayer(NumClass) softmaxLayer classificationLayer]; %% Define trainig options 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 the DNN save ( ’TrainedNet’ , ’Net’ , ’MiniBatchSize’ ) ;

3 仿真结果

4 参考文献

[1]姚如贵, 王圣尧, 秦倩楠,等. 一种基于深度学习的时变OFDM系统信号检测方法:. 

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐