Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
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,398 views

Published on

Verkostoanalyysi 2011 -seminaari, Tampere teknillinen yliopisto

Published in: Technology

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

×