⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dedupingprcurvecvresultproducersplit.java

📁 wekaUT是 university texas austin 开发的基于weka的半指导学习(semi supervised learning)的分类器
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
  public String getSeparateTrainingFile() {    return m_separateTrainingFile;  }    /** Set the value of separate training file   * @param separateTrainingFile Value to assign to separate training file   */  public void setSeparateTrainingFile(String separateTrainingFile) {    m_separateTrainingFile = separateTrainingFile;  }    /**   * Returns the tip text for this property   * @return tip text for this property suitable for   * displaying in the explorer/experimenter gui   */  public String numFoldsTipText() {    return "Number of folds to use in cross validation.";  }  /**   * Get the value of NumFolds.   *   * @return Value of NumFolds.   */  public int getNumFolds() {        return m_numFolds;  }    /**   * Set the value of NumFolds.   *   * @param newNumFolds Value to assign to NumFolds.   */  public void setNumFolds(int newNumFolds) {        m_numFolds = newNumFolds;  }  /**   * Returns the tip text for this property   * @return tip text for this property suitable for   * displaying in the explorer/experimenter gui   */  public String plotPointsTipText() {    return "A list of recall levels separated by commas or spaces. ";  }    /**   * Get the value of PlotPoints.   *   * @return Value of PlotPoints.   */  public String getPlotPoints() {    StringBuffer buf = new StringBuffer();    if (m_plotPoints != null)       for (int i=0; i < m_plotPoints.length; i++) {	buf.append(m_plotPoints[i]);	if (i != (m_plotPoints.length -1)) 	  buf.append(" ");      }    return buf.toString();  }    /**   * Set the value of PlotPoints.   *   * @param plotPoints Value to assign to   * PlotPoints.   */  public void setPlotPoints(String plotPoints) {    m_plotPoints = parsePlotPoints(plotPoints);  }    /**    * Parse a string of doubles separated by commas or spaces into a sorted array of doubles   */  protected double[] parsePlotPoints(String plotPoints) {    StringTokenizer tokenizer = new StringTokenizer(plotPoints," ,\t");    double[] result = null;    int count = tokenizer.countTokens();    if (count > 0)      result = new double[count];    else      return null;    int i = 0;    while(tokenizer.hasMoreTokens()) {      result[i] = Double.parseDouble(tokenizer.nextToken());      i++;    }    Arrays.sort(result);    return result;  }    /**   * Returns the tip text for this property   * @return tip text for this property suitable for   * displaying in the explorer/experimenter gui   */  public String rawOutputTipText() {    return "Save raw output (useful for debugging). If set, then output is "      +"sent to the destination specified by outputFile";  }  /**   * Get if raw split evaluator output is to be saved   * @return true if raw split evalutor output is to be saved   */  public boolean getRawOutput() {    return m_debugOutput;  }    /**   * Set to true if raw split evaluator output is to be saved   * @param d true if output is to be saved   */  public void setRawOutput(boolean d) {    m_debugOutput = d;  }  /** Set the mode of creating folds   * @param mode stratified or random   */  public void setFoldCreationMode(SelectedTag mode) {    if (mode.getTags() == TAGS_FOLD_CREATION_MODE) {      m_foldCreationMode = mode.getSelectedTag().getID();    }  }  /**   * return the fold creation mode   * @return one of  stratified or random   */  public SelectedTag getFoldCreationMode() {    return new SelectedTag(m_foldCreationMode, TAGS_FOLD_CREATION_MODE);  }    /**   * Returns the tip text for this property   * @return tip text for this property suitable for   * displaying in the explorer/experimenter gui   */  public String splitEvaluatorTipText() {    return "The clusterer to apply to the cross validation folds.";  }   /**   * Get the SplitEvaluator.   *   * @return the SplitEvaluator.   */  public SplitEvaluator getSplitEvaluator() {    return m_splitEvaluator;  }    /**   * Set the SplitEvaluator.   *   * @param newSplitEvaluator new SplitEvaluator to use.   */  public void setSplitEvaluator(SplitEvaluator newSplitEvaluator) {    m_splitEvaluator = newSplitEvaluator;    m_splitEvaluator.setAdditionalMeasures(m_additionalMeasures);  }  /**   * Returns an enumeration describing the available options..   *   * @return an enumeration of all the available options.   */  public Enumeration listOptions() {    Vector newVector = new Vector(7);    newVector.addElement(new Option(	     "\tThe number of folds to use for the cross-validation.\n"	      +"\t(default 10)", 	     "X", 1, 	     "-X <number of folds>"));    newVector.addElement(new Option(	     "Save raw split evaluator output.",	     "D",0,"-D"));    newVector.addElement(new Option(	     "\tThe filename where raw output will be stored.\n"	     +"\tIf a directory name is specified then then individual\n"	     +"\toutputs will be gzipped, otherwise all output will be\n"	     +"\tzipped to the named file. Use in conjuction with -D."	     +"\t(default splitEvalutorOut.zip)", 	     "O", 1, 	     "-O <file/directory name/path>"));    newVector.addElement(new Option(	     "\tThe full class name of a SplitEvaluator.\n"	      +"\teg: weka.experiment.ClustererSplitEvaluator", 	     "W", 1, 	     "-W <class name>"));    if ((m_splitEvaluator != null) &&	(m_splitEvaluator instanceof OptionHandler)) {      newVector.addElement(new Option(	     "",	     "", 0, "\nOptions specific to split evaluator "	     + m_splitEvaluator.getClass().getName() + ":"));      Enumeration enum = ((OptionHandler)m_splitEvaluator).listOptions();      while (enum.hasMoreElements()) {	newVector.addElement(enum.nextElement());      }    }    return newVector.elements();  }  /**   * Parses a given list of options. Valid options are:<p>   *   * -X num_folds <br>   * The number of folds to use for the cross-validation. <p>   *   * -D <br>   * Specify that raw split evaluator output is to be saved. <p>   *   * -O file/directory name <br>   * Specify the file or directory to which raw split evaluator output   * is to be saved. If a directory is specified, then each output string   * is saved as an individual gzip file. If a file is specified, then   * each output string is saved as an entry in a zip file. <p>   *   * -W classname <br>   * Specify the full class name of the split evaluator. <p>   *   * All option after -- will be passed to the split evaluator.   *   * @param options the list of options as an array of strings   * @exception Exception if an option is not supported   */  public void setOptions(String[] options) throws Exception {        setRawOutput(Utils.getFlag('D', options));    String fName = Utils.getOption('O', options);    if (fName.length() != 0) {      setOutputFile(new File(fName));    }    String numFolds = Utils.getOption('X', options);    if (numFolds.length() != 0) {      setNumFolds(Integer.parseInt(numFolds));    } else {      setNumFolds(10);    }    String seName = Utils.getOption('W', options);    if (seName.length() == 0) {      throw new Exception("A SplitEvaluator must be specified with"			  + " the -W option.");    }    // Do it first without options, so if an exception is thrown during    // the option setting, listOptions will contain options for the actual    // SE.    setSplitEvaluator((DeduperSplitEvaluator)Utils.forName(		      SplitEvaluator.class,		      seName,		      null));    if (getSplitEvaluator() instanceof OptionHandler) {      ((OptionHandler) getSplitEvaluator())	.setOptions(Utils.partitionOptions(options));    }  }  /**   * Gets the current settings of the result producer.   *   * @return an array of strings suitable for passing to setOptions   */  public String [] getOptions() {    String [] seOptions = new String [0];    if ((m_splitEvaluator != null) && 	(m_splitEvaluator instanceof OptionHandler)) {      seOptions = ((OptionHandler)m_splitEvaluator).getOptions();    }        String [] options = new String [seOptions.length + 10];    int current = 0;    switch (m_foldCreationMode) {    case FOLD_CREATION_MODE_STRATIFIED:      options[current++] = "-Stratified";      break;    case FOLD_CREATION_MODE_RANDOM:      options[current++] = "-Random";      break;    }    options[current++] = "-X";    options[current++] = "" + getNumFolds();    if (getRawOutput()) {      options[current++] = "-D";    }    options[current++] = "-O";     options[current++] = getOutputFile().getName();        options[current++] = "-P";    options[current++] = getPlotPoints();    if (getSplitEvaluator() != null) {      options[current++] = "-W";      options[current++] = getSplitEvaluator().getClass().getName();    }    options[current++] = "--";    System.arraycopy(seOptions, 0, options, current, 		     seOptions.length);    current += seOptions.length;    while (current < options.length) {      options[current++] = "";    }    return options;  }  /**   * Gets a text descrption of the result producer.   *   * @return a text description of the result producer.   */  public String toString() {    String result = "DedupingPRCurveCVResultProducerSplit: ";    result += getCompatibilityState();    if (m_instances == null) {      result += ": <null Instances>";    } else {      result += ": " +  Utils.backQuoteChars(m_instances.relationName());    }    return result;  }      // Quick test of timestamp  public static void main(String [] args) {    DedupingPRCurveCVResultProducerSplit rp = new DedupingPRCurveCVResultProducerSplit();    rp.setPlotPoints(args[0]);    System.out.println(rp.getPlotPoints());  }} // DedupingPRCurveCVResultProducer

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -