畳込みニューラルネットワーク#
用語の整理#
- (高階)テンソル
- 畳込み convolution
- フィルタ (filter), カーネル(kernel), 特徴(feature),表象(representation)
- プーリング pooling
- ストライド stride
- パディング padding
- 局所結合 local connectivity
- 受容野 receptive fields
- 非線形変換 non lineaar transformation
- ReLU 整流線形ユニット (Recutified Linear Unit)
- 完全結合層 fully connected (layer)
- ソフトマックス関数 softmax function
- 勾配消失問題 gradient decent problem
- 責任割当問題 credit assignment problem
- penultimate layer
- {Batch, Layer, Weight} Normalization
- データ拡張 (data augmentation)
- エンドツーエンド (end-to-end)

from A guide to Face Detection in Python
-
The Complete Beginner’s Guide to Deep Learning: Convolutional Neural Networks and Image Classification, Anne Bonner Feb. 02
-
畳込みニューラルネットワーク (Convlutional Neural Networks:CNN) とは画像認識におけるゲームチェンジャー(以後,画像認識,ビデオ分類,自動運転,ドローン,ゲームなどへの応用多数)
- イメージネット画像コンテストでは,分類 (classification) 課題と位置 (locallization) 課題とからなる。
- コンテストは 2010 年から Li Fei-Fei さん中心となって AMT で画像のアノテーションを行って 画像を2012 年の優勝チームが CNN を使った。通称アレックスネット
- スタンフォード大学の授業 CS231n: Convolutional Neural Networks for Visual Recognition. スライド](http://cs231n.stanford.edu/slides/2019/cs231n_2019_lecture05.pdf)
CNN の基本構成要素#
- 畳込み演算 (Convolution)
- 非線形変換 (ReLU: Rectified Linear Units) 神経伝達物質の特性を反映
- プーリング (Pooling)
- 完全結合層 (fuly connected layer: FC layer)
A classic CNN architecture would look something like this:
-
Historically architectures looked like [(畳込み - ReLU) * N - プーリング?] * M -> (完全結合層 -> ReLU) * K, ソフトマックス ここで 程度, M は 100 以上に達することがある, ().
-
CNN では,ほとんど前処理を必要としない(End-to-End)
- penultimate レイヤまでで特徴抽出
- CNN は哺乳類の視覚系の生理学的事実に基づく。1960年代,サル,ネコを用いた Hubel と Wieselの研究。ノーベル医学生理学賞(1981年)
- 第2次ブームの誤差逆伝播法の問題点
- 勾配消失問題 gradient vanishing problem
- 責任割当問題 credit assignment problem
- 受容野 receptive filed の存在
-
One algorithm 仮説
-
畳込み演算: 部分領域からの情報だけを処理
- ReLU: 非線形変換
- プーリング: 情報を間引く
- 完全結合層: 層のすべてのニューロンを次の層のすべてのニューロンに接続 たたみ込みレイヤでは、ニューロンは前のレイヤのサブエリアからの入力のみを受け取ります。 完全に接続された層では、各ニューロンは前の層のすべての要素から入力を受け取ります。
- 畳み込みステップの主な目的は、入力画像から特徴を抽出すること
- 畳込み層は常に CNN 最初ステップ
- 入力画像、特徴検出器、特徴マップとも呼ばれる
- 行列の掛け算
さらなる情報#
- Math? Introduction to Convolutional Neural Networks by Jianxin Wu
- C.-C. Jay Kuo Understanding Convolutional Neural Networks With a Mathematical Model.
- the absolute basics of activation functions, you can find that here!
- Artificial neural networks? You can learn about them here!)
- this video by Geoffrey Hinton on the softmax function
- A Friendly Introduction to Cross Entropy Loss by Rob DiPietro
- How to Implement a Neural Network Intermezzo 2 by Peter Roelants
-
Introduction to Convolutional Neural Networks by Jianxin Wu
- Yann LeCun’s original article, Gradient-Based Learning Applied to Document Recognition
- The Nine Deep Learning Papers You Need to Know About (Understanding CNNs part 3) by Adit Deshpande
- 李 飛飛さんの TED talk
李 飛飛さんの TED talk