SlideShare a Scribd company logo
CNN-RNN: A Unified Framework for
Multi-label Image Classification
2016/7/24 @CV勉強会
酒井 俊樹
自己紹介
名前:酒井 俊樹(@104kisakai)
所属:NTTドコモ
仕事:画像認識API/サービスの研究開発(NTT)
● 局所特徴量を用いた画像認識
https://www.nttdocomo.co.jp/binary/pdf/corporate/technology/rd/technical_journal/bn/vol23_1/vol23_1_004jp.pdf
● Deep Learningを用いた画像認識
https://www.nttdocomo.co.jp/binary/pdf/corporate/technology/rd/technical_journal/bn/vol24_1/vol24_1_007jp.pdf
● 画像認識API
https://dev.smt.docomo.ne.jp
本発表は個人で行うものであり、所属組織とは
関係ありません。
この論文の概要
CNN-RNN: A Unified Framework for Multi-label Image Classification
● 著者:Jiang Wang et al.
● Baidu researchの研究(著者の何人かはその後転職)
概要
● CNNとRNNを組み合わせたMulti labelでの画像分類フレームワークを提案
○ SOTAを上回る精度
● 各labelが画像上のどこに着目しているか(attention)を可視化
Multi-label Image Classification
● スマホユーザが撮影した画像
○ 様々なオブジェクト/シーンが混ざっている
○ “画像認識のため”に撮っていない画像の
認識/ タグ付は難しい
● CNNを用いた画像認識(私見)
○ Single label classification
■ 精度は高い
○ instance-based recognition
■ ここまでやらなくて良い事も多い
■ 画像全体のシーン/activity等を認識できない
ひつじ
犬
芝牧場
空
旅行
Multi-label Image Classification
Multi label classificationの課題
● labelの共起
(co-ocuurence dependency)
○ 雲と空は共起しやすい
○ 水と車は共起しにくい
○ グラフを用いて表現できるが …
labelの数に応じてパラメタが増える
● labelの意味の重複
● 画像全体 or 局所
○ 画像全体からしか推定できないタグ
■ 画像のシーン/アクティビティ
○ 画像全体から特徴量を抽出すると、
小さいオブジェクト等が見逃されがち
0.8
0.1
0.2
空
雲
人
ocean; sea; water
ship; boat; vessel; craft;
vehicle; watercraft
提案手法: CNN-RNN
● labelの共起
→RNNを用いて学習
● 画像全体 or 局所
→RNNによりAttentionをmodel化
→画像中の一部分にattention
● labelの意味の重複
→image/label embedding space
で表現
空 雲
空 雲
鳥
ocean
sea
ship
boat
watercraft
people
船の画像
提案手法: CNN-RNN
CNNで抽出した
特徴量
RNNの出力+
画像特徴量
labelと
image featureの
embedding space
提案手法: CNN-RNN
labelの1hot vectorを
行列UIを用いてembedding space
上のvectorに変換
vector sum
labelに逆変換
ネットワーク構造
● CNN: VGG 16
○ ImageNet2012のデータで事前学習
○ fine-tunngしない
● RNN: LSTM+rmsprop
○ 入力層: 64 node/ 隠れ層: 512 node
● Loss関数
○ softmaxで正規化した上で、cross entropy lossを利用
http://www.cs.toronto.edu/~frossard/post/vgg16/
http://qiita.com/t_Signull/items/21b82be280b46f467d1b
どの順番でLabelを予測していくのが良いのか
Labelの予測する順番に正解はない
→Greedyに推測
● Greedyに予測する際の問題点
○ 最初の一つの予測を間違えてしまうと、
すべてがダメになってしまう …
○ 各時刻tでtopK個のlabelを予測していき、
beam searchする方法をとることに
データ
● 以下の3つのベンチマークを利用
○ NUS-WIDE:269,648 images from flickr, 1000 tags + 81 tags from human annotator
○ MS COCO: 123,000 images, 80 class
○ PASCAL VOC 2007: 9963 images
● 学習データ時のlabelの入力順序
○ 学習データでの当該 labelの出現頻度順で決定
(簡単な、典型的なlabelから先に予測していく事を意図 )
○ 順番をランダムにしたり、高度な順番付の手法 [28]をつかってみたが、特に効果はなかった …
○ mini batchごとに順番をrandomにしたら、収束せず…
評価指標
● labelとground truthを比較
○ 予測されたK番目までのlabelを元にprecison/recall/F1を 算出/平均
■ precision = 正解数/生成されたlabel数
■ recall = 正解数/ground truthのlabel数
■ classごとのprecision/recall/F1の平均(C-P,C-R)
■ 全labelでのprecision/recall(O-P, O-R)
○ mean average precision(MAP)@top N
■ 画像ごとでのprecisionの平均値
結果
● NUS-WIDE ● MSCOCO
結果(NUS-WIDE)
● NUS-WIDE
81 concept/ k = 3
1000 concept/ k = 10
● 各指標でSOTA(WARP)を上回る
● C-Rが低いのはkが小さいため
● 性別に関係するタグ (actor/actress)は特に
難しかった←学習データがImageNetのた
め?
多分筆者のミス
結果(NUS-WIDE)
● MSCOCO ● 各指標でSOTA(WARP)を上回る
● C-Rが低いのはkが小さいため
● Recurrentの層を線形結合に書き換える (No
RNN)と、全体的に精度が下がる (特に
recall)
● 得意
○ person/ zebra/ stop sign
○ sports bar/ baseball glove
(他のオブジェクトやシーンに依存が強いもの)
● 不得意
○ 画像中の小さいオブジェクトの細かい違い
(電化製品の名称等)
80 concept/ k = 3
結果(PASCAL VOC 2007)
● ClassごとのPrecision
結果(その他)
● 定性的な傾向
○ 学習されたEmbedding Space
○ embedding space上でkNNを取ると、
classificationで学習するより、より
fine-grainedな単語が学習できる
17
CNN-RNNで生成した
Embedding Space上
でkNNした結果
結果(その他)
● attentionの可視化
○ Deconvolutional network(画像のどこに強く反応したかreconstructする
network[Zeiler et al 2010])を用いてattention を可視化
○ elephant→zebraと予測した時のattentionの変化
18
まとめ
● CNNとRNNを組み合わせたMulti labelでの画像分類フレームワークを提案
○ SOTAを上回る制度
○ 重複したlabelが出力されにくくなった
○ 注意の可視化も可能に

More Related Content

PDF
論文紹介:Ambient Sound Provides Supervision for Visual Learning(CV勉強会ECCV2016読み会)
PPTX
Androidエンジニアになってからの1年間の感想と振り返り
PDF
Nips20180127
PDF
「Google I/O 2018ふりかえり」What's new ARCore and ML Kit (Google APP DOJO資料)
PDF
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
PDF
ヤフオク!の快適なカスタマー体験を支えるモバイルアプリのライブアップデート技術
PDF
CodeIgniter 最新情報 2010
PPTX
MrKNN_Soft Relevance for Multi-label Classification
論文紹介:Ambient Sound Provides Supervision for Visual Learning(CV勉強会ECCV2016読み会)
Androidエンジニアになってからの1年間の感想と振り返り
Nips20180127
「Google I/O 2018ふりかえり」What's new ARCore and ML Kit (Google APP DOJO資料)
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
ヤフオク!の快適なカスタマー体験を支えるモバイルアプリのライブアップデート技術
CodeIgniter 最新情報 2010
MrKNN_Soft Relevance for Multi-label Classification

Viewers also liked (20)

PDF
Tag Extraction Final Presentation - CS185CSpring2014
PDF
Multi-label, Multi-class Classification Using Polylingual Embeddings
PDF
Multi-label Classification with Meta-labels
PPTX
Multi-Class Classification on Cartographic Data(Forest Cover)
PDF
Voting Based Learning Classifier System for Multi-Label Classification
PDF
Svm implementation for Health Data
PPTX
Naïve multi label classification of you tube comments using
PDF
L05 word representation
PPTX
PPT
Photo captions
PDF
Natural Language Processing: L03 maths fornlp
PDF
An overview of Hidden Markov Models (HMM)
PDF
Introduction To Applied Machine Learning
PDF
Natural Language Processing: L02 words
PDF
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
PDF
Overview of TensorFlow For Natural Language Processing
PDF
Natural Language Processing: L01 introduction
PDF
L06 stemmer and edit distance
PDF
Machine Learning Lecture 2 Basics
PDF
L05 language model_part2
Tag Extraction Final Presentation - CS185CSpring2014
Multi-label, Multi-class Classification Using Polylingual Embeddings
Multi-label Classification with Meta-labels
Multi-Class Classification on Cartographic Data(Forest Cover)
Voting Based Learning Classifier System for Multi-Label Classification
Svm implementation for Health Data
Naïve multi label classification of you tube comments using
L05 word representation
Photo captions
Natural Language Processing: L03 maths fornlp
An overview of Hidden Markov Models (HMM)
Introduction To Applied Machine Learning
Natural Language Processing: L02 words
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
Overview of TensorFlow For Natural Language Processing
Natural Language Processing: L01 introduction
L06 stemmer and edit distance
Machine Learning Lecture 2 Basics
L05 language model_part2
Ad

Similar to CNN-RNN: A Unified Framework for Multi-label Image Classification@CV勉強会35回CVPR2016読み会 (20)

PDF
CNN-RNN: a large-scale hierarchical image classification framework
PDF
R-CNNの原理とここ数年の流れ
PDF
MIRU_Preview_JSAI2019
PDF
DeepLearningDay2016Summer
PPTX
関西Cvprml勉強会2017.9資料
PPTX
CVPR2018 pix2pixHD論文紹介 (CV勉強会@関東)
PDF
IEEE ITSS Nagoya Chapter
PPTX
ゼロから深層学習を学ぶ方法 - CMS大阪夏祭り2017
PDF
ドライブレコーダーの Scene Text Recognitionにおける Multi-task Learning
PDF
MIRU2018 tutorial
PPTX
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
PDF
論文紹介 Pixel Recurrent Neural Networks
PPTX
画像認識 6.3-6.6 畳込みニューラル ネットワーク
PDF
CVPR2018のPointCloudのCNN論文とSPLATNet
PDF
【論文読み会】Deep Clustering for Unsupervised Learning of Visual Features
PPTX
ImageNet Classification with Deep Convolutional Neural Networks
PDF
Tutorial-DeepLearning-PCSJ-IMPS2016
PPTX
Image net classification with Deep Convolutional Neural Networks
PPTX
CVPR 2017 報告
PPTX
Densely Connected Convolutional Networks
CNN-RNN: a large-scale hierarchical image classification framework
R-CNNの原理とここ数年の流れ
MIRU_Preview_JSAI2019
DeepLearningDay2016Summer
関西Cvprml勉強会2017.9資料
CVPR2018 pix2pixHD論文紹介 (CV勉強会@関東)
IEEE ITSS Nagoya Chapter
ゼロから深層学習を学ぶ方法 - CMS大阪夏祭り2017
ドライブレコーダーの Scene Text Recognitionにおける Multi-task Learning
MIRU2018 tutorial
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
論文紹介 Pixel Recurrent Neural Networks
画像認識 6.3-6.6 畳込みニューラル ネットワーク
CVPR2018のPointCloudのCNN論文とSPLATNet
【論文読み会】Deep Clustering for Unsupervised Learning of Visual Features
ImageNet Classification with Deep Convolutional Neural Networks
Tutorial-DeepLearning-PCSJ-IMPS2016
Image net classification with Deep Convolutional Neural Networks
CVPR 2017 報告
Densely Connected Convolutional Networks
Ad

CNN-RNN: A Unified Framework for Multi-label Image Classification@CV勉強会35回CVPR2016読み会