AI大模型和5G无线电(无端联想)
BD4SUR
2024年03月22日 00:00
大语言模型 (LLM)

① softmax的上溢问题。前段时间手写的多层感知机可视化和numpy(青春版),如果使用ReLU激活函数,则网络输出NaN。这是因为自己实现的softmax没有处理数值上溢的问题。具体来说,网络输出层给到softmax中指数函数的数值过大,致使指数函数溢出成infinity,导致后面各层变成NaN。解决这个问题的方法很简单,只需要给输入softmax的向量减去其最大者,即可避免这个问题。这是基于以下事实:

② 梯度下降的稳定性。自己手搓的梯度下降是最为朴素的恒定学习率小批量梯度下降,没有引入任何动量机制或者学习率调节机制。事实上,在神经网络的优化过程中,常常会在目标函数中遇到诸如鞍点、局部极小值、深而长的峡谷等“地形”,在这些位置上,简单的梯度下降优化往往会失效。在数学上,这些“病态”的情况可以用目标函数的Hessian矩阵来描述,而Hessian矩阵可以被分解成一组特征值,这些特征值足以描述目标函数在某点处的“地形”。具体地说,每个特征值都描述了目标函数在特定方向上的“曲率”。因而,如果目标函数某点Hessian矩阵的所有特征值都是正的,意味着此处是局部极小值。如果特征值有正有负,则此处可能是鞍点。而如果特征值的绝对值大小差异很大,直观上意味着此处“地形崎岖”,梯度下降容易迷路。这里有一些优化算法的测试函数,大多相当“崎岖”。

③ 梯度下降的改进。下图是自制的梯度下降可视化,手工绘制了一个狭长的深谷,这就是梯度下降的目标函数。在深谷峭壁上Hessian矩阵的各个特征值,也就是地形在各个方向上的“曲率”,差异很大,这意味着深谷的地形相当崎岖,因而在图中可以看到呈Z字形的梯度下降轨迹。这是因为朴素的梯度下降算法无法感知到地形的崎岖程度,只顾着找眼下最陡峭的方向猪突猛进,这样做的后果就是走弯路,甚至错过真正的极/最值点。因此,诸如AdaHessian之类的优化算法,可以感知到地形的崎岖程度,选择最合适的动量和学习率,尽可能少走弯路。而衡量“地形崎岖程度”的量,被称为Hessian矩阵的“条件数”,它是Hessian矩阵绝对值最大和最小的特征值的比值。Hessian矩阵的条件数越大,意味着目标函数越崎岖,梯度下降就要更加小心,以免迷路。

④ 条件数与病态问题。在机器学习模型训练过程中,如果目标函数非常“崎岖”,意味着较小的位置变化可能会造成较大的上升和下降,这是一种不稳定的“病态”的情形。举一个更加形式化的例子来说明这个问题,线性方程组的系数,仅仅1%的微小扰动,就导致方程的解产生百倍的波动。如果矩阵的条件数非常大,意味着较小的误差会被放大成较大的波动。特别地,正交矩阵的条件数等于1,这意味着它在处理信息的时候,既没有损失,也没有冗余。直观来看,W矩阵的各行的相关性是很强的,意味着较大的条件数可能意味着较大的信息冗余(或者说线性变换的信息瓶颈),在W矩阵上损失的信息,就会在x矩阵中体现为巨大的不确定性。

⑤ 深度学习中的训练稳定性问题。上周末用MLP解决Q问题(数字数圈圈找规律)时,一开始没有打乱训练数据集,每一批次参与训练的数据可能有较强的相关性,训练迟迟无法收敛。这可能就是因为样本之间相关性过强,样本矩阵的条件数过大,导致网络权值矩阵大幅震荡,从而难以收敛。将训练数据打乱后,网络很快就收敛了。另一方面,在深度学习的工程实践中,尽管诸如FP16、BF16甚至整数精度的训练可以有效节约显存、提升运算效率,但是由于数值精度的下降,在某些病态情况下,运算结果可能会大幅波动,导致训练失败。因此,在成熟的训练框架中,引入了自动混合精度(AMP)策略,可以通过梯度缩放等手段,避免因数值精度问题导致的训练不稳定性。不过,大模型提醒我,低精度训练也可以视为一种正则化手段,这大概就是无处不在的辩证法吧。

⑤ MIMO系统的预编码。在无线通信技术当中,对于多收多发MIMO系统,简而言之,多个收发天线之间的无线信道可以表示成矩阵H,它描述了多个收发天线两两之间的信道特性,这跟用矩阵来描述全连接神经网络的权值有相似之处。假设发射信号为x,经MIMO系统接收到的信号为y,那么对于MIMO接收机而言,它接收x的过程,实际上就是已知y、求解矩阵方程y=Hx的过程。然而,在Massive-MIMO系统中,H很大,并且未必可逆,因此求解过程的计算复杂度非常高。因此,工程上可以对H作奇异值分解,将H分解成UΣV,其中UV都是正交矩阵,而Σ是对角矩阵。U和V是收发两端通过CSI(信道状态信息)协商得到,在数学上(如图),可以通过简单的对角矩阵Σ来求取发射信号x,这就是MIMO的预编码技术。

⑥ MIMO信道的层和条件数。MIMO信道的层,等于H的秩,也就是奇异值矩阵Σ对角线上非0值的个数。如果H是满秩的,意味着所有的信道都可以用于通信。然而,满秩不意味着最高的通信效率。如上文所述,MIMO信道的条件数定义为Σ对角线数值的差异,如果H的条件数约等于1,意味着所有信道都被利用、都是正交的、互不干扰,因而可以更高效地利用信道带宽,在较低的信噪比上实现较高的通信速率。

参考文献:

  • I Goodfellow, et al. 深度学习(花书).

  • 李明, et al. 描述复杂性.

  • Yong Soo Cho, et al. MIMO-OFDM无线通信技术及MATLAB实现.

  • www.sharetechnote.com/html/BasicProcedure_LTE_MIMO.html