public void LearnTest2()
{
// Creates a new Hidden Markov Model with 10 states
var initial = new MultivariateNormalDistribution(3);
var classifier = new HiddenMarkovClassifier<MultivariateNormalDistribution, double[]>(2, new Ergodic(10), initial);
Assert.AreEqual(3, classifier.Models[0].NumberOfInputs);
Assert.AreEqual(3, classifier.Models[1].NumberOfInputs);
Assert.AreEqual(2, classifier.Models.Length);
for (int i = 0; i < 2; i++)
{
var model = classifier.Models[i];
Assert.AreEqual(3, model.NumberOfInputs);
Assert.AreEqual(10, model.States);
Assert.AreEqual(10, model.Emissions.Length);
for (int j = 0; j < model.Emissions.Length; j++)
{
var distribution = model.Emissions[j];
Assert.IsNotNull(distribution);
Assert.AreEqual(distribution.Dimension, 3);
}
}
}