building a real time recommendation engine with neo4j
play

Building a real-time recommendation engine with Neo4j OSCON 2017 - PowerPoint PPT Presentation

Building a real-time recommendation engine with Neo4j OSCON 2017 William Lyon @lyonwj William Lyon Developer Relations Engineer @neo4j will@neo4j.com @lyonwj lyonwj.com Agenda Use cases Recommender systems


  1. Building a real-time recommendation engine with Neo4j OSCON 2017 William Lyon @lyonwj

  2. William Lyon Developer Relations Engineer @neo4j will@neo4j.com @lyonwj lyonwj.com

  3. Agenda • • • • Use cases • Recommender systems • Hands-on! • Graph data modeling • Cypher

  4. Neo4j Graph Database • • • • •

  5. Graph Data Model

  6. Labeled Property Graph Model

  7. Labeled Property Graph Model

  8. The Graph

  9. The Graph

  10. The Graph

  11. The Graph

  12. The Graph

  13. openCypher (queryLanguage)-[:FOR]->(graphs)

  14. Cypher

  15. Use Case: Personalized Recommendations

  16. Personalized Real-Time Personalized Real-Time Personalized Promotions Recommendations Recommendations

  17. Collaborative Filtering Content Based An algorithm that considers users An algorithm that considers Algorithm Types interactions with products, with the similarities between products and assumption that other users will categories of products. behave in similar ways. Product Product Category Customer Product Product Data-Model (Expressed as a graph) Product Product Category Customer

  18. Polyglot Persistence Products Customers / Users Inventory Inventory Location Location Category Category Price Price Purchase Purchase Configurations Configurations Return Return Review Review View View In-store Purchases In-store Purchases Location Location RELATIONAL DB WIDE COLUMN DOCUMENT STORE RELATIONAL DB KEY VALUE STORE DOCUMENT STORE STORE Purchases Product Views User Review In-Store Shopping Cart Catalogue Purchase

  19. Recommendations require an operational workload — it’s in the moment, real-time! Good for Analytics, BI, Map Reduce Non-Operational, Slow Data Lake Queries RELATIONAL DB WIDE COLUMN DOCUMENT STORE RELATIONAL DB KEY VALUE STORE DOCUMENT STORE STORE Purchases Product Views User Review In-Store Shopping Cart Catalogue Purchase

  20. Apps and Systems Drivers: Java | JavaScript | Python | .Net | PHP | Go | Ruby Real-Time Queries Connector RELATIONAL DB WIDE COLUMN DOCUMENT STORE RELATIONAL DB KEY VALUE STORE DOCUMENT STORE STORE Purchases Product Views User Review In-Store Shopping Cart Catalogue Purchase

  21. Graph-based recommendations

  22. Collaborative Filtering

  23. Collaborative Filtering

  24. Collaborative Filtering

  25. Collaborative Filtering

  26. In Cypher

  27. In Cypher

  28. Content Filtering

  29. Content Filtering

  30. Content Filtering w/ Cypher

  31. Content Filtering - Concept Hierarchy

  32. Content Filtering - Concept Hierarchy

  33. Content Filtering - Concept Hierarchy

  34. Content Filtering - Concept Hierarchy w/ Cypher

  35. Content Filtering - Concept Hierarchy w/ Cypher

  36. Neo4j Sandbox

  37. ● → ○ ○ ● → ○ ○

  38. Click “Neo4j Browser”

  39. You should see this: Neo4j Browser ● Query workbench / visualization for Neo4j ● Interactive “guides” for our tutorial today ● Embed content, queries

  40. (you)-[:HAVE]->(?) (?)<-[:ANSWERS]-(will)

Recommend


More recommend