public void Aprender(IDadosSinaisDinamicos dados) { var quantidadeCaracteristicas = dados.CaracteristicasSinais[0][0].Length; hmm = new HiddenMarkovClassifier<MultivariateNormalDistribution>( classes: dados.QuantidadeClasses, topology: new Forward(QuantidadeEstados), initial: new MultivariateNormalDistribution(quantidadeCaracteristicas) ); var teacher = new HiddenMarkovClassifierLearning<MultivariateNormalDistribution>(hmm, modelIndex => new BaumWelchLearning<MultivariateNormalDistribution>(hmm.Models[modelIndex]) { Tolerance = 0.001, Iterations = 100, FittingOptions = new NormalOptions { Regularization = 1e-5} }); teacher.Run(dados.CaracteristicasSinais, dados.IdentificadoresSinais); }
private bool VerificarDadosDoAlgoritmoDeSinaisDinamicos(IDadosSinaisDinamicos dados) { dados.QuantidadeClasses.Should().Be(2); dados.IdentificadoresSinais.Should().HaveCount(4); dados.CaracteristicasSinais.Should().HaveCount(4); return true; }