Verkoston muutoksen mallinnus ja visualisointi

  • 1,209 views
Uploaded on

Verkostoanalyysi 2011 -seminaari, Tampere teknillinen yliopisto

Verkostoanalyysi 2011 -seminaari, Tampere teknillinen yliopisto

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Hyvä huomio!
    Are you sure you want to
    Your message goes here
  • Gephi pyrkii vissiin parantamaan kesän aikana tuota ominaisuutta: http://wiki.gephi.org/index.php/Google_Summer_Of_Code_2011
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
1,209
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
1
Comments
2
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

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