17 Nov

AdamW的Weight RMS的渐近估计(下)

在博客《AdamW的Weight RMS的渐近估计(上)》中,我们推导了AdamW训练出来的模型权重的RMS渐近表达式。不过,那会我们假设了Weight Decay和学习率在整个训练过程中是固定的,这跟实际训练并不完全吻合,所以这篇文章我们将之前的结论推广成动态版。

所谓动态版,即允许Weight Decay和学习率都随着训练步数的增加而变化,比如经典的Cosine Decay、WSD(Warmup Stable Decay)等,从而让结论更为通用。

步骤之一

我们的出发点还是AdamW的定义:
\begin{equation}\text{Adam}\color{skyblue}{\text{W}}:=\left\{\begin{aligned}
&\boldsymbol{m}_t = \beta_1 \boldsymbol{m}_{t-1} + \left(1 - \beta_1\right) \boldsymbol{g}_t\\
&\boldsymbol{v}_t = \beta_2 \boldsymbol{v}_{t-1} + \left(1 - \beta_2\right) \boldsymbol{g}_t^2\\
&\hat{\boldsymbol{m}}_t = \boldsymbol{m}_t\left/\left(1 - \beta_1^t\right)\right.\\
&\hat{\boldsymbol{v}}_t = \boldsymbol{v}_t\left/\left(1 - \beta_2^t\right)\right.\\
&\boldsymbol{u}_t =\hat{\boldsymbol{m}}_t\left/\left(\sqrt{\hat{\boldsymbol{v}}_t} + \epsilon\right)\right.\\
&\boldsymbol{\theta}_t = \boldsymbol{\theta}_{t-1} - \eta_t (\boldsymbol{u}_t \color{skyblue}{ + \lambda_t \boldsymbol{\theta}_{t-1}})
\end{aligned}\right.\end{equation}

点击阅读全文...

6 Nov

n个正态随机数的最大值的渐近估计

设$z_1,z_2,\cdots,z_n$是$n$个从标准正态分布中独立重复采样出来的随机数,由此我们可以构造出很多衍生随机变量,比如$z_1+z_2+\cdots+z_n$,它依旧服从正态分布,又比如$z_1^2+z_2^2+\cdots+z_n^2$,它服从卡方分布。这篇文章我们来关心它的最大值$z_{\max} = \max\{z_1,z_2,\cdots,z_n\}$的分布信息,尤其是它的数学期望$\mathbb{E}[z_{\max}]$。

先看结论

关于$\mathbb{E}[z_{\max}]$的基本估计结果是:

设$z_1,z_2,\cdots,z_n\sim\mathcal{N}(0,1)$,$z_{\max} = \max\{z_1,z_2,\cdots,z_n\}$,那么 \begin{equation}\mathbb{E}[z_{\max}]\sim \sqrt{2\log n}\label{eq:E-z-max}\end{equation}

点击阅读全文...

12 Oct

随机矩阵的谱范数的快速估计

《高阶MuP:更简明但更高明的谱条件缩放》的“近似估计”一节中,我们曾“预支”了一个结论:“一个服从标准正态分布的$n\times m$大小的随机矩阵,它的谱范数大致是$\sqrt{n}+\sqrt{m}$。”

这篇文章我们来补充讨论这个结论,给出随机矩阵谱范数的快速估计方法。

随机矩阵论

设有随机矩阵$\boldsymbol{W}\in\mathbb{R}^{n\times m}$,每个元素都是从标准正态分布$\mathcal{N}(0,1)$中独立重复地采样出来的,要求估计$\boldsymbol{W}$的谱范数,也就是最大奇异值,我们以$\mathbb{E}[\Vert\boldsymbol{W}\Vert_2]$为最终的估计结果。

点击阅读全文...

1 Oct

AdamW的Weight RMS的渐近估计(上)

《为什么Adam的Update RMS是0.2?》中,我们用平均场近似估计了Adam的Update RMS。不久后,读者 @EIFY 指出相同的结果已经出现在论文《Rotational Equilibrium: How Weight Decay Balances Learning Across Neural Networks》中。阅读后,笔者发现其中不仅包含了Update RMS的估计,还包含了Weight RMS的估计。

也就是说,AdamW训出来的模型,其权重的RMS是可以事先估计出来一个渐近结果的。大家会不会觉得这个结论有点意外?反正笔者第一次看到它是颇为意外的,直觉上权重模长是模型根据训练集自己学出来的,结果它告诉我这已经隐藏在优化器的超参中,可谓很反直觉了。

这篇文章我们还是用平均场近似方法,来复现对Weight RMS的渐近估计。

点击阅读全文...

19 Jun

简述无偏估计和有偏估计

对于大多数读者(包括笔者)来说,他们接触到的第一个有偏估计量,应该是方差
\begin{equation}\hat{\sigma}^2_{\text{有偏}} = \frac{1}{n}\sum_{i=1}^n \left(x_i - \hat{\mu}\right)^2,\quad \hat{\mu} = \frac{1}{n}\sum_{i=1}^n x_i\label{eq:youpianfangcha}\end{equation}
然后又了解到对应的无偏估计应该是
\begin{equation}\hat{\sigma}^2_{\text{无偏}} = \frac{1}{n-1}\sum_{i=1}^n \left(x_i - \hat{\mu}\right)^2\label{eq:wupianfangcha}\end{equation}
在很多人的眼里,公式$\eqref{eq:youpianfangcha}$才是合理的,怎么就有偏了?公式$\eqref{eq:wupianfangcha}$将$n$换成反直觉的$n-1$,反而就无偏了?

下面试图用尽量清晰的语言讨论一下无偏估计和有偏估计两个概念。

点击阅读全文...

13 Jun

“噪声对比估计”杂谈:曲径通幽之妙

说到噪声对比估计,或者“负采样”,大家可能立马就想到了Word2Vec。事实上,它的含义远不止于此,噪音对比估计(NCE, Noise Contrastive Estimation)是一个迂回但却异常精美的技巧,它使得我们在没法直接完成归一化因子(也叫配分函数)的计算时,就能够去估算出概率分布的参数。本文就让我们来欣赏一下NCE的曲径通幽般的美妙。

注:由于出发点不同,本文所介绍的“噪声对比估计”实际上更偏向于所谓的“负采样”技巧,但两者本质上是一样的,在此不作区分。

问题起源

问题的根源是难分难舍的指数概率分布~

指数族分布

在很多问题中都会出现指数族分布,即对于某个变量$\boldsymbol{x}$的概率$p(\boldsymbol{x})$,我们将其写成
$$p(\boldsymbol{x}) = \frac{e^{G(\boldsymbol{x})}}{Z}\tag{1}$$
其中$G(\boldsymbol{x})$是$\boldsymbol{x}$的某个“能量”函数,而$Z=\sum_{\boldsymbol{x}} e^{G(\boldsymbol{x})}$则是归一化常数,也叫配分函数。这种分布也称为“玻尔兹曼分布”。

点击阅读全文...