傾斜降下法-2


線形回帰分析復習

  • np.linalg.pinv|線形モデル(linearmodel)でデータを解釈する線形回帰式
  • 以前のコースではモール・ペンロス逆行列を使用していました
  • このコースでは、傾斜降下法を使用して線形モデルを探す方法を学習します.
  • 傾斜降下法で線形回帰係数を求める


    |𐥍7|線形回帰の目的式は∣∣y∣Xβ∣∣2||y-X\beta||_2∣∣y−Xβ∣∣2​
  • 最小化目標β\betaβ**見つけなければならないので、ターゲット式の勾配ベクトルを求める必要があります.
  • ∣∣y−Xβ∣∣2||y-X\beta||_2∣∣y−Xβ∣∣2∣∣y Xではありませんβ∣∣22||y-X\beta||_2^2∣∣y−Xβ∣∣22は最小化できる|𕝮∣8|
  • 既存のL 2賭けとは異なり、n個のデータを用いて計算されるため、平均値を求めるために平方信号をnに分割する.

  • β(t+1)\beta^(t+1)β(t+1)表示β(t)\beta^(t)β(t)lrrlrとtttの2番目の勾配ベクトルを乗じて求める.


  • ターゲット二乗の値を最小化することもできます.

  • アルゴリズム#アルゴリズム#

    Input: X, y, lr, T, Output: beta
    # norm: L2-norm을 계산하는 함수
    # lr: 학습률, T: 학습횟수
    
    for t in range(T):
        error = y - X @ beta
        grad = - transpose(X) @ error
        beta = beta - lr * grad
  • 終了条件を一定の学習回数Tに変更
  • ∇β∣∣y−Xβ∣∣22\nabla_\beta||y-X\beta||_2^2∇β​∣∣y−Xβ∣∣22項を算出するβ\betaβ更新
  • 傾斜降下法は万能ですか?

  • 傾斜降下法は微分可能であり、凸(凸)関数に対して適切な学習率と学習回数を選択すると、収束が保証される
  • |𐥍7|特に線形回帰の目標式∣∣y∣Xβ∣∣2||y-X\beta||_2∣∣y−Xβ∣∣2は回帰係数であるβ\betaβアルゴリズムは凸関数であるため、アルゴリズムの十分な回転は収束を保証することができる.
  • ただし、非線形回帰問題では、ターゲット関数が凸でない可能性がある
  • 収束は保証されません.
  • かくりつけいしゃこうかほう

  • 確率勾配降下法(ランダム勾配降下法)全データではなく1つまたは一部のデータ更新を用いる
  • 非凸目的式はSGDにより最適化できる
  • 万能ではないが,深さ学習においては,検証SGDが傾斜降下法よりも優れている
  • SGDは、一部のデータを用いてパラメータを更新するので、計算リソースをより効率的に利用することができる
  • 全てのデータ(X,y)(X,y)(X,y)(X(b),y(b),y(X(b),y(X(b),y(b),y(b))を書かず、更新後、演算量はb/n
  • に減少する

    微調整演算


  • 傾斜降下法全データを用いて目的式グラデーションを計算する

  • 逆にSGDはミニレイアウトを用いてグラデーションベクトルを計算する
  • miniレイアウトは確率的に選択されるため、ターゲット形状
  • が変更される


  • マイクロレイアウトはターゲットの形状を変更するため、凸でないターゲットから極小点を離れる可能性があります.
  • 従って、SGDは、傾斜降下法よりも機械
  • を効率的に学習するために非凸的な目的学習に用いることができる

  • 傾斜降下法は直線のように下がるがSGDは分岐点まで下がる.
  • 学習率または学習回数に加えて、レイアウトのサイズを適切に調整する必要があります.
  • ハードウェア

  • imagedataは、すべてのデータをアップロードする際に、メモリ不足によりメモリが外出する.
  • データアップロードは、スモールデプロイメント単位で行う必要があります.(SGDが必要)