Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Relatório Utilização da Ferramenta Weka

2 474 vues

Publié le

Publié dans : Technologie
  • Soyez le premier à commenter

Relatório Utilização da Ferramenta Weka

  1. 1. Relatório de Utilização da Ferramenta Weka Francisco Glaubos Nunes Clímaco 2 de junho de 2014 1 Introdução Este é um relatório de trabalho proposto no qual o objetivo era escolher uma base de dados, aplicar as tarefas de mineração de dados: classificação, associação e clusterização e analisar os resultados obtidos por cada método de cada tarefa. 1.1 A base de dados A base utilizada neste trabalho foi a Breast Cancer, que foi obtida a partir do Centro Médico da Universidade, Instituto de Oncologia, Ljubljana, Iugoslávia [2]. Esta base possui informações acerca de pacientes com câncer de mama e inclui no total 286 instâncias: 201 de uma classe, 85 de outra classe e 277 sem valores ausentes, estas são descritas por nove atributos (Tabela 1) , alguns são lineares e outros são nominais: 1. Class: Não-Recorrência ou Recorrência de sintomas do câncer de mama nos pacientes após o tratamento. 2. age: Idade do paciente no momento do diagnóstico. 3. menopause: Estado de menopausa do paciente no momento do diagnós- tico. 4. tumor-size: O tamanho do tumor em milímetros. 5. inv-nodes: Faixa de 0 a 39 linfonodos auxiliares, que mostram o câncer de mama no momento do exame histológico. 6. nodes-cap: A penetração do tumor na cápsula do linfonodo ou não. 7. deg-malign: Faixa de grau 1 a 3, que define o grau histológico do tumor, o nível de malignidade do tumor. 8. breast:O câncer poder ocorrer em qualquer mama. 9. breast-quad: Se for considerado o mamilo como um ponto central, a mama pode ser dividida em quatro quadrantes. 10. irradiat: Se o paciente possui ou não histórico de terapia de radiação (raio- x). 1
  2. 2. Atributo Valor Class: no-recurrence-events, recurrence-events. age: 10-19, 20-29, 30-39, 40-49, 50-59, 60-69, 70-79, 80-89, 90-99. menopause: lt40, ge40, premeno. tumor-size: 0-4, 5-9, 10-14, 15-19, 20-24, 25-29, 30-34, 35-39, 40-44, 45-49, 50-54, 55-59. inv-nodes: 0-2, 3-5, 6-8, 9-11, 12-14, 15-17, 18-20, 21-23, 24-26,27-29, 30-32, 33-35, 36-39. node-caps: yes, no. deg-malig: 1, 2, 3. breast: left, right. breast-quad: left-up, left-low, right-up, right-low, central. irradiat: yes, no. Tabela 1: Base de dados Breast Cancer . Uma visualização gráfica da Tabela 1, em forma de histograma mostrando cada atributo da base de dados e seu domínio foi gerada pela ferramenta Weka e pode ser vista na Figura 1. Figura 1: Representação gráfica dos atributos, gerada pela ferramenta Weka. 1.2 Tarefas Com o objetivo de extrair informações relevantes em relação a base de dados Breast Cancer, utilizou-se três tipos de tarefas de mineração de dados: classifica- ção, associação e clusterização. Para a análise de classificação foram utilizados o método Nayve Bayes, IBK e J48. No IBK foi variado o valor do atributo K, a fim de se observar melhor sua influência no sucesso de classificação deste método. Na tarefa de associação foi utilizado o algoritmo Apriori com o objetivo de extrair regras de associação variando alguns parâmetros como suporte mínimo, confiança, Lift e Leverage, e após uma análise dos resultados. Para realizar a tarefa de clusterização, foram executados os procedimentos 2
  3. 3. K-means e DSCAN, variando os parâmetros de entrada e posteriormente reali- zando uma análise dos resultados com base nos centróides dos clusters. 2 Tarefas de Mineração de Dados 2.1 Classificação Classificação é o processo que visa encontrar modelos ou funções que descrevam ou distinguam classes ou conceitos de dados, com o intuito de permitir que o modelo ou função preveja a classe daqueles objetos que não possuem um label que indique sua classe [1]. Para os experimentos utilizou-se por default o Cross- Validation com k=10. 2.1.1 Nayve Bayes É um classificador probabilístico baseado no Teorema de Bayes.Sua ideia prin- cipal é calcular a probabilidade de certa instância de entrada pertencer a cada uma das classes. Este método foi executado pela ferramenta Weka e os resultados estão na Figura 2. O resumo dos resultados dessa execução pode ser apresentado da seguinte forma: o algoritmo Nayve Bayes classificou corretamente 205 e incor- retamente 81 instâncias, e a partir da matriz de confusão ainda pode-se con- cluir que 33 instâncias foram classificadas como reccurence-events, quando de fato pertencem a classe no-reccurence-events, e que 48 foram da mesma forma incorretamente classificadas como no-reccurence-events quando na verdade per- tencem a classe reccurence-events. Figura 2: Resultados da execução do método Nayve Bayes. 3
  4. 4. 2.1.2 IBK É uma estratégia baseada no algoritmo K-NN, no qual parte da ideia de que em um espaço n-dimensional, um ponto P e os seus K vizinhos mais próximos, pertencem a mesma classe. A proximidade entre dois pontos nesse espaço é cal- culada por meio da distância Euclidiana entre estes pontos, foi testado também com a distância de Manhattan, porém os resultados são os mesmos. A seguir na Figura 3, o resultado da execução do IBK com k=1, ou seja, a instância irá pertencer a classe predominante entre si e seu vizinho mais próximo. Figura 3: Resultados do método IBK com k=1. De forma empírica, foi-se alterando o valor do parâmetro K de forma cres- cente a partir de K=1 e foi observado que os resultados melhoraram até certo ponto: variando o valor de K de 1 até 4, as instâncias são melhores classificadas a medida que K cresce, porém quando K recebe o valor 5, a qualidade de clas- sificação das instâncias diminui. O gráfico abaixo representa o comportamento de K em função da qualidade de classificação: 4
  5. 5. 1 2 3 4 5 6 72.5 73 73.5 74 74.5 k-vizinhos mais próximos instânciascorretamenteclassificadas(%) Na Figura 4, o resultado da melhor calssificação do IBK: 213 instâncias clas- sificadas corretamente (74.47%) e 73 (25.52%) classificadas incorretamente, e a partir da matriz de confusão, sete instâncias classificadas como reccurence- events, quando deveriam ser da classe no-reccurence-events e 66 instâncias clas- sificadas de forma incorreta como no-reccurence-events, pois pertencem a classe recurrence-events. Figura 4: Resultados do método IBK com k=4. 5
  6. 6. 2.1.3 J48 É uma implementação Java do algoritmo C4.5, presente na ferramenta Weka. O C4.5 é uma estratégia que cria uma árvore de decisão baseada na entrada de um conjunto de dados com seus respectivos labels. Os resultados da execução do J48 podem ser visualizados na Figura 5, utilizou-se a configuração default da ferramenta Weka: número mínimo de objetos por folha = 2 e fator de confiança = 0.3. Figura 5: Resultados do método j48 Após a obtenção do resultado com a configuração default testou-se o J48 va- riando o atributo confidence factor. De acordo com o incremento ou decremento deste fator de confiança, pode-se obter uma árvore de decisão mais ou menos detalhada, uma vez que quando se diminui o fator de confiança se força uma poda maior na árvore, gerando consequentemente um modelo mais genérico, Figura 6. 6
  7. 7. Figura 6: Árvore gerada pela ferramenta Weka após a execução do J48. A Figura 7 a seguir mostra os resultados da variação do confidence factor e sua influência direta na qualidade de classificação do J48. 69 70 71 72 73 74 75 76 0 0.2 0.4 0.6 quantidade de instâncias corretamente classificadas (%) valordoconfidencefactor Figura 7: Representação do crescimento da qualidade de classificação em função do confidence factor. 7
  8. 8. Analizando o gráfico da Figura 7, pode-se observar que o fator de confiança igual a 0.3 definido por default não convergia para o pior caso de classifica- ção, mas também não era o ideal para o J48, ao decrementá-lo observou-se que a quantidade de instâncias corretamente classificadas aumentou, entretanto, a partir do momento exato em que o confidence factor é igual 0.2, a qualidade de classificação se mantém constante (75.5245%). Não se pode afirmar mais a respeito de maneira empírica devido há uma limitação na ferramenta Weka (quando se atribui valores muito pequenos ao confidence factor, aparece a se- guinte mensagem de erro: Problem evaluating classifier), mas há uma possibi- lidade de o limite da qualidade de classificação manter-se constante quando o fator de confiança tende a zero. 2.1.4 Comparação entre as estratégias utilizadas Ao se comparar os resultados obtidos pelas três estratégias abordadas para clas- sificação da base, se observou que globalmente o método com melhor desempe- nho foi o J48 que classificou corretamente 216 instâncias e incorretamente 70 (utilizando confidence factor igual a 0.2), em seguida o melhor classificador para a base foi o IBK com k igual a 4 que classificou corretamente 213 instâncias e 73 de forma incorreta, e por último o Nayve Bayes com o pior desempenho, obteve 205 instâncias classificadas de maneira correta e 85 incorreta. Figura 8. Figura 8: Desempenho global dos classificadores Contudo, foi observado que localmente essa classificação dos classificadores não se repete, pois analizando de forma isolada a classe no-recurrence-events, nota-se que o IBK classificou corretamente 194 instâncias pertecentes a esta classe, enquanto o J48 classificou 191 corretamente e seguido pelo Nayve Bayes que de maneira correta classificou 180 instâncias dessa classe. Este tipo de observação também é válida referente a classe recurrence-events. Figura 9. 8
  9. 9. Figura 9: Desempenho local dos classificadores em relação a classe no- recurrence-events 2.2 Associação Pode ser definida como a tarefa de extrair regras de associação que representam padrões entre itens de uma aplicação, com certa frequência [1]. 2.2.1 Apriori É uma estratégia que parte da seguinte ideia: se um padrão de tamanho k não é frequente, então seu super-padrão de tamanho k+1 também não será. Primeiramente buscou-se utilizar o Modelo Suporte/Confiança, com suporte mínimo igual a 0.5 e confiança igual a 0.9. As três melhores regras geradas por esse método foram: • R1: inv−nodes = 0−2, irradiat = no, Class = no−recurrence−events ⇒ node − caps = no confiança:(0.99) • R2: inv − nodes = 0 − 2, irradiat = no ⇒ node − caps = no confi- ança:(0.97) • R3: node−caps = no, irradiat = no, Class = no−recurrence−events ⇒ inv − nodes = 0 − 2 confiança:(0.96) O Modelo Suporte/Confiança gera um número grande de regras de associa- ção, e que muitas vezes são redundantes, óbvias e até contraditórias, não sendo interessante ao usuário. Para resolver esse problema, outras medidas de inte- resse são utilizadas para se definir quais regras são de fato relevantes ao usuário [3]. Por meio da medida Lift é possível verificar o quanto mais frequente é o con- sequente quando seu antecedente ocorre, se para uma regra tem-se Lift=1, então o antecedente e o consequente desta regra são independentes, e para minMetric 9
  10. 10. Lift > 1, quanto maior o Lift, mais relevante será a regra. Para o experimento, foi definido minMetric do Lift=1.1 e a seguir as três melhores regras extraídas: • R4: inv − nodes = 0 − 2 ⇒ node − caps = no, irradiat = no conf:(0.83) lift:(1.26) • R5: node − caps = no, irradiat = no ⇒ inv − nodes = 0 − 2 conf:(0.94) lift:(1.26) • R6: node − caps = no ⇒ inv − nodes = 0 − 2, irradiat = no conf:(0.8) lift:(1.25) Da regra R4, concluiu-se que os itens inv−nodes = 0−2 e node−caps = no, irradiat = no possuem dependência positiva (o suporte real da regra é 1.26 vezes maior que o suporte esperado). O mesmo raciocínio serve para as regras R5 e R6. Uma outra medida explorada foi a Rule Interest (RI) ou leverage, que indica a diferença entre o suporte real e o suporte esperado de uma regra de asso- ciação. Esta medida varia entre -0.25 e 0.25, quanto maior este valor, mais interessante será a regra. Assim como a medida Lift, o RI verifica a dependên- cia do consequente em relação ao seu antecedente, portanto, uma outra medida (Conviction) será utilizada para verificar se de fato a regra obtida utilizando essas duas medidas é relevante. Os resultados da utilização do RI e verificação com minMetric do Conviction igual a 0.9 são detalhados abaixo: • R7: inv − nodes = 0 − 2 ⇒ node − caps = no, irradiat = no conf:(0.83) lift:(1.26) < lev:(0.13)> conv:(1.97) • R8: node − caps = no, irradiat = no ⇒ inv − nodes = 0 − 2 conf:(0.94) lift:(1.26) < lev:(0.13)> conv:(4) • R9: inv − nodes = 0 − 2 ⇒ node − caps = no conf:(0.94) lift:(1.22) <lev:(0.12)> conv:(3.67) A partir dessas novas três melhores regras geradas observou-se que após a utilização do RI e a verificação de convicção, R7=R4, R8=R5 e a regra R9 tomou a posição que era de R6, ou seja, R4 e R5 encontradas na extração anterior de fato eram regras relevantes, enquanto que R6 nem tanto, por esse motivo R6 sai do conjunto das melhores três regras e dá lugar a R9 que possui uma convicção melhor. 2.3 Clusterização É o processo de agrupamento de um conjunto de objetos dentro de classes de objetos similares [1]. Para a execução deste experimento, o atributo classe foi desconsiderado, porém utilizado posteriormente para verificar a qualidade da clusterização obtida. 2.3.1 SimpleKmeans É um algoritmo baseado na ideia do K-means, onde se tem como entrada o parâmetro k, que diz respeito ao número de clusters que o método irá gerar. Para a primeira execução deste algoritmo foi-se utilizado k=2 e Distância Euclidiana como parâmetros, os resultados pode ser vistos na Figura 10. 10
  11. 11. Figura 10: Centroides dos clusters para o SimpleKmeans. Por meio da Figura 10, pode-se perceber que alguns atributos não distin- guiram bem os clusters, por exemplo o atributo menopause que teve seu valor premeno pertencente tanto ao cluster 0 como ao 1. Dessa forma, 25.5245% das instâncias não foram corretamente clusterizadas. Apesar de a base de dados já possuir dois grupos definidos (no-recurrence-events e recurrence-events), testou- se a variância do K a fim de se obter uma possível melhoria na clusterização. 1 1.5 2 2.5 3 3.5 4 80 100 120 140 160 valor do parâmetro K instânciasincorretamenteclusterizadas Figura 11: Qualidade da clusterização em função da variância do K. Os resultados da Figura 11 mostram que exatamente dois clusters clusteri- zam melhor as instâncias, todos os valores de K=2 clusterizam pior que K=2, e a medida que se aproxima de K=2, a clusterização melhora. 2.3.2 DBSCAN É um método baseado em densidade e não utiliza o número de clusters desejados como parâmetro de entrada. O parâmetro de entrada epsilon significa o raio de vizinhança com o qual o algoritmo irá trabalhar e minPoints, o número 11
  12. 12. instâncias não clusterizadas epsilon minPoints 258 0.9 2 286 (todas) 0.9 3 286 (todas) 0.9 4 286 (todas) 0.9 6 1 2 2 1 2 3 1 2 4 1 2 6 Tabela 2: Variação dos parâmetros epsilon e minPoints. mínimo de pontos necessários para se ter uma região densa. O experimento foi executado inicialmente com o epsilon=0.9 e minPoints=6 que são definidos por padrão na ferramenta Weka. Posteriormente, encetou-se com limite inferior da variação, minPoints=2, porque baseado no conhecimento prévio da existência de duas classe na base de dados, intuitivamente o valor 2 iria resultar em uma clusterização melhor, e com limite superior o valor 6, porque para valores maiores que 6 o resultado era constante. A partir da Tabela 2 pode-se notar que com o parâmetro epsilon=0.9 os resultados são ruins, pois em todos os casos (com exceção do minPoints igual a 2) de variação do minPoints o algoritmo não consegue clusterizar nenhuma instância. Porém, com o valor de epsilon alterado para 2, os resultados já melhoram bastante, apenas uma instância não consegue ser clusterizada e isso se repete para todas as variações de minPoints. Após identificar um epsilon que permita uma boa clusterização, verificou-se a qualidade desta tarefa. De início utilizou-se o que se tinha de melhor até então (epsilon=2) e foi-se variando os valores de minPoints. O resultado desse experimento foi que não importa o valor que minPoints assumisse, sempre 85 instâncias eram clusterizadas incorretamente. Uma nova tentativa de calibração de parâmetros foi feita, desta vez descon- siderando a intuição de o valor 2 ser o limite inferior das variações de epsilon. Após alguns testes o epsilon foi calibrado para 1.5, por um lado, esse novo va- lor aumentou a qualidade de clusterização das instâncias (Figura 12), mas por outro, decrementou o número de instâncias clusterizadas (Figura 13). Apesar destes resultados, não foi possível saber se a qualidade de clusterização aumen- tou realmente ou se clusterizou-se com mais qualidade instâncias mais fáceis e as mais difíceis de serem clusterizadas simplesmente não foram utilizadas, como se o algoritmo DBSCAN decrementasse sua possibilidade de errar com esse novo valor de epsilon. 12
  13. 13. 2 3 4 5 6 7 50 60 70 80 valor do minPoints instânciasincorretamenteclusterizadas Figura 12: Qualidade da clusterização com epsilon fixo em 1.5. 2 3 4 5 6 7 10 20 30 40 50 60 valor do minPoints instânciasnãoclusterizadas Figura 13: Instâncias não clusterizadas com epsilon fixo em 1.5. 3 Conclusão A realização de experimentos por meio das tarefas de mineração de dados foi interessante, uma vez que foi possível observar como de fato a classificação, a extração de regras de associação e a clusterização funcionam com bases reais. Apesar de não se possuir um conhecimento adequado sobre a ferramenta Weka que permitisse um aproveitamento melhor durante as análises de resultados, acredito que o resultado de aprendizagem sobre mineração de dados em geral foi positivo. Sobre os resultados dos experimentos, a tarefa que obteve um êxito maior 13
  14. 14. em relação a base breast cancer foi a tarefa de classificação, além de classificar bem as instâncias, observou-se uma flexibilidade interessante em relação à clas- sificação global e local de tal maneira que o usuário pode obter resultados bons referentes a apenas uma classe ou as duas, ou seja, em função da perspectiva do usuário sobre a base de dados. Após todos os experimentos, concluiu-se principalmente que os parâmetros de entrada utilizados nas estratégias é um fator determinante para o sucesso destas. Durante os experimentos, foi observado que se faz necessário um traba- lho exaustivo na calibragem dos parâmetros até que se obtenha um resultado de qualidade, nesse sentido, uma ideia para automatizar esse processo seria a im- plementação de uma meta-heurísitca que recebesse como entrada, um problema: a base de dados, o algoritmo e seu parâmetros, e retornasse uma solução: um conjunto de parâmetros que melhor atendesse às necessidades do algoritmo em função da base. 4 Referências Bibliográficas - [1] Jiawei Han. 2005. Data Mining: Concepts and Techniques. Morgan Kauf- mann Publishers Inc., San Francisco, CA, USA. [2] Website: http://archive.ics.uci.edu/ml/datasets/Breast+Cancer. Acessado em 30/04/2014. [3] GONÇALVES, E. C. - “Regras de Associação e suas Medidas de Interesse Objetivas e Subjetivas” 14

×