Construcción y Análisis de
Redes Biológicas
Francisco J. Romero Campero
http://www.cs.us.es/~fran/
Dpt. de Ciencias de la Computación e
Inteligencia Artificial
Universidad de Sevilla
Biología Molecular vs Biología de Sistemas
Reduccionismo vs Sistemas Complejos
Biología Molecular
Biología Molecular
de Sistemas
●
Aproximación reduccionista. ●
Aproximación integradora como
sistemas complejos.
●
Estudio de componentes
moleculares (genes, ●
Estudio de interacciones entre
proteínas, …) los componentes moleculares
(genes, proteínas, …)
●
Enfermedades
monogénicas. ●
Enfermedades complejas.
●
Ingeniería genética a un ●
Ingeniería genética a sistemas
único gen. reguladores génicos.
●
Ingeniería metabólica a una ●
Ingeniería metabólica a rutas
única enzima. metabólicas completas.
Redes Biomoleculares
Redes de interacción Redes metabólicas
entre proteínas
Redes de coexpresión génicas
Redes Biomoleculares
●
Una red es una representación de las interacciones que tienen
lugar entre las entidades que dan lugar a un fenómeno
estudiado.
– Los nodos representan las entidades genéricas que
constituyen el sistema (genes, proteínas, metabolitos,
etc).
– Las aristas entre distintos nodos indican que las
correspondientes entidades interactúan de alguna forma.
Definición de Red o Grafo (no dirigido)
Una red o grafo G es un par de conjuntos (V,E)
• V={v1,v2,....vn} es el conjunto de vértices o nodos.
• E={(vi,vj),(vi’,vj’)......} es un conjunto de pares no ordenados de
elementos de V.
• E se denomina conjunto de aristas de la red.
• El numero de nodos se denomina orden de la red.
• El número de aristas se denomina tamaño de la red.
Definición de Red o Grafo (no dirigido)
G = (V,E)
• V={1,2,....,27} es el
conjunto de vértices o
nodos.
Nodo • E={{1,5} , {2,6} , {5,6} ,
{6,7} , {5,9} , {5,10} ,
{6,10} , {7,10} , {3,10} ,
{4,8} , {8,10} , {14,10} ,
Arista {10,12} , {12,13} , {11,10} ,
{15,10} , {16,10} , {10,20} ,
{17,10} , {17,11} , {17,8} ,
{17,12} , {17,18} , {17,20} ,
{16,20} , {19,20} , {23,20} ,
{24,20} , {25,20} , {21,20} ,
{22,21} , {23,24} , {24,25} ,
{26,24} , {27,25}} son las
aristas de la red.
Definición de Red o Grafo Dirigido
En un grafo dirigido las aristas
tienen una dirección fija. Las
aristas se definen como pares
ordenados donde el primer nodo
es el origen de la arista y el
Nodo segundo el destino.
• E={(1,5) , (2,6) , (5,6) , (6,7) ,
(5,9) , (5,10) , (6,10) , (7,10) ,
(3,10) , (4,8) , (8,10) , (14,10) ,
Arista
(10,12) , (12,13) , (11,10) ,
(15,10) , (16,10) , (10,20) ,
(17,10) , (17,11) , (17,8) ,
(17,12) , (17,18) , (17,20) ,
(16,20) , (19,20) , (23,20) ,
(24,20) , (25,20) , (21,20) ,
(22,21) , (23,24) , (24,25) ,
(26,24) , (27,25)} son las aristas
de la red.
Definición de Red o Grafo Ponderado
En una red o grafo ponderado
cada arista tiene asociado un
peso o valor numérico que
Nodo representa una característica de
la correspondiente interacción.
Arista
-0.5
0.2 0.6
Especificación de redes o grafos
●
Dado una red o grafo G=(V,E) se puede especificar utilizando la matriz de adyacencia
A = (aij) tal que:
1 si y solo si {i,j} Є V
aij=
0 en otro caso
000010000000000000000000000
000001000000000000000000000
000000000100000000000000000
000000010000000000000000000
100001001100000000000000000
010010100100000000000000000
000001000100000000000000000
000100000100000000000000000
000010000000000000000000000
001011110010011100000000000
000000000100000010000000000
000000000000100010000000000
000000000001000000000000000
A= 000000000100000000000000000
000000000100000000000000000
000000000100000000010000000
000000000011000001010000000
000000000000000010000000000
000000000000000000010000000
000000000000000110101011100
000000000000000000010100000
000000000000000000001000000
000000000000000000010001000
000000000000000000010010110
000000000000000000010001001
000000000000000000000001000
000000000000000000000000100
Grado de un Nodo
●
Dos nodos de un grafo son
vecinos o adyacentes si existe
una arista que los conecta.
●
El grado de un nodo (node
Nodo degree) es el número vecinos
que tiene dicho nodo.
●
En los grafos dirigidos se calcula
el grado de entrada y el grado
Arista de salida.
●
Un grafo se dice que es regular
si todos los nodos tienen el
mismo grado.
Degree(27) = 1
Degree(20) = 8
Cálculo del grado de un nodo
000010000000000000000000000
000001000000000000000000000
000000000100000000000000000
000000010000000000000000000
100001001100000000000000000
010010100100000000000000000
000001000100000000000000000
000100000100000000000000000
000010000000000000000000000
001011110010011100010000000
000000000100000010000000000
000000000000100010000000000
000000000001000000000000000
A= 000000000100000000000000000
000000000100000000000000000
000000000100000000010000000
000000000011000001010000000
000000000000000010000000000
000000000000000000010000000
000000000100000110101011100
000000000000000000010100000
000000000000000000001000000
000000000000000000010001000
000000000000000000010010110
000000000000000000010001001
000000000000000000000001000
000000000000000000000000100
Cálculo del grado de un nodo
000010000000000000000000000
000001000000000000000000000
000000000100000000000000000
000000010000000000000000000
100001001100000000000000000
010010100100000000000000000
000001000100000000000000000
000100000100000000000000000
000010000000000000000000000
001011110010011100010000000
000000000100000010000000000
000000000000100010000000000
000000000001000000000000000
A= 000000000100000000000000000
000000000100000000000000000
000000000100000000010000000
000000000011000001010000000
000000000000000010000000000
000000000000000000010000000
8← 000000000100000110101011100
000000000000000000010100000
000000000000000000001000000
000000000000000000010001000
000000000000000000010010110
000000000000000000010001001
000000000000000000000001000
000000000000000000000000100
Coeficiente de agrupamiento
●
El coeficiente de agrupamiento
(clustering coefficient) de un nodo es una
medida local que refleja el nivel de
agrupamiento que existe entorno a un
nodo.
Nodo ●
Se calcula el número de vecinos del nodo
correspondiente dv = degree(v). Entre estos
vecinos el número máximo de aristas es
dv(dv – 1) / 2. Este valor corresponde al
mayor agrupamiento posible.
Arista
●
Se determina el número real de aristas
entre los vecinos de v Nv.
●
Se calcula el coeficiente de agrupamiento
como:
Nv
Cv=
d v (d v −1)
( )
2
Coeficiente de agrupamiento
●
Coeficiente de agrupamiento:
Nv
Cv =
d (d −1)
( v v )
2
0
C 21= =0
2(1)
( )
2
1
C 23= =1
2(1)
( )
2
4
C 20 = =0.14
8 (7)
( )
2
Definición de Paseo y Camino
●
Un paseo de un nodo u a un
nodo v es una secuencia de
nodos {v0,v1,....vk} con v1=u
vk=v y {vi-1,vi} rama del grafo.
Nodo ●
El número de aristas del paseo
es su longitud.
●
Un paseo en el cual todos los
Arista vertices {v0,v1,....vk} son
distintos se denomina camino.
●
Un camino mínimo entre dos
nodos es aquel de menor
longitud de entre todos los
posibles caminos entre ambos
nodos.
Extensión de propiedades de nodos a
propiedades globales de redes
●
Distribución del grado de nodos en un
grafo G=(V,E):
P(k) = mk / m donde
mk es el número de nodos de grado k
m es el orden de G
●
Coeficiente de agrupamiento medio de
un grafo G=(V,E):
1 m
CG= ∑ C
m i =1 i
Cálculo de la distribución
del grado de nodos
1← 000010000000000000000000000
1← 000001000000000000000000000 rowSums y hist
1← 000000000100000000000000000
1← 000000010000000000000000000
4← 100001001100000000000000000
010010100100000000000000000
000001000100000000000000000
000100000100000000000000000
000010000000000000000000000
001011110010011100010000000
000000000100000010000000000
000000000000100010000000000
000000000001000000000000000
A= 000000000100000000000000000
000000000100000000000000000
000000000100000000010000000
000000000011000001010000000
000000000000000010000000000
000000000000000000010000000
000000000100000110101011100
000000000000000000010100000
000000000000000000001000000
000000000000000000010001000
000000000000000000010010110
000000000000000000010001001
000000000000000000000001000
1← 000000000000000000000000100
Cálculo de la distribución
del grado de nodos
rowSums y hist
Extensión de propiedades de nodos a
propiedades globales de redes
●
Distribución del grado de nodos en un
grafo G=(V,E):
P(k) = mk / m donde
mk es el número de nodos de grado k
m es el orden de G
●
Coeficiente de agrupamiento medio de
un grafo G=(V,E):
1 m
CG= ∑ C
m i =1 i
Tipos de Redes según su Topología
●
Redes libre de escala: Dada una red
G=(V,E) diremos que es libre de escala si
su distribución del grado de nodos sigue
una distribución exponencial negativa.
−γ
P(k)=c∗k
La mayoría de los nodos de este tipo de
presentan un número pequeño de vecinos.
Sin embargo existen unos pocos nodos
destacados que tiene un alto número de
veciones esto tipo de nodos se denominan
hubs.
●
Redes de mundo pequeño: Dada una red
G=(V,E) diremos que es un mundo
pequeño si es una red libre de escala que
presenta un alto coeficiente medio de
agrupamiento.
En este tipo de rede los caminos entre
nodos es pequeño.
Determinación de Grafos Libres de Escala
Determinación de Grafos Libres de Escala
Determinación de Grafos Libres de Escala
Linear regression con lm
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.2144 0.1581 7.679 0.00155 **
log10(h[["mids"]]) -1.3402 0.2093 -6.403 0.00306 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.1796 on 4 degrees of freedom
Multiple R-squared: 0.9111, Adjusted R-squared: 0.8889
F-statistic: 41 on 1 and 4 DF, p-value: 0.003056
Determinación de Grafos Libres de Escala
Linear regression con lm
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.2144 0.1581 7.679 0.00155 **
log10(h[["mids"]]) -1.3402 0.2093 -6.403 0.00306 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.1796 on 4 degrees of freedom
Multiple R-squared: 0.9111, Adjusted R-squared: 0.8889
F-statistic: 41 on 1 and 4 DF, p-value: 0.003056
La función de igraph power.law.fit que recibe
como entrada la distribución del grado de los
nodos nos permite realizar un análisis
estadístico basado en el test de Kolmogorov-
Smirnov sobre el ajuste de la topología de una
> network.degree.distribution <- degree.distribution(example.network)
red a la propiedad libre de escala. Esta función > fit.scale.free <- power.law.fit(network.degree.distribution)
devuelve un objeto donde el valor KS.p es el p- > fit.scale.free[["KS.p"]]
[1] 0.8990623
valor correspondiente a rechazar la hipotesis
nula que en este caso aserta que la red
estudiada es libre de escala. Por lo tanto, un
valor alto de KS.p indica la ausencia de
evidencia para afirmar que la red estudiada no
es libre de escala
Tipos de Redes según su Topología
●
Redes libre de escala: Dada una red
G=(V,E) diremos que es libre de escala si
su distribución del grado de nodos sigue
una distribución exponencial negativa.
−γ
P(k)=c∗k
La mayoría de los nodos de este tipo de
presentan un número pequeño de vecinos.
Sin embargo existen unos pocos nodos
destacados que tiene un alto número de
veciones esto tipo de nodos se denominan
hubs.
●
Redes de mundo pequeño: Dada una red
G=(V,E) diremos que es un mundo
pequeño si es una red libre de escala que
presenta un alto coeficiente medio de
agrupamiento.
En este tipo de rede los caminos entre
nodos es pequeño.
Tipos de Redes según su Topología
●
Redes de mundo pequeño: Dada una red
G=(V,E) diremos que es un mundo
pequeño si es una red libre de escala que
presenta un alto coeficiente medio de
agrupamiento.
En este tipo de rede los caminos entre
nodos es pequeño.
Para comprobar si la longitud media del
camino mínimo entre nodos es lo
suficientemente pequeña como para
considerarla de mundo pequeño es común
generar redes libres de escala del mismo
orden y tamaño de la estudiada para
estimar la probabilidad de que por pura
aleatoriedad se obtenga una red similar a
la estudiada pero con una longitud media
del camino mínimo entre nodos inferior. La
función barabasi.game permite generar
redes libres de escala con el número de
nodos proporcionado en el argumento n.
Redes de Co-expresión Génica
●
Las redes de co-expresión génicas son un tipo de redes que
persiguen integrar información parcial obtenida en diferentes
experimentos o análisis de expresión génica. Típicamente se
basan en datos transcriptómicos masivos obtenidos utilizando
por ejemplo microarrays.
●
En una red de co-expresión génica los nodos representan
genes y las aristas entre nodos representan que los
correspondientes nodos se co-expresan en las distintas
muestras de los experimentos analizados.
●
La co-expresión entre genes suele medirse utilizan la
correlación entre sus perfiles de expresión.
Flujo de Trabajo para la Construcción de
Redes de Co-expresión Génica
Datos Transcriptómicos
●
Paso 1: Análisis de datos transcriptómicos
másivos: análisis de expresión diferencial.
Análisis de la correlación
●
Paso 2: Análisis de la correlación entre los perfiles
de expresión.
Matriz de Adyacencia
●
Paso 3: Construcción de la red: determinación de
la matriz de adyacencia.
Visualización de la Red
●
Paso 4: Visualización de la red.
Paso 1: Análisis de datos transcriptómicos másivos.
Análisis de la expressión diferencial
Datos Transcriptómicos
Análisis de la correlación
Matriz de Adyacencia
Visualización de la Red
Paso 2: Análisis de la correlación entre los perfiles de
expresión
Datos Transcriptómicos
●
El criterio seguido para determinar si dos genes se co-
expresan en las muestras de los distintos experimentos
estudiados se basa usualmente en la correlación entre sus
Análisis de la correlación
perfiles de expresión (niveles de expresión en las distintas
muestras).
●
Se distingue entre correlación positiva y negativa.
Matriz de Adyacencia
Visualización de la Red
Paso 2: Análisis de la correlación entre los perfiles de
expresión
Datos Transcriptómicos
cor ( per (g 1) , per (g 2))
Análisis de la correlación
{
coexpr ( g 1, g 2 )= ∣cor ( per (g 1) , per (g 2))∣
∣cor ( per ( g 1 ) , per (g 2 ∣
))
β
Matriz de Adyacencia
Visualización de la Red
Paso 3: Construcción de la red: determinación de
la matriz de adyacencia.
Datos Transcriptómicos
●
El paso crítico en la construcción de un red de co-expresión
génica consiste en seleccionar el umbral de corte, el valor
específico de correlación que asumimos es lo
Análisis de la correlación
suficientemente alto para suponer que ambos genes se
coexpresan.
●
Usualmente se busca un compromiso entre lograr un red
libre de escala y una alta conectividad.
Matriz de Adyacencia
Visualización de la Red
Paso 4: Visualización de la Red
Datos Transcriptómicos
●
Existen diferentes herramientas para la visualización de
redes. En esta asignatura utilizaremos Cytoscape.
Análisis de la correlación ●
El formato estándar más simple de especificación de una red
que admite cytoscape consiste en el formato gml.
File → Import → Network → File → fichero.gml
Matriz de Adyacencia
●
Existen diferentes algoritmos para la organización visual de
redes, por ejemplo, organic, spring, spring-weighted etc.
Layout → yFiles Layouts → Organic
Visualización de la Red VizMapper → Current Visual Style → Solid
Paso 4: Visualización de la Red
Datos Transcriptómicos
Análisis de la correlación
Matriz de Adyacencia
Visualización de la Red
Análisis de Redes de
Datos Transcriptómicos
Co-expresión Génica
●
Existen multitud de técnicas para el análisis de redes de
co-expresión.
Análisis de la correlación
●
Como introducción en esta asignatura nos centraremos
en:
– Análisis de la topología (estructura de
Matriz de Adyacencia conectividad de la red).
– Búsqueda de patrones globales mediante
técnicas de clustering.
– Enriquecimento de términos de ontología de
Visualización de la Red genes.
Análisis de la Topología de la Red
●
Este análisis se centra en el estudio de propiedades
topológicas locales tales como el grado de un nodo y el
coeficiente de agrupamiento así como de las correpondientes
extensiones a propiedades globales, distribución del grado de
nodos o coeficiente de agrupamiento medio.
●
En este apartado también se determina si la red construída es
libre de escala, de mundo pequeño y se analizan los hubs de
la red.
Análisis de la Topología de la Red
Hub scores Node degree
Clustering coefficient
Identificación de Patrones Globales:
Clustering
●
Clustering es una técnica de minería de datos (data mining)
dentro de la disciplina de Inteligencia Artificial que identifica de
forma automática agrupaciones o clústeres de elementos de
acuerdo a una medida de similitud entre ellos.
●
El objetivo fundamental de las técnicas de clustering consiste
en identificar grupos o clústeres de elementos tal que:
– La similitud media entre elementos del mismo clúster sea
alta. Similitud intra-clúster alta.
– La similitud media entre elementos de distintos clústeres
sea baja. Similitud inter-clúster baja.
Identificación de Patrones Globales:
Clustering
●
Las distintas técnicas de clustering tienen una gran diversidad
de aplicaciones:
– Revelación la estructura interna de los datos analizados
según sus características.
– Procesamiento de datos previo a técnicas de análisis
más complejas tales como la identificación de
marcadores génicos.
– Asignación de funciones a genes desconocidos.
– Estudios de enfermedades complejas.
– Estudios evolutivos
– Etc.
Elección de una Medida de Similitud
●
La identificación de clústeres o grupos de elementos se basa en
una medida de similitud. Diferentes medidas de similitud dan
lugar a diferentes clústeres.
Elección de una Medida de Similitud
Familia Empleados
Simpson del
colegio
Elección de una Medida de Similitud
Mujeres Hombres
Elección de una Medida de Similitud
●
En redes de co-expresión génica una de las posibles medidas
de similitud que se utilizan con mayor frecuencia está basada
en la correlación de Pearson:
D(g1,g2) = 1 – cor(g1,g2)
Elección de una Técnica de Clustering
●
Existen principalmente dos tipos diferentes de técnicas de
clustering:
Clustering Jerárquico Clustering de Partición
Clustering Jerárquico
●
La técnica de clustering jerárquico construye un dendograma o
árbol que representa las relaciones de similitud entre los
distintos elementos.
●
Explorar todos los posibles árboles es computacionalmente
intratable. Por lo tanto, suelen seguirse algoritmos
aproximados guiados por determinadas heurísticas.
●
Existen dos aproximaciones diferentes al clustering jerárquico:
– Clustering jerárquico aglomerativo: se comienza con
tantos clústeres como individuos y consiste en ir
formando (aglomerando) grupos según su similitud.
– Clustering jerárquico de división: se comienza con un
único clúster y consiste en ir dividiendo clústeres según la
disimilitud entre sus componentes.
Clustering Jerárquico Aglomerativo
Esta técnica comienza con una matriz
de similitud que contiene las
distancias entre los distintos
elementos a agrupar.
En nuestro caso esta matriz se calcula
a partir de la matriz de correlaciones.
Clustering Jerárquico Aglomerativo
Esta técnica comienza con una matriz
de similitud que contiene las
distancias entre los distintos
elementos a agrupar.
En nuestro caso esta matriz se calcula
a partir de la matriz de correlaciones.
Clustering Jerárquico Aglomerativo
Consideramos todas las agrupaciones posibles y elegimos la mejor según la matriz de
similitud.
0 8 8 7 Se recalcula la matriz de similitud teniendo
en cuenta el nuevo clúster formado.
0 2 4 La distancia al nuevo clúster se calcula
como la media de las distancias a los
0 3 elementos que lo forman.
0
Clustering Jerárquico Aglomerativo
c
Clustering Jerárquico Aglomerativo
c
Clustering Jerárquico Aglomerativo
c
Ventajas / Desventajas del
Clustering Jerárquico
●
En el clustering jerárquico no es necesario especificar en
número de clústeres a priori. Es posible seleccionarlo a
posteriori según un umbral de corte.
●
La estructura jerárquica es cercana a la intuición humana.
●
La principal desventaja consiste en la acumulación de errores.
Errores que se comenten en un paso de agrupamiento se
propagan durante el resto de la construcción del dendograma
sin ser posible su reajuste.
Clustering Jerárquico en R
●
Utilizaremos como matriz de similitudes o distancias:
D(g1,g2) = 1 – cor(g1,g2)
●
Los paquetes R a utilizar son impute y WGCNA.
●
La función que realiza el clustering jerárquico se llama hclust.
Recibe como entrada la matriz de similitudes a usar como
distancia (as.dist) y el método para recalcular la matriz de
distancias tras cada agrupamiento.
●
Para determinar los clústeres formados a un cierto umbral de
corte se utiliza la función cutree que recibe como entrada el
clustering jerárquico, y el número de clústeres a formar.
Clustering de Partición
en torno a Centroides
●
La técnica de clustering de partición en torno a centroides (PAM) realiza
una distribución de los elementos entre un número prefijado de clústeres o
grupos. Esta técnica recibe como dato de entrada el número de clústers a
formar además de los elementos a clasificar y la matriz de similitudes.
●
Explorar todas las posibles particiones es computacionalmente intratable.
Por lo tanto, suelen seguirse algoritmos aproximados guiados por
determinadas heurísticas.
●
En lugar de construir un árbol el objetivo en PAM consiste en agrupar los
elementos entorno a elementos centrales llamados centroides a cada
clúster.
●
Definimos el centroide de un clúster como aquel elemento que minimiza la
suma de las similitudes al resto de los elementos del clúster.
m C =argminm ∈C ∑m ∈ C dist (m , m j)
j
Paso 1: Seleccionar k centroides
aleatoriamente
m1
m2
Paso 1: Seleccionar k centroides
aleatoriamente
m
m11
m
m22
m3
Paso 2: Clear k clústeres
asignando cada elemento al
centroide más cercano
m
m11
m
m22
m3
Paso 2: Clear k clústeres
asignando cada elemento al
centroide más cercano
m1
m2
m3
Paso 3: Calcular nuevos centroides como
aquellos elementos que minimizan la suma
de las distancias al resto de elementos del
clúster
m1
m2
m3
Paso 3: Calcular nuevos centroides como
aquellos elementos que minimizan la suma
de las distancias al resto de elementos del
clúster
m1 m1
m2
m2 m3
m3
Paso 4: Volver al paso 2 mientras haya
cambio en los clústeres o se alcance un
número máximo de iteraciones.
m1 m1
m2
m2 m3
m3
Paso 4: Volver al paso 2 mientras haya
cambio en los clústeres o se alcance un
número máximo de iteraciones.
m1 m1
m2
m2 m3
m3
Ventajas / Desventajas de la
Partición entorno a Centroides
●
En cada iteración de PAM se realiza un reajuste y mejora de los
clústeres construidos de esta forma se evita la propagación de
errores.
●
Además de formar clústeres este algoritmo devuelve el
elemento más central en cada clúster.
●
La principal desventaja que presenta PAM consiste en la
necesidad de fijar de antemano un número de clústeres a
formar.
PAM Clustering en R
●
Utilizaremos como matriz de similitudes o distancias:
D(g1,g2) = 1 – cor(g1,g2)
●
Los paquetes R a utilizar son impute y WGCNA.
●
La función que realiza el clustering de partición entorno a
centroides se llama pam. Recibe como entrada la matriz de
similitudes a usar como distancia (as.dist) y el número de
clústeres a generar.
●
De igual forma que para el clustering jerárquico para la
visualización en cytoscape del PAM clustering es necesario
generar el fichero de atributos de genes correspondiente,
cargarlo y utilizar vizmapper para seleccionar los colores
apropiados.
Medida de Calidad de un proceso
de Clustering, su Silueta
●
Durante el flujo de trabajo de clustering existen tres puntos claves
donde se toman decisiones que determinan la identificación final de
grupos o clústeres de genes:
– Elección de la medida de similitud o distancia.
– Elección del algoritmo de clustering.
– Elección del número de clústers a identificar.
●
Para determinar la mejor elección posible es necesario fijar un criterio
para mediar la calidad del resultado proporcionado por un flujo de
trabajo de clustering.
●
El objetivo general perseguido por las técnicas de clustering consiste
en identificar grupos o clústeres compactos. Es decir, clusteres con
una similitud intra-clúster alta y una similitud inter-clúster baja.
Esta idea intuitiva se formaliza en el concepto de silueta de un
cluster.
Medida de Calidad de un proceso
de Clustering, su Silueta
Para calcular la silueta de un cluster C para cada elemento s i en C calculamos
primero a(si) la media de las distancias entre si y todos los sj en C.
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
Para calcular la silueta del cluster C1 para cada elemento si en C1 calculamos
primero a(si) la media de las distancias entre si y todos los sj en C1.
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
∑s ∈ C 1 d ( si , s j )
a ( s i )= j
a(si) constituye una medida de la distancia intracluster en
1
∣C ∣−1 C1
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
Para calcular una medida de la distancia intercluster entre el cluster C1 y el resto para cada
elemento si en C1 calculamos d(si,Ck) la media de las distancias entre si y todos los sj en Ck.
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
∑s ∈C k d (s i , s j )
k
d ( s i , C )= j
k
d(si,Ck) constituye una medida de la distancia intercluster
∣C ∣
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
Para calcular una medida de la distancia intercluster entre el cluster C1 y el resto para cada
elemento si en C1 calculamos b(si) = mink d(si,Ck) .
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
b ( s i )=mink d ( s i ,C k ) b(si) constituye una medida de la distancia intercluster en
C1
m1
m2
m3
Medida de Calidad de un proceso
de Clustering, su Silueta
∑s ∈ C 1 d ( si , s j )
a ( s i )= j
a(si) constituye una medida de la distancia intracluster en
1
∣C ∣−1 C1
b ( s i )=mink d ( s i ,C k ) b(si) constituye una medida de la distancia intercluster en
C1
Se define la silueta s(si) como:
b(s i )−a (s i)
s (s i)=
max (a (s i ), b (s i ))
Se define la silueta de un cluster C, s(C) como:
∑s ∈C s( s i )
s (C )= i
∣C∣
Se define la silueta del resultado de un proceso de clustering C 1, …, Cn
como: n
∑i=1 s (C i )
s (C 1, ... , C n)=
n
Medida de Calidad de un proceso
de Clustering, su Silueta
Medida de Calidad de un proceso
de Clustering, su Silueta
Visualización de Clustering en
Cytoscape
●
Es necesario generar un fichero de texto con dos columnas. La
primera columna debe contener los nombres de los genes o nodos de
la red y la segunda debe contener los atributos a importar, por
ejemplo el número del cluster al que pertenece cada gen.
●
Para cargar atributos en Cytoscape:
File → Import → Table → File
Show Text File Import Options → Delimiter (space) → Transfer first line...
●
Para cambiar de color a los genes según su modulo:
Vizmapper → Node Fill color → Cluster → Mapping Type =
Discrete mapping → Selección de colores
Visualización de Clustering en
Cytoscape
This work is licensed under the Creative Commons Attribution-
NonCommercial-NoDerivs 3.0 Unported License. To view a copy of this
license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/.