Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf ·...

16
Introducin g the Se p arabilit y Matrix for E COC cod in g Miguel Angel Bautista, Sergio Escalera, Xavier Baró & Oriol Pujol 1

Transcript of Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf ·...

Page 1: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Introducing the gSeparability Matrix for p yECOC codingCOC cod g

Miguel Angel Bautista, Sergio Escalera, Xavier Baró & Oriol Pujol

1

Page 2: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

OutlineOutline• Classification problems and the ECOC framework.

• Motivation.

• The Separability Matrix.

• An application of the Separability Matrix for coding• An application of the Separability Matrix for codingECOCs.

• The Conf sion Separabilit E tension Coding• The Confusion‐Separability Extension Coding.• Experiments and Results.

• Conclusions and Future Work.2

Page 3: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Introduction to the ECOC framework• Classification tasks are a well known type of supervised

learning problem. The goal is to classify and object among a

• The ECOC framework has proven to be a powerful tool tod l i h l i l l ifi i bl

certain number of possible categories.

deal with multi‐class classification problems.

• This framework is composed of two different steps :

di l bl f• Coding : Decompose a given N‐class problem into a set ofn binary problems.

D di Gi t t l d t i it t• Decoding : Given a test sample s, determine its category.

3

Page 4: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Introduction to the ECOC framework• At the coding step a decomposition of the N‐class problem into n binary problems is build and represented into a matrix.

• The columns of the matrix represent the binary problems• The columns of the matrix represent the binary problems.• The rows of the matrix represent the codes of the N classes.

++

++

4

Page 5: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Introduction to the ECOC framework• At the decoding step a new sample s is classified bycomparing the binary responses to the rows ofM by meanscomparing the binary responses to the rows ofM by meansof a decoding measure .

• Different types of decoding based on the distance used (i.e.yp g (Hamming Decoding, Euclidean Decoding, etc.)

5

Page 6: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

MotivationMotivation• Standard predefined or random strategies may not besuitable for a given problem.

• Find an optimum coding matrix M for a given problemwas proved to be an NP‐Complete problem [1].

• In [2] we show how reduced codes can perform has welld d d i i h f l b fas standard designs with far less number of

dichotomizers.

• Those reduced codes can be extended in a problem• Those reduced codes can be extended in a problem‐dependent way to benefit from error‐correctingprinciples.principles.

6

[1] On the learnability and design of Error Correcting Output Codes, K.Crammer & Y. Singer                        [2] Compact Evolutionary Design of Error Correcting Output Codes, M. Bautista, S. Escalera, X. Baró, O. Pujol, J. Vitrià and P. Radeva

Page 7: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

The Separability Matrix• The Separability matrix S contains the pairwise distance between the codewords inMbetween the codewords in M.

• With this matrix we can analyze the correction capability      of M since,

• Standard ECOC designs shown constant Separability matrices.

2

2 2 2

0 h5 h4 h3 h2 h1

7 2 2 2

0 2

0 2 2 0

2 2

0 2

2 0

2 2 2 2 2 2

Page 8: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

An application of the SeparabilityMatrix for coding ECOCsMatrix for coding ECOCs• In [2] we show how reduced codes can perform has well as standard designs with far less number of dichotomizers.

h3 h2 h1

h

h1

h3

h2

• Identify those classes that need an increment of distance in

h3 h2 h1h1

Identify those classes that need an increment of distance in order to benefit from error‐correcting principles.

h3

h2

2

3

1

3

2

20

1

20

2

1

1

1

0

8

1

0

1

0

1

20

2

13

2

2

2

1

3

Page 9: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

The Confusion‐SeparabilityExtension coding (CSE Coding)

• Use the Confusion matrix over a validation subset to find the t f d lmost confused classes.

• Use the Separability matrix to find the classes that need at increment of distance in order to benefit from error‐correctingincrement of distance in order to benefit from error correcting principles.

• Compute and Extension Matrix of a Binary Compact ECOC matrix which is focused on the classes that show both high confusion and low separation.

E t d th di t i til i l th f N• Extend the coding matrix until a maximum length of Ndichotomies.

9

Page 10: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

The CSE Coding Algorithm① Find the most confused classes :

② Compute and Extension matrix E which increments

③ Fill h E i d ki i h③ Fill the empty Extension codes taking into account theconfusion of with the rest of the classes.

④ Update Confusion and Separability matrices④ Update Confusion and Separability matrices.

h3 h2 h1h2h1

MN × n

h5 h4

EN × k

h3

+

SN × NCN × N

100

0

0

2

0

04

0

0

6 2

3

3

2

1

20

1

1

0

2k × κ > = N

2

5

2

3

0

03

0

00

0

0

0

0

0 1

0

1

0

1

20

2

13

2

2

2

1

3

Page 11: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Experiments: Data• We tested the novel methodology on several public datasets from the UCI Machine Learning Repositoryfrom the UCI Machine Learning Repository.

• In addition we perform experiments with 3 public Computer Vision problems.• The ARFace dataset with 20 classes.

• The Traffic Sign dataset with 36 classes.

• The MPEG dataset with 70 classes11• The MPEG dataset with 70 classes.

Page 12: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Experiments: Methods and Settingsp g•We compare the One vs. All and Dense Random with the CSE codingwith

•Classification results are the average over a Stratified 10 fold CV.W th SVM RBF d Ad B t b l ifi•We use the SVM‐RBF and AdaBoost as our base classifier.

•An optimization process is carried out to tune the parameters of theSVMsSVMs.

•SVM‐RBF classifiers have 2 parameters to optimize (C & Υ).

12

Page 13: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Experiments and Results• Results for UCI and Computer Vision experiments with SVM as the base classifier.

13

Page 14: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Experiments and Results• Results for UCI and Computer Vision experiments with AdaBoost as the base classifier.

14

Page 15: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Conclusions and Future Work

• The Separability Matrix is introduced as a novel tool toThe Separability Matrix is introduced as a novel tool to analyze and enhance ECOC coding designs.

• The Extension Algorithm proposed can be applied to any existing ECOC scheme.

• A new coding design based on the Separability matrix is introduced obtaining significant performance improvementsintroduced obtaining significant performance improvements over state‐of‐the‐art ECOC designs.

• The proposed methodology reduces the number of base p p gyclassifiers needed in comparison with state‐of‐the‐art designs.

• A possible improvement will be to optimize the initial Compact ECOC coding matrix.

15

Page 16: Introducing the SeppyarabilityMatrix for ECOCCOCcod g codingsergio/linked/mcs2011bautista.pdf · Introducing the SeppyarabilityMatrix for ECOCCOCcod g coding Miguel Angel Bautista,

Thank you!Thank you!

16