diff --git a/.gitignore b/.gitignore index bf5e568..1b970cd 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /target /data +*~ \ No newline at end of file diff --git a/bin/build b/bin/build new file mode 100755 index 0000000..e7b77ce --- /dev/null +++ b/bin/build @@ -0,0 +1,3 @@ +#!/bin/bash + +java $SBT_OPTS -Dfile.encoding=UTF-8 -Xss4M -Xmx1024M -XX:MaxPermSize=256M -XX:NewSize=128M -XX:NewRatio=3 -jar `dirname $0`/sbt-launch.jar "$@" diff --git a/bin/sbt-launch.jar b/bin/sbt-launch.jar new file mode 100644 index 0000000..7492920 Binary files /dev/null and b/bin/sbt-launch.jar differ diff --git a/build.sbt b/build.sbt new file mode 100644 index 0000000..484abad --- /dev/null +++ b/build.sbt @@ -0,0 +1,7 @@ +name := "liblinear" + +version := "1.91-tempest" + +organization := "de.bwaldvogel" + +crossPaths := false diff --git a/src/main/java/de/bwaldvogel/liblinear/Function.java b/src/main/java/de/bwaldvogel/liblinear/Function.java index 2ad02f9..2f70df8 100644 --- a/src/main/java/de/bwaldvogel/liblinear/Function.java +++ b/src/main/java/de/bwaldvogel/liblinear/Function.java @@ -1,7 +1,7 @@ package de.bwaldvogel.liblinear; // origin: tron.h -interface Function { +public interface Function { double fun(double[] w); diff --git a/src/main/java/de/bwaldvogel/liblinear/L2R_LrFunction.java b/src/main/java/de/bwaldvogel/liblinear/L2R_LrFunction.java index 6b58ae0..596e5e4 100644 --- a/src/main/java/de/bwaldvogel/liblinear/L2R_LrFunction.java +++ b/src/main/java/de/bwaldvogel/liblinear/L2R_LrFunction.java @@ -1,6 +1,6 @@ package de.bwaldvogel.liblinear; -class L2R_LrFunction implements Function { +public class L2R_LrFunction implements Function { private final double[] C; private final double[] z; diff --git a/src/main/java/de/bwaldvogel/liblinear/Linear.java b/src/main/java/de/bwaldvogel/liblinear/Linear.java index 27cc955..05285e1 100644 --- a/src/main/java/de/bwaldvogel/liblinear/Linear.java +++ b/src/main/java/de/bwaldvogel/liblinear/Linear.java @@ -90,12 +90,12 @@ public static void crossValidation(Problem prob, Parameter param, int nr_fold, d } /** used as complex return type */ - private static class GroupClassesReturn { + public static class GroupClassesReturn { - final int[] count; - final int[] label; - final int nr_class; - final int[] start; + public final int[] count; + public final int[] label; + public final int nr_class; + public final int[] start; GroupClassesReturn( int nr_class, int[] label, int[] start, int[] count ) { this.nr_class = nr_class; @@ -105,7 +105,7 @@ private static class GroupClassesReturn { } } - private static GroupClassesReturn groupClasses(Problem prob, int[] perm) { + public static GroupClassesReturn groupClasses(Problem prob, int[] perm) { int l = prob.l; int max_nr_class = 16; int nr_class = 0; @@ -1746,7 +1746,7 @@ private static void checkProblemSize(int n, int nr_class) { } } - private static void train_one(Problem prob, Parameter param, double[] w, double Cp, double Cn) { + public static void train_one(Problem prob, Parameter param, double[] w, double Cp, double Cn) { double eps = param.eps; int pos = 0; for (int i = 0; i < prob.l; i++) diff --git a/src/main/java/de/bwaldvogel/liblinear/Model.java b/src/main/java/de/bwaldvogel/liblinear/Model.java index 280b134..aa382cc 100644 --- a/src/main/java/de/bwaldvogel/liblinear/Model.java +++ b/src/main/java/de/bwaldvogel/liblinear/Model.java @@ -19,19 +19,19 @@ public final class Model implements Serializable { private static final long serialVersionUID = -6456047576741854834L; - double bias; + public double bias; /** label of each class */ - int[] label; + public int[] label; - int nr_class; + public int nr_class; - int nr_feature; + public int nr_feature; - SolverType solverType; + public SolverType solverType; /** feature weight array */ - double[] w; + public double[] w; /** * @return number of classes diff --git a/src/main/java/de/bwaldvogel/liblinear/Parameter.java b/src/main/java/de/bwaldvogel/liblinear/Parameter.java index 46df099..68222e4 100644 --- a/src/main/java/de/bwaldvogel/liblinear/Parameter.java +++ b/src/main/java/de/bwaldvogel/liblinear/Parameter.java @@ -5,16 +5,16 @@ public final class Parameter { - double C; + public double C; /** stopping criteria */ - double eps; + public double eps; - SolverType solverType; + public SolverType solverType; - double[] weight = null; + public double[] weight = null; - int[] weightLabel = null; + public int[] weightLabel = null; double p; diff --git a/src/main/java/de/bwaldvogel/liblinear/Tron.java b/src/main/java/de/bwaldvogel/liblinear/Tron.java index 23adf07..f30e745 100644 --- a/src/main/java/de/bwaldvogel/liblinear/Tron.java +++ b/src/main/java/de/bwaldvogel/liblinear/Tron.java @@ -5,7 +5,7 @@ /** * Trust Region Newton Method optimization */ -class Tron { +public class Tron { private final Function fun_obj; @@ -27,7 +27,7 @@ public Tron( final Function fun_obj, double eps, int max_iter ) { this.max_iter = max_iter; } - void tron(double[] w) { + public void tron(double[] w) { // Parameters for updating the iterates. double eta0 = 1e-4, eta1 = 0.25, eta2 = 0.75;