Verkostoanalyysi 2011 -seminaari Tampere teknillinen yliopisto Jaakko Salonen Tampereen teknillinen yliopisto Hypermediala...
Tässä esityksessä <ul><li>Dynaamiset verkostot ja muutos verkostoissa
Verkoston muutoksen mallinnus
Dynamiikan mallinnus Gephillä ja GEXF:llä
Graph Streaming
Dynamiikan visualisointi Gephillä
Yhteenveto </li></ul>
Dynaamiset verkostot ja muutos verkostoissa <ul><li>Käsite: Dynamic network analysis (DNA) </li><ul><li>Mahdollista analys...
Solmujen ja kaarien ominaisuudet voivat muuttua ajan suhteen </li></ul><li>Mahdollistaa verkostopohjaisten prosessien anal...
Resurssi/tietämys-verkostot: innovaatio, löyty, unohtaminen, käyttö
Tapahtuma/tehtävä-verkostot: tavoitteen muutos, ”re-engineering”, teknologianvaihdokset
Organisaatio-verkostot: syntyminen, kuolema, yhdistymiset, jne. </li></ul></ul>
Verkoston muutoksen mallinnus (1/3) <ul><li>Mallinnuksen pohjana ajan suhteen muuttuva graafi
Formalisointi (Casteigts et al. 2010) </li><ul><li>Käsite: aika-riippuva graafi (engl. time-varying graph; TVG):
G  = ( V , E,  T , r, x) , jossa
V : solmujen joukko E :  kaarien joukko T  : ajanjakso, systeemin elinajan osajoukko, ts.  r :  läsnäolofunktio (engl. pre...
Verkoston muutoksen mallinnus (2/3) <ul><li>Esimerkki dynaamisen verkoston mallinnuksesta käytännössä: </li><ul><li>Solmuj...
Kaaria e kpl
Ajanjakso, 0, 1, …, t (arvot diskreettejä, yksikkönä sekuntti)
Upcoming SlideShare
Loading in …5
×

Verkoston muutoksen mallinnus ja visualisointi

1,329 views
1,288 views

Published on

Verkostoanalyysi 2011 -seminaari, Tampere teknillinen yliopisto

Published in: Technology
2 Comments
2 Likes
Statistics
Notes
No Downloads
Views
Total views
1,329
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
2
Likes
2
Embeds 0
No embeds

No notes for slide

Verkoston muutoksen mallinnus ja visualisointi

  1. 1. Verkostoanalyysi 2011 -seminaari Tampere teknillinen yliopisto Jaakko Salonen Tampereen teknillinen yliopisto Hypermedialaboratorio Verkoston muutoksen mallinnus ja visualisointi
  2. 2. Tässä esityksessä <ul><li>Dynaamiset verkostot ja muutos verkostoissa
  3. 3. Verkoston muutoksen mallinnus
  4. 4. Dynamiikan mallinnus Gephillä ja GEXF:llä
  5. 5. Graph Streaming
  6. 6. Dynamiikan visualisointi Gephillä
  7. 7. Yhteenveto </li></ul>
  8. 8. Dynaamiset verkostot ja muutos verkostoissa <ul><li>Käsite: Dynamic network analysis (DNA) </li><ul><li>Mahdollista analysoida isoja, monimoodisia, monilinkkisiä verkostoja, joissa datan epävarmuustaso vaihteleva (vrt. Carley, 2003)
  9. 9. Solmujen ja kaarien ominaisuudet voivat muuttua ajan suhteen </li></ul><li>Mahdollistaa verkostopohjaisten prosessien analysoinnin. Esimerkkejä muutosprosesseista: (Ibid.) </li><ul><li>Ihmisverkostot: Syntymä, kuolema, ylennys, liikkuvuus, rekrytointi, jne.
  10. 10. Resurssi/tietämys-verkostot: innovaatio, löyty, unohtaminen, käyttö
  11. 11. Tapahtuma/tehtävä-verkostot: tavoitteen muutos, ”re-engineering”, teknologianvaihdokset
  12. 12. Organisaatio-verkostot: syntyminen, kuolema, yhdistymiset, jne. </li></ul></ul>
  13. 13. Verkoston muutoksen mallinnus (1/3) <ul><li>Mallinnuksen pohjana ajan suhteen muuttuva graafi
  14. 14. Formalisointi (Casteigts et al. 2010) </li><ul><li>Käsite: aika-riippuva graafi (engl. time-varying graph; TVG):
  15. 15. G = ( V , E, T , r, x) , jossa
  16. 16. V : solmujen joukko E : kaarien joukko T : ajanjakso, systeemin elinajan osajoukko, ts. r : läsnäolofunktio (engl. presence) r: E x T -> {0, 1}, määrittelee kaaren läsnäolon annetulla ajan hetkellä x : latenssifunktio ( x: E x T -> T ) ; kaaren läpikäyntiin vaadittava aika (huom! voi muuttua ajan funktiona!) </li></ul></ul>
  17. 17. Verkoston muutoksen mallinnus (2/3) <ul><li>Esimerkki dynaamisen verkoston mallinnuksesta käytännössä: </li><ul><li>Solmuja v kpl
  18. 18. Kaaria e kpl
  19. 19. Ajanjakso, 0, 1, …, t (arvot diskreettejä, yksikkönä sekuntti)
  20. 20. Läsnäolofunktio nyt kuvattavissa e x t matriisina </li></ul><li>Esimerkkiarvoja: </li><ul><li>v=100 -> suunnatussa graafissa max. 100x100=10000 kaarta
  21. 21. e=10000, t=60 (sekuntia) </li><ul><li>10000 x 60 matriisi (=600000 alkiota) </li></ul><li>e=10000, t=86400 (=1 päivä sekuntteina) </li><ul><li>10000 x 86400 matriisi (=860.400.000 alkiota (!!!)) </li></ul></ul><li>-> Matriisiesitys potentaalisesti valtava </li></ul>
  22. 22. Verkoston muutoksen mallinnus (3/3) <ul><li>Erityisesti visualisointikäyttöön riittää usein, että pystytään pyynnöstä laskemaan verkoston annetulla ajanhetkellä t: </li><ul><li>Lasketaan mallin perusteella läsnäolo- ja latenssifunktiot vain annetulle ajanhetkelle t </li><ul><li>Läsnäolofunktio r t : E -> {0, 1}
  23. 23. Latenssifunktio x t : E -> T
  24. 24. Alkiota onkin vain 2e kpl! </li></ul></ul></ul>
  25. 25. <ul>Dynamiikan mallinnus Gephillä </ul><ul><li>Esitellään dynaamisen verkoston mallinnusta ja visualisointia Gephi-työvälineellä ( http://gephi.org/ )
  26. 26. Ominaisuuksia: </li><ul><li>Dynaamista graafia voidaan tarkastella ajan funktiona (playback sekä tilannekuva valitulla ajan hetkellä)
  27. 27. Visualisointi muuttuu ajanhetken perusteella
  28. 28. Myös ladonnasta saadaan dynaminen, ts. ladonta päivittyy muutoksen myötä </li></ul><li>Mallinnusvaihtoehtoja: </li><ul><li>Dynaaminen GEXF-esitys
  29. 29. Graph streaming -laajennus </li></ul></ul>
  30. 30. GEXF-dynamiikka (1/3) <ul><li>Gephin tukema GEXF (Graph Exchange XML format) mahdollistaa myös dynaamisten verkostojen esittämisen
  31. 31. Dynamiikan voi ottaa käyttöön attribuuttikohtaisesti (attribuutteja ovat kaikki solmujen ja kaarien ominaisuudet)
  32. 32. Aikasarjan tietotyypit: ( http://www.gexf.net/1.2draft/dynamics.xsd ) </li><ul><li>Diskreetti (integer)
  33. 33. Jatkuva (double)
  34. 34. Päivämäärä ja/tai kellonaika (date, dateTime) </li></ul></ul>
  35. 35. GEXF-dynamiikka (2/3) <ul><li>Sekä solmujen että kaarien olemassaolo voidaan määrittää ajasta riippuvaksi ( http://www.gexf.net/format/dynamics.html ) </li><ul><li>Attribuutit start, startopen, end, endopen
  36. 36. Tila on binäärinen (0 / 1) </li></ul><li>Esimerkkejä: </li><ul><li><node id=&quot;n2&quot; label=&quot;Actor 2&quot; start=&quot;0.0&quot; end=&quot;30.0&quot; />
  37. 37. ja
  38. 38. <edge id=&quot;e3&quot; source=&quot;n2&quot; target=&quot;n3&quot; weight=&quot;1.0&quot; start=&quot;20.0&quot; end=&quot;30.0&quot; /> </li></ul><li>Määrittely mahdollista myös paloittain spells -elementillä: </li><ul><li><node id=&quot;n1&quot; label=&quot;Actor 1&quot;> <spells> <spell start=&quot;0.0&quot; end=&quot;5.0&quot; /> <spell start=&quot;10.0&quot; end=&quot;15.0&quot; />
  39. 39. </spells>
  40. 40. </node> </li></ul></ul>
  41. 41. GEXF-dynamiikka (3/3) <ul><li>Dynamiikka attribuuteissa (sekä solmut että kaaret):
  42. 42. <attributes class=”edge” timeformat=”double” mode=”dynamic”> <attribute id=”weight” type=”float”></attribute> </attributes>
  43. 43. Attribuutin muutokset kuvataan attvalues -elementissä:
  44. 44. <edge source=”x” target=”y”> <attvalues> <attvalue for=”weight” value=”1” end=”2011-04-01” /> <attvalue for=”weight” value=”2” start=”2011-04-01” end=”2011-04-14” /> </attavalues> </edge>
  45. 45. Mistä tahansa attribuutista voidaan siis tehdä dynaaminen </li></ul>
  46. 46. Kokonainen GEXF-esimerkki <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?> <gexf xmlns=&quot;http://www.gexf.net/1.1draft&quot; version=&quot;1.1&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;http://www.gexf.net/1.1draft http://www.gexf.net/1.1draft/gexf.xsd &quot;> <graph defaultedgetype=&quot;undirected&quot; timeformat=&quot;double&quot; mode=&quot;dynamic&quot;> <attributes class=&quot;edge&quot; timeformat=&quot;double&quot; mode=&quot;dynamic&quot;> <attribute id=&quot;weight&quot; type=&quot;float&quot;></attribute> </attributes> <nodes> <node id=&quot;n1&quot; label=&quot;Actor 1&quot;> <spells> <spell start=&quot;0.0&quot; end=&quot;5.0&quot; /> <spell start=&quot;10.0&quot; end=&quot;15.0&quot; /> <spell start=&quot;20.0&quot; end=&quot;25.0&quot; /> </spells> </node> <node id=&quot;n2&quot; label=&quot;Actor 2&quot; start=&quot;0.0&quot; end=&quot;30.0&quot; /> <node id=&quot;n3&quot; label=&quot;Actor 3&quot; start=&quot;10.0&quot; end=&quot;30.0&quot; /> </nodes> <edges> <edge id=&quot;e1&quot; source=&quot;n1&quot; target=&quot;n2&quot; weight=&quot;1.0&quot; /> <edge id=&quot;e2&quot; source=&quot;n1&quot; target=&quot;n3&quot; weight=&quot;1.0&quot; /> <edge id=&quot;e3&quot; source=&quot;n2&quot; target=&quot;n3&quot; weight=&quot;1.0&quot;> <attvalues> <attvalue for=&quot;weight&quot; value=&quot;2.0&quot; start=&quot;0.0&quot; endopen=&quot;10.0&quot; /> <attvalue for=&quot;weight&quot; value=&quot;3.0&quot; start=&quot;10.0&quot; end=&quot;20.0&quot; /> </attvalues> </edge> </edges> </graph> </gexf>
  47. 47. Graph Streaming -laajennus <ul><li>Gephi-laajennus, jolla graafidataa voidaan hakea Gephiin virta-muotoisena (vrt. Panisson, 2010)
  48. 48. Perustuu yleisempään Graph Streaming API -rajapintamääritykseen (Panisson et al., 2011)
  49. 49. Sekä laajennus, että rajapinta ovat kehitteillä ja voivat siis vielä muuttua
  50. 50. Perusideana kuitenkin: </li><ul><li>Tarjotaan (HTTP-pohjainen) rajapinta graafin tilan hakuun
  51. 51. JSON (JavaScript Object Notation) -pohjainen vastaus, joka mallintaa graafin muutoksen pyyntöjen välillä </li></ul><li>-> Laskennallisesti tehokkaampi: XML:ää kevyempi formaatti; riittää, että lasketaan graafin tila annetulla ajan hetkellä </li></ul>
  52. 52. Dynamiikan visualisointi Gephillä <ul><li>Datalaboratorionäkymä </li><ul><li>Solmun ja kaarien ominaisuudet </li></ul><li>Dynaaminen ladonta </li><ul><li>Force Atlas </li><ul><li>Yksi tapa weight -attribuutin visualisointiin
  53. 53. Esimerkin parametrisointi: </li><ul><li>repulsion strenght: 100000.0 </li></ul></ul></ul><li>Aikavalitsimen käyttö </li><ul><li>Aikavalinnan leveysvalinta </li><ul><li>Esimerkissä max. 5% kokonaiskestosta </li></ul></ul></ul>
  54. 54. Dyn. ladonnasta Gephissä yleisemmin (1/2) <ul><li>Suppeahko esimerkkidata ei nosta kaikkia haasteita esiin. Parempi datasetti ladonnan kokeiluun: File -> Generate -> Dynamic Graph Example...
  55. 55. Force Atlas -ladonta: </li><ul><li>Repulsion ja attraction strenght suhde oltava sopiva, muuten graafin skaalaus muuttuu liikaa ajan funktiona
  56. 56. (empiirisesti hyvä suhde 1:1000)
  57. 57. Myös gravity oltava riittävä (attraction*20=gravity näyttää tuottavan hyviä tuloksia)
  58. 58. Mahdollistaa painotuksen ( weight) visualisoinnin </li></ul></ul>
  59. 59. Dyn. ladonnasta Gephissä yleisemmin (2/2) <ul><li>Fruchterman Reingold </li><ul><li>Solmut säilyttävät paremmin asemansa, algoritmi hallitsee automaattisesti myös skaalaukset
  60. 60. Datajoukolle, jolla tuntemat- tomat dynamiikka- ominaisuudet
  61. 61. Painotus ei vaikuta visualisointiin
  62. 62. Soveltuu erityisesti kaarien muutoksen visualisointiin </li></ul><li>Gephin vakioalgoritmeista
  63. 63. (0.8a) muut eivät näytä tukevan dynaamista ladonta </li></ul>
  64. 64. GEXF ja Gephi – haasteet ja mahdollisuudet <ul><li>GEXF </li><ul><li>Mahdollistaa solmujen, kaarten ja niiden attribuuttien muutosten mallinnuksen
  65. 65. Haasteena hienorakenteisten, erityisesti ei-diskreettinen muutosten mallinnus: esim. jokainen weight-attribuutin muutos (1 -> 1.1 -> 1.2 -> 1.3, jne.) pitää kuvata uutena XML-elementtinä.
  66. 66. -> tällaisten muutosten mallinnukseen tarvitaan väistämättä Graph Streaming -laajennus tai vastaava menettely </li></ul><li>Gephi </li><ul><li>Vain perusominaisuudet GEXF-dynamiikan visualisointiin
  67. 67. Merkittävää osaa dynamiikasta ei Gephin nykyversiolla voi mielekkäästi visualisoida </li></ul></ul>
  68. 68. Yhteenveto <ul><li>Muutoksen mallinnus verkostoon tuo uusia sovelluskohteita
  69. 69. Dynaamisten verkostojen mallinnuksen haasteena potentiaalisesti laskennallinen vaativuus. </li><ul><li>Tätä voidaan kiertää pyrkimällä mallia luodessa ennakoimaan laskennan tarpeita (vrt. lasketaanko tunnuslukuja vai tehdäänkö dynamiikan visualisointia) </li></ul><li>GEXF-formaatilla voidaan kuvata dynamiikka verkostossa sen eri tasoilla (solmut, kaaret, attribuutit)
  70. 70. Gephi-sovellus sisältää tuen joidenkin dynaamisten ominaisuuksien visualisointiin
  71. 71. Dynaaminen verkostomallinnus on selvästi kehittyvä verkostoanalyysiin osa-alue -> voidaan olettaa, että sovellukset ja menetelmät kehittyvät jatkossa </li></ul>
  72. 72. Kiitos! Kysymyksiä?
  73. 73. Lähteet Carley, M., K. (2003). Dynamic Network Analysis . Summary of the NRC workshop on Social Network Modeling and Analysis. National Research Council. Casteigts, A., Flocchini, P. Quattrociocchi, W., Santoro. N. (2010). Time-Varying Graphs and Dynamic Networks. Panisson, A. (2010). Graph Streaming. Online. Available at: http://gephi.org/plugins/graph-streaming/ Panisson, A., et al. (2011). Specification – GsoC Graph Streaming API. Wiki-page. Available at: http://wiki.gephi.org/index.php/Specification_-_GSoC_Graph_Streaming_API

×