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.

Leveraging Graphs for Better AI

50 views

Published on

Jennifer Reif, Developer Relations Engineer, Neo4j

Published in: Software
  • Be the first to comment

  • Be the first to like this

Leveraging Graphs for Better AI

  1. 1. Leveraging Graphs for Better AI Jennifer Reif Developer Relations Engineer, Neo4j @JMHReif jennifer.reif@neo4j.com
  2. 2. IT’S NOT WHAT YOU KNOW… IT’S HOW YOU ARE CONNECTED.
  3. 3. • Current data science models ignore network structure • Graphs add highly predictive features to existing ML models • Otherwise unattainable predictions based on relationships Novel & More Accurate Predictions
 with the Data You Already Have Machine Learning Pipeline
  4. 4. “The idea is that graph networks are bigger than 
 any one machine-learning approach. Graphs bring an ability to generalize about structure that the individual neural nets don't have.” "Where do the graphs come from that 
 graph networks operate over?”
  5. 5. Financial Crimes Drug Discovery Recommendations Cybersecurity Predictive Maintenance Customer Segmentation Churn Prediction Search/MDM Graphs Data Science Applications
  6. 6. What does the process look like? !6
  7. 7. Building a Graph ML Model Data Sources Native Graph Platform Machine Learning Aggregate Disparate Data and Cleanse Build Predictive Models Unify Graphs and Engineer Features Parquet JSON and more… MLlib and more…
  8. 8. Spark Graph Native Graph Platform Machine Learning Example: Spark & Neo4j Workflow Graph Transactions Graph Analytics Cypher 9 in Spark 3.0 to create non- persistent graphs MLlib to Train Models Native Graph Algorithms, Processing, and Storage Morpheus integration
  9. 9. Explore Graphs Build Graph Solutions • Massively scalable • Powerful data pipelining • Robust ML Libraries • Non-persistent, non-native graphs • Persistent, dynamic graphs • Graph native query and algorithm performance • Constantly growing list of graph algorithms and embeddings
  10. 10. Where do we start? !10
  11. 11. Steps Forward in Graph Data Science Query Based Knowledge Graph Query Based Feature Engineering Graph Algorithm Feature Engineering Graph Embeddings Graph Neural Networks Enterprise Delivery DataScienceComplexity Knowledge Graphs Graph Feature Engineering Graph Native Learning Graph Persistence
  12. 12. Steps Forward in Graph Data Science Query Based Knowledge Graph Query Based Feature Engineering Graph Algorithm Feature Engineering Graph Embeddings Graph Neural Networks Enterprise Maturity DataScienceComplexity
  13. 13. Query-Based Knowledge Graphs
 Connecting the Dots “Using Neo4j someone from our Orion project found information from the Apollo project that prevented an issue, saving well over two years of work and one million dollars of taxpayer funds.”
  14. 14. Steps Forward in Graph Data Science Query Based Knowledge Graph Graph Algorithm Feature Engineering Graph Embeddings Graph Neural Networks Query Based Feature Engineering Enterprise Maturity DataScienceComplexity
  15. 15. HetioNet is a knowledge graph integrating over 50 years of biomedical data Leveraged to predict new uses for drugs by using the graph topology to create features to predict new links Query-Based Feature Engineering
 Mining Data for Drug Discovery het.io
  16. 16. HetioNet is a knowledge graph integrating over 50 years of biomedical data Leveraged to predict new uses for drugs by using the graph topology to create features to predict new links het.io Query-Based Feature Engineering
 Mining Data for Drug Discovery
  17. 17. Query-Based Feature Engineering
 Mining Data for Drug Discovery
  18. 18. Spark Graph Native Graph Platform Machine Learning • Merge distributed data into DataFrames • Reshape your tables 
 into graphs • Explore cypher queries • Move to Neo4j to build expert queries • Persist your graph Knowledge Graphs: 
 Getting Started Example with Spark • Bring query based graph features to ML pipeline Graph Transactions Graph Analytics
  19. 19. Steps Forward in Graph Data Science Query Based Feature Engineering Graph Embeddings Graph Neural Networks Query Based Knowledge Graph Graph Algorithm Feature Engineering Enterprise Maturity DataScienceComplexity
  20. 20. Feature Engineering is how we combine and process the data to create new, more meaningful features, such as clustering or connectivity metrics. Graph Connected Feature Engineering Add More Descriptive Features: - Influence - Relationships - Communities Extraction
  21. 21. !21 Graph Feature Categories & Algorithms Pathfinding 
 & Search Finds the optimal paths or evaluates 
 route availability and quality Centrality / Importance Determines the importance of distinct nodes in the network Community Detection Detects group clustering or partition options Heuristic 
 Link Prediction Estimates the likelihood of nodes 
 forming a relationship Evaluates how alike nodes are Similarity Embeddings Learned representations
 of connectivity or topology
  22. 22. • Connected components to identify disjointed graphs sharing identifiers • PageRank to measure influence and transaction volumes • Louvain to identify communities that frequently interact • Jaccard to measure account similarity Graph Connected Feature Engineering 
 Financial Crime: Detecting Fraud Large financial institutions already have existing pipelines to identify fraud via heuristics and models
 Graph based features improve accuracy:
  23. 23. +48,000 U.S. Patents for 
 Graph Fraud / Anomaly Detection 
 in the last 10 years
  24. 24. Spark Graph Native Graph Platform Machine Learning • Merge distributed data into DataFrames • Reshape your tables 
 into graphs • Explore cypher queries and simple algorithms • Persist your graph • Create rule based features • Run native graph algorithms and write to graph or stream Graph Feature Engineering: 
 Getting Started Example with Spark • Bring graph features to ML pipeline for training Graph Transactions Graph Analytics
  25. 25. !25 Graph Algorithms in Neo4J • Parallel Breadth First Search • Parallel Depth First Search • Shortest Path • Single-Source Shortest Path • All Pairs Shortest Path • Minimum Spanning Tree • A* Shortest Path • Yen’s K Shortest Path • K-Spanning Tree (MST) • Random Walk • Degree Centrality • Closeness Centrality • CC Variations: Harmonic, Dangalchev, Wasserman & Faust • Betweenness Centrality • Approximate Betweenness Centrality • PageRank • Personalized PageRank • ArticleRank • Eigenvector Centrality • Triangle Count • Clustering Coefficients • Connected Components (Union Find) • Strongly Connected Components • Label Propagation • Louvain Modularity – 1 Step & Multi-Step • Balanced Triad (identification) • Euclidean Distance • Cosine Similarity • Jaccard Similarity • Overlap Similarity • Pearson Similarity Pathfinding 
 & Search Centrality / Importance Community Detection Similarity neo4j.com/docs/
 graph-algorithms/current/ Link 
 Prediction • Adamic Adar • Common Neighbors • Preferential Attachment • Resource Allocations • Same Community • Total Neighbors
  26. 26. Steps Forward in Graph Data Science Query Based Knowledge Graph Graph Algorithm Feature Engineering Graph Neural Networks Query Based Feature Engineering Graph Embeddings Enterprise Maturity DataScienceComplexity
  27. 27. Embedding transforms graphs into a feature vector, or set of vectors, describing topology, connectivity, or attributes of nodes and edges in the graph !27 Graph Embeddings • Vertex/Node embeddings: describe connectivity of each node • Path embeddings: traversals across the graph • Graph embeddings: encode an entire graph into a single vector
  28. 28. Explainable Reasoning over Knowledge Graphs for Recommendation !28 Graph Embeddings - Recommendations
  29. 29. !29 Graph Embeddings - Recommendations Explainable Reasoning over Knowledge Graphs for Recommendation
  30. 30. Spark Graph Native Graph Platform Machine Learning • Merge distributed data into DataFrames • Reshape your tables 
 into graphs • Explore cypher queries and simple algorithms • Move to Neo4j to build expert queries • Write to persist • Stay tuned for DeepWalk and DeepGL algorithms Graph Feature Engineering-Embedding: 
 Getting Started Example with Spark • Bring graph features to ML pipeline for training Graph Transactions Graph Analytics
  31. 31. Steps Forward in Graph Data Science Query Based Knowledge Graph Graph Algorithm Feature Engineering Query Based Feature Engineering Graph Neural Networks Graph Embeddings Enterprise Maturity DataScienceComplexity
  32. 32. Deep Learning refers to training multi-layer neural networks using gradient descent !32 Graph Native Learning
  33. 33. Graph Native Learning refers to deep learning models that take a graph as an input, performs computations, and return a graph !33 Graph Native Learning Battaglia et al, 2018
  34. 34. Example: electron path prediction Bradshaw et al, 2019 !34 Graph Native Learning Given reactants and reagents, what will the products be? Given reactants and reagents, how do they form it?
  35. 35. Example: electron path prediction !35 Graph Native Learning
  36. 36. Progressing in Graph Data Science Query Based Knowledge Graph Query Based Feature Engineering Graph Algorithm Feature Engineering Graph Embeddings Graph Neural Networks Enterprise Maturity DataScienceComplexity Knowledge Graphs Graph Feature Engineering Graph Native Learning Graph Persistence
  37. 37. Resources Business • neo4j.com/use-cases/
 artificial-intelligence-analytics/ Data Scientists/Developers • neo4j.com/sandbox • neo4j.com/developer/ • community.neo4j.com jennifer.reif@neo4j.com @JMHReif neo4j.com/
 graph-algorithms-book

×