public class SemiLEvaluationParser extends BaseClassifierEvaluationParser
BaseClassifierEvaluationParser.InstanceClassInfo
ClassifierEvaluationParser.ParseOption
Modifier and Type | Field and Description |
---|---|
static Log |
log |
static java.util.regex.Pattern |
pGamma
parse options
|
static java.util.regex.Pattern |
pLabel |
static java.util.regex.Pattern |
pLambda |
static java.util.regex.Pattern |
pLaplacian |
static java.util.regex.Pattern |
pMu |
static java.util.regex.Pattern |
pOutput
distance files of the form label1_dist_pearson_5.txt parse out
the metric and degree from the file name.
|
static java.util.regex.Pattern |
pPercent |
wsDotPattern, wsPattern
NO, YES
Constructor and Description |
---|
SemiLEvaluationParser() |
Modifier and Type | Method and Description |
---|---|
(package private) java.util.Map<java.lang.Integer,java.lang.Integer> |
getInstanceIdClass(java.lang.String labelFile,
java.util.List<java.lang.Integer> instanceIds) |
static void |
main(java.lang.String[] args) |
void |
parseDirectory(java.io.File dataDir,
java.io.File outputDir) |
private void |
parseOptions(SemiLClassifierEvaluation ce,
java.lang.String optionsLine,
java.util.Properties kernelProps,
java.lang.String outputName)
parse options out of file, into object.
|
private void |
parsePredictedClasses(ClassifierEvaluation ce,
java.lang.String predictLine,
java.util.List<BaseClassifierEvaluationParser.InstanceClassInfo> listClassInfo,
boolean storeUnlabeled,
parse class predictions for test instances out of semil output.
|
private void |
parseSemiLOutput(java.io.File dataDir,
java.lang.String fileBaseName,
java.util.Properties kernelProps,
java.io.File output,
java.util.List<BaseClassifierEvaluationParser.InstanceClassInfo> listClassInfo)
parse semil output file
|
checkFileRead, extractFirstToken, getClassifierEvaluationDao, getFileBaseName, initClassifierEvaluation, initClassifierEvaluationFromProperties, loadClassIdMap, loadClassInfo, loadInstanceClassInfo, loadProps, parseDoubleOption, parseInstanceIds, parseIntOption, setClassifierEvaluationDao, storeSemiSupervised, updateSemiSupervisedPredictions, updateSemiSupervisedPredictions
public static final Log log
public static java.util.regex.Pattern pGamma
gamma=10.000000 mu=0.500000 lambda=0.010100 hard_label=1 Laplacian=1 percentage of labeled points =0.000000
public static java.util.regex.Pattern pMu
public static java.util.regex.Pattern pLambda
public static java.util.regex.Pattern pLabel
public static java.util.regex.Pattern pLaplacian
public static java.util.regex.Pattern pPercent
public static java.util.regex.Pattern pOutput
public void parseDirectory(java.io.File dataDir, java.io.File outputDir) throws java.io.IOException
fileBaseName
- e.g. label1_run1_fold1dataDir
- where train, test, id files are locatedoutputDir
- where classifier output is storedjava.io.IOException
private void parseSemiLOutput(java.io.File dataDir, java.lang.String fileBaseName, java.util.Properties kernelProps, java.io.File output, java.util.List<BaseClassifierEvaluationParser.InstanceClassInfo> listClassInfo) throws java.io.IOException
fileBaseName
- parse label, run and fold out of this, e.g.
label1_run1_fold1_xxxkernelProps
- from options.propertiesoutput
- semil output file with predictionslistClassInfo
- instance and class idssaveInstanceEval
- should the instance-level evaluations be saved?java.io.IOException
private void parsePredictedClasses(ClassifierEvaluation ce, java.lang.String predictLine, java.util.List<BaseClassifierEvaluationParser.InstanceClassInfo> listClassInfo, boolean storeUnlabeled,classIdToNameMap)
ce
- evaluation to updatepredictLine
- line with predictionslistClassInfo
- storeUnlabeled
- should all predictions - not only for test instances be
stored?private void parseOptions(SemiLClassifierEvaluation ce, java.lang.String optionsLine, java.util.Properties kernelProps, java.lang.String outputName)
gamma=10.000000 mu=0.500000 lambda=0.010100 hard_label=1 Laplacian=1 percentage of labeled points =0.000000 data_size=242
ce
- optionsLine
- java.util.Map<java.lang.Integer,java.lang.Integer> getInstanceIdClass(java.lang.String labelFile, java.util.List<java.lang.Integer> instanceIds) throws java.io.IOException
labelFile
- contains class ids for each instance. first token of each line
is the class id.instanceIds
- instance ids corresponding to linesjava.io.IOException
public static void main(java.lang.String[] args) throws java.io.IOException
java.io.IOException