Accord.Tests.Statistics.GenericHiddenMarkovModelTest.DecodeIntegersTest C# (CSharp) Method

DecodeIntegersTest() private method

private DecodeIntegersTest ( ) : void
return void
        public void DecodeIntegersTest()
        {
            double[,] transitions = 
            {  
                { 0.7, 0.3 },
                { 0.4, 0.6 }
            };

            GeneralDiscreteDistribution[] emissions = 
            {  
                new GeneralDiscreteDistribution(0.1, 0.4, 0.5),
                new GeneralDiscreteDistribution(0.6, 0.3, 0.1)
            };

            double[] initial =
            {
                0.6, 0.4
            };

            var hmm = new HiddenMarkovModel<GeneralDiscreteDistribution>(transitions, emissions, initial);

            int[] sequence = new int[] { 0, 1, 2 };

            double logLikelihood = hmm.Evaluate(sequence);
            int[] path = hmm.Decode(sequence, out logLikelihood);

            Assert.AreEqual(logLikelihood, Math.Log(0.01344), 1e-10);
            Assert.AreEqual(path[0], 1);
            Assert.AreEqual(path[1], 0);
            Assert.AreEqual(path[2], 0);
        }