0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【文献メモ】深層線形ニューラルネットの重みの時間発展の厳密解 (ICLR 2014)

0
Last updated at Posted at 2026-06-28

ICLR 2014 の、多層線形ニューラルネットの学習時の重みの時間発展の厳密解および初期化戦略に関する論文のメモです。

参考文献

Andrew M. Saxe, James L. McClelland, and Surya Ganguli. Exact solutions to the nonlinear dynamics of learning in deep linear neural networks. In Proceedings of the 2nd International Conference on Learning Representations (ICLR 2014), 2014.

  1. arXiv: Exact solutions to the nonlinear dynamics of learning in deep linear neural networks
  2. ar5iv: Exact solutions to the nonlinear dynamics of learning in deep linear neural networks

要点

  • 多層線形ネットワークは、各層の重みをランダム直交行列で初期化するとよい。ガウス初期化では深いネットワークの全体写像の特異値分布が偏るが、直交初期化ではすべて 1 に揃う (動的等距性)。これにより深さによらず安定した学習ができる。
  • 非線形ネットワークでも、ランダム直交初期化 + ゲイン $g$ を臨界値 $g_c$ 付近に設定するとよい (tanh なら $g_c = 1$)。これにより近似的な動的等距性が保たれ、深い層でも勾配消失・爆発が抑制される。
  • 教師なし事前学習 (自己符号化事前学習) を使うなら、$Q \approx V$ が成立するか事前に確認するとよい。$V^\top \Sigma^{(1,1)} V$ が対角行列に近ければ条件を満たす。満たさない場合は事前学習が学習を加速しないどころか妨げる可能性がある。

内容

私は数式を追っていません。

重みの時間発展の厳密解

  • Linear 2 層 ($W^{(2,1)}, W^{(3,2)}$) のネットワーク $y = W^{(3,2)} W^{(2,1)} x$ を訓練用サンプル $(x^{(\mu)},y^{(\mu)}) \quad \mu = 1, \cdots, P$ で訓練することを考える。目的関数は $\sum_{\mu = 1}^{P} |y^{(\mu)} - W^{(3,2)} W^{(2,1)} x^{(\mu)} |^2$ とする。このとき、学習率 $\lambda$ の逆数を $\tau$ とし、入力の共分散行列を $\Sigma^{(1,1)} \in \mathbb{R}^{N_1 \times N_1}$ とし、入出力間の共分散行列を $\Sigma^{(3,1)} \in \mathbb{R}^{N_3 \times N_1}$ とすると、第 1 層と第 2 層の時間発展方程式は、以下となる。
    • $\tau \dot{W^{(2,1)}} = W^{(3,2) \top} (\Sigma^{(3,1)} - W^{(3,2)} W^{(2,1)} \Sigma^{(1,1)})$
    • $\tau \dot{W^{(3,2)}} = W^{(3,1) \top} (\Sigma^{(3,1)} - W^{(3,2)} W^{(2,1)} \Sigma^{(1,1)}) W^{(2,1) \top}$
  • ここで、まず、$\Sigma^{(1,1)} = I$ (入力の各成分が互いに無相関かつ分散が 1) を仮定する。$\Sigma^{(3,1)}$ の特異値分解を $\Sigma^{(3,1)} = U S V^\top = \sum_\alpha s_\alpha u_\alpha v_\alpha^\top$ ($s_1 \geq s_2 \geq \cdots \geq 0$) とおき、$\tilde{W}^{(2,1)} = W^{(2,1)} V$、$\tilde{W}^{(3,2)} = U^\top W^{(3,2)}$ と変数変換する。各モード $\alpha$ に対し、$\tilde{W}^{(2,1)}$ の $\alpha$ 列を $a_\alpha r_\alpha$、$\tilde{W}^{(3,2)}$ の $\alpha$ 行を $b_\alpha r_\alpha^\top$ ($r_\alpha$ は隠れ層の単位ベクトル) と分解すると、異なるモードが初期条件で直交していれば ($r_\alpha \perp r_\beta,\ \alpha \neq \beta$) モード間の干渉がなくなり、各モードのスカラー $a_\alpha$、$b_\alpha$ は独立に以下の方程式に従う:
    • $\tau \dot{a}_{\alpha} = b_{\alpha} (s_{\alpha} - a_{\alpha} b_{\alpha})$
    • $\tau \dot{b}_{\alpha} = a_{\alpha} (s_{\alpha} - a_{\alpha} b_{\alpha})$
    • $a_\alpha^2 - b_\alpha^2$ は保存量 ($\frac{d}{dt}(a_\alpha^2 - b_\alpha^2) = 0$)
  • さらに、$a_\alpha(0) = b_\alpha(0)$ を仮定すると $a_\alpha = b_\alpha$ が保たれる。$u_\alpha \equiv a_\alpha b_\alpha = a_\alpha^2$ とおくと時間発展方程式は $\tau \dot{u}_\alpha = 2 u_\alpha (s_\alpha - u_\alpha)$ となり、厳密解は以下のシグモイド型 (最初は初期値付近に留まる停滞期間があり、この期間をプラトーという) になる。
    • $u_\alpha(t) = \dfrac{s_\alpha}{1 + \left(\dfrac{s_\alpha}{u_{\alpha 0}} - 1\right) \exp!\left(-\dfrac{2 s_\alpha t}{\tau}\right)}$   ($u_{\alpha 0} = u_\alpha(0)$)
    • 各モードは同時に収束するのではなく、特異値 $s_\alpha$ が大きいモードから順番に学習が進む (時定数 $\tau / (2 s_\alpha)$)。$u_{\alpha 0} \ll s_\alpha$ のときはプラトーの後に急速な収束が起きる。
  • Linear $N-1$ 層ネットワークへの拡張を考えると、各モードの全体強度 $u_\alpha = \prod_{i=1}^{N-1} a_\alpha^{(i)}$ は以下の方程式に従う。
    • $\tau \dot{u}_\alpha = (N-1), u_\alpha^{2 - 2/(N-1)} (s_\alpha - u_\alpha)$
    • この指数 $2 - 2/(N-1)$ は層数が増えるほど大きくなる ($N=3$ で $1$、$N \to \infty$ で $2$)。$u_\alpha \ll s_\alpha$ のときは $u_\alpha^{2-2/(N-1)}$ が非常に小さくなるため $\dot{u}_\alpha \approx 0$ となりプラトーが長くなる。一方 $u_\alpha$ が $s_\alpha$ に近づくと係数 $(N-1)$ の寄与も加わって収束が速くなる。結果として深いネットワークほど学習曲線がスイッチ的な形 (長い停滞 → 急激な収束) になる。

教師なし事前学習 (自己符号化事前学習) が有効な条件

  • ここで教師なし事前学習 (自己符号化事前学習) とは以下の 2 フェーズからなる手法を指す。
    • 事前学習フェーズ: 出力次元を $N_1$ に固定し ($N_3 = N_1$ が前提)、出力ターゲットを $y^{(\mu)} = x^{(\mu)}$ (入力の再構成) として目的関数 $\sum_\mu |x^{(\mu)} - W^{(3,2)} W^{(2,1)} x^{(\mu)}|^2$ で重みを更新する。
    • 教師あり学習フェーズ: 出力層 $W^{(3,2)}$ をタスクの出力次元 $N_3$ に付け替え、事前学習で得た重みを初期値として教師あり学習を行う。
  • この事前学習が教師あり学習を加速するための必要十分条件は、$\Sigma^{(1,1)}$ の固有ベクトル行列 $Q$ (入力の主成分方向) と $\Sigma^{(3,1)}$ の右特異ベクトル行列 $V$ が一致すること ($Q = V$) である。すなわち、入力データの主成分方向がタスクの入出力相関の主要方向と揃っているときのみ事前学習が有効になる。

重みの初期化

  • ガウス初期化 (各層を独立に標準偏差 $1/\sqrt{N}$ のガウス分布でサンプリング) では、深いネットワークの全体写像 $W_\mathrm{tot} = W^{(N,N-1)} \cdots W^{(2,1)}$ の特異値分布が偏り、一部が極めて小さくなる。
  • 直交初期化 (各層を直交行列でサンプリング) では $W_\mathrm{tot}$ の特異値がすべて 1 に揃う。この性質を動的等距性という。動的等距性が成立すると誤差逆伝播のヤコビアンが等距写像として作用し、深さによらず安定した学習ができる。
  • 非線形ネットワーク $x_i^{(l+1)} = \sum_j g W_{ij} \phi(x_j^{(l)})$ への拡張:ランダム直交重みとゲイン $g$ を組み合わせると、活性化関数の臨界ゲイン $g_c$ (tanh では $g_c = 1$) 付近で近似的な動的等距性が成立する。
    • $g < g_c$:活動が層を経るごとに減衰し勾配消失が起きる
    • $g > g_c$:活動が増幅しカオス的な伝播になる
    • $g = g_c$:100 層以上の深さでもヤコビアンの特異値分布が $O(1)$ に収まる
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?