a li le graph theory for the
play

A Li%le Graph Theory for the Busy Developer Dr. Jim - PowerPoint PPT Presentation

A Li%le Graph Theory for the Busy Developer Dr. Jim Webber Chief Scien@st, Neo Technology @jimwebber Roadmap Imprisoned data Labeled Property Graph


  1. A ¡Li%le ¡Graph ¡Theory ¡for ¡the ¡ Busy ¡Developer ¡ Dr. ¡Jim ¡Webber ¡ Chief ¡Scien@st, ¡Neo ¡Technology ¡ @jimwebber ¡

  2. Roadmap ¡ • Imprisoned ¡data ¡ • Labeled ¡Property ¡Graph ¡Model ¡ – And ¡some ¡cultural ¡imperialism ¡ • Graph ¡theory ¡ – South ¡East ¡London ¡ – World ¡War ¡I ¡ • Graph ¡matching ¡ – Beer, ¡nappies ¡and ¡Xbox ¡ • End ¡

  3. h%p://www.flickr.com/photos/crazyneighborlady/355232758/ ¡

  4. h%p://gallery.nen.gov.uk/image82582-­‑.html ¡

  5. Aggregate-­‑Oriented ¡Data ¡ h%p://mar@nfowler.com/bliki/AggregateOrientedDatabase.html ¡ “There is a significant downside - the whole approach works really well when data access is aligned with the aggregates, but what if you want to look at the data in a different way? Order entry naturally stores orders as aggregates, but analyzing product sales cuts across the aggregate structure. The advantage of not using an aggregate structure in the database is that it allows you to slice and dice your data different ways for different audiences. This is why aggregate-oriented stores talk so much about map-reduce.”

  6. complexity = f(size, connectedness, uniformity)

  7. h%p://www.bbc.co.uk/london/travel/downloads/tube_map.html ¡

  8. Labeled ¡Property ¡graphs ¡ • Property ¡graph ¡model: ¡ – Nodes ¡with ¡proper@es ¡and ¡labels ¡ – Named, ¡directed ¡rela@onships ¡with ¡proper@es ¡ – Rela@onships ¡have ¡exactly ¡one ¡start ¡and ¡end ¡node ¡ • Which ¡may ¡be ¡the ¡same ¡node ¡

  9. stole ¡ companion ¡ loves ¡ from ¡ appeared ¡ ¡ loves ¡ enemy ¡ in ¡ companion ¡ appeared ¡ ¡ in ¡ appeared ¡ ¡ enemy ¡ in ¡ enemy ¡ appeared ¡ ¡ appeared ¡ ¡ in ¡ A ¡Good ¡Man ¡ in ¡ Goes ¡to ¡War ¡ Victory ¡of ¡ ¡ the ¡Daleks ¡ appeared ¡ ¡ in ¡

  10. prop ¡ planet ¡ character ¡ stole ¡ companion ¡ loves ¡ from ¡ appeared ¡ ¡ loves ¡ enemy ¡ in ¡ character ¡ companion ¡ appeared ¡ ¡ species ¡ character ¡ in ¡ appeared ¡ ¡ enemy ¡ in ¡ species ¡ episode ¡ enemy ¡ appeared ¡ ¡ appeared ¡ ¡ episode ¡ in ¡ A ¡Good ¡Man ¡ in ¡ Goes ¡to ¡War ¡ Victory ¡of ¡ ¡ the ¡Daleks ¡ species ¡ appeared ¡ ¡ in ¡

  11. h%p://blogs.adobe.com/digitalmarke@ng/analy@cs/predic@ve-­‑analy@cs/predic@ve-­‑analy@cs-­‑and-­‑the-­‑digital-­‑marketer/ ¡

  12. Meet ¡Leonhard ¡Euler ¡ • Swiss ¡mathema@cian ¡ • Inventor ¡of ¡Graph ¡ Theory ¡(1736) ¡ 16 ¡ h%p://en.wikipedia.org/wiki/File:Leonhard_Euler_2.jpg ¡

  13. Königsberg ¡(Prussia) ¡-­‑ ¡1736 ¡

  14. A ¡ B ¡ C ¡ D ¡

  15. 1 � A ¡ 4 � 2 � B ¡ 3 � C ¡ 6 � 5 � 7 � D ¡

  16. 20 ¡ h%p://en.wikipedia.org/wiki/Seven_Bridges_of_Königsberg ¡

  17. Triadic ¡Closure ¡ name: Kyle name: Stan name: Kenny

  18. Triadic ¡Closure ¡ name: Kyle name: Stan name: Kenny name: Kyle FRIEND name: Stan name: Kenny

  19. Structural ¡Balance ¡ name: Cartman name: Craig name: Tweek

  20. Structural ¡Balance ¡ name: Cartman name: Craig name: Tweek name: Cartman FRIEND name: Craig name: Tweek

  21. Structural ¡Balance ¡ name: Cartman name: Craig name: Tweek name: Cartman ENEMY name: Craig name: Tweek

  22. Structural ¡Balance ¡ name: Kyle name: Stan name: Kenny name: Kyle FRIEND name: Stan name: Kenny

  23. Structural ¡Balance ¡is ¡a ¡ key ¡ predic@ve ¡technique ¡ And ¡it’s ¡domain-­‑agnos@c ¡

  24. Allies ¡and ¡Enemies ¡ UK ¡ Austria ¡ France ¡ Germany ¡ Italy ¡ Russia ¡

  25. Allies ¡and ¡Enemies ¡ UK ¡ Austria ¡ France ¡ Germany ¡ Italy ¡ Russia ¡

  26. Allies ¡and ¡Enemies ¡ UK ¡ Austria ¡ France ¡ Germany ¡ Italy ¡ Russia ¡

  27. Allies ¡and ¡Enemies ¡ UK ¡ Austria ¡ France ¡ Germany ¡ Italy ¡ Russia ¡

  28. Allies ¡and ¡Enemies ¡ UK ¡ Austria ¡ France ¡ Germany ¡ Italy ¡ Russia ¡

  29. Allies ¡and ¡Enemies ¡ UK ¡ Austria ¡ France ¡ Germany ¡ Italy ¡ Russia ¡

  30. Predic@ng ¡WWI ¡ ¡ [Easley ¡and ¡Kleinberg] ¡

  31. Strength ¡ • Rela@onships ¡can ¡have ¡strength ¡as ¡well ¡as ¡ sen@ment ¡ • This ¡gives ¡us ¡another ¡dimension ¡to ¡consider ¡in ¡ our ¡triangles ¡ – I ¡ love ¡you ¡versus ¡I ¡ hate ¡you ¡ – I ¡ like ¡you ¡versus ¡I ¡ dislike ¡you ¡ • Gives ¡rise ¡to ¡another ¡interes@ng ¡property ¡

  32. Strong ¡Triadic ¡Closure ¡Property ¡ It ¡if ¡a ¡node ¡has ¡strong ¡rela2onships ¡to ¡two ¡ neighbours, ¡then ¡these ¡neighbours ¡must ¡have ¡at ¡ least ¡a ¡weak ¡rela2onship ¡between ¡them. ¡ ¡ [Wikipedia] ¡

  33. Triadic ¡Closure ¡ (weak ¡rela@onship) ¡ name: Kenny name: Stan name: Cartman

  34. Triadic ¡Closure ¡ (weak ¡rela@onship) ¡ name: Kenny name: Stan name: Cartman name: Kenny FRIEND 50% name: Stan name: Cartman

  35. Weak ¡rela@onships ¡ • Weak ¡links ¡play ¡another ¡ super-­‑important ¡ structural ¡role ¡in ¡graph ¡theory ¡ • They ¡bridge ¡neighbourhoods ¡ • Which ¡is ¡allows ¡us ¡to ¡par@@on ¡graphs ¡

  36. Local ¡Bridge ¡Property ¡ “If ¡a ¡node ¡ A ¡in ¡a ¡network ¡sa2sfies ¡the ¡Strong ¡ Triadic ¡Closure ¡Property ¡and ¡is ¡involved ¡in ¡at ¡ least ¡two ¡strong ¡rela2onships, ¡then ¡any ¡local ¡ bridge ¡it ¡is ¡involved ¡in ¡must ¡be ¡a ¡weak ¡ rela2onship.” ¡ ¡ [Easley ¡and ¡Kleinberg] ¡

  37. LIKES ¡is ¡a ¡local ¡bridge ¡ LOVES name: Alice name: Chuck HATES HATES name: Bob LIKES name: David

  38. LOVES ¡cannot ¡be ¡a ¡local ¡bridge ¡ LOVES name: Alice name: Chuck HATES HATES name: Bob LOVES name: David

  39. University ¡Karate ¡Club ¡

  40. Graph ¡Par@@oning ¡ • (NP) ¡Hard ¡problem ¡ – Recursively ¡remove ¡bridges ¡between ¡dense ¡ regions ¡ – Choose ¡your ¡algorithm ¡carefully ¡– ¡some ¡are ¡be%er ¡ than ¡others ¡for ¡a ¡given ¡domain ¡ • Probabilis@c ¡methods ¡are ¡cheaper ¡ • Can ¡use ¡to ¡(almost ¡exactly) ¡predict ¡the ¡ break ¡up ¡of ¡the ¡karate ¡club! ¡

  41. University ¡Karate ¡Clubs ¡ (predicted ¡by ¡Graph ¡Theory) ¡ 9

  42. University ¡Karate ¡Clubs ¡ (what ¡actually ¡happened!) ¡

  43. Produc@ve ¡Predic@ve ¡Analy@cs ¡in ¡2 ¡Years ¡ (says ¡ ¡Gartner ¡predic@on) ¡

  44. Cypher ¡ • Declara@ve ¡graph ¡pa%ern ¡matching ¡language ¡ – “SQL ¡for ¡graphs” ¡ – A ¡humane ¡tool ¡pioneered ¡by ¡a ¡tamed ¡SQL ¡DBA ¡ • A ¡pa%ern ¡graph ¡matching ¡language ¡ – Find ¡me ¡stuff ¡like… ¡

  45. Category: Category: baby alcoholic drinks MEMBER_OF MEMBER_OF Category: Category: beer Category: consumer nappies electronics MEMBER_OF MEMBER_OF MEMBER_OF SKU : 2555f258 SKU : 49d102bc Category: Product : Product : Baby console Peewee Pilsner Dry Nights Firstname : SKU : 5e175641 SKU : 49d102bc BOUGHT BOUGHT Mickey Product : Product : XBox Surname : Smith Badgers 360 DoB : 19781006 Nadgers Ale

  46. Category: beer Category: nappies Firstname : * BOUGHT Category: game Surname : * console DoB : 1996 > x > 1972

  47. Category: beer Category: nappies Firstname : * !BOUGHT Category: game Surname : * console DoB : 1996 > x > 1972

  48. (nappies) (beer) (console) () () () < - [ b : B O U G H T ] - (daddy)

  49. Fla%en ¡the ¡graph ¡ (daddy)-[:BOUGHT]->()-[:MEMBER_OF]->(nappies) (daddy)-[:BOUGHT]->()-[:MEMBER_OF]->(beer) (daddy)-[b:BOUGHT]->()-[:MEMBER_OF]->(console)

  50. Wrap ¡in ¡a ¡Cypher ¡MATCH ¡clause ¡ MATCH (daddy)-[:BOUGHT]->()-[:MEMBER_OF]->(nappies) , (daddy)-[:BOUGHT]->()-[:MEMBER_OF]->(beer) , (daddy)-[b:BOUGHT]->()-[:MEMBER_OF]->(console)

  51. Cypher ¡WHERE ¡clause ¡ MATCH (daddy)-[:BOUGHT]->()-[:MEMBER_OF]->(nappies), (daddy)-[:BOUGHT]->()-[:MEMBER_OF]->(beer), (daddy)-[b:BOUGHT]->()-[:MEMBER_OF]->(console) WHERE b is null

Recommend


More recommend