Mineração de dados com a presença da deriva conceitual

148 visualizações

Publicada em

A Mineração de Streams de Dados (Stream Data Mining) é o
processo de extração de estruturas de conhecimento, a partir de registros de dados rápidos e contínuos. Isto é amplamente utilizado na sociedade da informação devido à natureza de constante geração de dados dos sistemas computacionais atuais. É comum a presença nestes dados de constantes mudanças de conceito o que é conhecido como deriva de conceito e que afeta a precisão dos modelos obtidos no processo de aprendizagem. Este trabalho apresenta uma revisão dos conceitos associados a este assunto assim como uma análise do comportamento das estratégias utilizadas para lidar com a deriva conceitual.

Publicada em: Dados e análise
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
148
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
2
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • O algoritmo básico de janelas é simples. Cada exemplo atualiza a janela e depois, o classificador é atualizado por essa janela. A parte fundamental deste algoritmo reside na definição da janela na forma como se modela o processo de esquecimento. Na abordagem mais simples as janelas são de tamanho fixo e incluem apenas os exemplos mais recentes do fluxo de dados. Com cada nova instancia de dados o exemplo mais antigo que não se encaixa na janela é jogado fora.
  • Uma forma simples de tornar o processo de esquecimento mais dinâmico é fornecendo a janela com uma função de degradação que atribui um peso para cada exemplo. Exemplos mais velhos recebem pesos menores e são tratados como menos importante pelo classificador base. Existem funções de peso baseadas em criterios especiais definidos pelo treinador.
  • Criado por Haixun Wang, Wei Fan, Philip S. Yu, and Jiawei Han.
  • Decisões baseadas na distribuição de classe dos exemplos tendem a ser melhores do que aquelas baseadas unicamente em o tempo de chegada dos dados. Os dados históricos cujas distribuições de classe são semelhantes à de dados atuais podem reduzir a varianza do modelo mais recente (atual) e aumentar a precisão da classificação.
  • Um novo classificador C 'é treinado em cada pedaço de dados de entrada e esse pedaço é utilizado para avaliar todos os membros do conjunto existentes para selecionar os melhores componentes classificadores.
  • Todos os algoritmos vão ser avaliados utilizando o método de avaliação chunk de dados. O
    procedimento lê exemplos de entrada sem processá-los, até formar um pedaço de dados de
    tamanho determinado pelo usuario.
  • De acordo com os gráficos, o uso da memória pelos classificadores individuais, foi mais
    eficiente para a colecção Electricity Market. No conjunto de dados Waveform, o qual contém
    muito mais dados, o AWE apresentou desempenho semelhante com os algoritmos não ensemble.
    É significativo o comportamento de crescimento linear apresentado pelo algoritmo Hoeffding
    Option Tree que claramente precisa de mais memória com cada pedaço de dados processados.
    Os outros algoritmos mostram crescimento, mas tendem a se comportar estável em algum ponto
    e permanecem assim.
    A análise dos gráficos de uso de memória mostra que os requisitos de memória são semelhantes
    aos requisitos de tempo de treinamento. HT + DDM e HOT precisam de muito mais memória
    para conjuntos de dados maiores do que árvore + janela e AWE, que processaram os fluxos de
    dados usando uma quantidade de memória quase constante.
  • A acuracia média é uma boa medida para avaliar o desempenho geral dos algoritmos,
    mas em ambientes com a presença de variações no conceito ao longo do tempo, a reação dos
    classificadores para as mudanças é muito importante. As colecções onde foram aplicados os
    algoritmos apresentam deriva conceitual de tipo gradual no Waveform e abrupta no Electricity
    Market.
  • apresenta-se o comportamento dos algoritmos aplicados á colecção
    artificial Waveform onde ocorre uma mudança de conceito aproximadamente na instância 250
    000. A maioria dos classificadores responderam à mudança com um pouco de queda na
    precisão, o que é depois corrigido ao ajustar para o novo conceito presente. A árvore com janela
    não consegue lidar com sucesso á mudança gradual. Isto é devido a que seu mecanismo de
    esquecimento é estático o que impede desaprender exemplos desatualizados rapidamente, e
    dado que o desvio é distribuído no tempo, a sua diminuição na precisão permanece ao longo do
    processo.

  • A colecção Electricity Market apresenta uma mais complexa deriva conceitual. No geral os
    algoritmos reagiram com uma inestavel acuracia mas o HOT comporto-se mais preciso ao longo
    todo do processo. Nesse caso a árvore com janela tambén é o que mais sofre, mas a queda da
    precisão não é tão drástica como foi para a outra colecção.


  • Mineração de dados com a presença da deriva conceitual

    1. 1. Abordagens de Mineração de Dados com a presença de deriva conceitual. Aprendizagem de Màquina & Mineração de Dados Discente: Luis M. Rojas Aguilera Professores: Dra. Eulanda Miranda Dos Santos Dr. Marcos Cristo
    2. 2. “ All models are wrong but some are usefull. George E. P. Box
    3. 3. ◎Fluxos de dados (streams) ◎Deriva conceitual ◎Stream data mining ◎Clasificadores individuais com mecanismos de esquecimento ◎Abordagens tipos ensemble ◎Resultados da experimentação ◎Conclusões Agenda
    4. 4. Stream Data Mining Fluxo de dados Deriva conceitual
    5. 5. Um stream, ou fluxo de dados, é uma sequência ordenada de instâncias que em muitas aplicações de mineração pode ser lido apenas uma ou um pequeno número de vezes usando recursos de computação e armazenamento limitados. Fluxo de dados (streams)
    6. 6. ◎Impossível armazenar todos os dados. ◎Velocidade de chegada dos elementos obriga cada elemento particular a ser processado essencialmente em tempo real. ◎Os dados do passado podem tornar-se irrelevantes ou mesmo prejudiciais. Características
    7. 7. Streamings de dados são caracterizados pela existência de derivas de conceitos, o seja, o mecanismo de geração de dados subjacente, ou o conceito que está sendo tentado aprender a partir dos dados, está em constante evolução.
    8. 8. Conceito refere-se à variável alvo, que o modelo vai tentar prever. Uma mudança de conceito é a alteração do conceito subjacente ao longo do tempo. O problema da deriva conceitual descreve uma mudança de conceito que acontece de maneira não esperada. Deriva conceitual
    9. 9. É uma substituição imprevista de uma fonte de dados S1 (com uma subjacente distribuição de probabilidade ΠS1), com outra fonte S2 (com distribuição ΠS2). Deriva conceitual
    10. 10. Deriva conceitual
    11. 11. Registros históricos Aprendiz Modelo Dados de produção Classificador Classificações Stream Aprendiz Modelo Classificador Stream Data Mining e Mineração Tradicional
    12. 12. Stream Data Mining e Mineração Tradicional Tradicional Stream Data Mining Nùmero de passes Vàrios Simples Tempo de processamento Ilimitado Restringido Uso de memòria Ilimitado Restringido Tipo de resultado Exato Aproximado Conceito Estàtico Evolutivo
    13. 13. Classificadores (individual ou ensemble), se destinados a ambientes não estacionários, tem que se adaptar aos cambios de conceito. Um classificador para um fluxo de dados deve ser capaz de reagir á mudança de conceito esquecendo dados desatualizados e ao mesmo tempo aprender novas descrições de classe.
    14. 14. Mecanismos de esqueciment o Janelas deslizantes Deteitores de deriva
    15. 15. Janelas deslizantes Classificador Refazer ou atualizar Janela deslizante
    16. 16. Janelas deslizantes Algoritmo 1 Algoritmo básico de janelas deslizantes Entrada: S: stream de exemplos W: janela de exemplos Saída: C: um classificador a partir dos dados en W 1: Inicializa janela W; 2: para todos os exemplos xi ∈ S faza: 3: W ← W ⋃ { xi } 4: Se necessário apagar exemplos não actuais de W; 5: Refazer / Atualizar C utilizando W;
    17. 17. Ao usar janelas de tamanho fixo existe um dilema. Ao escolher um tamanho pequeno para a janela o classificador irá reagir rapidamente às mudanças, mas pode perder em precisão em períodos de estabilidade, a escolha de um tamanho grande vai resultar em um aumento da precisão em períodos de estabilidade, mas vai deixar de se adaptar às rápidas mudanças. É por isso que formas dinâmicas de modelação do processo de esquecimento têm sido propostos.
    18. 18. Janelas com funções de peso Algoritmo 2 Algoritmo básico de janelas com funções de peso Entrada: S: stream de exemplos k: tamanho da janela w(): função de peso Saída: W: janela de exemplos 1: Inicializa janela W; 2: para todos os exemplos xi ∈ S faza: 3: se |W| = k entonces: 4: Apagar exemplos não actuais de W; 5: W ← W ⋃ { xi } 6: para todos os exemplos xj ∈ W faza: 7: Calcular peso dos exemplos w(xj)
    19. 19. Janelas dinâmicas FISH : utiliza igualdades de tempo e espaço entre exemplos. ADWIN : Sempre que duas sub janelas de W, suficientemente grandes, exibem médias bastante distintas, pode-se concluir que os correspondentes valores esperados são diferentes.
    20. 20. Depois de técnicas de janelas, outro grupo de algoritmos que permitem adaptar quase qualquer mecanismo de aprendizagem para mineração de fluxos de dados evolutivos são os detectores de concept drift.
    21. 21. Deteitores de deriva conceitual DDM EDDM
    22. 22. DDM: Drift Detection Method Stream Aprendiz Modelo Classificador Quantidade de erros tem distribução binomial si =√pi * (1 - pi) /i si : desvío standard pi: probabilidade de predição errada n > 30 Distribuçao normal si + pi ⦥ pmin+ ∝ * smin nível de aviso si + pi ⦥ pmin+ 𝛽 * smin nível de alarme ∝ : Coeficiente de confiança de aviso 𝛽 : Coeficiente de confiança de alarma de deriva
    23. 23. EDDM: Drift Detection Method 2*si'+ pi'/ 2*smax'+ pmax' < ∝ nível de aviso 3*si'+ pi'/ 3*smax'+ pmax' < 𝛽 nível de alarme pi': Distância media entre dois ocorrências de erros consecutivas. si': Devío standard ∝ : Coeficiente de confiança de aviso 𝛽 : Coeficiente de confiança de alarma de presença de deriva
    24. 24. Árvores de Hoeffding As árvores de decisão foram os primeiros mecanismos de aprendizagem a serem adaptados para mineração de fluxo de dados usando o Salto de Hoeffding o que dá certo nível de confiança sobre o melhor atributo para dividir a árvore utilizando calculos probabilísticos baseados em exemplos anteriores, portanto, é possível construir o modelo baseado em certo número de instâncias já vistas.
    25. 25. Salto de Hoeffding ∊ = √ (R2 ln(1/δ) )/2n Com probabilidade 1-δ a méia de acerto de uma variável aleatória com extenção R não vai ser diferente da méia estimada depois de n observações por mais de:
    26. 26. Árvores de Hoeffding Em vez de selecionar o melhor atributo depois de ver todos os exemplos, ele usa o salto de Hoeffding para calcular o número de exemplos necessários para selecionar o nó de divisão correto.
    27. 27. Árvores con mecanismos de esquecimento CVFDT : Very Fast Desition Tree, utiliza uma janela de tamanho fixo para determinar quáis nós estão envelhecendo e poderiam precisar atualização. Utiliza o salto de Hoeffding e basea- se em apagar as folhas menos promissoras. HT + EWMA(Exponential Weighted Moving Average ) HT + ADWIN(Adaptive Windowing )
    28. 28. Algoritmos tipo ensemble Hoeffding Option Trees Accuracy Weighted Ensemble
    29. 29. Um classificador tipo ensemble combina a probabilidade resultante de um conjunto de classificadores individuais. Constitui uma maneira comum de aumentar a precisão da classificação. Devido à sua modularidade fornecem uma forma natural de adaptação à mudança, modificando membros do conjunto. A decisão combinada de muitos classificadores individuais geralmente é mais precisa do que aquela dada por um único componente.
    30. 30. Algoritmos ensemble Algoritmo 3 Algoritmo de treinamento ensemble genérico Entrada:S: stream de exemplos k: quantidade de classificadores no ensemble Saída: E: ensemble (conjunto) de classificadores 1: E ← k classificadores; 2: para todos os classificadores Ci ∈ E faza: 3: Coloca um peso a cada exemplo en S para criar uma distribução de peso Dm ; 4: Cria ou atualiza Ci com S modificada pela Dm
    31. 31. Hoeffding Option Trees São árvores de Hoeffding regulares os quais contem nós de opções adicionais que permitem a aplicação de vários testes, levando a várias árvores Hoeffding como caminhos separados.
    32. 32. Hoeffding Option Trees Consistem em uma única estrutura que efficientemente representa várias árvores. Um exemplo particular pode viajar para baixo vários caminhos da árvore, contribuindo, de maneras distintas, a diferentes opções.
    33. 33. Hoeffding Option Trees Permitem que cada exemplo de treinamento atualize um conjunto de nós de opção ao invés de apenas uma única folha onde os nós de opção funcionam como nós da árvore de decisão padrão com a diferença de que eles podem dividir os caminhos de decisão em várias sub-árvores
    34. 34. Hoeffding Option Trees Em vez de selecionar o melhor atributo depois de ver todos os exemplos, ele usa o salto de Hoeffding para calcular o número de exemplos necessários para selecionar o nó de divisão correto.
    35. 35. Hoeffding Option Trees Temperatura Nó de opção Humidade Aspecto exterior Sol Escuro Chuvos o Nó de opção Ventos o Humidad e Op1 Op1 Op1Sim Não < 85 >=8 5 >= 70< 70 >= 15< 15 Op 1 Op 2
    36. 36. Accuracy Weighted Ensemble O fluxo de dados de entrada é dividido em pedaços sequenciais do mesmo tamanho cada um, S1, S2, ... , Sn, sendo Sn o pedaço mais actual. Vai se a aprender um classificador Ci para cada Si, i ≥ 1.
    37. 37. Accuracy Weighted Ensemble Limite Ótimo Overfitting
    38. 38. Accuracy Weighted Ensemble Decisões baseadas na distribuição de classe dos exemplos tendem a ser melhores do que aquelas baseadas unicamente em o tempo de chegada dos dados. Os dados históricos cujas distribuições de classe são semelhantes à de dados atuais podem reduzir a varianza do modelo mais recente (atual) e aumentar a precisão da classificação.
    39. 39. Accuracy Weighted Ensemble Dados exemplos de teste T, é preciso dar a cada classificador Ci um peso inversamente proporcional ao erro esperado de Ci na classificação de T. O peso do classificador Ci é derivado através de uma estimativa do erro na predição esperada a partir dos exemplos de teste.
    40. 40. Accuracy Weighted Ensemble Probabilidade dada pelo classificador Ci que x é uma instância da classe (1) (2) (3) Erro quadrático médio de um classificador seleccionado aleatoriamente Erro quadrático médio de um classificador i.
    41. 41. Accuracy Weighted Ensemble Algoritmo 4 Algoritmo AWE Entrada:S: stream de exemplos d: tamanho de cada pedaço de dados C: conjunto de classificadores já treinados (opcional) k: quantidade total de classificadores Saída: E: ensemble (conjunto) de k classificadores com peços atualizados 1: Para todos os pedaços de dados (data chunk) xi ∈ S faza: 2: treinar C' em xi 3: computar taza de erro de C' usando validação cruzada en S 4: obter peso w' para C' usando (3) 5: Para todos os classificadores Ci ∈ C faza: 6: aplicar Ci em xi para obter MSEi 7: computar wi baseado em (3) 8: E ← os k classificadores com melhor peso en C ⋃ {C' } 9: C ← C ⋃ {C' }
    42. 42. Experimentação
    43. 43. Ambiente de software para desenvolvimento de algoritmos e para a realização de experimentos para a aprendizagem online desenvolvido em Java. Contém uma coleção de geradores de fluxo de dados, algoritmos de aprendizado on-line e procedimentos de avaliação. Massive Online Analysis
    44. 44. Dos métodos classificadores individuais, foi escolhida uma Árvore Hoeffding com um detector de deriva conceitual DDM (HT + DDM) e uma árvore de desiçao com uma janela estática (Árvore + Janela). Dos métodos tipo ensemble foram escolhidos o Accuracy Weighted Ensemble (AWE) e o Hoeffding Option Tree (HOT).
    45. 45. Avaliador tipo data chunk ... X1 X2X0 Xi Treinar modelo com X0 Testar modelo em X1 Atualizar modelo com X1 Testar modelo em X2 Atualizar modelo com X2 Testar modelo em Xi Atualizar modelo com Xi
    46. 46. Colecções
    47. 47. Australian New South Wales Electricity Market Neste mercado, os preços não são fixos e são afetados pela demanda e oferta do mercado, etapa do ano, tempo e hora do dia, ao mesmo tempo, mostrando sensibilidade para eventos de curta duração, os quais foram ajustados a cada cinco minutos. O conjunto de dados contém 45,312 casos. A etiqueta de classe (up, down) identifica a mudança de preço relativo a um médio móvel das últimas 24 horas. Contem concept drift tipo abrupta.
    48. 48. Gerador MOA Waveform Ele consiste de um fluxo de dados com três classes de decisão onde as instâncias são descritos com 40 atributos. Os dados gerados apresentam deriva conceitual de tipo gradual.
    49. 49. Resultados Uso da memoria Tempo de treino e teste Acuracia e reacção á deriva conceitual Conclusões
    50. 50. Tempo médio em ms. Waveform Electricity Market Treino Teste Treino Teste HT + DDM 162,3 9,03 3,1 0,37 Árvore + Janela 23,4 17,53 17,36 1,32 HOT 2615,73 50,12 87,1 4,34 AWE 465,13 120,1 50,7 10,26
    51. 51. Tempo treino no Waveform
    52. 52. Tempo teste no Waveform
    53. 53. Tamanho médio dos modelos em MB Waveform Electricity Market HT + DDM 1,23 0,03 Árvore + Janela 0,26 0,12 HOT 12,26 0,39 AWE 0,37 0,19
    54. 54. Uso da memoria em Waveform
    55. 55. Uso da memoria em Electricity Market Dataset
    56. 56. Acuracia média dos modelos em percentagem. Waveform Electricity Market HT + DDM 82,47 67,53 Árvore + Janela 77,38 56,67 HOT 84,93 75,22 AWE 81,87 68,55
    57. 57. Acuracia média dos modelos em Waveform.
    58. 58. Acuracia média dos modelos em Electricity Market DS.
    59. 59. Conclusões
    60. 60. Conclusões Neste trabalho, foi abordado o problema de mineração de fluxos de dados os quais contem deriva conceitual. Foram definidas as principais características dos streams de dados e discutido diferentes tipos de alterações que ocorrem nestes. Foram analisadas as estratégias de classificadores individuais com mecanismos de esquecemento tipo janela e com deteitores de deriva e algoritmos compostos por um grupo de classificadores individuais trabalhando
    61. 61. Conclusões Dos algoritmos analisados no geral o algoritmo HOT apresentou melhor acuracia nos testes, mas a utilização da memoria e os tempos de treino e teste que precisa não são os melhores e esse é um aspecto muito importante em Stream Data Mining.
    62. 62. Conclusões Dos algoritmos estudados é difícil seleccionar o mais apropriado para a generalidade dos processos. A necessidade de processamento on-line com restrições no tempo ea memória obriga aos investigadores a concentrar-se no uso dos recursos, enquanto á concepção de classificadores precisos.
    63. 63. Referências Bifet, Albert, and Bifet Albert. 2009. “Adaptive Learning and Mining for Data Streams and Frequent Patterns.” ACM SIGKDD Explorations Newsletter 11 (1): 55. “Datasets.” 2011a. MOA Massive Online Analysis. August 29. http://moa.cms.waikato.ac.nz/datasets/ . Domingos, Pedro, Domingos Pedro, and Hulten Geoff. 2000. “Mining High-Speed Data Streams.” In Proceedings of the Sixth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining - KDD ’00. doi:10.1145/347090.347107 . Gaber, Mohamed Medhat. 2011. “Advances in Data Stream Mining.” Wiley Interdisciplinary Reviews. Data Mining and Knowledge Discovery 2 (1): 79–85. Gaber, Mohamed Medhat, Zaslavsky Arkady, and Krishnaswamy Shonali. 2009. “Data Stream Mining.” In Data Mining and Knowledge Discovery Handbook, 759–87. Kurlej, B, and M Wozniak. 2011. “Active Learning Approach to Concept Drift Problem.” Logic Journal of the IGPL / Interest Group in Pure and Applied Logics 20 (3): 550–59. Maloof, Marcus A. 2005. “Concept Drift.” In , 202–6. Pechenizkiy, Mykola. 2013. Handling Concept Drift in Adaptive Information Systems. Read, Jesse, Read Jesse, and Bifet Albert. 2014. “Data Stream Mining.” In , 664–66. Seema, S. 2012. “Classification of Evolving Stream Data Using Improved Ensemble Classifier.” International Journal of Data Mining & Knowledge Management Process 2 (4): 1–9. Wang, Haixun, Wang Haixun, Fan Wei, Philip S Yu, and Han Jiawei. 2003. “Mining Concept- Drifting Data Streams Using Ensemble Classifiers.” In Proceedings of the Ninth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining - KDD ’03. doi:10.1145/956755.956778 . Yao, Yuan, and Yao Yuan. 2013. “Concept Drift Visualization.” Journal of Information and Computational Science 10 (10): 3021–29. Yusuf, B Reshma, Yusuf B.Reshma, and Reddy P.Chenna. 2012. “Mining Data Streams Using
    64. 64. Thanks! Any questions? You can find me at: rojas.luis.mail@gmail.com

    ×