参考文献:《基于机器学习的信道估计算法优化研究》(电子科技大学,李红,硕士学位论文)
文献下载地址:
链接:https://pan.baidu.com/s/1mys6ADy50uDRHNMzcxT__Q
提取码:bhd2
基于深度学习的信道估计:Deep Learning - Channel Estimation(DL-CE)
DL-CE一般都包括两个部分:离线训练和在线估计
DL-CE基本结构
目前把深度学习应用到无线通信系统中所存在的问题
(1)没有大量可靠的真实数据集,目前常用的训练数据大多都是使用仿真得到的,即实际的信道传输函数比较难获得
(2)当前深度学习的网络层数都较大(模型较大),还不能有效地运用到移动设备上
方案一、深度学习网络用在LS算法得到导频处信道特性(或者说信道频域响应CFR)之后
基本思路是:根据初步的导频数据或者粗略的信道传输矩阵,通过深度学习网络,拟合重建出高精度的信道传输矩阵。利用多种信道条件下的信道传输矩阵数据建立训练数据集,进行网络训练。在网络的不断训练和迭代的过程中,输入的初始的数据会逐步拟合和逼近真实的标签值,最终实现较高精度的CSI插值、回馈或重建
神经网络的输入: 导频处的CSI或者经过传统算法粗略估计出的信道CSI(或者叫信道传输矩阵)
神经网络的输出: 高精度的信道CSI
这种方案的深度学习网络结构如下图:
上图就是把深度学习网络用在了经过LS算法得到导频处的**信道特性CSI(或者说信道频域响应CFR)**之后,那么网络的输入就是一个OFDM符号内各个导频处的CFR,然后经过多个隐藏层之后,输出层输出的就是一个OFDM符号内所有载波处的CFR。
模型训练:首先使用仿真得到训练数据(训练数据包括导频处的CSI和一个OFDM符号的CSI),然后进行离线训练,离线训练时使用导频处的CSI作为输入,使用一个OFDM符号的CSI作为标签数据。
但是需要注意的是,信道估计处理的数据大多都为复数,但是现有的深度学习的库函数并不支持复数域的操作,所以说现在的一般做法就是在输入到网络之前需要对数据进行预处理,把复数的实部和虚部提取出来,然后当成两种实数输入到神经网络中,这种做法的缺点就是没有挖掘复数的相位信息,带来了一定的信息丢失。
该方案的一个栗子:
参考文献:《基于机器学习的信道估计算法优化研究》(电子科技大学,李红,硕士学位论文)
该种方案神经网络的输出是信道的频域响应,注意与方案二的不同点。
方案二、实现端到端的恢复原始信号,即训练一个神经网络来拟合传输过程,从而在接收机端到端的恢复出原始的发送信号。
端到端的意思就是输出的就是最终结果。
基于端到端(文献中把这种称为全连接的神经网络)的信道估计器通过对接收信号和原信号之间的关系的学习,不估计出信道的频域响应,而是直接输出发送的调制信号。
系统结构图如下图:
由上图可知该方案神经网络的输出就是原始的发送信号,而方案一中神经网络的输出只是信道的频域响应。
这种方法完全把信道当成了一个黑匣子,我们不会直接输出信道的传输函数(或者CSI),而是直接输出预测的原始的发送信号,即神经网络学习了发送信号与接收信号之间的映射关系。
基本思路是,首先在MATLAB中生成一些仿真数据,包括原始发送信号和最终信道接收到的信号,把这两部分信号输入到深度学习网络中,让网络学习到一种OFDM的发送和接收符号之间的映射关系,也就是频域响应H。训练完成的神经网络最终便学习到了两者的映射关系,即信道传输系数。
这种方案存在的两个问题:
(1)首先信道是随时间变化的,即信道具有时变性,这意味着如果我们简单地训练一个神经网络,然后将其用于连续数据传输,是无法适用的。例如,实际场景中的多普勒频移或非线性噪声都将导致神经网络在训练过程中学到的映射关系与实际的信道环境不一致。一个折中的解决方案就是假设估计得到的信道在接收到下一个导频序列为止都是保持不变的(这不就是块状导频么),若采用此方法,由于数据块与块之间的传输间隔通常是很短的,那么神经网络模型的收敛速度和泛化能力便是很关键的指标。
(2)导频数目多的话会降低频谱效率,导频数目少的话会造成样本不足。
综上所述,问题的挑战主要在于我们如何依靠较少的监督样本、快速迭代来完成信道估计。
为了解决上述问题,有论文提出了基于元学习的深度学习算法RoemNet(Robust channel Estimation with Meta neural Network)。元学习解决的是学习如何学习的问题,他可以解决极少样本情况下的模型训练问题。
元学习是一种模型无关的学习算法(MAML),MAML需要在各种任务上进行训练。该算法需要学习训练一种可以很快适应新任务的方法