Package org.fnlp.train.parsing

Source Code of org.fnlp.train.parsing.DepRun

package org.fnlp.train.parsing;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;

import org.fnlp.ml.eval.SeqEval;
import org.fnlp.nlp.corpus.fnlp.FNLPCorpus;
import org.fnlp.nlp.parser.dep.train.JointParerTester;
import org.fnlp.nlp.parser.dep.train.JointParerTrainer;
import org.fnlp.train.seg.SegTrain;
import org.fnlp.train.tag.ModelOptimization;
import org.fnlp.util.exception.LoadModelException;

public class DepRun {

  static String datapath = "../data";
  static String outputPath = "../data/FNLPDATA/dep-eval.txt";
  static String model = "../models/dep.m";
  static String trainfile = "../data/FNLPDATA/train.dep";
  static String testfile = "../data/FNLPDATA/test.dep";
  static String output = "../data/FNLPDATA/res.dep.3col";
  static PrintWriter bw;

  public static void main(String[] args) throws Exception {   
    bw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(outputPath,true), "utf8"));   
   

    JointParerTrainer trainer = new JointParerTrainer(model);
    int maxite = 50;
    float c = 0.01f;
    trainer.train(trainfile, maxite, c);

    eval();

    bw.println("优化");
    float thres = 1.0E-5f;
    bw.println(thres);

    ModelOptimization op = new ModelOptimization(thres);
    op.optimizeDep(model);

    eval();
    /////////////////////////////////////////

    bw.println("优化");
    thres = 1.0E-4f;
    bw.println(thres);
    op = new ModelOptimization(thres);
    op.optimizeDep(model);

    eval();

    bw.close();
  }

  private static void eval() throws Exception{

    File modelF = new File(model);
    bw.println("模型大小:"+modelF.length()/1000000.0);
    JointParerTester tester  = new JointParerTester(model);
    tester.test(testfile, output, "UTF8");
  }

}
TOP

Related Classes of org.fnlp.train.parsing.DepRun

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.