===== MAIN: learn based on training data =====
=== START program1: ./run learn ../dataset2/train
Using hyperparameter c = 0.1
Reading training examples... (2214 examples) done
Training set properties: 32 features, 2 classes
Iter 1: .........*(NumConst=1, SV=1, CEps=100.0000, QPEps=0.0000)
Iter 2: *(NumConst=2, SV=2, CEps=29.3208, QPEps=4.6953)
Iter 3: .........*(NumConst=3, SV=2, CEps=6.8438, QPEps=0.0001)
Iter 4: *(NumConst=4, SV=2, CEps=2.2114, QPEps=0.4672)
Iter 5: .........*(NumConst=5, SV=2, CEps=0.5659, QPEps=0.0255)
Iter 6: *(NumConst=6, SV=2, CEps=0.1740, QPEps=0.0069)
Iter 7: .........(NumConst=6, SV=2, CEps=0.0533, QPEps=0.0069)
Final epsilon on KKT-Conditions: 0.05328
Upper bound on duality gap: 0.00524
Dual objective value: dval=3.06402
Primal objective value: pval=3.06926
Total number of constraints in final working set: 6 (of 6)
Number of iterations: 7
Number of calls to 'find_most_violated_constraint': 8856
Number of SV: 2
Norm of weight vector: |w|=0.74961
Value of slack variable (on working set): xi=27.83666
Value of slack variable (global): xi=27.88308
Norm of longest difference vector: ||Psi(x,y)-Psi(x,ybar)||=175.31040
Runtime in cpu-seconds: 0.03
Final number of constraints in cache: 4428
Compacting linear model...done
Writing learned model...done
=== END program1: ./run learn ../dataset2/train --- OK [1s]
===== MAIN: predict/evaluate on train data =====
=== START program3: ./run stripLabels ../dataset2/train ../program0/evalTrain.in
=== END program3: ./run stripLabels ../dataset2/train ../program0/evalTrain.in --- OK [0s]
=== START program1: ./run predict ../program0/evalTrain.in ../program0/evalTrain.out
Reading model...done.
Reading test examples... (2214 examples) done.
Classifying test examples...done
Runtime (without IO) in cpu-seconds: 0.02
Average loss on test set: 0.0000
Zero/one-error on test set: 0.00% (2214 correct, 0 incorrect, 2214 total)
=== END program1: ./run predict ../program0/evalTrain.in ../program0/evalTrain.out --- OK [0s]
=== START program4: ./run evaluate ../dataset2/train ../program0/evalTrain.out
=== END program4: ./run evaluate ../dataset2/train ../program0/evalTrain.out --- OK [0s]
===== MAIN: predict/evaluate on test data =====
=== START program3: ./run stripLabels ../dataset2/test ../program0/evalTest.in
=== END program3: ./run stripLabels ../dataset2/test ../program0/evalTest.in --- OK [0s]
=== START program1: ./run predict ../program0/evalTest.in ../program0/evalTest.out
Reading model...done.
Reading test examples... (949 examples) done.
Classifying test examples...done
Runtime (without IO) in cpu-seconds: 0.00
Average loss on test set: 0.0000
Zero/one-error on test set: 0.00% (949 correct, 0 incorrect, 949 total)
=== END program1: ./run predict ../program0/evalTest.in ../program0/evalTest.out --- OK [1s]
=== START program4: ./run evaluate ../dataset2/test ../program0/evalTest.out
=== END program4: ./run evaluate ../dataset2/test ../program0/evalTest.out --- OK [0s]
real 0m1.632s
user 0m0.500s
sys 0m0.092s
Run specification
supervised-learning: Main entry for supervised learning for training and testing a program on a dataset.
(learner:Program) svmlight_multiclass: SVMlight for multiclass classification (http://svmlight.joachims.org/svm_multiclass.html)
When you generate a run, you can set a time limit for the run (no more than 24 hours). After that point, we will terminate the program.
Your program can use 1.5GB of memory. More information here.
Go to the page for the run and look at the log file for signs of the responsible error.
You can also download the run and run it locally on your machine (a README file should
be included in the download which provides more information).
We said that a run was simply a program/dataset pair, but that's not the full story.
A run actually includes other helper programs such as the evaluation program and
various programs for reductions (e.g., one-versus-all, hyperparameter tuning).
More formally, a run is a given by a run specification,
which can be found on the page for any run.
A run specification is a tree where each internal node represents a program
and its children represents the arguments to be passed into its constructor.
For example, the one-versus-all program takes your binary classification program
as a constructor argument and behaves like a multiclass classification program.
Must be logged in to post comments.