Skip to content

Commit

Permalink
More fixes for java modular examples
Browse files Browse the repository at this point in the history
  • Loading branch information
lisitsyn committed Aug 27, 2011
1 parent bd140da commit a557c4b
Show file tree
Hide file tree
Showing 8 changed files with 160 additions and 42 deletions.
1 change: 1 addition & 0 deletions examples/undocumented/java_modular/blaah.asc
@@ -0,0 +1 @@
<<_SHOGUN_SERIALIZABLE_ASCII_FILE_V_00_>>
Binary file not shown.
120 changes: 120 additions & 0 deletions examples/undocumented/java_modular/gaussian_train.ascii

Large diffs are not rendered by default.

31 changes: 8 additions & 23 deletions examples/undocumented/java_modular/kernel_fisher_modular.java
Expand Up @@ -11,20 +11,14 @@ public class kernel_fisher_modular {
System.loadLibrary("modshogun");
}

public ArrayList parameter_list = new ArrayList(2);
public kernel_fisher_modular() {

parameter_list.add(Arrays.asList(new Integer(1), new Integer(64), new Double(1e-5), new Integer(3), new Integer(0)));
parameter_list.add(Arrays.asList(new Integer(1), new Integer(64), new Double(1e-1), new Integer(4), new Integer(0)));
}
static ArrayList run(List para) {
boolean reverse = false;
public static void main(String argv[]) {
modshogun.init_shogun_with_defaults();
int N = ((Integer)para.get(0)).intValue();
int M = ((Integer)para.get(1)).intValue();
double pseudo = ((Double)para.get(2)).doubleValue();
int order = ((Integer)para.get(3)).intValue();
int gap = ((Integer)para.get(4)).intValue();
boolean reverse = false;
int N = 1;
int M = 64;
double pseudo = 1e-5;
int order = 3;
int gap = 0;

String[] fm_train_dna = Load.load_dna("../data/fm_train_dna.dat");
String[] fm_test_dna = Load.load_dna("../data/fm_test_dna.dat");
Expand All @@ -47,7 +41,7 @@ static ArrayList run(List para) {
for (int i = 0; i < pos_size; i++)
fm_hmm_pos[i] = (String)fm_hmm_pos_builder.get(i);
for (int i = 0; i < neg_size; i++)
fm_hmm_pos[i] = (String)fm_hmm_neg_builder.get(i);
fm_hmm_neg[i] = (String)fm_hmm_neg_builder.get(i);

StringCharFeatures charfeat = new StringCharFeatures(fm_hmm_pos, DNA);
StringWordFeatures hmm_pos_train = new StringWordFeatures(charfeat.get_alphabet());
Expand Down Expand Up @@ -87,15 +81,6 @@ static ArrayList run(List para) {
kernel.init(feats_train, feats_test);
DoubleMatrix km_test=kernel.get_kernel_matrix();

ArrayList result = new ArrayList();
result.add(km_train);
result.add(km_test);
result.add(kernel);
modshogun.exit_shogun();
return result;
}
public static void main(String argv[]) {
kernel_fisher_modular x = new kernel_fisher_modular();
run((List)x.parameter_list.get(0));
}
}
12 changes: 7 additions & 5 deletions examples/undocumented/java_modular/kernel_top_modular.java
Expand Up @@ -15,7 +15,7 @@ public static void main(String argv[]) {
modshogun.init_shogun_with_defaults();
boolean reverse = false;
int N = 1;
int M = 512;
int M = 64;
double pseudo = 1e-5;
int order = 3;
int gap = 0;
Expand All @@ -24,8 +24,8 @@ public static void main(String argv[]) {
String[] fm_test_dna = Load.load_dna("../data/fm_test_dna.dat");
DoubleMatrix label_train_dna = Load.load_labels("../data/label_train_dna.dat");

ArrayList fm_hmm_pos_builder = new ArrayList();
ArrayList fm_hmm_neg_builder = new ArrayList();
List fm_hmm_pos_builder = new ArrayList();
List fm_hmm_neg_builder = new ArrayList();
for(int i = 0; i < label_train_dna.getColumns(); i++) {
if (label_train_dna.get(i) == 1)
fm_hmm_pos_builder.add(fm_train_dna[i]);
Expand All @@ -40,7 +40,7 @@ public static void main(String argv[]) {
for (int i = 0; i < pos_size; i++)
fm_hmm_pos[i] = (String)fm_hmm_pos_builder.get(i);
for (int i = 0; i < neg_size; i++)
fm_hmm_pos[i] = (String)fm_hmm_neg_builder.get(i);
fm_hmm_neg[i] = (String)fm_hmm_neg_builder.get(i);

StringCharFeatures charfeat = new StringCharFeatures(fm_hmm_pos, DNA);
StringWordFeatures hmm_pos_train = new StringWordFeatures(charfeat.get_alphabet());
Expand All @@ -55,7 +55,7 @@ public static void main(String argv[]) {

HMM neg = new HMM(hmm_neg_train, N, M, pseudo);
neg.baum_welch_viterbi_train(BW_NORMAL);

charfeat = new StringCharFeatures(fm_train_dna, DNA);
StringWordFeatures wordfeats_train = new StringWordFeatures(charfeat.get_alphabet());
wordfeats_train.obtain_from_char(charfeat, order-1, order, gap, reverse);
Expand All @@ -66,6 +66,8 @@ public static void main(String argv[]) {

pos.set_observations(wordfeats_train);
neg.set_observations(wordfeats_train);


TOPFeatures feats_train = new TOPFeatures(10, pos, neg, false, false);
PolyKernel kernel = new PolyKernel(feats_train, feats_train, 1, true);
DoubleMatrix km_train = kernel.get_kernel_matrix();
Expand Down
30 changes: 20 additions & 10 deletions examples/undocumented/java_modular/mkl_multiclass_modular.java
Expand Up @@ -22,38 +22,48 @@ public static void main(String argv[]) {
CombinedFeatures feats_train = new CombinedFeatures();
CombinedFeatures feats_test = new CombinedFeatures();

RealFeatures subkfeats_train = new RealFeatures(traindata_real);
RealFeatures subkfeats_test = new RealFeatures(testdata_real);
RealFeatures subkfeats1_train = new RealFeatures(traindata_real);
RealFeatures subkfeats1_test = new RealFeatures(testdata_real);

GaussianKernel subkernel = new GaussianKernel(10, width);
feats_train.append_feature_obj(subkfeats_train);
feats_test.append_feature_obj(subkfeats_test);
feats_train.append_feature_obj(subkfeats1_train);
feats_test.append_feature_obj(subkfeats1_test);
kernel.append_kernel(subkernel);

RealFeatures subkfeats2_train = new RealFeatures(traindata_real);
RealFeatures subkfeats2_test = new RealFeatures(testdata_real);

LinearKernel subkernel2 = new LinearKernel();
feats_train.append_feature_obj(subkfeats_train);
feats_test.append_feature_obj(subkfeats_test);
feats_train.append_feature_obj(subkfeats2_train);
feats_test.append_feature_obj(subkfeats2_test);
kernel.append_kernel(subkernel2);

RealFeatures subkfeats3_train = new RealFeatures(traindata_real);
RealFeatures subkfeats3_test = new RealFeatures(testdata_real);

PolyKernel subkernel3 = new PolyKernel(10, 2);
feats_train.append_feature_obj(subkfeats_train);
feats_test.append_feature_obj(subkfeats_test);
feats_train.append_feature_obj(subkfeats3_train);
feats_test.append_feature_obj(subkfeats3_test);
kernel.append_kernel(subkernel3);


kernel.init(feats_train, feats_train);

System.out.println(trainlab);

Labels labels = new Labels(trainlab);

System.out.println(labels.get_labels());

MKLMultiClass mkl = new MKLMultiClass(C, kernel, labels);
mkl.set_epsilon(epsilon);
mkl.set_mkl_epsilon(epsilon);
mkl.set_mkl_norm(mkl_norm);

mkl.train();

kernel.init(feats_train, feats_test);
DoubleMatrix out = mkl.apply().get_labels();
//kernel.init(feats_train, feats_test);
//DoubleMatrix out = mkl.apply().get_labels();

modshogun.exit_shogun();
}
Expand Down
Expand Up @@ -24,21 +24,21 @@ public static void main(String argv[]) {
for (int i = 0; i < 60; i++) {
POS[i] = repeat("ACGT", 10);
}
for (int i = 61; i < 82; i++) {
for (int i = 60; i < 82; i++) {
POS[i] = repeat("TTGT", 10);
}
for (int i = 83; i < 141; i++) {
for (int i = 82; i < 141; i++) {
POS[i] = repeat("ACGT", 10);
}

String NEG[] = new String[141];
for (int i = 0; i < 60; i++) {
NEG[i] = repeat("ACGT", 10);
}
for (int i = 61; i < 82; i++) {
for (int i = 60; i < 82; i++) {
NEG[i] = repeat("TTGT", 10);
}
for (int i = 83; i < 141; i++) {
for (int i = 82; i < 141; i++) {
NEG[i] = repeat("ACGT", 10);
}

Expand Down
Binary file added examples/undocumented/java_modular/tmp.dat
Binary file not shown.

0 comments on commit a557c4b

Please sign in to comment.