1 Komputerowa analiza sieci genowych (GRN)Agnieszka Marmołowska Jacek Ławrynowicz Promotor: prof. Krzysztof Giaro
2 Przypomnienie Gene regulatory network – sieć genów komórki, które wpływają na siebie
3 Wyewoluowane sieci Grafy
4 Wyewoluowane sieci DaneWierzchołki – 14 Krawędzie – 128 Gęstość – 1,41 Sieć 2 Wierzchołki – 48 Krawędzie – 1082 Gęstość – 0,
5 Struktruty społeczne Występowanie grup wierzchołków gęściej połączonych między sobą niż z wierzchołkami spoza grupy. Jakie mogą być moduły? Skąd wiadomo czy sieć posiada moduły?
6 Selektywność (assortativity)Parametr określający, czy wierzchołki o wysokich stopniach „lubią” łączyć się z ze sobą Różne wzory Różny zakres wartości
7 Selektywność IlustracjaBrak korelacji A = 0 A = 0.26 A = 0.43 Maksymalna (dla sieci o takim rozkładzie stopni) korelacja A = 0.62
8 Selektywność Neighbour connectivityWzór funkcji Funkcja rosnąca – assortative network Funkcja malejąca – disassortative network
9 Neighbour connectivity PrzykładAssortative
10 Neighbour connectivity PrzykładSteel assortative
11 Neighbour connectivity PrzykładDisassortative
12 Współczynnik selektywności Pearson correlation coefficientWzór Sumy po wszystkich krawędziach ji i ki – stopnie wierzchołków, które łączy i-ta krawędź r jest znormalizowane
13 Współczynnik selektywności Przykład
14 Współczynnik selektywności Przykład
15 Współczynnik selektywności Sieci z życiaSieci społeczne – assortative Sieci techniczne/biologiczne – disassortative Sieci wyewoluowane A(1) – -0,0234 A(2) - -0,1945 Dlaczego tak jest?
16 Współczynnik klasteryzacjiWzór u – wierzchołek k – stopień wierzchołka u e – ilość krawędzi łączących k sąsiadów u C – średni współczynnik klasteryzacji dla wszystkich wierzchołków C(k) – średni współczynnik klasteryzacji dla wierzchołków o stopniu k
17 Współczynnik klasteryzacjiZbadano: Sieci metabolicznych 43 organizmów Sieci interakcji białek (S. cerevisiae, H. pylori, E. coli, C. elegans) Regulacyjnych sieci genowych (S. Cerevisiae) C(k)~k-1 Wnioski: Pojedyncze moduły składają się z gęsto zgrupowanych wierzchołków o relatywnie niskim stopniu Moduły są połączone przez centralne wierzchołki o wysokim stopniu
18 Współczynnik klasteryzacji Wyewoluowana siećn = 14, m = 128 C = 0,335 C(k)~k-1?
19 Współczynnik klasteryzacji Wyewoluowana siećn = 48, m = 1028 C = 0,327 C(k)~k-1?
20 Współczynnik klasteryzacji Dlaczego?Sieć jest grafem: skierowanym dopuszcza krawędzie wielokrotne Spróbujmy z grafem prostym
21 Współczynnik klasteryzacji Wyewoluowana sieć – graf prostyn = 14, m = 138 C = 0,405
22 Współczynnik klasteryzacji Wyewoluowana sieć – graf prostyn = 48, m = 1206 C = 0,336
23 Algorytmy wykrywania modułówKlasteryzacja hierarchiczna Algorytm Girvan–Newman Maksymalizacja Modularity Filtracja klik (Clique percolation) Minimalne rozdzięcie
24 Klasteryzacja hierarchicznaDwa rodzaje: Agglomerative – bottom-up, każdy wierzchołek w oddzielnym klastrze Divisive – top-down, wszystkie wierzchołki w jednym klastrz Zarys algorytmu: Każdej krawędzi przypisywana jest waga (edge betweeness centrality ) Wierzchołki są łączone według malejącej wagi (rozdzielane według malejącej wagi) Złożoność O(mn + m) = O(mn) (O(n2))
25 Girvan–Newman Usuwanie krawędzi Zarys algorytmu: ZłożonośćWszystkie wierzchołki w jednym klastrze Każdej krawędzi przypisywana jest waga (edge betweeness) Usuwana jest krawędź o najwyższej wadze Wagi przeliczane są na nowo Złożoność O(nm2) (O(n3))
26 Maksymalizacja ModularityPrzeszukiwanie możliwych podziałów na klastry i wybór najlepszego Miara dobroci podziału (modularity) eij – ilość krawędzi między i-tym i j-tym klastrem Przeszukanie wszystkich możliwości – bardzo nieoptymalne
27 Maksymalizacja ModularityZarys algorytmu zachłannego: Każdy wierzchołek jest w oddzielnym klastrze, tworzona jest macierz E Krok algorytmu (n-1 razy): Obliczenie dla każdej krawędzi - O(m) Wybór krawędzi o największym Poprawienie macierzy E – O(n) Złożoność O((m+n)n) (O(n2))
28 Przedstawienie wynikówWyniki algorytmów klasteryzacji hierarchicznej (divisive), GN oraz Maksymalizacji można przedstawić jako dendrogram Umożliwia on wybranie odpowiedniej ilości grup, wyodrębnienie podgrup... Dendrogram wytworzony przez algorytm maksymalizacji dla sieci społecznej klubu karate
29 Ocena wyniku Przedstawione algorytmy zawsze tworzą jakiś podział – niezależnie od tego czy taki podział w rzeczywistości istnieje. Jak sprawdzić jakość podziału? Modularity
30 Filtracja klik k-klika – podgraf pełny o k wierzchołkachk-kliki sąsiadujące – kiedy mają przynajmniej k-1 wspólnych wierzchołków
31 Filtracja klik Kliki sąsiadująceWykrywanie zbiorów sąsiadujących k-klik: Szablon k-kliki – umieścić w grafie Jeden z wierzchołków szablonu przenieść na inny wierzchołek grafu z zachowaniem kliki Łańcuch połączonych w ten sposób klik staje się modułem
32 Filtracja klik PrzykładModuły k-klik dla k=4 Na czerwono oznaczone są „overlapps”
33 Filtracja klik ProblemySzukanie k-kliki w grafie – wielomianowe Szukanie maksymalnej k-kliki w grafie NP-trudne Czy wystarczy szukanie k-klik dla ustalonego k?
34 Filtracja klik RozwiązanieSieć modułów wyodrębnionych za pomocą filtracji klik dla k=4 Węzły – moduły, wielkość węzła odpowiada ilości wierzchołków Krawędzie – połączenia między modułami, grubość krawędzi odpowiada ilości połączeń między modułami
35 Filtracja klik RozwiązanieModuły odpowiadają rzeczywistości Wartość k miedzy 4 a 6 wystarcza dla wyodrębnienia rzeczywistych modułów