5. Implementation
5.1 Implementation of R-T monitor
5.1.2 Implementation of graphical Display for Real-Time Monitor
Está seção apresenta os resultados esperados das execuções dos algoritmos. Apresenta os parâmetros utilizados para execução dos algoritmos e quais variáveis são analisadas. Os parâmetros de execução incluem as bases de dados utilizadas, os parâmetros dos algoritmos de otimização e seus critérios de parada, os parâmetros de avaliação das soluções e como os algoritmos em relação à execução de todos os algoritmos da tabela 2 em cada base de dados presente na tabela 7 apresentada na próxima seção.
4.3.1 Bases de Dados
As bases de dados utilizadas nos experimentos deste trabalho foram obtidas do repositório UCI (FRANK; ASUNCION, 2012). Dentre as bases presentes no repositório foram escolhidas aquelas correspondentes a problemas de classificação de modo a gerar um conjunto heterogêneo em relação à quantidade de instâncias, de classes e atributos do problema. Elas apresentam atributos numéricos, ou nominais ou ambos. A tabela 7 apresenta as bases de dados e quais as características de cada uma.
É aplicado pré-processamento em todas as bases de dados a fim de remover valores faltosos, transformar a escala dos atributos numéricos para escala e remover atributos irrelevantes (APÊNDICE A). A presença de valores faltosos ou diferentes escalas entre os valores dos atributos pode influenciar o processamento das técnicas de aprendizado de máquina utilizadas neste trabalho. A remoção de atributos irrelevantes visa diminuir o processamento dos algoritmos, visto que numa aplicação real estes atributos seriam identificados e removidos nesta fase de pré-processamento (WITTEN; FRANK, 2005).
A remoção dos atributos é feita da seguinte maneira: dividindo a base de dados em conjuntos de instâncias de mesma classe, um atributo é removido quando apresentar uma quantidade de valores faltosos maior ou igual a 90% da quantidade instâncias no conjunto. Caso o atributo não seja removido e ainda apresente valores faltosos, os mesmos são substituídos dependendo do tipo do atributo. Em cada conjunto de instâncias de mesma classe, os valores faltosos dos atributos numéricos (nominais) são substituídos pela média (moda) dos valores no conjunto.
Um atributo também pode ser removido caso satisfaça algum dos critérios abaixo:
Ser categórico e possuir um valor diferente para cada instância;
Ser categórico ou numérico e possuir um único valor para todas as instâncias;
Possuir os mesmos valores em todas as instâncias quando comparado a algum dos outros atributos da base de dados.
Bases de Dados Usadas nos Experimentos Nº Base Quantidade de Atributos Quantidade de Instâncias Quantidade de Classes Valores Faltosos 1 Arrhythmia 279 (279/0) 452 13 Sim 2 Balance 4 (0/4) 625 3 Não 3 BreastCancer 30 (30/0) 569 2 Não 4 Car 6 (0/6) 1728 4 Não 5 Crx 15 (6/9) 690 2 Sim 6 Dermatology 34 (1/33) 366 6 Sim 7 Ecoli 7 (7/0) 336 8 Não 8 Gaussian 600 (600/0) 60 3 Não 9 German 20 (7/13) 1000 2 Não 10 Glass 9 (9/0) 214 6 Não 11 HorseColic 22 (15/7) 368 2 Sim 12 Housevotes 16 (0/16) 435 2 Sim 13 Ionosphere 34 (34/0) 351 2 Não 14 Iris 4 (4/0) 150 3 Não 15 Jude 985 (985/0) 248 6 Não 16 KRKPA7 36 (0/36) 3196 2 Não 17 Labor 16 (8/8) 57 2 Sim 18 LungCancer 56 (0/56) 32 3 Sim 19 Protein 126 (126/0) 583 5 Não 20 Segment 19 (19/0) 1500 7 Não 21 Sick 29 (7/22) 3772 2 Sim 22 Simulated 600 (600/0) 60 6 Não 23 Sonar 60 (60/0) 208 2 Não 24 Soybean 35 (0/35) 683 19 Sim 25 SpamBase 57 (57/0) 4601 2 Não 26 Transfusion 4 (4/0) 748 2 Não 27 Vehicle 18 (18/0) 846 4 Não 28 Vowel 12 (10/2) 990 11 Não 29 Waveform 21 (21/0) 5000 3 Não 30 Wine 13 (13/0) 178 3 Não
Tabela 7: Bases de dados utilizadas nos experimentos. A coluna quantidade de atributos apresenta a quantidade de atributos na forma . Onde representa a quantidade total de atributos, representa a quantidade de atributos numéricos e a quantidade de atributos nominais.
4.3.2 Configuração dos Experimentos
Os experimentos consistem na execução dos algoritmos definidos na tabela 2 para todas as bases de dados presentes na tabela 7. Cada algoritmo é executado 10 vezes utilizando como critério de parada 6 minutos ou 1000 iterações. São efetuados dois experimentos variando a quantidade máxima de classificadores base do comitê entre 3 e 10.
Tamanho da lista tabu: a quantidade de posições da lista tabu é atribuída como 30% da quantidade de atributos da base de dados sendo o mínimo de uma posição.
Variação do tamanho da lista tabu: a cada iteração a quantidade de posições da lista tabu é alterada para corresponder à quantidade inicial incrementada de um valor sorteado entre 1 e 10% da quantidade de atributos da base de dados. Os valores são sorteados de modo uniforme.
Quantidade de soluções da vizinhança: a cada iteração o operador gera 30 soluções vizinhas.
Quantidade de aplicações da diversificação: a diversificação é aplicada duas vezes durante a execução, isto é, a cada 333 iterações. Utilizado somente na versão multiobjetivo.
Em todos os algoritmos baseados na técnica de algoritmos genéticos são utilizados os seguintes parâmetros:
Taxa de mutação: o operador de cruzamento é aplicado com uma taxa de 10%. O teste para aplicação do operador é realizado efetuando um sorteio uniforme de um valor entre , caso ele seja menor que 0.10 (valor da taxa de mutação), o operador é aplicado.
Tamanho da população: a quantidade de indivíduos da população é fixada em 30.
Todas as comparações são efetuadas de acordo com os tipos de técnicas de otimização, ou seja, as validades das hipóteses são verificadas efetuando duas comparações: comparações dos algoritmos baseados em Busca Tabu e comparações dos algoritmos baseados em Algoritmos Genéticos. Não são efetuadas comparações entre diferentes técnicas de otimização.
Todo software necessário para execução dos experimentos foi implementado na linguagem JAVA 1.7 (JAVA, 2012), isto é, os algoritmos das técnicas de otimização, algoritmos das técnicas de aprendizado, os testes estatísticos e a metodologia descrita.
4.3.3 Comparação dos Algoritmos
Os resultados das execuções dos algoritmos correspondem às características apresentadas pelos comitês de classificação construídos. São analisadas as seguintes variáveis dependentes: erro percentual médio de classificação (pode ser transformado em acurácia de classificação subtraindo o erro percentual por 1); a taxa da boa diversidade; a taxa da má diversidade; a quantidade de classificadores base utilizada; a quantidade média de atributos utilizados pelo comitê; e a quantidade de iterações executadas pelo algoritmo.
As técnicas multiobjetivo apresentam como resultado um conjunto de soluções não dominadas, diferente das técnicas mono-objetivos que retornam apenas uma solução. Logo, é necessário definir qual o melhor comitê desse conjunto, ou seja, escolher um representante desse conjunto para avaliação dos resultados. Neste trabalho, utilizamos a solução não dominada de maior acurácia como solução representante. Isto é, dado um conjunto de soluções não dominadas, a solução representante utilizada na avaliação dos resultados é a solução que apresenta o maior valor de acurácia.
Para cada caso experimental (quantidade máxima de 3 ou 10 classificadores base) e para cada base de dados presente na tabela 13, cada algoritmo presente na tabela 2 é executado 10 vezes. Assim, os valores das variáveis são apresentadas como a média das 10 execuções.
Os resultados dos algoritmos são comparados aplicando os testes estatísticos de Mann-Whitney (ver 2.2.3) e de Wilcoxon (ver 2.2.4) e avaliando a correlação de Spearman (GIBBONS; CHAKRABORTI, 2003) de acordo com a necessidade da comparação. Em ambos os testes estatísticos, são comparados pares de algoritmos e avaliada uma variável dependente de cada vez. A hipótese nula é que os dois algoritmos apresentem a mesma média para variável dependente e hipótese alternativa que apresentam médias diferentes. Em todos os testes, é adotado o nível de significância de 0.05.
Quando estivermos comparando diferentes algoritmos para as execuções em uma mesma base de dados as variáveis dependentes são comparadas aplicando o teste de Mann-Whitney, onde a amostra de cada algoritmo corresponde aos valores das variáveis dependentes apresentadas em cada uma das 10 execuções. De modo análogo, quando estivermos comparando diferentes bases de dados, aplicamos o teste de Wilcoxon ,onde a amostra de cada algoritmo corresponde às médias das variáveis dependentes apresentas nas 10 execuções em cada base de dados. A correlação de Pearson é aplicada somente a diferentes variáveis dependentes nas 10 execuções de um mesmo algoritmo numa mesma base de dados num mesmo caso experimental.
CAPÍTULO 5 –
RESULTADOS
Este capítulo apresenta os resultados obtidos por este trabalho. Efetua diferentes análises dos dados, considerando os resultados obtidos individualmente da execução dos algoritmos em cada base de dados e considerando as principais características dos resultados apresentadas das execuções no conjunto de bases de dados utilizado neste trabalho.
Resultados preliminares são apresentados em (FEITOSA NETO, et al 2011). Tais resultados foram importantes em escolhas relacionadas ao projeto dos algoritmos. Os resultados finais são comparados com os resultados preliminares justificando essas escolhas.
A seguir são apresentados os resultados preliminares, apresentados e analisados os resultados obtidos por este trabalho.