loadModel method
Implementation
Future<void> loadModel() async {
prevStatus = {};
prevStatus.put('B', ['E', 'S']);
prevStatus.put('M', ['M', 'B']);
prevStatus.put('S', ['S', 'E']);
prevStatus.put('E', ['B', 'M']);
start = {};
start.put('B', -0.26268660809250016);
start.put('E', -3.14e+100);
start.put('M', -3.14e+100);
start.put('S', -1.4652633398537678);
trans = {};
Map<String, double> transB = {};
transB.put('E', -0.510825623765990);
transB.put('M', -0.916290731874155);
trans.put('B', transB);
Map<String, double> transE = {};
transE.put('B', -0.5897149736854513);
transE.put('S', -0.8085250474669937);
trans.put('E', transE);
Map<String, double> transM = {};
transM.put('E', -0.33344856811948514);
transM.put('M', -1.2603623820268226);
trans.put('M', transM);
Map<String, double> transS = {};
transS.put('B', -0.7211965654669841);
transS.put('S', -0.6658631448798212);
trans.put('S', transS);
var file = await rootBundle.loadString(PROB_EMIT);
emit = {};
Map<String, double> values = {};
for (var line in file.split("\n")) {
List<String> tokens = line.split("\t");
if (tokens.length == 1) {
values = {};
if (tokens[0].isNotEmpty) emit.put(tokens[0].charAt(0), values);
} else {
values.put(tokens[0].charAt(0), double.parse(tokens[1]));
}
}
}