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.7k
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
190
TDD applied Data Cleansing
dproject21
0
1.9k
Data preprocessing for MachineLearning/BI by Golang and MySQL UDF
dproject21
1
950
高精度名寄せシステムを支える テキスト処理 (の、ほんのさわり)
dproject21
3
2.6k
ゼロから作るDeepLearning 第5章 誤差逆伝播法による重み更新を追ってみる
dproject21
0
1.2k
ゼロから作るDeepLearning 第6章ざっくりまとめ
dproject21
2
1.4k
Other Decks in Science
See All in Science
Machine Learning for Materials (Challenge)
aronwalsh
0
350
デジタルアーカイブの教育利用促進を目指したメタデータLOD基盤に関する研究 / Research on a Metadata LOD Platform for Promoting Educational Uses of Digital Archives
masao
0
110
AI(人工知能)の過去・現在・未来 —AIは人間を超えるのか—
tagtag
0
110
07_浮世満理子_アイディア高等学院学院長_一般社団法人全国心理業連合会代表理事_紹介資料.pdf
sip3ristex
0
660
データから見る勝敗の法則 / The principle of victory discovered by science (open lecture in NSSU)
konakalab
1
200
安心・効率的な医療現場の実現へ ~オンプレAI & ノーコードワークフローで進める業務改革~
siyoo
0
380
機械学習 - 授業概要
trycycle
PRO
0
260
「美は世界を救う」を心理学で実証したい~クラファンを通じた新しい研究方法
jimpe_hitsuwari
1
170
データマイニング - ノードの中心性
trycycle
PRO
0
280
Collective Predictive Coding as a Unified Theory for the Socio-Cognitive Human Minds
tanichu
0
110
学術講演会中央大学学員会府中支部
tagtag
0
310
【RSJ2025】PAMIQ Core: リアルタイム継続学習のための⾮同期推論・学習フレームワーク
gesonanko
0
200
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Unsuck your backbone
ammeep
671
58k
Balancing Empowerment & Direction
lara
5
700
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Making Projects Easy
brettharned
120
6.4k
How GitHub (no longer) Works
holman
315
140k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
The World Runs on Bad Software
bkeepers
PRO
72
11k
KATA
mclloyd
PRO
32
15k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Bash Introduction
62gerente
615
210k
Docker and Python
trallard
46
3.6k
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