source:
trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/ui/commands/CMDtrainPPM.java
@
726
Last change on this file since 726 was 726, checked in by sherbold, 12 years ago | |
---|---|
File size: 1.7 KB |
Rev | Line | |
---|---|---|
[434] | 1 | package de.ugoe.cs.quest.ui.commands; |
[1] | 2 | |
3 | import java.util.List; | |
[8] | 4 | import java.util.Random; |
[1] | 5 | |
[433] | 6 | import de.ugoe.cs.quest.usageprofiles.PredictionByPartialMatch; |
7 | import de.ugoe.cs.quest.usageprofiles.TrieBasedModel; | |
[1] | 8 | |
[171] | 9 | /** |
10 | * <p> | |
11 | * Command that trains Prediction by Partial Match (PPM) models. | |
12 | * </p> | |
13 | * | |
14 | * @author Steffen Herbold | |
[184] | 15 | * @version 2.0 |
[171] | 16 | */ |
[184] | 17 | public class CMDtrainPPM extends AbstractTrainCommand { |
[1] | 18 | |
[184] | 19 | /** |
20 | * <p> | |
21 | * Escape probability of the PPM model. | |
22 | * </p> | |
23 | */ | |
24 | double probEscape; | |
25 | ||
26 | /** | |
27 | * <p> | |
28 | * Maximal Markov order of the PPM model. | |
29 | * </p> | |
30 | */ | |
31 | int maxOrder; | |
32 | ||
33 | /** | |
34 | * <p> | |
35 | * Minimal Markov order of the PPM model. Default: 0 | |
36 | * </p> | |
37 | */ | |
38 | int minOrder = 0; | |
39 | ||
[171] | 40 | /* |
41 | * (non-Javadoc) | |
42 | * | |
43 | * @see de.ugoe.cs.util.console.Command#help() | |
44 | */ | |
[1] | 45 | @Override |
[664] | 46 | public String help() { |
[726] | 47 | return "trainPPM <modelname> <sequencesName> <probEscape> <maxOrder> {<minOrder>}"; |
[1] | 48 | } |
49 | ||
[184] | 50 | /** |
51 | * <p> | |
52 | * Handles the parameters probEscape, maxOrder, and minOrder. | |
53 | * </p> | |
54 | * | |
[434] | 55 | * @see de.ugoe.cs.quest.ui.commands.AbstractTrainCommand#handleOptionalParameters(java.util.List) |
[184] | 56 | */ |
57 | @Override | |
58 | void handleAdditionalParameters(List<Object> parameters) throws Exception { | |
59 | probEscape = Double.parseDouble((String) parameters.get(2)); | |
60 | maxOrder = Integer.parseInt((String) parameters.get(3)); | |
61 | if (parameters.size() == 5) { | |
62 | minOrder = Integer.parseInt((String) parameters.get(4)); | |
63 | } | |
64 | } | |
65 | ||
[171] | 66 | /* |
67 | * (non-Javadoc) | |
68 | * | |
[434] | 69 | * @see de.ugoe.cs.quest.ui.commands.AbstractTrainCommand#createModel() |
[171] | 70 | */ |
[1] | 71 | @Override |
[184] | 72 | TrieBasedModel createModel() { |
73 | return new PredictionByPartialMatch(maxOrder, minOrder, new Random(), | |
74 | probEscape); | |
[1] | 75 | } |
76 | ||
77 | } |
Note: See TracBrowser
for help on using the repository browser.