Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Leveraging Graphs for Better AI

Leveraging Graphs for Better AI

Today's tech news is littered with buzzwords and acronyms like - ML, AI, big data, smart devices, even graph. What does 'graph' actually provide and mean for technology and business solutions in the artificial intelligence or machine learning space?

10f2b035856eef2b59c02267e3ee9e63?s=128

Jennifer Reif

June 12, 2019
Tweet

Transcript

  1. Leveraging Graphs for Better AI Jennifer Reif Developer Relations Engineer,

    Neo4j @JMHReif jennifer.reif@neo4j.com
  2. Jennifer Reif Software Engineer, Neo4j - Developer - Blogger -

    Conference speaker Love cats, coffee, and traveling :) jennifer.reif@neo4j.com @JMHReif The Right Tool for Real-World Networks
  3. IT’S NOT WHAT YOU KNOW… IT’S HOW YOU ARE CONNECTED.

  4. • 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
  5. “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?”
  6. Financial Crimes Drug Discovery Recommendations Cybersecurity Predictive Maintenance Customer Segmentation

    Churn Prediction Search/MDM Graphs Data Science Applications
  7. What does the process look like? !7

  8. 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…
  9. 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
  10. 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
  11. Where do we start? !11

  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 Delivery Data Science Complexity Knowledge Graphs Graph Feature Engineering Graph Native Learning Graph Persistence
  13. 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 Data Science Complexity
  14. Query-Based Knowledge Graphs
 Connecting the Dots • Multiple graph layers

    of financial information • Includes corporate data with cross-relationships, external news, and customized weighting • Dashboards and tools • Credit risk • Investment risk • Portfolio news recommendations
  15. 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 Data Science Complexity
  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 Query-Based Feature Engineering
 Mining Data for Drug Discovery het.io
  17. 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
  18. Query-Based Feature Engineering
 Mining Data for Drug Discovery

  19. 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
  20. 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 Data Science Complexity
  21. 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
  22. !22 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
  23. • 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:
  24. +48,000 U.S. Patents for 
 Graph Fraud / Anomaly Detection

    
 in the last 10 years
  25. 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
  26. !26 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
  27. 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 Data Science Complexity
  28. Embedding transforms graphs into a feature vector, or set of

    vectors, describing topology, connectivity, or attributes of nodes and edges in the graph !28 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
  29. Explainable Reasoning over Knowledge Graphs for Recommendation !29 Graph Embeddings

    - Recommendations
  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. 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 Data Science Complexity
  32. Deep Learning refers to training multi-layer neural networks using gradient

    descent !32 Graph Native Learning
  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. 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, what will the products be?
  35. Example: electron path prediction !35 Graph Native Learning

  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 Data Science Complexity Knowledge Graphs Graph Feature Engineering Graph Native Learning Graph Persistence
  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