Sumário DBSCAN kd-trees DBSCAN com kd-trees DBSCAN. DBSCAN Parâmetros: Eps e MinPts Algoritmo: R*-Trees DBSCAN com R*-Trees. Noise
Texto
(2) Exemplo Eps = MinPts = 5 2 3. 1. CORE. 2. Border. 3. Border. Exemplo Eps = MinPts = 5. 5. Border. 6. Border. 4. 7. A. 2 3. 8. 9 B. OBJETO. TIPO. 1. CORE. 2. BORDER. 3. Border. 4. 7 5. 6. C. TIPO. 1. 4 4. 8. OBJETO. 1. Border. 6. Border. 7 5. 6. 5. 8. 9. 9. A. A. 8. B C. 9 7. A. C. B. B C. 5. Exemplo. OBJETO. Eps = MinPts = 5 4. 2 3. 1 6. 8 C. CORE BORDER. 3. CORE. 4. Border. 5. Border. 6. Border. OBJETO. Eps = MinPts = 5 4. 2 3. 8. 7 B. 1. 7 5. 9 A. Exemplo. TIPO. 2. 6. 1 6. 1. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. Border. 6. Border. 7 5. 8. 9. 9. A. A. 8. B C. C 7. 9 7. A B. TIPO. B C 8.
(3) Exemplo Eps = MinPts = 5 4. 2 3. 1. 8. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. Border. Exemplo Eps = MinPts = 5 4. 2 3. 8. 9 7. A. C. TIPO. 1. 7 5. 6. OBJETO. B. 1. TIPO. 1. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 7 5. 6. OBJETO. 8. 9. 9. A. A. 8. B C. 9 7. A. C. B. B C. 9. Exemplo. OBJETO. Eps = MinPts = 5 4. 2 3. 1 6. 8 C. 5. CORE BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. OBJETO. Eps = MinPts = 5 4. 2 3. 8. 7 B. 1. 7. 9 A. Exemplo. TIPO. 2. 10. 1 6. 1. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 7 5. 8. 9. 9. A. A. 8. B C. C 11. 9 7. A B. TIPO. B C 12.
(4) Exemplo Eps = MinPts = 5 4. 2 3. 1. 8. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 8. 9 7. A. C. TIPO. 1. Exemplo Eps = MinPts = 5 4. B. 2 3. 7 5. 6. OBJETO. BORDER. 1. TIPO. 1. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 7 5. 6. OBJETO. 8. BORDER. 9. CORE. 9. CORE. A. Border. A. CORE. B. Border. B. Border. C. Border. C. Border. 8. 9 7. A. C. B. 13. Exemplo. OBJETO. Eps = MinPts = 5 4. 2 3. 1 6. 8 C. 5. CORE BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 8. 7 B. 1. OBJETO. Eps = MinPts = 5 4. 2 3. 7. 9 A. Exemplo. TIPO. 2. 14. BORDER. 1 6. TIPO. 1. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 7 5. 8. BORDER. 9. CORE. 9. CORE. A. CORE. A. CORE. B. BORDER. B. BORDER. C. Border. C. BORDER. 8 C 15. 9 7. A B. 16.
(5) Exemplo. OBJETO. TIPO. 1. CORE. 2. BORDER. 3. CORE. 4. BORDER. 5. BORDER. 6. BORDER. 7. NOISE. 8. BORDER. Eps = MinPts = 5 4. 2 3. 1 6. 8 C. 5. 9 7. A B. 9. CORE. A. CORE. B. BORDER. C. BORDER. Custo Computacional Complexidade? Percorrer cada objeto para detectar se é core, border ou noise: O(N). Para cada objeto, identificar os outros objetos que estão a uma distância máxima “Eps”: O(N). Portanto: O(N2).. 17. 18. Custo Computacional Mas se for possível identificar os objetos que estão. num raio “Eps” de maneira mais eficiente que O(N)?. Figura: Wikipedia: http://en.wikipedia.org/wiki/File:3dtree.png 19. 20.
(6) kd-Trees. Algoritmo de Construção. Eixo X. Árvore binária.. Função: kdtree (pontos, altura) Se pontos = vazio retorna nulo senão eixo = altura mod QT_DIM mediana = selecionar_mediana(pontos, eixo) criar Nó = mediana Nó.esquerda = kdtree(pontos < mediana, altura+1) Nó.direita = kdtree(pontos > mediana, altura+1) retorna Nó. Eixo Y. Cada nó é um ponto no espaço. Cada nó não-folha divide o. subespaço em dois com um hiperplano em um eixo (pode-se usar a mediana). Sub-árvore esquerda (direita) representa os pontos que estão a esquerda (direita) do hiperplano. Os eixos para geração dos hiperplanos são escolhidos de maneira intercalada: x, y, z, x, y, z, x, ... (Existem variações desta técnica). 21. H. Samet, 2006. Exemplo 10. 3. 0. 10. 1 2 3 5 6 7. 3 5. 8 7 C. B. 10. 23. 0. Eixo Y. A. 1. 1,9. 7,5. 1 6. 9 A. 2. 4. 1 6. 4,2. Eixo X. 2. 4. 4. 4,2. 8 9 A B C. C. Exemplo. 4 Eixo X. 8. 22. 5. B C. 8 9. 5 6 7. 2 3. 9 7. A B. 10. 24.
(7) Exemplo 10 2 3. C. 0. A. 1. 1,9. 7,5. 10. X. 9. 0,9. 8. 5. 3. 1,1. 9. 5,6. 8. B. B. 9. 6. 7. 10. C. 2 25. 0. Y. A. 1. 1,9. 7,5. 1 6. 7. A. 2. 4 3. C. 4,2. X. 1 6. 8. Y 5. 4. 4,2. X. 4. Exemplo. 4. C. 5. X. 9. 0,9. 8. 5. 3. 1,1. 9. 5,6. 7. A. B. B. 9. 6. 7. 10. 2 26. Custo Computacional. Custo Computacional. Custo de construção da kd-tree: N log2N.. Mas é possível identificar os objetos que estão num. raio “Eps” de maneira mais eficiente que O(N)? Altura da árvore: log2N. Se for usado a mediana para construção do hiperplano. Logo, complexidade de encontrar um objeto é log2N.. 27. 28.
(8) Busca Intervalar. Busca Intervalar. Função: busca(Nó, Intervalo) eixo = altura mod QT_DIM visita(Nó). É possível detectar os subespaços (hiperplanos) que. “interceptam” a hiper-esfera com raio Eps.. 10. 3. se Nó.valor(eixo) > Intervalo.valor(eixo).menor busca(Nó.esquerda, Intervalo) se Nó.valor(eixo) < Intervalo.valor(eixo).maior busca(Nó.direita, Intervalo). 2 3. C. 0. 1. 1. 3 8. 5. 3. 8. 7 B. B. 10. 9. 6. 7. C. 2 31. 0. 7,5. Y. 1 6. X. 9 A. 2. 4. C. X. 10. Y 5. 30. 4. Y: [4,8, 9,2]. 1 6. 8. 10. X: [5, 9,4]. A. 10 4. B. 4,2. X. 7. Limites da esfera:. 4. Y: [4,8, 9,2]. “Objeto 1” com raio 2,2. Limites da esfera: X: [5, 9,4] Y: [4,8, 9,2]. 9. 0. 29. X: [5, 9,4]. 5. A. C. Limites da esfera:. Hiper-esfera centrada no. 1 6. 8. Exemplo:. 2. 4. 5. 5. 3. X. 9 7. A. 6. B. 10. 7. 2 32.
(9) Limites da esfera:. Limites da esfera:. 4. X: [5, 9,4]. X. Y: [4,8, 9,2]. 1 2 3. 8. 3 5. X. 9. 5. 3. 9. 5,6. 8. 6. B. 7. 10. 33. 5. 5. 7 6. B. 0. Hiper-esfera centrada no “Objeto 7” com raio 2,2.. 34. 4,2. X. Y: [-0,3, 3,9]. A. 10. 3. C. 3 6. 8 7 C. B. 10. 35. 0. 1. Y. 1. Y: [-0,3, 3,9]. 5. 9 A. 2. 4. X: [7,3, 11,7]. 1 6. 8. Limites da esfera:. 2. 4. 2. 4. X: [7,3, 11,7]. 10. 7. 10. Limites da esfera:. Exemplo 2. 3. X. 9 A. C. 2. Y. 1 6. 7. 0. 0. 2. 4. Y. A. C. 1. 10. 1 6. X. Y: [4,8, 9,2]. 10 4. 4. X: [5, 9,4]. C. 5. 8. 5. 3. X. 9 7. A. B. B. 10. 9. 6. 7. 2 36.
(10) Limites da esfera:. Limites da esfera:. 4. X: [7,3, 11,7]. X. Y: [-0,3, 3,9]. 1 2 3. 8. 3 5. 5. 3. 8. 7 6. B. 0. 7 37. X. Y: [-0,3, 3,9]. 8 C. 7. A. 6. B. 0. 7. 10. 38. Quanto maior for o Eps, mais objetos serão visitados. Se Eps = 0 (zero), então o custo computacional será. Y. log2N. Se Eps = Infinito, então o custo será N.. 1 6. 9. parâmetro Eps:. 1. 3. X. 9. A quantidade de objetos visitados depende do. 10 2. 5. 5. Busca Intervalar. 4. X: [7,3, 11,7]. 0. 2. 10. Limites da esfera:. C. Y. 1 6. X. 9. 4. 2. 4. 7,5. Y. A. C. 1. 10. 1 6. X. Y: [-0,3, 3,9]. 10 4. 4. X: [7,3, 11,7]. 5. 5. Pode-se dizer que o custo é da ordem de O(log2N) para. o caso médio.. X. 9 7. A. 6. B. 10. 7 39. 40.
(11) DBSCAN: Custo Computacional Qual a complexidade do DBSCAN usando kd-trees? Percorrer cada objeto para detectar se é core, border ou noise: O(N). Para cada objeto, identificar os outros objetos que estão a uma distância máxima “Eps”: O(log2N) (caso médio). Portanto, na média: O(N log2N).. R*-Trees. OBS: Foi assumido distância Euclideana, mas pode ser. adotadas outras distâncias. Figura: Wikipedia: http://en.wikipedia.org/wiki/File:RTree-Visualization-3D.svg 41. 42. R*-Trees. Cada nó não-folha contém: Endereço de um nó filho. Área do retângulo que cobre todos os nós filhos.. Baseadas em árvores B+. Ex: M = 2, m = 1. 10 R1. 8 2. 4. 4 3. 4 2. 4. 6. R6 R2 R7 8. Nós não-folha contém as chaves. Registros (pontos/objetos) somente nos nós folhas. N. Beckmann, 1990. 1. R3. 8. C 43. 0. R1 R2. 2. R5 5. R3. R6 R7. R4 R5. R4. 9 7. A. 3. 4. 1. 2. 6. 5. 7. 8. C. 9. A. B. B. 10. 44.
(12) Busca Intervalar. Busca Intervalar. Hiper-esfera centrada no “Objeto 7” com raio 2,2. 10. 10. 3. 3. 1. Y: [-0,3, 3,9]. 5. R1 R2. 2. 4. X: [7,3, 11,7]. 1 6. R1. Limites da esfera:. 2. 4. 5. 6. R3. R6 R7. R4 R5. R2 8. 8. 9 7. A. C. 0. 10. 45. 7. A. C. B. 9. 0. Busca Intervalar. 3. 4. 1. 2. 6. 5. 7. 8. C. 9. A. B. B. 10. 46. Busca Intervalar. 10. 10 R1 R2. R1 R2. 2. 4 3. 1. R3 6. 2. 4 3. R5 5. R3. R4 R5. 1 6. R5 5. R3. R4 R5. R4 8 C. 0. 8. 9 7. A. 3. 4. 1. 2. 6. 5. 7 C. B. 10. 47. 0. 9 7. A. 5. 7. B. 10. 48.
(13) Complexidade Custo de construção da R*-tree: N logmN. Custo da busca intervalar: A quantidade de objetos visitados depende dos parâmetros Eps, M e m. Novamente, pode-se dizer que o custo é da ordem de O(logmN) para o caso médio. Portanto, a complexidade do DBSCAN usando R*-tree. é na média: O(N logmN).. • M. Ester, H-P Kriegel, J. Sander, X. Xu: “A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise”, Proc. 2nd KDD, 1996, pp. 226-231. • N. Beckmann, H-P Kriegel, R Schneider, B. Seeger: “The R*tree: An Efficient and Robust Access Method for Points and Rectangles”, Proc. ACM SIGMOD, 1990, pp. 322-331. • H. Samet: “Foundations of multidimensional and metric data structures”, Morgan Kaufmaan, 2006. •D. T. Lee, C. K. Wong: “Worst-Case Analysis for Region and Partial Region Searches in Multidimensional Binary Search Trees and Balanced Quad Trees, Acta Informatica, 1977, pp. 2329.. 49. 50. kd-Tree com DBSCAN Na verdade, a “busca intervalar” pode ser modificada. Dúvidas. para “contar” os objetos que estão dentro da hiperesfera: Neste caso, se a quantidade de objetos for menor que. MinPts, então a busca pode parar.. Lucas Vendramin vendra@grad.icmc.usp.br 51. 52.
(14) Dimensões O(n.N1-1/n). Dimensões. 53. R*-Tree - Inserção Onde alocar o objeto E? Qual subretângulo?. Folha “estourou” Elimina da árvore e reinsere Divide o nó folha em 2. ChooseSubtree: IF childpointers point to leaves THEN . determine the minimum overlap/area cost.. IF do not point to leaves THEN determine the minimum area cost.. IF N has less than M entries THEN OK. Accommodate E in N. ELSE IF level is not root and is the first time THEN . REINSERT. ELSE (Split): ChooseSplitAxix (minimum margin). ChooseSplitIndex (minimum overlap/area). 55. 54.
(15)
Documentos relacionados
Em 1419, João Gonçalves Zarco e Tristão Vaz Teixeira desem- barcaram na ilha do Porto Santo depois de uma tempestade ter afastado as suas embarcações da rota desejada. O arquipélago
É claro, então, que, tal como indicado por aqueles autores (Herbart, Zöller), a leitura, realizada pelo jovem Schopenhauer , desta obra de Fichte forneceu-lhe um ímpeto e
AFM – microscopia de força atômica CN – nanocristais de celulose CNPL – nanocristais de celulose de folha de abacaxi CNPL5 – nanocristais de celulose de folha de abacaxi obtidos
Para determinar o nível de degradação do polímero, as análises de variação de massa molar são as mais utilizadas e indicadas, como, por exemplo, as de medida de viscosidade
tomar decisões para dar resposta a questões como: que pretendemos com nossa actuação em mercados internacionais? Como nosso o produto, serviço ou ideia é
Estas normalmente associam-se constituindo uma rede em que se conectam violências do sistema social com as praticadas no nível interpessoal (Assis, 1994). Face
No filme de Scorsese, a nova tecnologia revela-se não como um perigo mas como um desafio e uma oportunidade para explorar novas potencialidades na produção de filmes, como Peter
O uso da “narrativa de si” nas Ciências Sociais resulta de múltiplas perspectivas, que não são necessariamente marcadas por “uma verdadeira divergência de