public void setup() { geradorCaracteristicas = Substitute.For<IGeradorCaracteristicas>(); geradorDadosTreinamento = Substitute.For<IGeradorDadosTreinamento>(); algoritmoClassificacao = Substitute.For<IAlgoritmoClassificacao>(); classificadorEmail = new ClassificadorEmail(algoritmoClassificacao, geradorCaracteristicas, geradorDadosTreinamento); }
private void TreinarClassificador(ClassificadorEmail classificadorEmail) { var listaEmails = new[] { new EmailRecebido("Vai perder? Só hoje esse descontão !", "Só hoje na lojinha do joão tem esse desconto") { Categoria = Ofertas }, // [0, 3] new EmailRecebido("Tem desconto aqui", "Só hoje para quem comprar pelo nosso perfil na rede social") { Categoria = Ofertas }, // [1, 2] new EmailRecebido("Atualizamos o nosso perfil", "Olá pessoa, tudo bem? Você já conferiu o perfil atualizado da nossa loja") { Categoria = Social }, // [2, 1] new EmailRecebido("O super perfil", "O seu amigo Teste atualizou o perfil") { Categoria = Social }, // [3, 0] new EmailRecebido("Desconto", "Ae manolo, já comprasse aquele celular?") { Categoria = Inbox }, // [0, 2] new EmailRecebido("Notícia", "Divulgada foto de perfil do meliante") { Categoria = Inbox } // [1, 0] }; classificadorEmail.Treinar(listaEmails); }
public ClassificadorEmail Criar() { var colecaoChaveValor = new ColecaoChaveValor<Categoria, int>(); colecaoChaveValor.Adicionar(Inbox, 0); colecaoChaveValor.Adicionar(Ofertas, 1); colecaoChaveValor.Adicionar(Social, 2); var svm = new Svm(); var geradorCaracteristicas = new GeradorCaracteristicas(); var geradorDadosTreinamento = new GeradorDadosTreinamento(geradorCaracteristicas, colecaoChaveValor); var classificadorEmail = new ClassificadorEmail(svm, geradorCaracteristicas, geradorDadosTreinamento); TreinarClassificador(classificadorEmail); return classificadorEmail; }