val config = LiblinearConfig(cost = .005)
classifier = trainClassifier(config, featurizer, rawExamples)
val config = LiblinearConfig(/*cost = 0.05,eps = 0.0001,*/ solverType = nak.liblinear.SolverType.MCSVM_CS)
classifier = trainClassifier(config, featurizer, rawExamples)
val comparisons = for (ex <- readRaw(allExamples).toList) yield
(ex.label, classifier.predict(ex.features), ex.features)
// Compute and print out the confusion matrix based on the comparisons
// obtained above.
val (goldLabels, predictions, inputs) = comparisons.unzip3
println(ConfusionMatrix(goldLabels, predictions, inputs))
Exception in thread "main" java.lang.IllegalArgumentException: probability output is only supported for
logistic regression
at nak.liblinear.Linear.predictProbability(Linear.java:324)
at nak.core.LiblinearClassifier$class.apply(Classifier.scala:113)
at nak.core.Classifier$$anon$2.apply(Classifier.scala:156)
at nak.core.Classifier$$anon$2.apply(Classifier.scala:156)
at nak.core.Classifier$class.evalIndexed(Classifier.scala:35)
at nak.core.Classifier$$anon$2.evalIndexed(Classifier.scala:156)
at nak.core.IndexedClassifier$class.evalUnindexed(Classifier.scala:50)
at nak.core.Classifier$$anon$2.evalUnindexed(Classifier.scala:156)
at nak.core.FeaturizedClassifier$class.evalRaw(Classifier.scala:65)
at nak.core.Classifier$$anon$2.evalRaw(Classifier.scala:156)
at nak.core.FeaturizedClassifier$class.predict(Classifier.scala:73)
at nak.core.Classifier$$anon$2.predict(Classifier.scala:156)
....