🚀 ニフティ’s Notion

深層学習とその派生

深層学習(Deep Learning)

  • ニューラルネットワークを用いたモデル
  • 画像分類の特徴量を 手作業 で作成するのは非常に大変
    • 例:猫と犬の識別機
      • 耳? 手足? 仮に線形回帰でやる場合、数式でどのような特徴を作成すれば捉えれる?
    • 深層学習なら、データから複雑な特徴量を勝手に学習してくれる
      • 特に、 非線形 な識別面も学習できる
単層パーセプトロンが基本

重回帰分析の後に、非線形な関数をくっつけたものが基準

image block

線形では表現(識別)できないデータを、線形と非線形を組み合わせて表現する

このとき用いられる非線形な関数を 活性化関数 と呼び、以下のようなものが代表として挙げられる

image block
パーセプトロンを”繰り返す”
image block

非線形な関数を交えることで、線形分離不可能なものでも分離可能とできる

  • 単回帰分析では直線だったものを、グネグネ捻じ曲げることが出来るイメージ
  • 深層学習は関数近似論であり、グネグネ曲げたりして、尤もらしいパラメータを学習して導出する
どのように学習するか

重回帰分析と同じように、損失(誤差)の最小化を考える。有名なものとしては以下:

  • Mean Squared Error Loss MSE , 回帰問題)
    E(W)=1ni=1n(y(i)f(x(i);W))2E(\bm{W}) = \frac{1}{n} \sum_{i=1}^{n} \left( y^{(i)} - f(\bm{x}^{(i)}; \bm{W}) \right) ^2
  • Binary Cross Entropy Loss BCE , 2クラス分類問題)
    E(W)=1ni=1n(y(i)log(f(x(i);W))(1y(i))log(1f(x(i);W))).E(\bm{W}) = - \frac{1}{n} \sum_{i=1}^n \left( y^{(i)} \log \left( f\left( \bm{x}^{(i)}; \bm{W} \right) \right) - \left(1-y^{(i)}\right) \log \left( 1 - f\left( \bm{x}^{(i)}; \bm{W} \right) \right) \right) .

(サンプル数を nn , ii 番目のサンプルを x(i)x^{(i)} , ii 番目の正解ラベルを y(i){0,1}y^{(i)} \in \{0, 1\} とする。)

いずれにしても、損失は正解に近い値を取れば取るほど小さく、また誤った値を取れば取るほど大きくなる

勾配降下法(Gradient Descent, GD)
image block

非線形が組み合わさって重なっているので、ぐにゃぐにゃしている。

  • 単回帰分析・重回帰分析のように解析的( O(1)O(1) )に求められない
  • 適当な初期値にボールを置いて、転がす
  • ボールに慣性を付けたり、過去の転がした情報を再利用して計算量減らしたり、色々な転がし方がある
  • 初期値や転がし方で変わるので、常に大域的最適解に到達するとは限らない
    • 例えば、上図で右の方から転がしたら、右の方で止まることもあり得る。(局所的最適解)
誤差逆伝播

高校数学でやった連鎖率で勾配が計算可能

過学習の抑制

サンプルにフィッティングしすぎるのは良くないので、抑制する

image block
Dropout

ニューロンの重みを幾つか一時的に0

image block

Early Stopping

評価用データを反復的に評価し、早めに学習を打ち切る

image block

派生モデルを覗いて、考え方を知ろう

深層学習の層構造や、損失などを変えることで、色々なことに応用できる

CNN (Convolutional Neural Network)
  • 画像に対して、昔から使われている解
  • 固定長のフィルタを用意
  • フィルタを動かしながら、内積(フィルタとの掛け算)を計算する
    • 内積は類似度とも見なせる

RNN (Recurrent Neural Network)

再帰的な構造を取り入れた

image block
LSTM ( Long Short Term Memory)

RNNでは長期記憶の保持が難しい

  • どんどん薄れていくイメージ

シグモイドゲート(つまり確率)で忘れる・覚えるを表現

  • 長期記憶(Long Term Memory)を保持する
Transformer
  • Attention 機構で、ベクトル化したword とword の関連度を表現する
  • RNNと異なり、並列に学習が可能
ChatGPT (GPT-4)

今話題の大規模言語モデル(LLM)

diffusion Model
  • 画像からノイズを取り除くよう学習
  • 適当なノイズを与えると、それっぽい画像を返す

生成AIの取り扱い

社内ルールにのっとること

次のページ

Google Colaboratoryの使い方