svm and libsvm

23
SVM & LibSVM boshen

Upload: roy-chen

Post on 16-Apr-2017

137 views

Category:

Engineering


0 download

TRANSCRIPT

SVM & LibSVM

SVM & LibSVMboshen

OutlineWhat is SVMLibSVMUse svm-toy

What is SVM(Support Vector Machine)(Support Vector Machine)SVMSVM (classification)SVM

SVMSVM

Think a Scenario about classificationdata1Yes6019010013110data2no551708015120data3Yes401609030130data4no7016512020140data5Yes6617699990

, , ()Training Data

, , 4

Predict by SVM?

, SVM

SVM Concepts training data :

SVM FOR predictdata feature space

data(training data), SVM(, classification)

SVM

?SVMmarginmarginMargin:YES65170100 11100NO ?!65.0117010011100

, 1. 2. 3. , how to do?1. One-against-One 2. One-against-All

One-against-One

Train-----------------CACBAB

Predict- --------------------------?

A,C, AC,B, CA,B, A

C1A2

CACBAB

?

A,C, AC,B, CA,B, A

C1A2

10

One-against-All

feature spaceTraining-------------A (B,C) B (A,C)C (A,B)

Predict------------------------?

, , , ,

?

, , !

A (B,C) B (A,C)C (A,B)

?

, , , ,

?

, , !

11

SVM

SVMtoolLibSVMtraining data, toolmodel, predict

LibSVMSVM

12

Install LibSVMLibSVM.zipPython

For more detail, please refer: libsvm

libsvm classify 1. training data libsvm2. train model3. test datamodel

1. training data libsvm

Label: data, Index: Value:

data

NN (feature space)

Use svm-toy (simulator)svmtoytraining data

training data,model,

runModel(model)

savetraining data, ,X,Y

(0.026, 0.852)class 2(0.302, 0.604)class 3

training datamodel, (data), predict()

2. train model (svm-train.exe)svm-toytraining data, traindata, model file.

train, train_data.modelWhat does this output mean?

See http://www.csie.cyut.edu.tw/~shwu/PR_slide/SVM.pdf

3. test datamodel: svm-predict.exe test_file model_file output_file

test_file training data, [label][index1]:[value1] [index2]:[value2] ...Predictpredicttest_file, model, test_file training data class label (), test_file

Create test_file and predict

Test_fileSvm-predict.exePredict result

script, trainpredictpython easy.py trainingData testData

?

Class 1 : Class 2 : Training dataTest dataRun easy.pyPredict result

Advanced topicScalingArguments

svm