source:
trunk/quest-ui-core/src/main/java/de/ugoe/cs/quest/ui/commands/CMDtrainMarkovModel.java
@
726
Last change on this file since 726 was 726, checked in by sherbold, 12 years ago | |
---|---|
File size: 1.4 KB |
Line | |
---|---|
1 | package de.ugoe.cs.quest.ui.commands; |
2 | |
3 | import java.util.List; |
4 | import java.util.Random; |
5 | |
6 | import de.ugoe.cs.quest.usageprofiles.FirstOrderMarkovModel; |
7 | import de.ugoe.cs.quest.usageprofiles.HighOrderMarkovModel; |
8 | import de.ugoe.cs.quest.usageprofiles.TrieBasedModel; |
9 | |
10 | /** |
11 | * <p> |
12 | * Command to train first-order and high-order Markov models. |
13 | * </p> |
14 | * |
15 | * @author Steffen Herbold |
16 | * @version 2.0 |
17 | */ |
18 | public class CMDtrainMarkovModel extends AbstractTrainCommand { |
19 | |
20 | /** |
21 | * <p> |
22 | * Order of the Markov model. |
23 | * </p> |
24 | */ |
25 | int order; |
26 | |
27 | /* |
28 | * (non-Javadoc) |
29 | * |
30 | * @see de.ugoe.cs.util.console.Command#help() |
31 | */ |
32 | @Override |
33 | public String help() { |
34 | return "trainMarkovModel <modelname> <sequencesName> {<order>}"; |
35 | } |
36 | |
37 | /** |
38 | * <p> |
39 | * Handles the parameter order. |
40 | * </p> |
41 | * |
42 | * @see de.ugoe.cs.quest.ui.commands.AbstractTrainCommand#handleOptionalParameters(java.util.List) |
43 | */ |
44 | @Override |
45 | void handleAdditionalParameters(List<Object> parameters) throws Exception { |
46 | if (parameters.size() >= 3) { |
47 | order = Integer.parseInt((String) parameters.get(2)); |
48 | } else { |
49 | order = 1; |
50 | } |
51 | } |
52 | |
53 | /* |
54 | * (non-Javadoc) |
55 | * |
56 | * @see de.ugoe.cs.quest.ui.commands.AbstractTrainCommand#createModel() |
57 | */ |
58 | @Override |
59 | TrieBasedModel createModel() { |
60 | if (order == 1) { |
61 | return new FirstOrderMarkovModel(new Random()); |
62 | } else { |
63 | return new HighOrderMarkovModel(order, new Random()); |
64 | } |
65 | } |
66 | |
67 | } |
Note: See TracBrowser
for help on using the repository browser.