You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@joshua.apache.org by mj...@apache.org on 2016/04/22 06:17:53 UTC

[07/13] incubator-joshua git commit: added working example to ask for help

added working example to ask for help


Project: http://git-wip-us.apache.org/repos/asf/incubator-joshua/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-joshua/commit/23306b4f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-joshua/tree/23306b4f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-joshua/diff/23306b4f

Branch: refs/heads/morph
Commit: 23306b4f020f1332817d9f89391a65d9debe8208
Parents: a055c3f
Author: Matt Post <po...@cs.jhu.edu>
Authored: Thu Apr 21 17:03:58 2016 -0400
Committer: Matt Post <po...@cs.jhu.edu>
Committed: Thu Apr 21 17:03:58 2016 -0400

----------------------------------------------------------------------
 .../decoder/ff/morph/LexicalSharpener.java      | 32 +++++++++++++++++++-
 1 file changed, 31 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/23306b4f/src/joshua/decoder/ff/morph/LexicalSharpener.java
----------------------------------------------------------------------
diff --git a/src/joshua/decoder/ff/morph/LexicalSharpener.java b/src/joshua/decoder/ff/morph/LexicalSharpener.java
index fab71d9..a66f4a1 100644
--- a/src/joshua/decoder/ff/morph/LexicalSharpener.java
+++ b/src/joshua/decoder/ff/morph/LexicalSharpener.java
@@ -22,6 +22,7 @@ import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
+import java.io.FileReader;
 import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
@@ -290,7 +291,7 @@ public class LexicalSharpener extends StatelessFF {
     return anchoredSource;
   }
   
-  public class CustomLineProcessor extends Pipe {
+  public static class CustomLineProcessor extends Pipe {
 
     private static final long serialVersionUID = 1L;
 
@@ -338,6 +339,35 @@ public class LexicalSharpener extends StatelessFF {
     }
   }
 
+  public static void example(String[] args) throws IOException, ClassNotFoundException {
+
+    ArrayList<Pipe> pipeList = new ArrayList<Pipe>();
+
+    Alphabet dataAlphabet = new Alphabet();
+    LabelAlphabet labelAlphabet = new LabelAlphabet();
+    
+    pipeList.add(new Target2Label(dataAlphabet, labelAlphabet));
+    // Basically, SvmLight but with a custom (fixed) alphabet)
+    pipeList.add(new CustomLineProcessor(dataAlphabet, labelAlphabet));
+
+    FileReader reader1 = new FileReader("data.1");
+    FileReader reader2 = new FileReader("data.2");
+
+    SerialPipes pipes = new SerialPipes(pipeList);
+    InstanceList instances = new InstanceList(dataAlphabet, labelAlphabet);
+    instances.setPipe(pipes);
+    instances.addThruPipe(new CsvIterator(reader1, "(\\S+)\\s+(\\S+)\\s+(.*)", 3, 2, 1));
+    ClassifierTrainer trainer1 = new MaxEntTrainer();
+    Classifier classifier1 = trainer1.train(instances);
+    
+    pipes = new SerialPipes(pipeList);
+    instances = new InstanceList(dataAlphabet, labelAlphabet);
+    instances.setPipe(pipes);
+    instances.addThruPipe(new CsvIterator(reader2, "(\\S+)\\s+(\\S+)\\s+(.*)", 3, 2, 1));
+    ClassifierTrainer trainer2 = new MaxEntTrainer();
+    Classifier classifier2 = trainer2.train(instances);
+  }
+  
   public static void main(String[] args) throws IOException, ClassNotFoundException {
     LexicalSharpener ts = new LexicalSharpener(null, args, null);