Transcript
Page 1: ICCV2013 reading: Learning to rank using privileged information

ICCV2013 reading 2014.3.28

Akisato Kimura (@_akisato)

Page 2: ICCV2013 reading: Learning to rank using privileged information

Paper to read

(Presented at ICCV2013)

Page 3: ICCV2013 reading: Learning to rank using privileged information

Problem dealing with in this paper

β€’ Learning using privileged information (LUPI) – Training

β€’ Feature vectors : 𝑋𝑋 = π‘₯π‘₯1, … , π‘₯π‘₯𝑁𝑁 , π‘₯π‘₯𝑖𝑖 ∈ ℝ𝑑𝑑 β€’ Label annotation : π‘Œπ‘Œ = 𝑦𝑦1, … ,𝑦𝑦𝑁𝑁 , 𝑦𝑦𝑖𝑖 ∈ β„• β€’ Additional information : π‘‹π‘‹βˆ— = π‘₯π‘₯1βˆ—, … , π‘₯π‘₯π‘π‘βˆ— , π‘₯π‘₯π‘–π‘–βˆ— ∈ β„π‘‘π‘‘βˆ—

– Testing β€’ Prediction function : 𝑓𝑓: ℝ𝑑𝑑 β†’ β„• β€’ No additional information required

Page 4: ICCV2013 reading: Learning to rank using privileged information

Privileged information??

β€’ Applicable to several scenarios in CV

Page 5: ICCV2013 reading: Learning to rank using privileged information

Formulation

β€’ Generic supervised binary classification – Training

β€’ Feature vectors : 𝑋𝑋 = π‘₯π‘₯1, … , π‘₯π‘₯𝑁𝑁 , π‘₯π‘₯𝑖𝑖 ∈ ℝ𝑑𝑑 β€’ Label annotation : π‘Œπ‘Œ = 𝑦𝑦1, … ,𝑦𝑦𝑁𝑁 , 𝑦𝑦𝑖𝑖 ∈ {+1,βˆ’1} β€’ Additional information : π‘‹π‘‹βˆ— = π‘₯π‘₯1βˆ—, … , π‘₯π‘₯π‘π‘βˆ— , π‘₯π‘₯π‘–π‘–βˆ— ∈ β„π‘‘π‘‘βˆ—

– Testing β€’ Prediction function : 𝑓𝑓: ℝ𝑑𝑑 β†’ ℝ β€’ No additional information required

Page 6: ICCV2013 reading: Learning to rank using privileged information

Key idea

β€’ Privileged information allow us to distinguish between easy and hard examples – If the privileged data is easy to classify, then the

original data would also be easy to classify.

– … under the assumption that the privileged data is similarly informative about the problem at hand.

Page 7: ICCV2013 reading: Learning to rank using privileged information

Linear SVM

β€’ Ordinary convergence rate = 𝑂𝑂(π‘π‘βˆ’1/2) β€’ It improves to 𝑂𝑂(π‘π‘βˆ’1)

– if we knew the optimal slack values πœ‰πœ‰π‘–π‘– in advance (OracleSVM [Vapnik+ 2009])

minπ‘€π‘€βˆˆβ„π‘‘π‘‘,π‘π‘βˆˆβ„,πœ‰πœ‰π‘–π‘–βˆˆβ„

Page 8: ICCV2013 reading: Learning to rank using privileged information

Slack variables in SVM

β€’ Slack variables tell us which training examples are easy / hard to classify – πœ‰πœ‰π‘–π‘– = 0 β†’ easy – πœ‰πœ‰π‘–π‘– ≫ 0 β†’ hard

minπ‘€π‘€βˆˆβ„π‘‘π‘‘,π‘π‘βˆˆβ„,πœ‰πœ‰π‘–π‘–βˆˆβ„

Page 9: ICCV2013 reading: Learning to rank using privileged information

SVM+

β€’ A 1st model for LUPI – Use privileged data as a proxy to the oracle – Parameterize πœ‰πœ‰π‘–π‘– = π‘€π‘€βˆ—, π‘₯π‘₯π‘–π‘–βˆ— + π‘π‘βˆ—

[Vapnik+ NN2009, NIPS2010]

Page 10: ICCV2013 reading: Learning to rank using privileged information

Why should SVM+ be improved?

β€’ Cannot be solved by popular SVM packages – Although good optimization algorithms were

derived [Pechyony+ 2011], they work only with the dual.

Page 11: ICCV2013 reading: Learning to rank using privileged information

Learning to rank setup instead

β€’ Underlying idea is the same β€’ Using the privileged data to identify easy /

hard-to-separate sample pairs – Instead of using it to identify easy / hard-to-

classify samples

Page 12: ICCV2013 reading: Learning to rank using privileged information

SVMrank

β€’ Slack variables tell us which training example pairs are easy / hard / impossible to separate

[Joachims KDD2002]

Page 13: ICCV2013 reading: Learning to rank using privileged information

Proposed method: Rank transfer

β€’ The strategy is similar to SVM+, but indirect.

1. SVMrank on π‘‹π‘‹βˆ— (The ranking function π‘“π‘“βˆ—) 2. Margins πœŒπœŒπ‘–π‘–π‘–π‘– = π‘“π‘“βˆ— π‘₯π‘₯π‘–π‘–βˆ— βˆ’ π‘“π‘“βˆ—(π‘₯π‘₯π‘–π‘–βˆ—) βˆ€π‘–π‘–, 𝑗𝑗 𝑦𝑦𝑖𝑖 > 𝑦𝑦𝑖𝑖

β€’ πœŒπœŒπ‘–π‘–π‘–π‘– ≫ 0 : easy, πœŒπœŒπ‘–π‘–π‘–π‘– β‰ˆ 0 : hard, πœŒπœŒπ‘–π‘–π‘–π‘– < 0 : impossible

3. SVMrank on 𝑋𝑋 with data-dependent margins

Page 14: ICCV2013 reading: Learning to rank using privileged information

Intuition

β€’ If it was difficult to correctly rank a pair on π‘‹π‘‹βˆ—, also it will also be difficult on 𝑋𝑋 1. Pairs (𝑖𝑖, 𝑗𝑗) with small margins πœŒπœŒπ‘–π‘–π‘–π‘– have more

limited influence on 𝑀𝑀 2. Incorrectly ranked pairs are ignored.

1.

2.

Page 15: ICCV2013 reading: Learning to rank using privileged information

Why not Rank transfer?

β€’ We can use standard SVM packages! – For the SVMrank on π‘‹π‘‹βˆ— this is clear. – For the SVMrank on 𝑋𝑋 we need variable

transformations

Page 16: ICCV2013 reading: Learning to rank using privileged information

Experiments

β€’ 4 different types of privileged information – All of those can be handled in a unified framework.

β€’ 4 different methods to be compared – SVM, SVMrank, SVM+, Rank transfer

β€’ Evaluation metric = Average Precision

Page 17: ICCV2013 reading: Learning to rank using privileged information

(1) Attributes as privileged info

β€’ Animals with Attributes Dataset – 10 species ( = classes), 85 properties ( = attributes)

β€’ Features: 2000-dim SURF β€’ Privileged: 85-dim predicted attributes

[Lampert+ PAMI2014]

β€’ Learn 1-vs-1 classifiers with 100 training samples

Page 18: ICCV2013 reading: Learning to rank using privileged information

(1) Results

β€’ Rank transfer is the best.

Page 19: ICCV2013 reading: Learning to rank using privileged information
Page 20: ICCV2013 reading: Learning to rank using privileged information

(2) Bounding box as privileged info

β€’ Fine-grained setup on ILSVRC2012 – 17 classes with variety of snakes

β€’ Features: 4096-dim Fisher vector from the whole images

β€’ Privileged: 4096-dim Fisher vector from the bounding box regions

β€’ Learn 1-vs-rest classifiers

Page 21: ICCV2013 reading: Learning to rank using privileged information

(2) Results

β€’ SVM+ is the best, ranking strategies do not seem suitable for this setup.

Page 22: ICCV2013 reading: Learning to rank using privileged information

(3) Texts as privileged info

β€’ IsraelImages dataset [Bekkerman+ CVPR2007]

– 11 classes, 1800 images with a textual description up to 18 words

β€’ Features: 4096-dim Fisher vectors β€’ Privileged: BoWs from the texts β€’ Learn 1-vs-1 classifiers

Desert Trees

Page 23: ICCV2013 reading: Learning to rank using privileged information

(3) Results

β€’ Reference (privileged only) is the best β€’ All the others produce almost the same.

– Note that, high accuracy in the privileged space does not necessarily mean that the privileged information is helpful for the target task.

Page 24: ICCV2013 reading: Learning to rank using privileged information

(4) Rationales as privileged info

β€’ Hot or Not dataset [Donahue+ ICCV2011]

β€’ Features: 500-dim densely sampled SIFT from the whole image

β€’ Privileged: 500-dim densely sampled SIFT from the rationales

Page 25: ICCV2013 reading: Learning to rank using privileged information

(4) Results

β€’ Reference is the best. β€’ Rank transfer performs better for male class. β€’ Hard to draw a conclusion.

Page 26: ICCV2013 reading: Learning to rank using privileged information

Appendix: Margin transfer

β€’ One possible alternative to Rank transfer

Page 27: ICCV2013 reading: Learning to rank using privileged information

But not so good…

Page 28: ICCV2013 reading: Learning to rank using privileged information

Last words

β€’ The idea is nice, easy to use. β€’ More privileged information, better

performance? --- needs discussions β€’ Which types of privileged information are

suitable? --- unknown


Top Related