• Nenhum resultado encontrado

Estudo comparativo de algoritmos exaustivos para mineração de padrões discriminativos em bases de dados biomédicas

N/A
N/A
Protected

Academic year: 2021

Share "Estudo comparativo de algoritmos exaustivos para mineração de padrões discriminativos em bases de dados biomédicas"

Copied!
77
0
0

Texto

(1)

MAURÍCIO ALDENOR SOUZA DOS SANTOS

Estudo comparativo de algoritmos exaustivos para

mineração de padrões discriminativos em bases de dados

biomédicas

Universidade Federal de Pernambuco posgraduacao@cin.ufpe.br www.cin.ufpe.br/~posgraduacao

Recife

2017

(2)

Estudo comparativo de algoritmos exaustivos para mineração de padrões discriminativos em bases de dados biomédicas

Este trabalho foi apresentado à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre Profissional em Ciência da Computação.

ORIENTADOR: Prof. Renato Vimieiro

Recife

2017

(3)

Catalogação na fonte

Bibliotecária Monick Raquel Silvestre da S. Portes, CRB4-1217

S237e Santos, Maurício Aldenor Souza dos

Estudo comparativo de algoritmos exaustivos para mineração de padrões discriminativos em bases de dados biomédicas / Maurício Aldenor Souza dos Santos. – 2017.

76 f.:il., fig., tab.

Orientador: Renato Vimieiro.

Dissertação (Mestrado) – Universidade Federal de Pernambuco. CIn, Ciência da Computação, Recife, 2017.

Inclui referências e apêndice.

1. Mineração de dados. 2. Padrões discriminativos. I. Vimieiro, Renato (orientador). II. Título.

006.312 CDD (23. ed.) UFPE- MEI 2017-176

(4)

Estudo comparativo de algoritmos exaustivos para mineração de padrões

discriminativos em bases de dados biomédicas

Dissertação apresentada ao Programa de Pós-Graduação em Ciência da Computação da Universidade Federal de Pernambuco, como requisito parcial para a obtenção do título de Mestre Profissional em 20 de junho de 2017.

Aprovado em:____/ _____/ ______

_____________________________________ Orientador: Prof. Renato Vimieiro

BANCA EXAMINADORA

___________________________________________ Prof. Ricardo Bastos Cavalcante Prudêncio

Centro de Informática / UFPE

___________________________________________ Dr. Sérgio Mariano Dias

SERPRO-MG

___________________________________________ Prof. Sérgio Ricardo de Melo Queiroz

Centro de Informática / UFPE

Recife

2017

(5)
(6)

Agradeço primeiramente a DEUS, por estar sempre ao meu lado.

Agradeço imensamente a minha esposa Joyna Castro pelo amor, carinho, atenção e apoio, sempre estando ao meu lado em todos os momentos, pelos conselhos, inspirações e mesmo nas adversidades sendo um grande exemplo de humanidade.

Agradeço aos meus filhos queridos João Maurício e Juliana Fernanda que são minhas alegrias e que souberam pacientemente entender o motivo de muitas recusas ao lazer em companhia da família.

Agradeço ao meu orientador Prof. Renato Vimieiro que soube entender meus problemas pessoais e minhas dificuldades e dúvidas durante a pesquisa. Sempre esteve disponível a esclarecer e me orientar por meio de sua experiência. Muito obrigado pela contribuição e paciência.

Agradeço a minha sogra Maria Arlete de Castro, por torcer por mim e pela família, além de toda ajuda mesmo nos momentos difíceis.

Agradeço aos meus pais Milton dos Santos e Maria de Jesus que de alguma forma contribuíram para conclusão desse trabalho.

Agradeço ao Tarcísio Pontes que me esclareceu dúvidas sobre as bases de dados e parâmetros nos experimentos.

Finalmente, agradeço a todos que me ajudaram direta ou indiretamente para que eu chegasse ao final do trabalho com sucesso.

(7)

“Sei que podes fazer todas as coisas; nenhum dos teus planos pode ser frustrado”.

(8)

conhecimento em bases de alta dimensionalidade. Essa característica é muito comum em bases de domínio biomédico. Uma técnica utilizada para extração do conhecimento é chamada de mineração de Padrões Discriminativos (PDs) que objetiva encontrar informações interessantes que ocorram com frequência desproporcional em uma classe (atributo) em relação as outras. A maioria dos algoritmos exaustivos para mineração de PDs tem sidos propostos com o objetivo de solucionar problemas de dados tradicionais de baixa dimensionalidade. Dessa maneira se tornou criticamente necessário investigar se esses algoritmos podem ser aplicados a dados biomédicos de alta dimensionalidade. Esse trabalho tem como objetivo comparar o comportamento das abordagens exaustivas dos PDs em bases reais comuns e de alta dimensionalidade. Para isso experimentos foram realizados com os algoritmos APRIORI-SD, SD-Map e RCS, utilizando bases da UCI (Machine Learning Repository) e biomédicas de microarrays. Os experimentos revelaram que os algoritmos não são os mais apropriados as bases biomédicas de alta dimensionalidade, entretanto para um algoritmo houve algum retorno de PD e dois algoritmos tiveram bons desempenhos em bases tradicionais de baixa dimensionalidade.

Palavras-chave: Padrões Discriminativos. Alta Dimensionalidade. Algoritmos Exaustivos. Descoberta de Conhecimento.

(9)

knowledge in high dimensional databases. This feature is very common on biomedical domain bases. A technique used to extract knowledge is called Discriminative Patterns mining (DPs) that aims to find interesting information that occurs disproportionately in one class (attribute) in relation to the others. Most of the exhaustive algorithms for DP mining have been proposed with the aim of solving traditional low-dimensional data problems. In this way it has become critically necessary to investigate whether these algorithms can be applied to high dimensional biomedical data. The objective of this work is to compare the behavior of the exhaustive approaches of PDs in common and high dimensionality real bases. For this purpose experiments were performed using the APRIORI-SD, SD-Map and RCS algorithms, using the bases of the UCI (Machine Learning Repository) and biomedical microarrays. The experiments revealed that the algorithms are not the most appropriate biomedical bases of high dimensionality, However for an algorithm there was some return of PDs and two algorithms had good performances in traditional bases of low dimensionality.

Keywords: Discriminative Patterns. High Dimensionality. Exhaustive Algorithms. Knowledge Discovery in Databases.

(10)

Figura 2.2 – Etapas da técnica de análise de expressão gênica de microarrays ... 20

Figura 3.1 – Etapas do processo de descoberta de conhecimento em base de dados ... 21

Figura 5.1 – Resumo dos aspectos 𝑡(ec), 𝑡’(ec) e b(ec) para UCI (Seção 01)... 40

Figura 5.2 – Resumo dos aspectos 𝑞(eq), 𝑞’(eq) e b(eq) para UCI (Seção 01) ... 42

Figura 5.3 – Resumo dos aspectos 𝑡(ec), 𝑡’(ec) e b(ec) para UCI (Seção 02) ... 44

Figura 5.4 – Resumo dos aspectos 𝑡(ec), 𝑡’(ec) e b(ec) para BIO (Seção 02) ... 45

Figura 5.5 – Resumo dos aspectos 𝑞(eq), 𝑞’(eq) e b(eq) para UCI (Seção 02) ... 47

(11)

Tabela 4.2 – Universo de itens i ∈ I em D. ... 25

Tabela 4.3 – Algumas medidas de avaliação populares para mineração de PDs. ... 27

Tabela 4.4 – Exemplo de números de dependentes. ... 29

Tabela 5.1 – Descrição das 10 bases BIO. ... 35

Tabela 5.2 – Descrição das 20 bases UCI. ... 36

Tabela 5.3 – Descrição das 20 bases UCI usadas nos experimentos após pré-processamento. 37 Tabela 5.4 – Descrição das 10 bases BIO usadas nos experimentos após pré-processamento. 38 Tabela 5.5 – Número de experimentos convergidos ec (Seção 01)... 39

Tabela 5.6 – Número de experimentos com retorno de PDs eq (Seção 01). ... 41

Tabela 5.7 – Número de experimentos convergidos ec (Seção 02)... 43

Tabela 5.8 – Número de experimentos com retorno de PDs eq (Seção 02) ... 46

Tabela 5.9 – Classificação das bases de dados de acordo com os resultados dos experimentos49 Tabela A.01 – Relação das características das bases UCI para APRIORI-SD com tempo (Seção 01) ... 60

Tabela A.02 – Relação das características das bases UCI para APRIORI-SD com WRAcc (Seção 01) ... 61

Tabela A.03 – Relação das características das bases UCI para SD-Map com tempo (Seção 01)62 Tabela A.04 – Relação das características das bases UCI para SD-Map com WRAcc (Seção 01) ... 63

Tabela A.05 – Relação das características das bases UCI para RCS com tempo (Seção 01) .. 64

Tabela A.06 – Relação das características das bases UCI para RCS com WRAcc (Seção 01) 65 Tabela A.07 – Relação das características das bases UCI para APRIORI-SD com tempo (Seção 02) ... 66

Tabela A.08 – Relação das características das bases UCI para APRIORI-SD com WRAcc (Seção 02) ... 67

Tabela A.09 – Relação das características das bases UCI para SD-Map com tempo (Seção 02)68 Tabela A.10 – Relação das características das bases UCI para SD-Map com WRAcc (Seção 02) ... 69

Tabela A.11 – Relação das características das bases UCI para RCS com tempo (Seção 02) .. 70 Tabela A.12 – Relação das características das bases UCI para RCS com WRAcc (Seção 02) 71

(12)

Tabela A.14 – Relação das características das bases BIO para SD-Map, com tempo (Seção 01) ... 72 Tabela A.15 – Relação das características das bases BIO para RCS com tempo (Seção 01) .. 73 Tabela A.16 – Relação das características das bases BIO para APRIORI-SD com tempo (Seção 02) ... 73 Tabela A.17 – Relação das características das bases BIO para APRIORI-SD com WRAcc (Seção 02) ... 74 Tabela A.18 – Relação das características das bases BIO para SD-Map com tempo (Seção 02)74 Tabela A.19 Relação das características das bases BIO para SD-Map com WRAcc (Seção 02)75 Tabela A.20 – Relação das características das bases BIO para RCS com tempo (Seção 02) .. 75 Tabela A.21 – Relação das características das bases BIO para RCS com WRAcc (Seção 02) 76

(13)

DNA Ácido Desoxirribonucleico

DNAc Ácido Desoxirribonucleico Complementar

RNA Ácido Ribonucleico

RNAm Ácido Ribonucleico mensageiro

KDD Knowledge Discovery in Databases

TP Verdadeiros Positivos

FP Falsos Positivos

TL Tempo Limite

FM Falta de Memória

(14)

1. Introdução ... 14

1.1 Objetivos ... 17

1.2 Metodologia ... 17

1.3 Organização da Dissertação ... 18

2. Expressão Gênica e Microarrays ... 19

3. Mineração de Dados ... 21

3.1 Mineração de conjuntos de itens frequentes ... 22

4. Padrões Discriminativos ... 24

4.1 Medidas de Avaliação ... 26

4.2 Classificação dos Algoritmos ... 27

4.2.1 Local ou Global ... 27 4.2.2 Top-k ou Limiares ... 28 4.2.3 Exatos ou Heurísticos ... 28 4.3 Discretização ... 29 4.4 Algoritmos Exaustivos ... 29 4.4.1 APRIORI-SD ... 30 4.4.2 SD-Map ... 31 4.4.3 RCS ... 32

5. Experimentos, resultados e discussão ... 35

5.1 Bases de Dados ... 35

5.2 Pré-processamento ... 36

5.3 Processamento ... 38

5.4 Análise dos resultados ... 39

5.5 Classificação das bases de dados ... 48

5.6 Discussões ... 50

6. Considerações Finais ... 52

Referências ... 53

(15)

1. Introdução

Atualmente, nossa sociedade convive com muitos dados produzidos diariamente. Contudo, a sociedade não deve limitar-se a produção deles, mas utilizá-los para benefícios econômicos e sociais. Sendo os computadores os grandes responsáveis pela produção, coleta, armazenamento e processamento de diversos tipos de dados.

Segundo estudos da EMC Corporation (2012) e Hilbert e López (2011), a quantidade de dados existentes no mundo cresce de forma exponencial, fazendo com que tenhamos uma concentração muito elevada, chegando a 130 exabytes de dados no mundo em 2010. A expectativa é que tenhamos 40 trilhões de gigabytes em 2020, ou seja, 5.200 gigabytes para cada pessoa no mundo.

Alguns termos são usados para se referir as grandes concentrações de dados e entre esses termos está o big data. Por definição (Devenport, 2014), o termo trata de dados que são muito grandes serem armazenados e/ou para caberem em bases de dados de modelo tabular. Além de possuírem um fluxo contínuo para ficarem em bases estáticas. Assim, seu grande desafio está na falta de estrutura para a grande quantidade de dados.

Uma das possibilidades que podem ser exploradas no big data é na área biomédica, pois existe um grande volume de dados com características especificas. Como exemplo, podemos citar o Centro Nacional de Informações Biotecnológicas nos Estados Unidos1 (NCBI). Ele concentra pesquisas em biologia molecular computacional, armazenando bases de dados de genomas (GenBank DNA), de modelagem molecular de proteínas em 3D, coleção de sequências genéticas humanas únicas (UniGene) e o projeto de anatomia genômica do câncer.

A alta dimensionalidade é uma característica comum em bases biomédicas, ou seja, esses dados possuem um número elevado de atributos. Um importante exemplo são os dados provenientes da técnica de microarray (microarranjo) que é utilizada para análise de expressão gênica (processo que possibilita a medida de expressão de milhares de genes simultaneamente). Segundo Esteves (2007), esses dados são importantes para justificar ou levantar novas hipóteses biológicas acerca dos mecanismos de transformação celular entre os diversos tipos de tecidos estudados.

(16)

Com o avanço do uso da técnica de microarray, o volume de dados resultante vem crescendo exponencialmente, tornando os meios tradicionais de armazenamento, análise e comparação desses dados limitados. Portanto, há uma rica informação contida nesses dados e sua implicação biológica requer novas tecnologias para sua análise. Sendo importante para uma melhor interpretação desses dados métodos, técnicas e algoritmos computacionais.

O resultado de necessidades como essas uniu medicina, biologia e informática, criando uma nova área chamada de bioinformática (Doolittle, 2010). A bioinformática surgiu na década de 1990, com o advento dos sequenciadores automáticos de DNA. Havendo assim uma grande quantidade de sequências a serem armazenadas e analisadas, tornando importantíssima a utilização da computação para resultados mais eficientes.

Baldi e Brunak (2001) afirmam que consiste na utilização de técnicas e ferramentas de computação para resolução de problemas da biologia. Dentre as diversas áreas da computação que são exploradas pela bioinformática está a Inteligência Artificial (IA).

Uma subárea da IA é chamada de descoberta de conhecimento em base de dados ou KDD (Knowledge Discovery in Databases). Segundo Fayyad et al. (1996) e Goldshimidt e Passos (2005), ela vem para solucionar o problema de análise de grandes volumes de dados, que se tornaram humanamente inviáveis sem o uso de ferramentas computacionais apropriadas. Assim, pode-se extrair conhecimento desses dados que auxiliam na tomada de decisão em um domínio. Em dados biomédicos torna-se possível tomar decisões de maneira confiável, inteligente e segura a fim de minimizar riscos. Como ocorreu em pacientes com câncer e em resultados de exames de diagnóstico encontrados em Milioli et al. (2015) e Mohammad et al. (2014).

O KDD é dividido em etapas e a efetiva descoberta de conhecimento está centrada na etapa de mineração de dados. Definida como um instrumento para visualizar informações úteis não visíveis através de técnicas convencionais de busca em base de dados ou em técnicas manuais.

Uma das técnicas do KDD é chamada de mineração de padrões discriminativos (PDs), que tem como alvo encontrar conjunto de padrões de interesses que ocorram com frequência desproporcional em uma classe (atributo) em relação a outras. Na área da bioinformática Li e Wong (2002) e Liu et al. (2015), mostram a comparação de classes de células saudáveis e doentes, que podem trazer informações que ajudem no tratamento e

(17)

diagnósticos de doenças como o câncer. Segundo Liu et al. (2015) uma das mais importantes tarefas da mineração de dados é encontrar características que diferencie dois ou mais grupos.

Além da bioinformática, as técnicas de mineração de PDs têm sido usadas para busca de conhecimento em diversas áreas como: marketing (Gamberger; Lavrac, 2002), medicina (Kralj et al., 2005; Herrera et al., 2010), e e-learning (Romero et al., 2009), contudo um dos desafios na busca desse conhecimento está em analisar bases de dados de alta dimensionalidade. Entre os problemas específicos para esse desafio estão:

a) Adaptação: os PDs possuem parâmetros, condições, definições e restrições, porém isso não quer dizer que as mesmas se adéquem plenamente aos dados de alta dimensionalidade. Exemplificando, o parâmetro suporte mínimo é complexo de ser definido, pois se for muito pequeno não representa uma limitação útil, se for muito grande pode não retornar nenhum PD. Sendo necessário, adicionalmente, conhecimento do domínio.

b) Descarte de dados significativos: frequentemente são feitas adaptações nos PDs para reduzir o espaço de busca e custo computacional, descartando dados. Esses dados podem ser muito importantes para soluções de problemas da biologia. Exemplificando, genes que são considerados de pouca significância, são descartados, porém eles podem ser úteis para diferentes tipos de tecidos.

Existem diversos algoritmos usados para mineração de PDs e uma forma de classificá-los é quanto a busca, podendo ser heurísticos ou exatos (Liu et al., 2015). Os heurísticos não garantem o retorno da melhor solução, mas possuem menor custo computacional. Os exatos garantem soluções ótimas e precisas, porém possuem alto custo computacional.

Então, essas variedades de tipos de bases de dados de alta dimensionalidade e de algoritmos PDs ocasionam o problema de identificação de qual algoritmo se adéqua melhor a esse tipo de dado. Acrescenta-se a isso que esses algoritmos não foram feitos para tratar alta dimensionalidade.

Entre os estudos relacionados a essa problemática está o de Liu et al. (2015) que faz uma revisão ao uso de PDs para resolver problemas em bioinformática. Citando como vários algoritmos para PDs resolvem alguns problemas da bioinformática com grande eficácia. Entretanto essa revisão, mostra que a maioria dos algoritmos exaustivos foram submetidos a bases com no máximo 445 atributos, ou seja, não trabalhando com dimensionalidades na ordem dos milhares, e em especial, com bases de microarrays.

(18)

Outro estudo é o de Novak et al. (2009), que comparou os padrões discriminativos em nível de terminologia, definições, algoritmos e heurísticas unificando-os em um framework. Adicionalmente faz uma revisão sobre os métodos usados nos PDs. Entretanto, assim como o estudo de Liu et al. (2015) não há comparativo quantitativo entre os PDs. Com questões como qual algoritmo utilizou mais memória, ou mais tempo de processamento, ou qual retornou mais padrões e a qualidade desses padrões.

No estudo de Fang et al., (2012) é trabalhado algoritmos exaustivos em bases de microarrays (5981 atributos), mas submete seus experimentos em uma única base real e utiliza apenas os parâmetros suporte (valores baixos) e diferença entre suportes.

Baseado nesses pontos importantes em aberto na literatura e a importância dos PDs para descoberta de conhecimento em base de dados. Esse trabalho tenta responder a questão: “Qual o comportamento de algoritmos discriminativos exatos em base de dados biomédicas de alta dimensionalidade?”.

1.1 Objetivos

De forma geral o trabalho visa comparar e avaliar, as técnicas de mineração de padrões discriminativos exatas em bases comuns de baixa dimensionalidade e biomédicas de alta dimensionalidade (microarrays). Particularmente utilizando bases consolidadas reais e parâmetros populares. Assim espera-se contribuir com a descoberta de conhecimento relevante em bases de dados.

De forma específica visa comparar e avaliar o desempenho computacional e a qualidade dos padrões encontrados em algoritmos exaustivos para PDs. Dessa maneira verificar os pontos fortes e fracos de cada abordagem. Complementando as pesquisas de Liu et al. (2015) e Novak et al. (2009). Contribuindo com a descoberta de conhecimento em bioinformática e em problemas de alta dimensionalidade.

1.2 Metodologia

A comparação se deu através de experimentos quantitativos utilizando as ferramentas KEEL (Alcalá-Fdez et al., 2009) e CAREN (Azevedo, 2003) que possuem a implementação dos algoritmos escolhidos. Foi utilizado as medidas de avaliação mais populares para PDs para cada ferramenta.

Os algoritmos foram testados utilizando bases biomédicas (microarrays) provenientes de pesquisas reais encontradas no pacote datamicroarray (Remey, 2016) e para confrontar os

(19)

resultados foram utilizados bases do repositório UCI (UCI, 2016). Os resultados de cada experimento foram comparados em relação ao tempo e a qualidade dos PDs retornados. Os

resultados dos experimentos encontram-se no Apêndice e em

http://github.com/aldenor23/comp. 1.3 Organização da Dissertação

Os próximos capítulos estão organizados da seguinte forma:

No capítulo 2 são descritos os conceitos básicos sobre expressão gênica e microarrays. No capítulo 3 são apresentados as definições básicas sobre descoberta de conhecimento em base de dados e técnicas de mineração de dados.

No capítulo 4 são apresentados os principais conceitos da área de padrões discriminativos, além dos algoritmos utilizados nos experimentos.

A metodologia realizada nos experimentos com os algoritmos discriminativos exatos, as bases de dados utilizadas nos testes, os resultados e a discussão em relação a esses resultados obtidos serão apresentados no capítulo 5.

(20)

2. Expressão Gênica e Microarrays

Em geral, todas as células do nosso corpo contêm um conjunto idêntico de cromossomos e portanto de genes. Mas em cada tipo de células só alguns desses genes estão ativos, ou seja, são expressos, levando à produção de um conjunto de proteínas específicas de certo tipo de células. A expressão gênica é o termo utilizado para descrever a transcrição da informação do DNA (Figura 2.1) para as moléculas de mRNA (RNA mensageiro), que são depois traduzidas em proteínas, responsáveis por executar várias funções nas células. Estudando o tipo e a quantidade de mRNA produzidas pelas células, os cientistas identificam quais os genes expressos e percebem como as células reagem a variações das suas próprias necessidades (oxigênio, nutrientes e entre outros).

Figura 2.1 – Processo geral de transcrição.

Fonte: Adaptado do Instituto Nacional de Pesquisa do Genoma Humano - NIH2

A expressão dos genes resulta de processos complexos e é muito regulada, permitindo que a célula responda de forma dinâmica, tanto aos estímulos do ambiente, como a alterações das suas próprias necessidades (Koutsos et al., 2010).

Uma técnica para análise de expressão gênica conhecida como microarrays, ou “chips de DNA”, conduziu a um extraordinário salto quantitativo, permitindo estudar simultaneamente milhares de genes, num único experimento de execução simples, rápida e eficiente. O princípio básico dessa técnica consiste na comparação de amostras. Por exemplo, para estudar o processo de envelhecimento, comparam-se tecidos jovens com envelhecidos;

(21)

para perceber a evolução, comparam-se organismos simples com complexos; para estudar como a expressão gênica se modifica em situações patológicas comparam-se tecidos saudáveis com patológicos.

O microarray consiste basicamente na decomposição de sequências de cDNA (DNA complementar) ou oligonucleotídeos correspondentes ao genes cuja expressão deve ser analisada. Sondas são fixadas de uma maneira ordenada (arrays) a um suporte sólido que pode ser uma lâmina de vidro ou uma membrana de nylon que é hibridizado (misturado) contra cDNAs marcados (radiotivamente ou florescência). Após a marcação a lâmina ou membrana passa por um processo de digitalização. Os dados originais de um experimento de microarray são imagens que representam os níveis de expressão gênica fixadas nas sondas. A Figura 2.2 ilustra a técnica de microarray. A análise computacional entra através do software que gera valores agregados como intensidade da florescência ou da radioatividade, além de dados estatísticos das amostras (Shena et al., 1995; Souto et al., 2003; Esteves, 2007).

Figura 2.2 – Etapas da técnica de análise de expressão gênica de microarrays.

Fonte: Adaptado do Instituto Nacional de Pesquisa do Genoma Humano - NIH3

A consequência da técnica de microarray é uma enorme quantidade de dados de alta dimensionalidade. Assim os métodos tradicionais para identificação das diferenças na expressão gênica se tornam menos eficientes nesses dados. Por isso, se tornou importante o uso de técnicas avançadas de mineração de dados para realizar a análise comparativa entre as expressões gênicas. Considerando, então, o objetivo de classificação e distinção (discriminativo) entre duas classes diferentes nas técnicas de expressão gênica, a mineração de padrões discriminativos pode ser usada para resolver o problema.

(22)

3. Mineração de Dados

A descoberta de conhecimento em base de dados (KDD), segundo Fayyad et al. (1996), é definida como um “processo, não trivial, de extração de informações implícitas, previamente desconhecidas e potencialmente úteis a partir de conjuntos de dados”. A Figura 3.1 resume as etapas que são divididas da seguinte maneira:

1) Entender o domínio da aplicação, e definir o objetivo da aplicação, ou seja, definir “o que fazer”;

2) Definir exemplos e variáveis que serão aplicadas no processo para a descoberta de conhecimento;

3) Limpeza e pré-processamento: define o subconjunto de dados onde será aplicado o processo de descoberta de conhecimento. São usadas funções para limpeza de dados (e.g. inconsistências e valores não pertencentes ao domínio);

4) Projeção e Redução de dados: devido a restrições de espaço, memória ou tempo de processamento, pode inviabilizar a utilização de algoritmos de extração de padrões, sendo necessária a aplicação de métodos de redução de dados (como a eliminação de atributos desnecessários) antes de iniciar a busca;

5) Mineração de Dados: é a etapa onde ocorre a descoberta de conhecimento propriamente dita; é onde se analisa uma grande quantidade de dados para chegar a informações úteis;

6) Avaliação: se avalia a real usabilidade do conhecimento extraído. Figura 3.1 – Etapas do processo de descoberta de conhecimento em base de dados.

(23)

Há quatro grandes grupos de técnicas de mineração de dados (Lucchese, 2008): 1) Modelagem Preditiva: visa à construção de um modelo preditivo, podendo ser

dividida em classificação (valor discreto) e regressão (valor contínuo). Como exemplo, detectar se um paciente tem uma doença específica com base no seu histórico médico é uma tarefa de classificação, enquanto que a previsão do tempo de amanhã com base em medições de tempo de hoje é uma tarefa de regressão. 2) Análise de Agrupamento: por meio do agrupamento de dados os clusters são

definidos baseados em medidas de similaridade entre classes (Goldschmidt e Passos, 2005). O que distingue o agrupamento da preditiva é que na primeira não há classes predefinidas, nem exemplos, os registros se agrupam com base na auto semelhança. Clusters podem ser usados para descoberta de padrões de relacionamentos como em Arefin et al. (2014).

3) Detecção de Anomalias (ou Desvios): na totalidade do contexto a identificação de registros que não são considerados normais, ou seja, não atendem ao padrão considerado normal (Boente et al., 2008). Podem ser usados na detecção de fraudes em cartões de crédito e seguros.

4) Descoberta de Associação (ou Análise de Associação): tem por objetivo encontrar relacionamentos ou padrões frequentes que ocorram em um conjunto de dados. São utilizados em transações de consumidores e na área biomédica.

A Descoberta de associação possui duas tarefas: (1) a identificação de padrões correlatos entre os dados, e (2) as regras geradas por esses dados. A primeira tarefa é também conhecida como mineração de conjuntos de itens frequentes (do inglês frequent itemset mining).

3.1 Mineração de conjuntos de itens frequentes

A técnica de mineração de conjuntos de itens frequentes é dívida em dois passos (Agrawal et al., 1993), onde primeiramente um conjunto de itens frequentes é criado, respeitando um valor mínimo de frequência para os itens. Após, as regras de associação são geradas pela mineração de conjunto. Para garantir resultados válidos, medidas de avaliação são utilizadas em cada regra produzida.

Uma regra de associação é uma regra definida na forma da implicação entre A → B, sendo A (antecedente) e B (consequente) conjuntos de itens. Esses conjuntos são chamados em inglês de itemsets. Para quantificar os conjuntos de itens frequentes são utilizadas duas medidas de avaliação chamadas de suporte e confiança (Agrawal et al., 1993).

(24)

O suporte indica a porcentagem de ocorrência concomitante dos conjuntos A e B na base de dados, sendo P a probabilidade da intersecção de A e B.

𝑆𝑢𝑝𝑜𝑟𝑡𝑒 (𝐴 → 𝐵) = 𝑃(𝐴 ∩ 𝐵) = 𝑛º 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑎çõ𝑒𝑠 𝑞𝑢𝑒 𝑐𝑜𝑛𝑡ê𝑚 𝐴 𝑒 𝐵 𝑛º 𝑡𝑜𝑡𝑎𝑙 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑎çõ𝑒𝑠

A confiança indica a porcentagem em que as transações contendo o conjunto A que também contêm o conjunto B.

𝐶𝑜𝑛𝑓𝑖𝑎𝑛ç𝑎 (𝐴 → 𝐵) = 𝑃(𝐴 ∪ 𝐵) 𝑃(𝐴) =

𝑛º 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑎çõ𝑒𝑠 𝑞𝑢𝑒 𝑐𝑜𝑛𝑡ê𝑚 𝐴 𝑒 𝐵 𝑛º 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑎çõ𝑒𝑠 𝑞𝑢𝑒 𝑐𝑜𝑛𝑡ê𝑚 𝐴

Exemplo: um supermercado registrou durante um determinado período de tempo 2000 consumidores, 400 clientes compraram pão, e desses que compraram pão, 100 compraram manteiga. Então o conjunto de itens frequentes será: se comprou pão (A) então comprou manteiga (B), com suporte de 100/2000 = 5% e confiança de 100/400 = 25%.

Outras linhas de pesquisas propõem novas interpretações para os conjuntos de itens frequentes, essa área se chama de mineração de padrões discriminativos (PDs), que no capítulo seguinte será apresentada mais detalhadamente.

(25)

4. Padrões Discriminativos

Uma abordagem para mineração de padrões é conceituada também como descoberta de regras descritivas supervisionadas (Novak et al., 2009), e formalizada e generalizada como descoberta de padrões discriminativos (Liu et al., 2015; García-Borroto et al., 2012; Dong e Bailey, 2012). Essa abordagem pode ser encontrada sobre diferentes nomes como: Emerging Patterns (padrões emergentes) (Dong e Li, 1999), Contrast Set (conjunto de contrastes) (Bay e Pazzani, 1999) e Subgroup Discovery (descoberta de subgrupos) (Klösgen, 2002). O objetivo principal dessa área é recuperar padrões fortemente ligados a uma classe e que sejam fracas nas demais classes.

Considere um conjunto de dados D que contenha um número de transações (exemplos) com duas classes onde D = D+∪ D-, onde D+ são as transações marcadas como positivas, ou

seja, o alvo das buscas, e D- são marcadas como negativas, as demais transações. Considere

também, o universo de todas as possibilidades de itens que ocorrem nessas transações como I = {i1, i2, ..., im}, onde cada item é composto por um par formado por sua identificação única

(atributo) e por um elemento de I (valor).

Considere um exemplo hipotético de uma aplicação de tratamento da doença de Lyme4 (doença transmitida para os humanos provenientes da picada de carrapatos infectados pela bactéria Borrelia burgdorferi) que possui o histórico de pacientes curados e pacientes não curados. A Tabela 4.1 mostra a base com as seguintes informações de cada paciente: sexo, sintoma(s), e tipo(s) de tratamento(s) adotado(s). Considerando que o objetivo é identificar características dos pacientes curados para os não curados. D seria toda base de dados do histórico, D+ os pacientes curados (condição = curado), D- as demais condições. Já o universo de itens i ∈ I para D está representado na Tabela 4.2.

Tabela 4.1 – Exemplo de base de dados hipotética.

Sexo Sintoma Tratamento Condição

M S1, S2 T1, T2 não curado F S4, S1 T2 não curado F S1, S2 ,S3 T3, T4 curado M S4 T4 não curado ... ... ... ... 4http://www.cdc.gov/lyme/ e http://www.scielo.br/pdf/ramb/v56n3/v56n3a25.pdf

(26)

Tabela 4.2 – Universo de itens i I em D. I (atributo, valor) i1 (sexo, M) i2 (sexo, F) i3 (sintoma, S1) i4 (sintoma, S2) i5 (sintoma, S3) i6 (sintoma, S4) i7 (tratamento, T1) i8 (tratamento, T2) i9 (tratamento, T3) i10 (tratamento, T4)

Agora supomos que um PD é dado por {S1, S2, S3, T3, T4}. Esse padrão tem uma taxa

de crescimento de 10 de não curado para curado, ou seja, dentre todos os pacientes de Lyme com os sintomas S1, S2 e S3, que receberam os tratamentos T3 e T4, o número de pacientes

curados é 10 vezes maior que os não curados, indicando que a combinação de tratamentos para essa combinação de sintomas pode ser mais adequada.

Segundo Vimieiro e Moscato (2014) e Nie et al. (2014), essa técnica possui como vantagem a facilidade de leitura. O conjunto de características que aparecem no grupo de amostras torna fácil a leitura e interpretação por especialistas do domínio em relação às outras técnicas. Por exemplo, experimentos mostram que PDs podem classificar subtipos de câncer com bom desempenho (Lu et al. 2010).

Assim os PDs, são considerados uma área intermediária entre a descoberta de associações e a classificação (modelagem preditiva). Isso porque na primeira existe um indutor que analisa os exemplos e tenta determinar se algum deles podem ser agrupados de alguma maneira, ou seja, tem o objetivo de expressar um conhecimento, mas não está associada a um rótulo. O segundo constrói um classificador preciso que possa determinar a classe de novos exemplos a partir de exemplos de treinamento com classe rotulada, ou seja, está associado a um rótulo, mas não tem objetivo de descrever conhecimento. Segue exemplos de perguntas que podem ser respondidas por regras dos PDs:

a) Quais grupos de genes e seus respectivos valores diferenciam pacientes com câncer de próstata dos saudáveis?

(27)

b) Entre os clientes de um banco, quais grupos de características diferenciam os clientes endividados dos demais?

c) Quais grupos de comportamento que diferenciam de alunos de EAD que concluem o curso dos que cancelam ou trancam?

d) Quais são as diferenças entre funcionários que possuem graduação e funcionários com doutorado?

Nas perguntas acima, verifica-se suas relações com a descoberta do conhecimento relacionado a um atributo e valor específico (câncer = próstata; cliente = endividado; aluno = concluiu; funcionário = doutorado) e não a uma associação de dados sem rótulo ou desenvolvimento de um modelo preditivo. Seguem exemplos de perguntas que não são PDs:

e) Quais são as características dos clientes de um banco?

f) Dos alunos de EAD que concluíram, que características eles tem em comum? g) Quais itens de um supermercado são comprados juntos com maior frequência? Nessas perguntas percebe-se a ausência de rótulos (e,f,g) e no caso da pergunta de letra “f”, as características coincidentes encontradas nesse caso também poderão existir nos demais alunos.

4.1 Medidas de Avaliação

Durante o processo de descoberta de PDs, um volume grande de informações pode ser gerado e as medidas de avaliação (ou qualidade) são mecanismos para avaliar a relevância dos PDs descobertos durante a busca automática. A tarefa dos algoritmos que implementam essas medidas é de substituir a avaliação dos especialistas de domínio durante a fase automática de mineração.

Entretanto, há vários algoritmos com diversas medidas de avaliação, por isso torna-se uma questão relevante saber qual medida é mais apropriada para cada domínio específico. Sendo importante que os algoritmos ofereçam mais opções para melhores adaptações as diversas situações. As medidas mais populares estão descritas na Tabela 4.3.

Para entendê-las, considere novamente o exemplo da doença de Lyme, através da implicação A → p , onde p é o alvo das buscas (curado) e A é o conjunto de itens (atributo,valor). Considere agora TP (verdadeiros positivos), é o número transações que contem A e p, FP (falsos positivos) é o número de transações que satisfaçam o antecedente A, mas não o consequente p, |D| é o número total de transações, |D+| é o número de transações positivas e |D-| é número de transações negativas.

(28)

Tabela 4.3 – Algumas medidas de avaliação populares para mineração de PDs.

Medidas Referência

𝑆𝑢𝑝 = 𝑇𝑃 |𝐷|

Suporte (Herrera et al., 2010)

𝐶𝑜𝑛𝑓 = 𝑇𝑃 𝑇𝑃 + 𝐹𝑃

Confiança (Herrera et al., 2010)

𝐶𝑜𝑣 = 𝑇𝑃 + 𝐹𝑃 |𝐷|

Cobertura (Herrera et al., 2010)

𝐷𝑖𝑓𝑓𝑆𝑢𝑝 = | 𝑇𝑃 |𝐷+|

𝐹𝑃 | 𝐷−||

Diferença entre suportes (Bay e Pazzani, 1999)

𝐺𝑟𝑜𝑤𝑡ℎ𝑅𝑎𝑡𝑒 = 𝑇𝑃 |𝐷+|

𝐹𝑃 | 𝐷−|

Taxa de Crescimento (Dong e Li 1999)

𝑊𝑅𝐴𝑐𝑐 = 𝑇𝑃 + 𝐹𝑃 |𝐷| ( 𝑇𝑃 𝑇𝑃 + 𝐹𝑃− |𝐷+| |𝐷|)

Acurácia relativa (Lavrac et al., 1999)

O suporte mede a frequência de transações cobertas corretamente em relação ao conjunto total de transações. A confiança (acurácia) mostra a precisão das transações cobertas corretamente em relação ao número de transações que satisfaçam as condições de PDs (mais detalhes dessas medidas no Capitulo 3). A medida cobertura representa o percentual de transações que contém A. A diferença entre suportes e taxa de crescimento são, respectivamente, a diferença absoluta e a razão entre os suportes entre as duas classes. A última medida é a acurácia relativa (originalidade) e possui dois componentes: a cobertura e a diferença entre a confiança e a razão das transações positivas com o número total de transações. Em outras palavras descreve os PDs cuja a distribuição da classe alvo das busca é significativamente diferente do conjunto |D| e é a métrica mais usada para PDs. Outras métricas podem ser encontradas em Herrera et al. (2010), Carmona et al. (2014) e Liu et al. (2015).

4.2 Classificação dos Algoritmos

Com a existência de vários algoritmos para mineração de PDs, classificá-los ajuda a influenciar na decisão sobre qual utilizar para cada problema, seguem abaixo as formas de classificação:

4.2.1 Local ou Global

Na busca local todas as restrições relevantes especificadas pelo usuário são impostas separadamente para cada PD (Liu et al., 2015). Em outras palavras, o algoritmo geralmente

(29)

percorre e verifica todo o espaço na busca de padrões em potencial. Após aplicam-se as medidas de avaliação (restrições relevantes) para cada padrão gerado (individualmente), e por fim seleciona os significativos e remove-se os insignificantes.

Na busca global os padrões podem ser interpretados como os itens que são definidos no nível local, e um conjunto de padrões é essencialmente uma disjunção desses padrões. Assim, torna-se possível especificar restrições globais em todo o conjunto de padrões avaliando os PDs de forma coletiva.

Uma consequência comum às duas técnicas é a falta de controle sobre o número de PDs, podendo retornar um número muito grande de padrões. Torna-se então muito importante o uso de limiares (filtros, medidas de avaliação), para redução significativa do espaço de busca. Contudo a definição dos limiares é uma tarefa difícil, pois se limiares forem muito pequenos podem retornar padrões sem utilidades, e se muito grandes podem não retornar nenhum PD (Pontes, 2016).

4.2.2 Top-k ou Limiares

Nos algoritmos de mineração de PDs, baseados na técnica top-k, o conjunto de PDs resultantes é determinado por uma função de qualidade. Essa função é um parâmetro simples não necessitando de conhecimento técnico para defini-la, além de permitir que o usuário tenha controle sobre o volume de informações que deseja analisar, trazendo maior flexibilidade (Atzmueller, 2015).

Nos algoritmos baseados em limites são retornadas todos os PDs considerados relevantes segundo um ou mais critérios, como suporte mínimo e/ou confiança mínima. Sendo uma desvantagem os usuários não terem controle sobre o número de PDs retornados. Outra característica é que essa técnica também pode ser aplicada em conjunto com a top-k.

4.2.3 Exatos ou Heurísticos

Os algoritmos exatos ou exaustivos garantem a melhor resposta, pois consistem em testar todos os padrões relevantes de uma solução e checar cada padrão para saber se ele satisfaz as restrições impostas pelo usuário. Podem ser usados quando a simplicidade da implementação é mais importante que a velocidade de execução, como em casos de aplicações críticas em que erros no algoritmo podem oferecer sérias consequências, porém seu custo computacional é proporcional ao número de padrões da solução, que tende a crescer exponencialmente.

(30)

Os algoritmos heurísticos não garantem a melhor resposta, pois não testam todos os padrões relevantes, mas realizam uma busca por meio da quantificação de proximidade a um determinado objetivo, ou seja, busca uma resposta boa ao problema. Essa aproximação pode acarretar descarte de dados significativos. Em bases de dados biomédicas esse descarte pode ser muito importante. Exemplificando, genes que são considerados de pouca significância, são descartados, porém eles podem ser úteis para diferentes tipos de tecidos. Os heurísticos podem ser usados quando há limitações de tempo, ou quando os dados são pouco confiáveis, ou quando não há um método exato para resolução de um problema.

4.3 Discretização

Algoritmos utilizados para mineração de PDs, requerem que os dados estejam em forma de atributos categóricos, para isso é necessária a discretização, também conhecida como mapeamento em intervalos. Ela tem por objetivo a substituição de valores dentro de um intervalo por um identificador como descrito na Tabela 4.4.

Tabela 4.4 – Exemplo de números de dependentes.

N° de dependentes 0 a 1 2 a 5 6 ou mais

categórico pouco médio alto

discreto 0 1 2

Existem formas de definir um intervalo: (1) com medidas pré-definidas, como na Tabela 4.4 (2) com medidas de largura, onde se divide os dados em n intervalos de igual tamanho (3) com medidas de frequência, onde se divide os dados em n intervalos e cada intervalo contém o mesmo número de elementos da base de dados (4) com descritores estatísticos, como mediana, desvio padrão, variância e quartil.

4.4 Algoritmos Exaustivos

Os algoritmos exaustivos escolhidos foram baseados nas seguintes premissas: (1) que fossem de busca local pois segundo Liu et al. (2015) são os mais utilizados e mais adequados, (2) que possuíssem mesmos limiares para comparação, (3) o possuíssem o maior número de limiares, pois segundo Pontes et al. (2016) os algoritmos que oferecem mais opções se adéquam melhor a diferentes situações. Nesse caso os limiares em comum foram o suporte mínimo e confiança mínima. Por fim (4) os algoritmos não foram modificados, ou seja, trabalharam seguindo as orientações de cada ferramenta utilizada. Assim proporcionando uma comparação mais igualitária e com mais variedades de resultados.

(31)

Para medir a qualidade dos PDs retornados foi escolhida a medida de qualidade acurácia relativa, pois segundo Kavsek et al. (2003), Lavrac et al. (2004), Herrera et.al. (2010) e Liu et al., (2015) é a mais adequada e mais utilizada para descrever os PDs cuja distribuição da classe alvo (D+) é significativamente diferente do conjunto D.

4.4.1 APRIORI-SD

O algoritmo exaustivo APRIORI-SD (Kavsek et al., 2003) adapta o algoritmo APRIORI-C (Jovanoski e Lavrac, 2001) para mineração de PDs, recebendo atributos contínuos ou discretos e transformando-os em binários no seu pré-processamento.

O APRIORI-C possui 6 etapas: as duas primeiras são relacionadas aos atributos contínuos e na transformação dos atributos em binários. A terceira etapa consiste em um pré-processamento no conjunto de dados para selecionar suas características.

Na quarta etapa é executado o algoritmo APRIORI de forma otimizada, onde se diferencia por podar os candidatos a PDs através dos critérios suporte mínimo ms e confiança mínima mc. Também é feito o descarte de todos os candidatos a PDs que não tenham relação a classe alvo.

A quinta etapa consiste no pós-processamento induzindo as b melhores regras encontradas por classe, ordenadas pelo melhor suporte. A última etapa usa-se as regras resultantes para classificar os exemplos não classificados.

No APRIORI-SD (Algoritmo 1), há a remoção das etapas 3, 5 e 6 do APRIORI-C, todos os candidatos a PDs são encontrados baseados nos critérios de suporte mínimo e confiança mínima (limiares) e são atribuídos um peso inicial baseado na acurácia relativa e depois esses candidatos são ordenados do melhor para o pior. Os melhores são selecionados, os candidatos cobertos são atribuídos novos pesos, e o procedimento se repete até o critério de parada. Esse critério é quando todos os candidatos a PDs foram cobertos mais que k vezes (parâmetro k utilizado para eliminação de PDs cobertos no pós-processamento para assegurar a convergência do algoritmo) são removidos de D, ou quando não há mais candidatos em Candidatos.

Algoritmo 1: APRIORI-SD pseudocódigo para Classe-alvovalores

entrada: conjunto de dados D, classes (D+ e D-), supmin ms, confmin mc, k

(32)

confmin mc) atribui-se todos os pesos para 1 em D. 2: Majoritários := classes (D+ e D-)

3:PDs := {} 4:repita

5: Melhores := regras com valores mais altos para WRAcc contidos em Candidatos 6: PDs := PDs ∪ Melhores

7: Candidatos:= Candidatos \ Melhores decrementa os pesos dos exemplos cobertos por Candidatos remove de D os exemplos cobertos mais que k-vezes

8:até D = {} ou Candidatos = {}

9: retorne PDs := PDs ∪ “positivo → Majoritários”

4.4.2 SD-Map

O algoritmo exaustivo SD-Map (Atzmueller e Puppe, 2006; Atzmueller e Lemmerich, 2009) adaptou o algoritmo FP-growth (Han et al., 2000) para mineração de PDs, podendo trabalhar com variáveis discretas, binárias e contínuas.

Outra característica é que pode utilizar múltiplas medidas de qualidade (q) para busca de PDs locais, além de poder trabalhar com bases com dados ausentes (missing values). O Algoritmo 2 mostra o funcionamento da abordagem.

Na linha 1 o algoritmo coleta os candidatos a PD primeiramente contando os TP e FP para classe D+, depois poda-se os candidatos através do suporte mínimo ms (limiar). Por fim

os candidatos restantes são colocados em um nó da lista em ordem decrescente do suporte. Na linha 2, é construída a árvore (como na árvore FP-tree do algoritmo FP-growth), onde para cada caso em D, que contenha um candidato a PD, ele é inserido na árvore na mesma ordem da lista criada. Sempre que o mesmo nó se encontra dentro de outro caso, são incrementados os valores de tp e fp para cada nó. Dessa forma aumenta as chances de compartilhar candidatos a PD comuns (subconjuntos). Depois da construção, os caminhos da árvore contém a contagem dos candidatos a PD.

Nas linhas 3-7, é a adaptação feita para geração da arvore, onde além de calcular tp e fp para os candidatos a DP, é calculada a medida de qualidade q (podendo ser qualquer

(33)

medida). Assim realiza-se uma etapa integrada de crescimento da árvore e teste, acumulando os PDs diretamente.

Finalmente na linha 8, é a etapa de pós-processamento, que possui o objetivo de selecionar e gerenciar a redundância dos PDs obtidos. Por padrão o algoritmo retorna os top-k melhores PDs descobertos, porém há possibilidade de definir uma medida de qualidade mínima para seleção.

Algoritmo 2: SD-Map pseudocódigo para Classe-alvovalor

entrada: conjunto de dados D, classe D+, supmin ms, medida de qualidade q

1: Passo 1- Coleta os candidatos a PD, e constrói a lista de nós L de candidatos a PD para árvore FP-tree:

1.1 Para cada caso onde se encontra a classe D+ é calculado o tp e fp 1.2 Podam-se todos os candidatos que não atingiram o suporte mínimo ms

1.3 Usam-se os candidatos restantes, constrói e ordena a lista de nós L de candidatos a PD em ordem decrescente do suporte.

2: Passo 2- Construção da árvore FP-tree:

Para cada nó contido na lista de candidatos a PD, insira o nó na árvore FP-tree (de acordo com a ordem em L), e for observado em um caso deve-se contar o tp e fp para cada nó.

3: Executar a adaptação do método FP-growth para geração de PD: 4: repita

5: para cada candidato a pd que denota um PD faça

6: Dados os parâmetros tp, fp calcule a qualidade do pd usando a função de qualidade q

7: até FP-growth terminar

8: Pós-processamento do conjunto obtido de PD retornar k melhores PDs

4.4.3 RCS

O algoritmo RCS - Rules for Contrast Set (Azevedo, 2010) adaptou as abordagem de Webb et al. (2003), Webb (2006) e Webb (2008) e aplicações do suporte como no algoritmo STUCCO (Bay e Pazzani, 2001) para mineração de PDs.

(34)

O RCS tem como método a busca de PDs locais, que se caracteriza por utilizar regras de um conjunto de itens frequentes no antecedente e uma lista em pares da classe alvo no consequente, ou seja, o antecedente representa o PD e cada par no consequente exibe a diferença direcional entre as duas classes (D+ >> D- ou D- >> D+) .

Outra característica do RCS é seu método de busca que é exaustivo utilizando a estrutura depth first assim como em abordagens de pesquisa de itens frequentes propostas por Goethals e Zaki (2004).

Para ser considerado um PD o conjunto de itens frequentes (candidato a PD) passa por avaliações, como o teste exato de Fisher para determinar a significância e que também é usado para poda que determina se as especializações do PD permitem um valor adicional às diferenças entre as classes. Além disso, há o controle do número de FP através de uma equação como no método de Bonferroni (Azevedo, 2010).

Outro procedimento de poda é através do suporte mínimo, quando a especialização do candidato a PD preserva o suporte, então é descartado e não é considerado para avaliação de PD. Essa poda é usada a técnica PEP (Parent Equivalence Pruning). O RCS é implementado com o software específico, CAREN (Azevedo, 2003) onde é possível acrescentar o critério de confiança mínima a poda.

O Algoritmo 3, mostra o fluxo de trabalho da abordagem. A linha 1 corresponde ao cálculo do α’ cutoff que é variável de controle adaptada de Webb (2008) para evitar extração de falsos PDs. O cálculo dessa variável é especifica para cada nível do espaço de busca. Na linha 3 cada nó da árvore é considerado, isto é, cada potencial antecedente (candidato a PD). Aqueles que não passam pelo suporte mínimo são descartados (técnica PEP).

Nas linhas 4 e 5 cada par de classes juntamente com o candidato a PD são processados. O teste exato de Fisher é executado para determinar a significância do PD dentro do par. Em caso positivo será processado as linhas 5-8 onde será processada a poda que confirma se a o candidato a PD é relativamente significante em relação a todas as suas generalizações. Por fim na linha 7 o PD relevante é adicionado ao conjunto de resultados. Algoritimo 3: RCS pseudocódigo para Classe-alvovalor

entrada: conjunto de dados D, classes (D+ e D-), supmin ms, cutoff α 1: Calcule α’1, α’2,... α’n, para n ou use o número de candidatos a PD

(35)

2: PD:= {}

3: para cada nó i ∈ busca_depth_first(D, ms): sup(i)≥ ms faça 4: para cada par D+, D- ∈ D onde sup(i, D+)>>sup(i, D-) faça

5: se TesteFisher(D+, D-, i,{ }) ≤ α’valor(i) então

6: se ∀D+>> D-← pd ∈ PD:pd ⊂ i & TesteFisher (D+, D-, i, pd) ≤ α’ valor(i) então 7: PD:=PD ∪{D+>> D-← i} 8: fim 9: fim 10: fim 11: fim

(36)

5. Experimentos, resultados e discussão

Nesse capítulo serão apresentadas as bases de dados, os procedimentos utilizados nos experimentos bem como os resultados obtidos dos experimentos e a discussão sobre os mesmos.

5.1 Bases de Dados

Foram escolhidos os conjuntos de dados de microarrays chamadas aqui de BIO e descritas na Tabela 5.1, tais bases estão disponíveis no pacote datamicroarrays (Remey, 2016). Elas foram escolhidas por serem bases reais, serem consolidadas na literatura, possuírem alto e variado número de atributos, e por fim terem baixo número de exemplos.

E com o objetivo de confrontar os resultados da alta dimensionalidade dessas bases, foram utilizados os conjuntos de dados tradicionais de baixa dimensionalidade da UCI - Machine Learning Repository (UCI, 2016) descritas na Tabela 5.2. Escolhidas também por serem reais e serem consolidadas na literatura. Contudo possuem baixo número de atributos e alto e variado número de exemplos.

Dessa forma as bases escolhidas possuem variadas características. Assim espera-se avaliar o comportamento dos algoritmos de forma mais igualitária possível e dentro da problemática do trabalho.

Tabela 5.1 – Descrição das 10 bases BIO.

Nome Nº Exemplos Nº Atributos Referência

alon 62 2000 (Alon et al.,1999)

burczynski 127 22283 (Burczynski et al., 2006) chiaretti 111 12625 (Chiaretti et al. 2004)

chin 118 22215 (Chin et al., 2006)

christensen 217 1413 (Christensen et al., 2009)

gravier 168 2905 (Gravier et al., 2010)

nakayama 105 22283 (Nakayama et al., 2007)

sorlie 85 456 (Sorlie et al., 2001)

tian 173 12625 (Tian et al., 2003)

(37)

Tabela 5.2 – Descrição das 20 bases UCI.

Nome N° Exemplos Nº Atributos

audiology 226 69 breast-cancer 286 9 bridges-version2 105 12 car 1728 6 kr-vs-kp 3196 36 lung-cancer 32 56 molecular-biology-promoter 106 58 monks-problems-1-train 124 6 mushroom 8124 22 nursery 12960 8 postoperative-patient-data 90 8 primary-tumor 339 17 shuttle-landing-control 15 6 solar-flare-2 1066 12 soybean 683 35 spect-test 187 22 splice 3190 61 tic-tac-toe 958 9 trains 10 32 vote 435 16 5.2 Pré-processamento

As bases UCI eram formadas exclusivamente por atributos categóricos, não havendo necessidade de discretização. As bases BIO precisaram passar por discretização. Primeiramente foi utilizado o software R (Laboratories, 2016) para instalação do pacote datamicroarray, depois para cada base foram analisadas os atributos de controle que estão contidos nas sondas usadas de cada tecnologia de microarray. A remoção desses se deu através das tabelas descritivas de cada sonda (Affymetrix, Illumina e IntegraGen). Cinco bases já estavam sem os atributos de controle, as demais foram removidas 68 atributos nas bases burczynski, chiaretti, nakayama, tian e yeoh.

A próxima etapa foi aplicação do filtro próprio para bases de microarrays, com o objetivo de remover os atributos de baixa variabilidade. Para essa etapa foi usado o pacote genefilter da Bioconductor para R (Gentleman et al., 2016).

(38)

A última etapa foi a discretização dos dados de cada atributo utilizando o descritor estatístico quartil, como é comum em dados biomédicos (Oliveira, 2015). Onde os valores abaixo do primeiro quartil foram categorizados como baixo (“b”),valores acima do terceiro quartil alto (“a”) e os demais valores como médio (“m”).

Por fim, em todas as 30 bases foi acrescentado o atributo y, onde a classe majoritária foi considerada alvo das buscas (D+) e os demais exemplos foram rotulados como negativo (D-) assim tenta-se manter o mesmo quantitativo de exemplos em ambas classes. Para acrescentar mais características as bases foram calculados a quantidade de itens possíveis5 (I) e a densidade. Os resultados finais do pré-processamento estão descritos nas Tabelas 5.3 e 5.4.

Tabela 5.3 – Descrição das 20 bases UCI usadas nos experimentos após pré-processamento.

Nome |D| | D+| | D-| Nº Atributos |I| Densidade

audiology 226 57 169 69 154 44,81% breast-cancer 286 201 85 9 41 21,95% bridges-version2 105 44 61 12 191 6,28% car 1728 1210 518 6 21 28,57% kr-vs-kp 3196 1669 1527 36 73 49,32% lung-cancer 32 13 19 56 157 35,67% molecular-biology-promoter 106 53 53 58 334 17,37% monks-problems-1-train 124 62 62 6 17 35,29% mushroom 8124 4208 3916 22 126 18,97% nursery 12960 4320 8640 8 27 29,63% postoperative-patient-data 90 64 26 8 23 34,78% primary-tumor 339 84 255 17 37 45,95% shuttle-landing-control 15 9 6 6 16 37,50% solar-flare-2 1066 331 735 12 42 28,57% soybean 683 92 591 35 99 35,35% spect-test 187 172 15 22 44 50,00% splice 3190 1655 1535 61 3465 1,76% tic-tac-toe 958 626 332 9 27 33,33% trains 10 5 5 32 77 41,56% vote 435 267 168 16 32 50,00%

(39)

Tabela 5.4 – Descrição das 10 bases BIO usadas nos experimentos após pré-processamento.

Nome |D| | D+| | D-| Nº Atributos |I| Densidade

alon 62 40 22 1000 3000 33,33% burczynski 127 59 68 11107 33321 33,33% chiaretti 128 74 54 6279 18837 33,33% chin 118 75 43 11107 33321 33,33% christensen 217 113 104 706 2118 33,33% gravier 168 57 111 1452 4356 33,33% nakayama 105 21 84 11099 33297 33,33% sorlie 85 32 53 228 684 33,33% tian 173 137 36 6279 18837 33,33% yeoh 248 79 169 6279 18837 33,33% 5.3 Processamento

Os experimentos foram realizados nos softwares KEEL (Alcalá-Fdez et al., 2009) e CAREN (Azevedo, 2003) em uma Workstation HP Z220 Intel Xeon 3,4Ghz de 8 núcleos com 16GB de memória RAM dedicados e com tempo máximo de execução de 10.800 segundos (3 horas) como em Vimieiro e Moscato (2014).

As interrupções nas execuções dos experimentos ocorreram por dois motivos, primeiramente quando se chegava ao tempo máximo de execução (TL) ou quando ocorresse estouro de memória (FM).

Os testes foram divididos em 2 seções, na primeira seção as 30 bases UCI e BIO, foram submetidas aos algoritmos discriminativos utilizando como parâmetro a variação da medida de avaliação confiança mínima, com os valores (em porcentagem) de 100, 80, 60, 40 e 20 e suporte mínimo fixo em 10. Na seção seguinte a medida de avaliação suporte mínimo é variada com os valores 100, 80, 60, 40, 20 e 10 e confiança mínima fixa em 80. Os valores fixos de suporte e confiança foram baseados em Kavsek et al. (2003) e nos valores padrões das ferramentas usadas. Sendo realizados um total de 990 testes, as tabelas com mais detalhes dos resultados de cada experimento estão descritas no Apêndice A.

Não foram feitas alterações nos algoritmos de maneira que trabalhassem de forma pura, e para não haver influência nos resultados. Todos os procedimentos da execução dos algoritmos estão descritos com mais detalhes em http://github.com/aldenor23/comp.

(40)

5.4 Análise dos resultados

Os 14 aspectos analisados serão descritos abaixo, sendo 7 em relação ao desempenho computacional e 7 em relação a qualidade dos resultados para cada algoritmo em cada seção.

Na seção 01, os algoritmos foram submetidos às 30 bases e aos 5 parâmetros, que totalizaram 450 experimentos (e) para essa seção. Porém todos os experimentos para as bases BIO tiveram interrupções nas execuções, onde SD-Map e RCS tiveram mais mais interrupções por FM e APRIORI-SD por TL. Uma particularidade observada na execução dos algoritmos SD-Map (burczynski, chin e nakayama) e RCS (burczynski, chin, nakayama, tian, yeoh e chiaretti) foi que os mesmos acusaram na execução altíssimo número de transações (candidatos a PDs) sendo essa bases caracterizadas por serem as com maior número de atributos. No caso do RCS existe um parâmetro para aumento da análise de transações. Entretanto mesmo com sua alteração as interrupções continuaram.

A Tabela 5.5 mostra o primeiro aspecto que descreve o número de experimentos convergidos (bem-sucedidos) (ec), ou seja, aqueles que concluíram a execução dentro do tempo estabelecido e não estouraram a memória. O RCS teve melhor desempenho nesse aspecto ao cobrir 80 experimentos. Nota-se um desempenho semelhante nos algoritmos APRIORI-SD e SD-Map com 70 e 71 experimentos respectivamente.

Tabela 5.5 – Número de experimentos convergidos ec (Seção 01).

Algoritmo Conf_100 Conf_80 Conf_60 Conf_40 Conf_20 TOTAL

APRIORI-SD 14 14 14 14 14 70 UCI SD-Map 15 14 14 14 14 71 RCS 16 16 16 16 16 80 APRIORI-SD - - - - - - BIO SD-Map - - - - - - RCS - - - - - -

A Figura 5.1 resume três aspectos. Inicialmente o segundo aspecto observado foi o tempo médio geral 𝑡(ec), que quantifica o tempo médio (em segundos) que cada algoritmo utilizou em relação a ec (150 experimentos por algoritmo). Os algoritmos RCS (66,421) e SD-Map (67,163) tiveram desempenhos parecidos, porém com uma vantagem para o RCS enquanto APRIORI-SD ficou com 366,741.

A seguir mostra o terceiro aspecto 𝑡’(ec), que também considera o tempo médio geral (em segundos), contudo para uma melhor comparação, foi considerado apenas as bases que

(41)

possuíram ec em todos os algoritmos. Dessa forma o RCS teve melhor resposta (2,585) em relação ao SD-Map (78,749) e APRIORI-SD (417,487). Assim ampliando desempenho em relação ao aspecto anterior.

Por fim a Figura 5.1 descreve o quarto aspecto, que analisou as bases de forma isolada b(ec) para cada algoritmo, ou seja, em quantas bases o algoritmo teve melhor desempenho. O RCS teve maior quantidade com um total de 8 bases (kr-vs-kp, mushroom, primary-tumor, solar-flare-2, soybean, spect-test, trains e vote). O SD-Map também teve o mesmo número (breast-cancer, bridges-version2, car, molecular-biology-promoters, nursery, postoperative-patient-data, splice e tic-tac-toe) enquanto APRIORI-SD ficou com apenas duas (monks-problems-1-train e shuttle-landing-control).

Figura 5.1 – Resumo dos aspectos 𝑡(ec), 𝑡’(ec) e b(ec) para UCI (Seção 01).

Outra característica observada no algoritmo RCS em relação as bases em que ele não convergiu (audiology, splice, molecular-biology-promoter e lung-cancer) são exatamente as

(42)

que possuem maior número de atributos, além disso os algoritmos APRIORI-SD e SD-Map conseguiram convergir em 2 delas (splice e molecular-biology-promoter).

Em relação ao quinto aspecto, número total de exemplos (D), percebeu-se que com as 10 bases com maior número de exemplos (primary-tumor, 339, a nursery, 12.960) o algoritmo RCS, teve melhor desempenho ao cobrir o maior número de bases (90%) em relação a APRIORI-SD e SD-Map que tiveram o mesmo desempenho (80%).

No sexto, as bases com maior densidade (spect-test, vote, kr-vs-kp e primary-tumor) o RCS também se saiu melhor convergindo em todos (100%), e o SD-Map com (55%) e APRIORI-SD (50%) apenas em duas (vote e primary-tumor). Contudo em relação a quantidade de itens (I) as bases com maior número (splice, molecular-biology-promoter e bridges-version2) APRIORI-SD e SD-Map convergiram em todas (100%) enquanto o RCS apenas na última (33,33%).

O aspecto mais importante analisado é quanto a qualidade dos PDs retornados. A Tabela 5.6 considera, entre os experimentos bem sucedidos (ec), apenas o número de experimentos que retornaram PDs (eq), ou seja, exclui-se os experimentos com PDs iguais a zero. Nesse oitavo aspecto o RCS teve o quantitativo superior aos demais com 60 experimentos contra 56 de APRIORI-SD e 53 de SD-Map.

Tabela 5.6 – Número de experimentos com retorno de PDs eq (Seção 01).

Algoritmo Conf_100 Conf_80 Conf_60 Conf_40 Conf_20 TOTAL

APRIORI-SD 0 14 14 14 14 56 UCI SD-Map 8 11 11 11 12 53 RCS 12 12 12 12 12 60 APRIORI-SD - - - - - - BIO SD-Map - - - - - - RCS - - - - - -

A Figura 5.2 resume três aspectos. Inicialmente o nono aspecto considera a qualidade média geral𝑞 (eq) (acurácia relativa que varia entre -0,25 e 0,25), ou seja, quantifica a qualidade média que cada algoritmo utilizou em relação ao eq. A Figura mostra que o RCS teve melhor resposta (0,077062) para esse aspecto em relação aos demais. O APRIORI-SD ficou com 0,073212 e SD-Map com 0,035123.

Referências

Documentos relacionados

No sentido de reverter tal situação, a realização deste trabalho elaborado na disciplina de Prática enquanto Componente Curricular V (PeCC V), buscou proporcionar as

Assim, a presente pesquisa objetiva apresentar uma proposta voltada à re- ferida zona de esperança, que pressuponha o uso correto dos direitos do homem, a partir de uma

À vista de tudo quanto foi dito, a forma mais adequada para compreender a questão parece ser a seguinte: (i) os direitos fundamentais são, em princípio,

nuestra especialidad por su especial proyección en el ámbito del procedimiento administrativo y el proceso contencioso administrativo, especialmente los alcances de la garantía

Este terceiro projeto baseou-se exclusivamente na minha experiência ao balcão durante os 6 meses de estágio, percebendo que um dos grupos que mais visitam a farmácia são

The strict partition problem is relaxed into a bi-objective set covering problem with k-cliques which allows over-covered and uncovered nodes.. The information extracted

Many more European associations, consortia and networks are operating at a transnational level: just to mention a few of them, the Association of European Correspondence

Os resultados permitiram concluir que a cultivar Conquista apresentou a maior produtividade de grãos, no conjunto dos onze ambientes avaliados; entre as linhagens