SlideShare a Scribd company logo
ImageNet	Classification	with	Deep	
Convolutional	Neural	Networks
(An	introduction	to	PyTorch)
Daichi Hayashi
@Doshisha University
Deep	Learningのもたらした衝撃
• 画像認識やNLP,音声認識の分野はもはやDeep Learning一色!
• Deep Learningが用いられて成功している分野は以下のように様変わり
• 従来: モデリング + 特徴量エンジニアリング + アルゴリズム開発
Ø モデリング = 数学や物理を用いた問題の定式化
Ø その問題を解くアルゴリズムの選択・開発
• 現在 : ネットワーク構造の設計 + 訓練データ構築
Ø NNが特徴量抽出を全て行ってくれる.
Deep	Learningの科学領域における侵食
• あらゆる工学・バイオ分野に応用されている
解けなかった問題を解けるように!
• 計算時間短縮の目的でも利用が始まる.
合成・変換はDNNsの十八番
着こなし推薦とその説明
(Tangseng-Okatani WACV2020)
物体検出
• ただの画像認識から物体検出もできるように
Faster R-CNN, 2015
Semantic	Segmantation
U-Net, 2015
• 検出だけでなく, 物体ごとにMaskするsegmentation taskも高精度で可能に!
• 医療系への応用が進む.
Instance	Segmentation
Mask R-CNN, 2017
• 物体ごとにsegmentationしてくれるDNNも開発されて, robotics系への応
用も進む.
Transfer	Learning
• ImageNetなどのpre-trainingされた重みを用いて, Fine-Tuningを
行うことにより, 少ないデータセットでも高精度のモデル作り
が可能に!
自前データだけ Pre-train + fine-tuning
Deep	Learningは教養
• 機械学習エンジニアとしてやっていくとしたら, 簡単な画像認識ぐ
らいのDeep Learningの知識は教養みたいな世界になっている…
• そこで, 今回は世界を一変させた伝説的論文の簡単な解説と実際に
PyTrochによる実装を行います.
• PythonとNumpy使った事のある人なら実装見たら大体わかる(はず).
論文情報
• Title: ImageNet Classification with Deep Convolutional Neural Networks
• 発行年: 2012
• 著者: Alex Krizhevsky, Ilya Sutskever, Geoffrey Hinton.
• Deep Learningの火付け役となった, いわゆるAlexNetについての論文.
• 本日は, この伝説的論文の簡単な解説とPyTorchによる実装を行う.
目的
• 2012年当時の機械学習的なアプローチによる画像認識タスクは, 良い
性能を出すモデルを作るために, 自分たちで大きなデータセットを集
めることができた
• CIFAR10/100などの数万オーダーぐらいのデータセットはかなり良い
成績をおさめていたが, 1500万, 2.2万カテゴリーがある大規模なデー
タセット(ImageNet)を学習するためには, もっと大きなモデルを構築
する必要があった.
• しかし, 今までのSOTA手法(当時はSVMなど)では取り扱うことができ
ない…
目的
• そこで, Le-CunやHintonなどに代表されるCNNに注目した.
Ø CNNは層の数(depth)やユニット数(width)の数を変えることによ
り, 大規模なモデルを構築できる.
Ø CNNはFeed-forward NNと比べて, Connectionやパラメータ数を抑
えながら学習ができるので, 簡単に学習ができるから.
• また, CNN長年の課題であった計算コストも, GPUを使うことで解決
できる可能性があったから.
目的(主張したいこと)
• LSVRC-2012のtop5カテゴリーでエラー率15.3%を記録し, 2位(26.2%)
以下を大きく引き離し優勝したConvolution Neural Networkについて
の解説.
• モデルが”Deep”であることが重要であることを主張したい.
• 活性化関数にReLUを用いるのが, 計算面でベストである.
• 最近reguraization目的で開発したDropoutは結構効果的である.
• 今後は, メモリサイズが大きいGPUを開発することがこの分野の発
展につながることを主張.
Dataset
• 大会ルールに則り, ImageNetから1000カテゴリー からなるRGB画像130万
を取ってきて以下の様にデータを分割して学習する.
Ø Training data: 1.2 million
Ø Validation data: 50 thousand
Ø Test data : 150 thousand
• 224 x 224にdown-samplingして学習させた.
• 指標:
Ø モデルが予測するカテゴリーの中で正解データがTop1 or top5に入っ
てれば正解とする.
ReLU関数の有効性
• 他に今まで使われてきた活性化関数より学習が進むのが早い!
• 活性化関数にReLUとtanhを用いた時
にCIFAR-10を用いた実験.
• 学習時のエラー率が25%になるまで
エポックを回した時の比較
勾配消失が起こりにくいから
勾配の値のプロット
Model	Architecture
• 当時のGPUはメモリが小さかったから, 2つのGPUにそれ
ぞれモデルを分けて学習させていたからこんな感じの構
造になっている.
Model	Architecture
Image
Conv
11
+
ReLU
+
MaxP
ool2d
Conv
5
+
ReLU
+
MaxP
ool2d
Conv
3
+
ReLU
Conv
3
+
ReLU
Conv
3
+
ReLU
+
Max
Pool
2d
FC
+
ReLU
+
Drop
out
FC
+
ReLU
+
Drop
out
FC
+
ReLU
soft
max
224 x 224
Regulaization by	Dropout
• Hintonらによって発表されたNN専用の正則化手法.
Ø 現在でも使われている.
• 学習時にFC層に対して確率Pでノードを凍結させ, 学習させない
様にする. こうする事で, 過剰に学習することを防ごうというの
がモチベーション.
Srivastava, Hinton et al, Dropout: A Simple Way to Prevent Neural Networks from Overfitting, 2014
Result
• 2位以下を大きく引き離し圧勝(しゅごい…)!
考察とか
• 間違えている画像は, そもそも正解ラベルに対して画像が曖昧すぎる
“Deep”	is	important	for	Model
• 任意の中間層を抜くと, top-1に関する性能が2%落ちてしま
うという結果になった.
• 既存の理論を覆す結果に.
Disucussion &	まとめ
• 大規模でDeepなCNNが画像認識において極めて有効なことを示した.
• 活性化関数に関しては, ReLUが一番良い.
• Dropoutによる正則化は有効!
• もっと大規模なCNNが実現できるマシンパワーを獲得できるなら, モ
デルの精度はもっと伸びることが期待できる.
• Nvidia社による高性能なGPUの開発のきっかけにつながった!

More Related Content

What's hot

What's hot (20)

動画認識サーベイv1(メタサーベイ )
動画認識サーベイv1(メタサーベイ )動画認識サーベイv1(メタサーベイ )
動画認識サーベイv1(メタサーベイ )
 
Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイ
 
backbone としての timm 入門
backbone としての timm 入門backbone としての timm 入門
backbone としての timm 入門
 
畳み込みニューラルネットワークの高精度化と高速化
畳み込みニューラルネットワークの高精度化と高速化畳み込みニューラルネットワークの高精度化と高速化
畳み込みニューラルネットワークの高精度化と高速化
 
[DL輪読会]SlowFast Networks for Video Recognition
[DL輪読会]SlowFast Networks for Video Recognition[DL輪読会]SlowFast Networks for Video Recognition
[DL輪読会]SlowFast Networks for Video Recognition
 
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
 
モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
 
20190706cvpr2019_3d_shape_representation
20190706cvpr2019_3d_shape_representation20190706cvpr2019_3d_shape_representation
20190706cvpr2019_3d_shape_representation
 
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
 
ResNetの仕組み
ResNetの仕組みResNetの仕組み
ResNetの仕組み
 
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
 
【DL輪読会】Novel View Synthesis with Diffusion Models
【DL輪読会】Novel View Synthesis with Diffusion Models【DL輪読会】Novel View Synthesis with Diffusion Models
【DL輪読会】Novel View Synthesis with Diffusion Models
 
[DL輪読会]Attention Is All You Need
[DL輪読会]Attention Is All You Need[DL輪読会]Attention Is All You Need
[DL輪読会]Attention Is All You Need
 
【チュートリアル】コンピュータビジョンによる動画認識
【チュートリアル】コンピュータビジョンによる動画認識【チュートリアル】コンピュータビジョンによる動画認識
【チュートリアル】コンピュータビジョンによる動画認識
 
Image Retrieval Overview (from Traditional Local Features to Recent Deep Lear...
Image Retrieval Overview (from Traditional Local Features to Recent Deep Lear...Image Retrieval Overview (from Traditional Local Features to Recent Deep Lear...
Image Retrieval Overview (from Traditional Local Features to Recent Deep Lear...
 
コンピュータビジョン分野メジャー国際会議 Award までの道のり
コンピュータビジョン分野メジャー国際会議 Award までの道のりコンピュータビジョン分野メジャー国際会議 Award までの道のり
コンピュータビジョン分野メジャー国際会議 Award までの道のり
 
Deep Learningと画像認識   ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識   ~歴史・理論・実践~
 
[DL輪読会]Dense Captioning分野のまとめ
[DL輪読会]Dense Captioning分野のまとめ[DL輪読会]Dense Captioning分野のまとめ
[DL輪読会]Dense Captioning分野のまとめ
 

Similar to 【Deep Learning】AlexNetの解説&実装 by PyTorch (colabリンク付き)

これから始める人の為のディープラーニング基礎講座
これから始める人の為のディープラーニング基礎講座これから始める人の為のディープラーニング基礎講座
これから始める人の為のディープラーニング基礎講座
NVIDIA Japan
 

Similar to 【Deep Learning】AlexNetの解説&実装 by PyTorch (colabリンク付き) (20)

20150930
2015093020150930
20150930
 
Deep learningの概要とドメインモデルの変遷
Deep learningの概要とドメインモデルの変遷Deep learningの概要とドメインモデルの変遷
Deep learningの概要とドメインモデルの変遷
 
AIがAIを生み出す?
AIがAIを生み出す?AIがAIを生み出す?
AIがAIを生み出す?
 
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation 「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
「解説資料」ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
【DL輪読会】ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
MIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearningMIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearning
 
これから始める人の為のディープラーニング基礎講座
これから始める人の為のディープラーニング基礎講座これから始める人の為のディープラーニング基礎講座
これから始める人の為のディープラーニング基礎講座
 
AIとScrumとスケール
AIとScrumとスケールAIとScrumとスケール
AIとScrumとスケール
 
Convolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をするConvolutional Neural Netwoks で自然言語処理をする
Convolutional Neural Netwoks で自然言語処理をする
 
【CVPR 2020 メタサーベイ】Neural Generative Models
【CVPR 2020 メタサーベイ】Neural Generative Models【CVPR 2020 メタサーベイ】Neural Generative Models
【CVPR 2020 メタサーベイ】Neural Generative Models
 
NeurIPS2021から見るメタ学習の研究動向 - 第83回人工知能セミナー (2022.3.7)「AIトレンド・トップカンファレンス報告会(NeurI...
NeurIPS2021から見るメタ学習の研究動向 - 第83回人工知能セミナー (2022.3.7)「AIトレンド・トップカンファレンス報告会(NeurI...NeurIPS2021から見るメタ学習の研究動向 - 第83回人工知能セミナー (2022.3.7)「AIトレンド・トップカンファレンス報告会(NeurI...
NeurIPS2021から見るメタ学習の研究動向 - 第83回人工知能セミナー (2022.3.7)「AIトレンド・トップカンファレンス報告会(NeurI...
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
 
Deep Learning技術の最近の動向とPreferred Networksの取り組み
Deep Learning技術の最近の動向とPreferred Networksの取り組みDeep Learning技術の最近の動向とPreferred Networksの取り組み
Deep Learning技術の最近の動向とPreferred Networksの取り組み
 
人工知能技術を用いた各医学画像処理の基礎 (2022/09/09)
人工知能技術を用いた各医学画像処理の基礎 (2022/09/09)人工知能技術を用いた各医学画像処理の基礎 (2022/09/09)
人工知能技術を用いた各医学画像処理の基礎 (2022/09/09)
 
【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較
 
画像処理分野における研究事例紹介
画像処理分野における研究事例紹介画像処理分野における研究事例紹介
画像処理分野における研究事例紹介
 
鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る
鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る
鳥肌必至のニューラルネットワークによる近未来の画像認識技術を体験し、IoTの知られざるパワーを知る
 
20150414seminar
20150414seminar20150414seminar
20150414seminar
 
ICCV2019 report
ICCV2019 reportICCV2019 report
ICCV2019 report
 
ChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なことChainerでDeep Learningを試すために必要なこと
ChainerでDeep Learningを試すために必要なこと
 

【Deep Learning】AlexNetの解説&実装 by PyTorch (colabリンク付き)