Facebook Friend Recommendation using Graph Mining
Published:
Project Overview
This graph mining case study addresses the link prediction challenge in social networks. By representing user relationships as nodes and edges in a directed graph, the model analyzes existing network topologies to predict missing links and suggest potential friend recommendations.
Key Features & Objectives
- Link Prediction: Analyzes connectivity structures to identify high-probability future connections.
- Graph Telemetry: Maps network metrics (shortest path, connected components) to represent profile relationships.
- Matrix Representation: Encodes network adjacency features into mathematical vectors to train classifiers.
Technical Stack & Technologies
- Language: Python
- Graph Framework: NetworkX
- Machine Learning: Scikit-learn, XGBoost
- Data Structures: SciPy Sparse Matrices, Pandas, NumPy
Core Techniques & Graph Algorithms
- Similarity Metrics Extraction: Engineered graph-theoretic features, including Jaccard Distance, Cosine Distance, PageRank scores, HITS hub/authority metrics, and the Adamic-Adar Index.
- SVD Matrix Decomposition: Decomposed the graph’s adjacency matrix using Singular Value Decomposition (SVD) to represent low-dimensional structural connection attributes.
- Gradient-Boosted Classifier: Trained an XGBoost model utilizing the extracted graph features to classify if a directed link between two user nodes is likely to exist.