public void adicionando_dados_de_treinamento2()
        {
            var dadosTreinamento = new DadosTreinamento();

            var caracteristicas = new[]
            {
                new[] { 2.0, 2.5 },
                new[] { 1.3, 2.0 },
                new[] { 8.1, 3.5 },
                new[] { 2.2, 4.5 }
            };
            var classes = new[] { 0, 1, 1, 0 };

            dadosTreinamento.Adicionar(caracteristicas[0], classes[0]);
            dadosTreinamento.Adicionar(caracteristicas[1], classes[1]);
            dadosTreinamento.Adicionar(caracteristicas[2], classes[2]);
            dadosTreinamento.Adicionar(caracteristicas[3], classes[3]);

            dadosTreinamento.Saidas.Should().HaveSameCount(classes);
            dadosTreinamento.Entradas.Should().HaveSameCount(caracteristicas);

            for (var i = 0; i < caracteristicas.Length; i++)
            {
                dadosTreinamento.Entradas[i].Should().ContainInOrder(caracteristicas[i]);
                dadosTreinamento.Saidas[i].Should().Be(classes[i]);
            }
        }
Exemple #2
0
        public void classificando_caracteristicas()
        {
            var dadosTreinamento = new DadosTreinamento();
            dadosTreinamento.Adicionar(new [] { 1.0, 1.0 }, 0);
            dadosTreinamento.Adicionar(new [] { 0.5, 0.5 }, 1);
            dadosTreinamento.Adicionar(new [] { 1.5, 1.5 }, 2);

            var svm = new Svm();

            svm.Treinar(dadosTreinamento);

            var classe = svm.Classificar(new[] {0.3, 0.3});
            classe.Should().Be(1);
        }
        public DadosTreinamento Extrair(EmailRecebido[] emailsRecebidos)
        {
            var dadosTreinamento = new DadosTreinamento();
            foreach (var emailRecebido in emailsRecebidos)
            {
                var caracteristicas = geradorCaracteristicas.Extrair(emailRecebido);
                var classe = colecaoChaveValor.ObterValor(emailRecebido.Categoria);
                dadosTreinamento.Adicionar(caracteristicas, classe);
            }

            return dadosTreinamento;
        }
        public void adicionando_dados_de_treinamento()
        {
            var dadosTreinamento = new DadosTreinamento();

            var caracteristicas = new[] { 2.0, 2.5 };
            var classe = 0;

            dadosTreinamento.Adicionar(caracteristicas, classe);

            dadosTreinamento.Saidas.Should().HaveCount(1);
            dadosTreinamento.Saidas.Should().OnlyContain(s => s == 0);
            dadosTreinamento.Entradas.Should().HaveCount(1);
            dadosTreinamento.Entradas.Should().OnlyContain(a => a[0] == caracteristicas[0] && a[1] == caracteristicas[1]);
        }