WorryFree Computers   »   [go: up one dir, main page]

Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Laboratories in Science and Technology: Deep Neural Networks

Laboratories in Science and Technology: Deep Neural Networks

理工学部B2共通の実験科目における深層ニューラルネットを扱う実験の資料です。
PyTorch実習: https://colab.research.google.com/drive/1cTyn0RFV5wmcYPI1Cimj2NmCZyFcYPNO?usp=sharing

More Decks by Semantic Machine Intelligence Lab., Keio Univ.

Other Decks in Technology

Transcript

  1. 人工知能分野におけるニューラルネットワークの位置付け - - 6 深層ニューラルネットワーク (Deep Neural Network) 人工知能(AI) 機械学習

    ニューラルネットワーク それ以外のアプローチ(ルールベース等) ▪ 線形代数 ▪ 微分積分学 ▪ 確率論 ▪ その他の理論
  2. ニューラルネットワークの起源 - - 16 ▪ 神経細胞(ニューロン)から着想された数理モデル [1] ▪ ニューロンのはたらき 1.

    他のニューロンの入力信号をシナプスで重み付けして受け取る 2. 閾値を超えると別のニューロンへ信号を出力する(=活性化) https://soilshop.net/anime/neuron ニューロンのモデル化 [1] W. McCulloch and W. Pitts, “A Logical Calculus of the Ideas Immanent in Nervous Activity”, The Bulletin of Mathematical Biophysics, Vol. 5, No. 4, pp. 115-133, 1943.
  3. ▪ 線形ユニット ニューラルネットワークの最小構成要素: ユニット - - 17 パラメータ  入力

    : 今日の気温  真値 : 明日の気温  予測値 : 明日の気温の予測値 例: 今日の気温から明日の気温を予測する場合 予測値 入力 図示
  4. 予測値が真値にどれだけ近いかを定量化しよう - - 19 ▪ 損失関数 ▪ 真値に対する予測値の誤差を定量化するための関数 ▪ 例:平均二乗誤差

    ▪ 損失関数を最小化するパラメータを解析的に求めることは困難 ▪ モデルが複雑(1億パラメータは珍しくない) ▪ データが大量 反復的な方法で求める方法が一般的
  5. 勾配降下法の数式表現: 線形ユニットの場合 - - 22 1. 初期値を設定 2. 現在の を用いて勾配の値を計算し、

    を更新 3. 2を繰り返す 学習率:一度の更新幅を小さくする(例:0.02) 例:
  6. 実習2:線形ユニットの学習過程を手計算で確かめよう - - 24 準備 ▪ K-LMS上の実習2の(スプレッドシートへの)リンクをクリックせよ ▪ 初期値: ▪

    1サンプル分の損失関数: 実習内容 ▪ 各自に割り当てた番号 に対する の値を計算せよ ※全員がスプレッドシートに記載すると が自動で更新される
  7. ▪ ステップ関数 活性化関数の例 - - 29 ▪ 正規化線形関数 (ReLU) ▪

    ロジスティックシグモ イド関数 cf. 統計力学におけるフェルミ 分布関数
  8. 例題:手書き数字認識 - - 36 ▪ 目標 ▪ 画像を入力として0~9のどの数字 が書かれているかを予測 ▪

    MNIST(エムニストと発音) ▪ 手書き数字のデータセット ▪ 28x28グレースケール画像7万枚 ▪ 深層学習分野において知らない人 はいない
  9. 画素値の行列をベクトル化し入力 - - 38 入力層 出力層 中間層 画像を表す行列 0 38

    41 121 214 226 155 252 252 0 38 41 121 214 226 155 252 252 ベクトル化 ベクトルの次元分だけある
  10. ニューラルネットワークの出力を確率の予測値とみなす - - 43 ▪ どのように確率を生成するべきか 入力層 出力層 中間層 ラベルが0の確率

    0.01 ラベルが1の確率 0.02 ラベルが2の確率 0.05 ラベルが3の確率 0.40 ラベルが4の確率 0.04 ラベルが5の確率 0.04 ラベルが6の確率 0.03 ラベルが7の確率 0.02 ラベルが8の確率 0.1 ラベルが9の確率 0.01 10個ある 総和が1となるよう 変換の必要有
  11. 交差エントロピー誤差関数: 分類タスクのために広く用いられる - - 45 交差エントロピー誤差関数を利用 入力層 出力層 中間層 ラベルが0の確率

    0.01 ラベルが1の確率 0.02 ラベルが2の確率 0.05 ラベルが3の確率 0.40 ラベルが4の確率 0.04 ラベルが5の確率 0.04 ラベルが6の確率 0.03 ラベルが7の確率 0.02 ラベルが8の確率 0.1 ラベルが9の確率 0.01 0 0 0 1 0 0 0 0 0 0 誤差計算
  12. 実習:MNISTへの3層ニューラルネットの適用 - - 47 ▪ 目的:ニューラルネットを学習させるプログラムを書く 入力 28×28次元(グレースケール画像) 出力 10次元(0から9に対応)

    ニューラルネットワークの構造 3層の順伝播型ニューラルネットワーク 中間層の活性化関数 ReLU 中間層のユニット数 128 出力層の活性化関数 ソフトマックス関数 損失関数 交差エントロピー誤差関数