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
ゼロから作るDeepLearning 第7章前半ざっくりまとめ
Search
dproject21
February 20, 2017
Science
0
1k
ゼロから作るDeepLearning 第7章前半ざっくりまとめ
dproject21
February 20, 2017
Tweet
Share
More Decks by dproject21
See All by dproject21
ISTQB/JSTQBシラバスから学ぶAgileTesting / A guide of agile testing based on ISTQB syllabus
dproject21
4
3.6k
JSTQB Advanced Level 模擬問題作成方法 / methodology to questions creation for JSTQB advanced level
dproject21
3
1.4k
試験に絶対出ないJSTQB AL TA,TM問題 / Questions that will never be given on the exam of JSTQB advanced level
dproject21
0
1.5k
The official zip code book is terrible. And what should I do with the address you wrote.
dproject21
0
180
TDD applied Data Cleansing
dproject21
0
1.9k
Data preprocessing for MachineLearning/BI by Golang and MySQL UDF
dproject21
1
920
高精度名寄せシステムを支える テキスト処理 (の、ほんのさわり)
dproject21
3
2.5k
ゼロから作るDeepLearning 第5章 誤差逆伝播法による重み更新を追ってみる
dproject21
0
1.2k
ゼロから作るDeepLearning 第6章ざっくりまとめ
dproject21
2
1.4k
Other Decks in Science
See All in Science
テンソル分解による糖尿病の組織特異的遺伝子発現の統合解析を用いた関連疾患の予測
tagtag
2
200
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
220
データベース04: SQL (1/3) 単純質問 & 集約演算
trycycle
PRO
0
880
04_石井クンツ昌子_お茶の水女子大学理事_副学長_D_I社会実現へ向けて.pdf
sip3ristex
0
510
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
wakamatsu_takumu
2
540
システム数理と応用分野の未来を切り拓くロードマップ・エンターテインメント(スポーツ)への応用 / Applied mathematics for sports entertainment
konakalab
1
340
生成検索エンジン最適化に関する研究の紹介
ynakano
2
1.1k
統計学入門講座 第3回スライド
techmathproject
0
110
動的トリートメント・レジームを推定するDynTxRegimeパッケージ
saltcooky12
0
160
安心・効率的な医療現場の実現へ ~オンプレAI & ノーコードワークフローで進める業務改革~
siyoo
0
260
Accelerated Computing for Climate forecast
inureyes
PRO
0
100
局所保存性・相似変換対称性を満たす機械学習モデルによる数値流体力学
yellowshippo
1
280
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
700
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
A better future with KSS
kneath
238
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
「ゼロから作るDeepLearning」 第7章前半ざっくりまとめ (7.3章「プーリング」まで) 2017.2.20 たのっち @dproject21
この本のざっくりまとめです • 「ゼロから作るDeepLearning」斎藤 康毅 著 オライリー・ジャパンより2016年9⽉ 発⾏ https://www.oreilly.co.jp/books/9784873117584/ • 公式サポートページ
https://github.com/oreilly-japan/deep-learning-from-scratch • 第7章「畳み込みニューラルネットワーク」前半部です。 (後半の実装については、次回、資料作ります。) https://deeplearning-yokohama.connpass.com/
第6章までやってきたニューラルネットワークは、 1次元データ(⽩⿊データ)を扱うのに向いていた。 畳み込みニューラルネットワークとは ⼊⼒ データ Affine ReLU Affine ReLU Affine
ReLU Affine Softmax 第7章で取り上げる畳み込みニューラルネットワークは、 3次元データ(カラー画像データ)を扱えるニューラルネットワーク。 ⼊⼒ データ Conv ReLU Pooling ReLU Affine Softmax Conv ReLU Pooling Conv ReLU Affine
畳み込みニューラルネットワークとは 畳み込みニューラルネットワークでは、 ・3次元データを扱う「畳み込み層(Convolutionレイヤ)」 ・特徴抽出を⾏う「プーリング層(Poolingレイヤ)」 が新たに加わる。 ・前半ではConv-ReLU-(Pooling)の組み合わせを⽤いる ・出⼒に近い層ではAffine-ReLUの組み合わせを⽤いる ・出⼒層ではAffine-Softmaxの組み合わせを⽤いる ⼊⼒ データ
Conv ReLU Pooling ReLU Affine Softmax Conv ReLU Pooling Conv ReLU Affine
畳み込み層とは 「畳み込み演算」(画像処理で⾔うところの「フィルタ演算」)を⾏う。 ⼊⼒データ(4, 4)に対してフィルタ(3, 3)の積和演算を⾏う。 1 2 3 0 0
1 2 3 3 0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ 15 16 6 15 ⼊⼒データ フィルタ 出⼒
畳み込み層とは 1 2 3 0 0 1 2 3 3
0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ 15 16 6 15 1 2 3 0 0 1 2 3 3 0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ 15 16 6 15 ⼊⼒データに対して、フィルタを⼀定の間隔でスライドさせながら、 演算を⾏う。
畳み込み層とは 1 2 3 0 0 1 2 3 3
0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ 15 16 6 15 1 2 3 0 0 1 2 3 3 0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ 15 16 6 15 ⼊⼒データに対して、フィルタを⼀定の間隔でスライドさせながら、 演算を⾏う。
畳み込み層とは バイアスは、フィルタ適⽤後のデータに対して加算する。 1 2 3 0 0 1 2 3
3 0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ 15 16 6 15 ⼊⼒データ フィルタ 出⼒ + 18 19 9 18 3 バイアス
畳み込み層とは 出⼒サイズを整えるために「パディング」を⽤いる。 ⼊⼒データの周囲を固定データ(0など)で埋める。 畳み込み演算を何度も⾏うとサイズが⼩さくなっていき、演算不能な状態に なっていく。これを回避するためにパディングを持ちいる。 1 2 3 0 0
1 2 3 3 0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ ⼊⼒データ フィルタ 出⼒ 7 12 10 2 4 15 16 10 10 6 15 6 8 10 4 3
畳み込み層とは フィルタの移動間隔を「ストライド」と呼ぶ。 ストライドを⼤きくすると、出⼒サイズは⼩さくなる。 パディングを⼤きくすると、出⼒サイズは⼤きくなる。 1 2 3 0 0 1
2 3 3 0 1 2 2 3 0 1 2 0 1 0 1 2 1 0 2 ⊛ ⼊⼒データ フィルタ 出⼒ 7 12 10 2 4 15 16 10 10 6 15 6 8 10 4 3
畳み込み層とは 3次元データの畳み込みを⾏う際は、チャンネルの数だけフィルタを⽤意して、 畳込み演算を⾏う。 ⊛ ⼊⼒データ フィルタ 出⼒
畳み込み層とは 各チャンネルごとに出⼒(特徴マップ)を⽤意したい場合、複数のフィルタを ⽤いる。 ⊛ ⼊⼒データ フィルタ 出⼒
プーリング層とは プーリングは縦・横⽅向の空間を⼩さくする演算。 あるサイズ(ここでは2×2)の領域から最⼤値を取って集約していく。 ※最⼤値だけでなく平均も扱えるが、画像認識の場合は主に最⼤値で⾏う。 1 2 3 0 0 1
2 3 3 0 1 2 2 3 0 1 2 1 2 3 0 0 1 2 3 3 0 1 2 2 3 0 1 2 3 4 1 2 3 0 0 1 2 3 3 0 1 2 2 3 0 1 2 3 1 2 3 0 0 1 2 3 3 0 1 2 2 3 0 1 2 3 4 2