2 Conceitos Preliminares
2.3.2 Comitês de Classificadores
Dentro da área de Aprendizado de Máquina, é possível utilizar um conjunto de classificadores que podem unir suas decisões para construir os novos exemplos. Estes conjuntos de classificadores com estes objetivos podem ser chamados de Comitês. A principal ideia por trás de qualquer modelo (Comitês) é que diferentes classificadores exploram:
• Diferentes linguagens de representação; • Diferentes espaços de busca;
• Diferentes funções de avaliação de hipótese;
Existem algumas perguntas relacionadas a estas características. Primeiramente, “É possível construir um conjunto de classificadores que trabalhem e tenham seu desempenho melhor do que os mesmos classificadores de forma individual?”. “Como é possível explorar estas diferenças?”. Em [Faceli et al. 2011] encontram-se outros detalhes sobre Comitês (Ensemble) e a justificativa para eles. No entanto, a principal justificativa para a utilização de Comitês é que se tem o melhor desempenho sobre classificador individual, isto é possível porque os diferentes classificadores têm diferentes erros independentes. Por isso, é possível construir conjuntos com distintos (heterogêneo) e utilizando os mesmos tipos de classificador (homogêneos). Independente do tipo de conjunto configurado, é necessário corresponder às previsões dos classificadores e para isso é possível utilizar os métodos de votação e métodos de série como meta-classificadores. No entanto, existem os métodos dinâmicos e estáticos que podem ser utilizados como meta-classificadores. Estes meta-classificadores combinam as previsões de cada classificador. Por exemplo, o Algoritmo Stacking em [Wolpert 1992], faz referência a maioria de votos. Neste caso, escolhe-se a classificação que é escolhida pela maioria dos classificadores. A Figura 22 mostra o tipo de modelo de conjunto (Alguns classificadores base). Na Figura 22 é possível ver que o combinador é tão importante quanto o tipo de classificador escolhido.
Figura 22: Modelo de Comitês
[Zhou, Lai e Yu 2010]
2.3.2.1 Comitês Homogêneos de Classificadores
Os conjuntos homogêneos são definidos do classificador do mesmo tipo, mas com a configuração de diferentes parâmetros. Por exemplo, é possível construir um novo conjunto de dados de treinamento e desta forma obter várias suposições. Para comitês baseados em exemplos de treinamento tem-se o Bagging (também conhecido Bootstrap Aggregating) [Wang, Yu e Chan 2011] e o Boosting (Adaboosting) [Freund e Schapire 1996]. Ao utilizar algum deles, o conjunto de dados de treinamento gera as várias hipóteses. A grande questão é “Como gerar uma diversidade em conjuntos homogêneos?”. É uma pergunta importante, porque os conjuntos homogêneos utilizam o mesmo classificador e é necessário aplicar alguns parâmetros diferentes para obter a variação. Por isso, de acordo com [Faceli et al. 2011] pode-se alterar alguns atributos nos classificadores de base: objetos de amostragem, os atributos de amostragem, a inserção de aleatoriedade e mudança nos exemplos de teste.
2.3.2.2 Bagging
O algoritmo Bagging [Breiman 1996] usa o “voto por maioria” para classificadores treinados em amostras de bootstrap de dados de treinamento. Ele usa o classificador ou uma função de regressão para cada amostra de bootstrap. Para a regressão que utiliza a média dos valores previstos e com isso, pode diminuir a variação. Segundo [Wang et al. 2012] o Bagging pode ser também conhecido como um dos mais intuitivos e simples de executar, com um desempenho surpreendentemente bom. Sobre a diversidade, é obtido através do uso do bootstrapped sobre o conjunto de dados de treinamento e, por isso, é possível utilizar diferentes subconjuntos de dados de treinamento, que são sorteados com a substituição, a partir de todo o conjunto de dados de treinamento.
No entanto, pode-se levantar algumas questões sobre o Bagging. Segundo [Faceli et al. 2011] “quantas amostragens são necessárias? ”.“A resposta depende do tempo
de requisição. Porém, sempre é possível observar que o valor 10 é um bom número de amostragem. Outra questão, é possível eliminar todos os modelos de treinamento? O Bagging utiliza somente 2/3 dos modelos criados e o restante é utilizado para estimar o desempenho do modelo gerado.
2.3.2.3 Adaboost
Um outro comitê de aprendizagem é o Adaboost. Segundo [Freund e Schapire 1996] pode ser usado para reduzir significativamente o erro de qualquer algoritmo de aprendizagem “fraco” que constantemente gera classificadores que precisam apenas ser um pouco melhores do que adivinhar aleatoriamente. O Adaboost trabalha executando repetidamente um determinado algoritmo de aprendizado fraco em várias distribuições nos dados de treinamento, e, em seguida, combinar os classificadores produzidos por um classificador “fraco” em um único classificador composto. Conforme [Quinlan 1996], diferentemente do Bagging, o AdaBoost mantém um conjunto de pesos sobre o conjunto de treinamento, em vez de desenhar aleatoriamente uma série de amostras de bootstrap independentes do conjunto de dados de treinamento original.
Conforme [Faceli et al. 2011], é possível discutir sobre algumas características do AdaBoost, que são: Em primeiro lugar, o AdaBoost se ajusta a muitos problemas reais, em outras palavras, isso significa que em complexos problemas de classificação, porque estes problemas têm níveis de classificação diversificadas. Em segundo lugar, é necessário que o AdaBoost seja sensível para gerar modelos diferentes para qualquer mudança no conjunto de dados de treino.
2.3.2.4 Comitês Heterogêneos de Classificadores
Outra forma de garantir aos classificadores de base a diversidade é utilizar os diferentes classificadores para compor o conjunto (Comitê). Neste caso, classifica-se este modelo como Comitê heterogêneo. De acordo com [Faceli et al. 2011] existem várias estruturas para representar estes tipos de comitês. Por exemplo, pode-se utilizar a generalização Stacked. A Figura 23 mostram uma estrutura de empilhamento simples. No entanto, é possível citar outras generalizações. Por exemplo, a Generalização em Cascata, o Meta aprendizado e os sistemas híbridos. Para esta tese, apenas cita-se o algoritmo do tipo Stacked.
Figura 23: Modelo do Comitê Stacking.
que introduz o conceito de um meta-aprendizado. O empilhamento por ser diferente do modelo cascata, pode ser (e geralmente é) usado para combinar os modelos de diferentes tipos de classificadores. Pode-se destacar segundo [Zhou 2010] o procedimento da seguinte forma:
1. Divide-se o conjunto de treinamento utilizado em dois conjuntos disjuntos; 2. Treina-se vários classificadores de base na primeira parte;
3. Testa-se o modelo sobre as bases de teste na segunda parte;
4. Utiliza-se as previsões do passo 3 como as entradas e as respostas corretas como as saídas para treinar um classificador de nível superior.
Nota-se que as etapas de 1) a 3) são as mesmas que a validação cruzada, mas em vez de utilizar uma abordagem vencedor leva tudo, os classificadores de base são combinados, possivelmente de forma não linear.
2.4
Considerações Finais
Neste capítulo, foram citadas algumas definições importantes sobre Sistemas Criptográficos, Aprendizado de Máquina, e Comitês de classificadores. Esses conceitos são considerados essenciais este trabalho. No próximo capítulo serão abordados as principais técnicas sobre o aumento da segurança sobre conjunto de dados baseado em biometria.