Upgrade your machine learning models with graph-based algorithms, the perfect structure for complex and interlinked data.
In Graph-Powered Machine Learning, you will learn:
• The lifecycle of a machine learning project
• Graphs in big data platforms
• Data source modeling using graphs
• Graph-based natural language processing, recommendations, and fraud detection techniques
• Graph algorithms
• Working with Neo4J
Graph-Powered Machine Learning teaches to use graph-based algorithms and data organization strategies to develop superior machine learning applications. You’ll dive into the role of graphs in machine learning and big data platforms, and take an in-depth look at data source modeling, algorithm design, recommendations, and fraud detection. Explore end-to-end projects that illustrate architectures and help you optimize with best design practices. Author Alessandro Negro’s extensive experience shines through in every chapter, as you learn from examples and concrete scenarios based on his work with real clients!
About the technology
Identifying relationships is the foundation of machine learning. By recognizing and analyzing the connections in your data, graph-centric algorithms like K-nearest neighbor or PageRank radically improve the effectiveness of ML applications. Graph-based machine learning techniques offer a powerful new perspective for machine learning in social networking, fraud detection, natural language processing, and recommendation systems.
About the book
Graph-Powered Machine Learning teaches you how to exploit the natural relationships in structured and unstructured datasets using graph-oriented machine learning algorithms and tools. In this authoritative book, you’ll master the architectures and design practices of graphs, and avoid common pitfalls. Author Alessandro Negro explores examples from real-world applications that connect GraphML concepts to real world tasks.
What's inside
• Graphs in big data platforms
• Recommendations, natural language processing, fraud detection
• Graph algorithms
• Working with the Neo4J graph database
About the reader
For readers comfortable with machine learning basics.
About the author
Alessandro Negro is Chief Scientist at GraphAware. He has been a speaker at many conferences, and holds a PhD in Computer Science.
Author(s): Alessandro Nego
Edition: 1
Publisher: Manning Publications
Year: 2021
Language: English
Commentary: Vector PDF
Pages: 492
City: Shelter Island, NY
Tags: Machine Learning; Algorithms; Natural Language Processing; Python; Recommender Systems; Graph Data Model; Neo4j; Social Networks; Fraud Detection; Collaborative Filtering; Knowledge Graph
Graph-Powered Machine Learning
brief content
contents
foreword
preface
acknowledgments
about this book
Who should read this book?
How this book is organized
About the code
liveBook discussion forum
Online resources
about the author
about the cover illustration
Part 1: Introduction
Chapter 1: Machine learning and graphs: An introduction
1.1 Machine learning project life cycle
1.1.1 Business understanding
1.1.2 Data understanding
1.1.3 Data preparation
1.1.4 Modeling
1.1.5 Evaluation
1.1.6 Deployment
1.2 Machine learning challenges
1.2.1 The source of truth
1.2.2 Performance
1.2.3 Storing the model
1.2.4 Real time
1.3 Graphs
1.3.1 What is a graph?
1.3.2 Graphs as models of networks
1.4 The role of graphs in machine learning
1.4.1 Data management
1.4.2 Data analysis
1.4.3 Data visualization
1.5 Book mental model
Chapter 2: Graph data engineering
2.1 Working with big data
2.1.1 Volume
2.1.2 Velocity
2.1.3 Variety
2.1.4 Veracity
2.2 Graphs in the big data platform
2.2.1 Graphs are valuable for big data
2.2.2 Graphs are valuable for master data management
2.3 Graph databases
2.3.1 Graph database management
2.3.2 Sharding
2.3.3 Replication
2.3.4 Native vs. non-native graph databases
2.3.5 Label property graphs
Chapter 3: Graphs in machine learning applications
3.1 Graphs in the machine learning workflow
3.2 Managing data sources
3.2.1 Monitor a subject
3.2.2 Detect a fraud
3.2.3 Identify risks in a supply chain
3.2.4 Recommend items
3.3 Algorithms
3.3.1 Identify risks in a supply chain
3.3.2 Find keywords in a document
3.3.3 Monitor a subject
3.4 Storing and accessing machine learning models
3.4.1 Recommend items
3.4.2 Monitoring a subject
3.5 Visualization
3.6 Leftover: Deep learning and graph neural networks
Part 2: Recommendations
Chapter 4: Content-based recommendations
4.1 Representing item features
4.2 User modeling
4.3 Providing recommendations
4.4 Advantages of the graph approach
Chapter 5: Collaborative filtering
5.1 Collaborative filtering recommendations
5.2 Creating the bipartite graph for the User-Item dataset
5.3 Computing the nearest neighbor network
5.4 Providing recommendations
5.5 Dealing with the cold-start problem
5.6 Advantages of the graph approach
Chapter 6: Session-based recommendations
6.1 The session-based approach
6.2 The events chain and the session graph
6.3 Providing recommendations
6.3.1 Item-based k-NN
6.3.2 Session-based k-NN
6.4 Advantages of the graph approach
Chapter 7: Context-aware and hybrid recommendations
7.1 The context-based approach
7.1.1 Representing contextual information
7.1.2 Providing recommendations
7.1.3 Advantages of the graph approach
7.2 Hybrid recommendation engines
7.2.1 Multiple models, single graph
7.2.2 Providing recommendations
7.2.3 Advantages of the graph approach
Part 3: Fighting fraud
Chapter 8: Basic approaches to graph-powered fraud detection
8.1 Fraud prevention and detection
8.2 The role of graphs in fighting fraud
8.3 Warm-up: Basic approaches
8.3.1 Finding the origin point of credit card fraud
8.3.2 Identifying a fraud ring
8.3.3 Advantages of the graph approach
Chapter 9: Proximity-based algorithms
9.1 Proximity-based algorithms: An introduction
9.2 Distance-based approach
9.2.1 Storing transactions as a graph
9.2.2 Creating the k-nearest neighbors graph
9.2.3 Identifying fraudulent transactions
9.2.4 Advantages of the graph approach
Chapter 10: Social network analysis against fraud
10.1 Social network analysis concepts
10.2 Score-based methods
10.2.1 Neighborhood metrics
10.2.2 Centrality metrics
10.2.3 Collective inference algorithms
10.3 Cluster-based methods
10.4 Advantages of graphs
Part 4: Taming text with graphs
Chapter 11: Graph-based natural language processing
11.1 A basic approach: Store and access sequence of words
11.1.1 Advantages of the graph approach
11.2 NLP and graphs
11.2.1 Advantages of the graph approach
Chapter 12: Knowledge graphs
12.1 Knowledge graphs: Introduction
12.2 Knowledge graph building: Entities
12.3 Knowledge graph building: Relationships
12.4 Semantic networks
12.5 Unsupervised keyword extraction
12.5.1 Keyword co-occurrence graph
12.5.2 Clustering keywords and topic identification
12.6 Advantages of the graph approach
appendix A: Machine learning algorithms taxonomy
A.1 Supervised vs. unsupervised learning
A.2 Batch vs. online learning
A.3 Instance-based vs. model-based learning
A.4 Active vs. passive learning
Reference
appendix B: Neo4j
B.1 Neo4j introduction
B.2 Neo4j installation
B.2.1 Neo4j server installation
B.2.2 Neo4j Desktop installation
B.3 Cypher
B.4 Plugin installation
B.4.1 APOC installation
B.4.2 GDS Library
B.5 Cleaning
References
appendix C: Graphs for processing patterns and workflows
C.1 Pregel
C.2 Graphs for defining complex processing workflows
C.3 Dataflow
References
appendix D: Representing graphs
References
index
A
B
C
D
E
F
G
H
I
K
L
M
N
O
P
R
S
T
U
V
W