Introducción al análisis topológico de datos con R (phom)

Post on 08-Jul-2015

313 views 1 download

description

Introducción al análisis topológico de datos con R (phom) donde vemos como utilizar la homología de persistencia como herramienta de análisis de datos, diagramas de persistencia y código de barras como salida visual para visualizar las propiedades topológicas.

Transcript of Introducción al análisis topológico de datos con R (phom)

Introducción al análisistopológico de datosen R. (phom)

Grupo de Interés Local de Madrid – 26 de Noviembre.Alfonso de Uña del Brío.

Alfonso de Uña del Brío briofons@gmail.com

Análisis topológico de datos

Es una técnica para el estudio cualitativo de datos.

Desarrollada en los últimos 15 años por un grupo de topólogos Gunnar Carlsson

Herbert Edelsbrunner

Robert Ghrist

John L. Harer

Afra Zomorodian

Objetivo: Aplicar la topología algebraica para obtener técnicas y herramientas que nos

permitan estudiar las propiedades topológicas y geométricas de un conjunto de datos.

Alfonso de Uña del Brío briofons@gmail.com

Paradigma análisis topológico de los datos

DATOS Estructura topológica

Propiedades topológicas

Se les asocia

Se estudianRetornamos a

los datos

Alfonso de Uña del Brío briofons@gmail.com

ATD como herramienta

Es una herramienta de análisis de datos meramente heurística.

Rama muy nueva dentro del desarrollo de la teoría de probabilidad y estadística.

Probabilidad en espacios de Banach

Topología estocástica

Inferencia estadística para homología persistente

Tiene aplicaciones muy concretas en contextos muy variados

Alfonso de Uña del Brío briofons@gmail.com

En busca de estructuras en los conjunto de datos

• A partir de un conjunto de datos queremos obtener información sobre que estructura forma en el espacio.

• Uso de la topología no depende de la geometría sino de las propiedades invariantes

Alfonso de Uña del Brío briofons@gmail.com

Topología de análisis de datos.

Análisis topológico de datos según Carlsson:

Como inferir estructuras de grandes dimensiones desde otras con dimensiones menores

Como crear una estructura global desde un conjunto de puntos discretos.

Está basado en como nuestro cerebro infiere la información del mundo que nos rodea.

Ejemplo: el ojo como aparato óptico es bastante malo es gracias a nuestro cerebro que a partir de las formas vagas que nos llegan infiere el mundo tal y como lo entendemos (visualización en 3d).

Alfonso de Uña del Brío briofons@gmail.com

Concepto Matemático: Homología persistente

Homología persistente:

Estructura topológica: Complejos simpliciales.

Propiedades topológicas: Grupos de homología, números de Betti.

Alfonso de Uña del Brío briofons@gmail.com

Complejos simpliciales

Alfonso de Uña del Brío briofons@gmail.com

Propiedades topológicas

Tenemos una serie de propiedades topológicas que se van formando a medida que el radio de los puntos van creciendo.

Cada una de estas propiedades tiene un tiempo de vida, será interesante para el estudio de los datos. (Detección de ruido).

Alfonso de Uña del Brío briofons@gmail.com

Números de Betti

Alfonso de Uña del Brío briofons@gmail.com

Homología persistente

Descripción matemática:

La teoría de la homología persistente crea la homología simplicial desde el algebra topológica, donde la homología simplicial define un conjunto de invariantes topológicos de complejos simpliciales con los que se puede describir las características topológicas de las formas…

Gunnar Carlsson, Topology and data, Bulletin of the American Mathematical Society 46 (2009), noº2, 255–308.

Alfonso de Uña del Brío briofons@gmail.com

Homología de persistencia

Dada una nube de puntos X {x1,x2,x3,…} queremos obtener información sobre la forma de estos puntos en el espacio. Además permite la descomposición multidimensional de las características topológicas de nuestro conjunto de datos

Relativamente nueva que se está incorporando cada vez más a diferentes campos de investigación. (En problemas concretos) Ecología Genética Procesamiento de imágenes Visión artificial (Reconocimiento de objetos en 3D) Redes de sensores Machine Learning

Alfonso de Uña del Brío briofons@gmail.com

Pasos para construer un código de barras

Step 1 Inicio

• Nube de puntos

Step 2 ComplejosSimpliciales

• Parámetroradio

Step 3 homología

• Construirhomologíapersistente

Step 4 ConstruirBarcode

• Basado nº Betti

Alfonso de Uña del Brío briofons@gmail.com

Creación de un código de barras a través de complejos simpliciales

Alfonso de Uña del Brío briofons@gmail.com

Vídeo creación de código de barras

Alfonso de Uña del Brío briofons@gmail.com

Paquete “pHom”: Persistent Homology in R

Es un paquete de R para generar la homología persistente de conjunto de datos en el espacio.

La homología persistente es una herramienta algebraica que permite acceder a propiedades topológicas de un conjunto de datos dados en varias dimensiones.

Clustering de las propiedades homológicas de los datos en muchas dimensiones.

Version: 1.0.3

Depends: Rcpp (≥ 0.9.7)

LinkingTo: Rcpp

Published: 2014-02-09

Author: Andrew Tausz

Maintainer: Andrew Tausz <atausz at stanford.edu>

License: BSD_3_clause + file LICENSE

Alfonso de Uña del Brío briofons@gmail.com

Paquete “pHom”

> intervals <- pHom(X, max_dim, max_f, metric = "manhattan")

Función que genera los intervalos de cada clase en cada dimensión hasta los límites que nos interese, solo se le puede pasar le valor máximo de la filtración (épsilon - radio).

Dos modos de filtración (rips y …)

Nos devuelve una matriz con tres columnas con dimensión inicio y fin

Alfonso de Uña del Brío briofons@gmail.com

Ejemplo

library(phom)

x <- runif(100)

y <- runif(100)

points <- t(as.matrix(rbind(x, y)))

max_dim <- 2

max_f <- 0.2

#Obtención de los intervalos inicio fin

intervals <- pHom(points, max_dim, max_f, metric="manhattan")

#diagrama de persistencia

plotPersistenceDiagram(intervals, max_dim, max_f,

title="Random Points in Cube with l_1 Norm")

Alfonso de Uña del Brío briofons@gmail.com

Ejemplo: Diagrama de persistencia

El diagrama de persistencia sería el siguiente:

Observamos más lazos de dimensión uno

Alfonso de Uña del Brío briofons@gmail.com

Ejemplo

library(phom)

N <- 50

x1 <- rnorm(N) * 0.1

y1 <- rnorm(N) * 0.1

X1 <- t(as.matrix(rbind(x1, y1)))

x2 <- rnorm(N) * 0.1 + 0.5

y2 <- rnorm(N) * 0.1 + 0.5

X2 <- t(as.matrix(rbind(x2, y2)))

x <- cbind(x1, x2)

y <- cbind(y1, y2)

X <- as.matrix(rbind(X1, X2))

max_dim <- 0

max_f <- 0.8

intervals <- pHom(X, max_dim, max_f, metric =

"manhattan")

Alfonso de Uña del Brío briofons@gmail.com

Ejemplo de Código de barras

plotBarcodeDiagram(intervals, max_dim, max_f, title = "")

Alfonso de Uña del Brío briofons@gmail.com

Ejemplo

t <- 2 * pi * runif(100) Diagrama de persistenciax <- cos(t); y <- sin(t) plotPersistenceDiagram()

X <- t(as.matrix(rbind(x, y)))

Alfonso de Uña del Brío briofons@gmail.com

Interpretación del código de barras

https://dreamtolearn.com/ryan/data_analytics_viz/50

Alfonso de Uña del Brío briofons@gmail.com

Interpretación del código de barras

Alfonso de Uña del Brío briofons@gmail.com

Una vez obtenido un código de barras…

¿Y ahora qué? Tenemos que interpretar el código de barras en nuestro estudio.

¿Qué significa tener agujeros de dimensión dos en nuestros datos? Interpretar las diferencias topológicas de diferentes espacios. Interpretar las modificaciones de las propiedades en el tiempo con nuestro conjunto de

datos.

Cuándo es útil utilizar ATD (TAD): Capacidad para manejar gran cantidad de datos computacionalmente. Seremos capaces de detectar una estructuras globales con ruido en nuestros datos. Podemos descubrir patrones ocultos en los datos y buscar tales patrones dentro de

un conjunto mayor de datos o otros datos dentro del mismo contexto.

Alfonso de Uña del Brío briofons@gmail.com

Estructura global de una nube de puntos

http://www.ams.org/journals/bull/2008-45-01/S0273-0979-07-01191-3/S0273-0979-07-01191-3.pdfBARCODES

Alfonso de Uña del Brío briofons@gmail.com

Interpretación en el espacio biológico

Alfonso de Uña del Brío briofons@gmail.com

Interpretación en el espacio biológico

TDA en nichos ecológicos. Vidal Allí

Alfonso de Uña del Brío briofons@gmail.com

Bibliografía

Conferencia "TDA y Genética", José María Ibarra Rodríguez

https://www.youtube.com/watch?v=c7pZpTvpLTY

Conferencia "TDA en nichos ecológicos", Vidal Alí

https://www.youtube.com/watch?v=EZibw3cdcyw

Conferencia "TDA, Persistent homology", Dr. José Antonio de la Peña

https://www.youtube.com/watch?v=sB2kA46ALNE

http://cran.r-project.org/web/packages/phom/vignettes/phom.pdf

Barcodes: The persistent topology of data

http://www.math.upenn.edu/~ghrist/preprints/barcodes.pdf

Alfonso de Uña del Brío briofons@gmail.com

Bibliografía

Topological Data Analysis

http://www.cs.dartmouth.edu/~afra/papers/ams12/tda.pdf (Afra Zomorodian)

Computational Topology and Data Analysis

http://web.cse.ohio-state.edu/~tamaldey/course/CTDA/CTDA.html

Topology and data (Gunnar Carlsson)

http://www.ams.org/journals/bull/2009-46-02/S0273-0979-09-01249-X/