Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
慶應義塾大学 機械学習基礎04 順伝播型ニューラルネット
Search
Semantic Machine Intelligence Lab., Keio Univ.
PRO
October 08, 2021
Technology
3
1.1k
慶應義塾大学 機械学習基礎04 順伝播型ニューラルネット
Semantic Machine Intelligence Lab., Keio Univ.
PRO
October 08, 2021
Tweet
Share
More Decks by Semantic Machine Intelligence Lab., Keio Univ.
See All by Semantic Machine Intelligence Lab., Keio Univ.
Laboratories in Science and Technology: Deep Neural Networks
keio_smilab
PRO
3
180
[Journal club] Parallel Vertex Diffusion for Unified Visual Grounding
keio_smilab
PRO
0
130
[NLP24] Polos: Multimodal Metric Learning from Human Feedback for Image Captioning
keio_smilab
PRO
1
220
[Journal club] Accelerating Toeplitz Neural Network with Constant-time Inference Complexity
keio_smilab
PRO
0
48
[Journal club] TIES-Merging: Resolving Interference When Merging Models
keio_smilab
PRO
0
160
[Journal Club]Interfacing Foundation Models’ Embeddings
keio_smilab
PRO
1
130
[Journal club] Toeplitz Neural Network for Sequence Modeling
keio_smilab
PRO
2
410
Visual Explanation Generation for Road Damage Classification by Using Layer-wise Relevance Propagation for Branch Networks
keio_smilab
PRO
0
140
Supervised Automatic Evaluation for Image Captioning Based on Multimodality
keio_smilab
PRO
0
170
Other Decks in Technology
See All in Technology
「できる!」を増やすGitHub Copilot活用法 / How to use GitHub Copilot to expand your possibilities
sansan_randd
1
240
5分で分かる(かもしれない) Vector engine for OpenSearch Serverless
tsukuboshi
1
430
生成AIと産業向けソフトウェアの自動生成 〜 ハノーバーメッセ2024より〜
kioto
2
440
Taking Flight with Tailwind CSS
opdavies
0
4.3k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
38k
AWS CLIの起動が重くてつらいので aws-sdk-client-go を書いた / kamakura.go#6
fujiwara3
6
3.4k
My road to OSEE Part1
yunolay
0
120
QA経験のないエンジニアリング マネージャーがQAのカジュアル面談に出て 苦労していること・気づいたこと / scrum fest niigata 2024
yoshikiiida
2
680
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
12
7.9k
データ分析力を高めるSQL研修サービス『SQL Everyone』
hikarut
1
400
The depthes of profiling Ruby - RubyKaigi 2024
osyoyu
0
180
エムスリーQAチーム紹介資料 / Introduction of M3 QA Team
m3_engineering
1
340
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
74
8.3k
Facilitating Awesome Meetings
lara
43
5.6k
Happy Clients
brianwarren
92
6.4k
[RailsConf 2023] Rails as a piece of cake
palkan
29
4.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
How GitHub (no longer) Works
holman
305
140k
The Straight Up "How To Draw Better" Workshop
denniskardys
228
130k
What's in a price? How to price your products and services
michaelherold
238
11k
The Art of Programming - Codeland 2020
erikaheidi
43
12k
Building an army of robots
kneath
300
41k
Ruby is Unlike a Banana
tanoku
96
10k
Transcript
情報工学科 教授 杉浦孔明
[email protected]
慶應義塾大学理工学部 機械学習基礎 第4回 順伝播型ニューラルネット
本講義の到達目標と今回の授業の狙い - - 2 本講義の到達目標 ▪ DNNの基礎理論と実装の関係を理解する ▪ 種々のDNNをコーディングできる 今回の授業の狙い
▪ 順伝播型ニューラルネットの基礎を習得する ▪ 出席確認: K-LMS上の機械学習基礎のMainページへアクセス
順伝播型ニューラルネット - - 3
線形回帰 1入力1出力の場合 - - 4 ▪ 前回扱った線形モデル 図で書くと↓ 入力 (input)
出力 (output) 常に値が1である ノード
線形回帰 2入力1出力の場合 - - 5 ▪ 前回扱った線形モデル 図で書くと↓ ▪ 2次元の入力
入力 出力 重み(weight) バイアス(bias) 入力 (input) 出力 (output) 常に値が1である ノード
基本的なニューラルネット ユニットとは - - 6 ▪ ユニット ▪ 2次元の入力 重み(weight)
バイアス(bias) 入力 出力
基本的なニューラルネット 活性化関数とは - - 7 ▪ ユニット 重み バイアス ▪
活性化関数(activation function) ▪ 非線形変換を行う ▪ 以下の赤や青のような関数 例 パラメータ
基本的なニューラルネット 複数のユニットを持つ場合 - - 8 ▪ ユニット ▪ ユニットが2つの場合
- 9 - ▪ ユニットが2つの場合 基本的なニューラルネット 入出力関係の行列表現 - - 9
行列表現 に1が入っているものと考えて、 バイアスを陽に書かない まとめて書く
基本的なニューラルネット 3層ニューラルネット - - 10 行列表現 ▪ 3層ニューラルネット 入力層 出力層
中間層 に1が入っているものと考えて、 バイアスを陽に書かない
基本的なニューラルネット 中間層とは - - 11 ▪ 中間層(隠れ層, hidden layer) ▪
:1つ目の中間層への重み ▪ :1つ目の中間層の活性化 関数 ▪ は出力層に関するもの ▪ 3層ニューラルネット 入力層 出力層 中間層
順伝播型ニューラルネット - - 12 ▪ 順伝播型ニューラルネット(feed-forward neural network; FFNN) 入力層
出力層 中間層(L-1個) 一般化すると
活性化関数の例 - - 13 ▪ 正規化線形関数 (ReLU) ▪ 「レル」と発音 ▪
ロジスティックシグモ イド関数 ステップ関数 口語ではシグモイド関数と呼ばれるが、シグモイド 関数とは本来S字関数(tanhなどを含む)を意味する
ニューラルネットによる回帰 例題:大気汚染物質の濃度を予測したい - - 14 ▪ 観測データを集める 1. 訓練集合を構築する 2.
損失関数を最小化するパラメー タを反復的に求める 重みやバイアスをまとめたもの ID 濃度 (今) 風速 (今) 濃度 (未来) 1 5 2.0 4 2 7 1.2 5 3 10 1.6 11 … … … 999 10 1.8 10 1000 9 2.6 10 新規 8 1.8 ???
ニューラルネットによる2値分類 例題 - - 15 ▪ 画像を「かぼちゃ」か 「かぼちゃ以外」に分けたい ▪ 正解ラベルは1または0
▪ を予測するのではなく、 を予測する 入力された画像に対し、 予測ラベルが1である 確率の予測値 ラベル:1 ラベル:0
ロジスティック回帰との関係 - - 16 ロジスティック回帰 (logistic regression) ▪ 対数オッズuが入力に関する線形 関数であると近似
出力は条件付き確率と解釈できる
ロジスティック回帰との関係 - - 17 ロジスティック回帰 (logistic regression) ▪ 対数オッズuが入力に関する線形 関数であると近似
▪ uを以下でモデル化するニューラル ネットとみなせる 出力は条件付き確率と解釈できる
多クラス分類 例題:MNIST - - 18 ▪ 手書き数字のデータセット ▪ 深層学習分野でMNISTを 知らない人はいないはず
▪ 28×28ピクセル画像 ▪ 訓練集合:6万枚 テスト集合:1万枚 ▪ 1-of-K表現 ▪ 特定の次元のみ1であり、残 りの次元は0 ▪ テキスト処理において単語を 表現する方法でもある ▪ Zero: (1, 0, 0, 0, 0, 0, 0, 0, 0, 0) ▪ One: (0, 1, 0, 0, 0, 0, 0, 0, 0, 0) ▪ Two: (0, 0, 1, 0, 0, 0, 0, 0, 0, 0)
3層ニューラルネットによる多クラス分類 回帰と分類の違い - - 19 ▪ 3層ニューラルネット(再) ▪ 分類 ▪
出力例 (0.8, 0.1, 0.1, 0, 0, 0, 0, 0, 0, 0) 入力層 出力層 中間層
3層ニューラルネットによる多クラス分類 ソフトマックス関数とは - - 20 ▪ ソフトマックス関数(softmax function) ▪ の例
▪ 分類 指数関数で変換したのち、 規格化している
3層ニューラルネットによる多クラス分類 交差エントロピー誤差関数とは - - 21 ▪ 情報理論における離散分布 間の交差エントロピー ▪ 交差エントロピー誤差関数
(cross-entropy error function) 正解ラベル は固定値なので 確率で表す必要がない (普通の)エントロピー サンプル番号 のラベルの 次元目の値 (クラスkであれば1であり、そうでなければ0)
3層ニューラルネットによる多クラス分類 2値分類の場合の交差エントロピー誤差関数 - - 22 ▪ クラス ▪ 2クラス( =2)
サンプル番号 のラベル(1または0) 高校数学で言うと 余事象の考え方
交差エントロピー誤差関数 と最尤推定 - - 25
ベルヌーイ分布(Bernoulli distribution) - - 26 ひしゃげたコインの分布 ▪ ▪ 2値をとる実現値 を生成するための確率分布
▪ 1個のパラメータ(母数) によって分布の 性質が決まる 例: のとき ▪ 期待値: ▪ 分散: ▪ 同時確率 べき乗で場合分けを 表現するトリック が0の確率 が1の確率
最尤推定 - - 27 ▪ 観測値 の同時確率 を最大化したい ▪ サンプルは母集団から独立同分布
で抽出されたものとする (i.i.d.; independent and identically distributed)
尤度とは - - 28 ▪ 観測値 の同時確率 を最大化したい ▪ サンプルは母集団から独立同分布
で抽出されたものとする (i.i.d.; independent and identically distributed) ▪ 「 が既知で、 が未知」 から 「 が既知で、 が未知」に 見方を変える ▪ 尤度(likelihood, ゆうど) ▪ データが与えられたうえでの モデルの尤もらしさ ▪ 規格化(=足して1)されて いないので確率ではない
交差エントロピー誤差の最小化は尤度最大化を意味する - - 29 ▪ 2値分類の場合の尤度関数 ▪ 尤度最大化=対数尤度最大化= 負の対数尤度最小化 損失関数として最小化
▪ 「 が既知で、 が未知」 から 「 が既知で、 が未知」に 見方を変える ▪ 尤度(likelihood, ゆうど): ▪ データが与えられたうえでの モデルの尤もらしさ ▪ 規格化(=足して1)されて いないので確率ではない
交差エントロピー誤差の最小化は尤度最大化を意味する - - 30 ▪ 2値分類の場合の尤度関数 ▪ 尤度最大化=対数尤度最大化= 負の対数尤度最小化 損失関数として最小化
↑交差エントロピー誤差 確率のように小さい数を何度も 掛け合わせるより、対数をとって 足し算にしたほうが楽
本講義全体の参考図書 - - 31 ▪ ★機械学習スタートアップシリーズ これならわかる深層学習入門 瀧雅人著 講談 社(本講義では、異なる表記を用いることがあるので注意)
▪ ★Dive into Deep Learning (https://d2l.ai/) ▪ 深層学習 改訂第2版 (機械学習プロフェッショナルシリーズ) 岡谷貴之著 講談社 ▪ ディープラーニングを支える技術 岡野原大輔著 技術評論社 ▪ 画像認識 (機械学習プロフェッショナルシリーズ) 原田達也著 講談社 ▪ 深層学習による自然言語処理 (機械学習プロフェッショナルシリーズ) 坪井祐太、 海野裕也、鈴木潤 著、講談社 ▪ 東京大学工学教程 情報工学 機械学習 中川 裕志著、東京大学工学教程編纂委員会 編 丸善出版 ▪ パターン認識と機械学習 上・下 C.M. ビショップ著 丸善出版