A comprehensive exploration of quantum mechanics applied to recommender systems, featuring implementations, interactive tutorials, and academic research survey.
This repository demonstrates how the mathematical formalism of quantum mechanics can be applied to build novel recommender systems. It includes:
- Working implementations of quantum-inspired algorithms
- Interactive Jupyter notebook for hands-on experimentation
- Academic survey of the field's research landscape
- Visualizations of quantum states and interference effects
The project bridges quantum computing, machine learning, and cognitive science to explore new approaches to the recommendation problem.
- Complex Hilbert Space Embeddings: Users and items as complex-valued quantum state vectors
- Quantum Interference: Multiple recommendation paths that interfere constructively/destructively
- Density Matrix Formalism: Mixed quantum states for modeling preference uncertainty
- Born Rule Predictions: Converting quantum probability amplitudes to ratings
- Fully functional Python code with NumPy/SciPy
- Three distinct prediction methods (direct, interference, density matrix)
- Training via gradient descent with quantum state normalization
- Comprehensive visualizations of quantum states
quantum-recommender/
├── README.md # This file
├── quantum_recommender.py # Core implementation (standalone script)
├── quantum_recommender.ipynb # Interactive Jupyter notebook
├── quantum_recommender_survey.md # Academic survey article (~6,500 words)
└── visualizations/
└── quantum_states_visualization.png
pip install numpy scipy matplotlibFor the Jupyter notebook:
pip install jupyter pandasOption 1: Standalone Script
python quantum_recommender.pyThis will run a complete demonstration including:
- Training a quantum-inspired recommender on synthetic data
- Demonstrating quantum interference effects
- Showing density matrix predictions
- Visualizing quantum states in 2D projections
Option 2: Interactive Notebook
jupyter notebook quantum_recommender.ipynbExplore the notebook to:
- Understand the theory step-by-step
- Run interactive examples
- Experiment with parameters
- Create custom visualizations
A complete implementation featuring:
class QuantumInspiredRecommender:
"""
Recommender system using quantum mechanics concepts:
- Complex Hilbert space embeddings
- Quantum interference effects
- Density matrix representations
"""Key Methods:
quantum_inner_product(): Computes ⟨ψ|φ⟩ in complex spacepredict_with_interference(): Uses quantum interference from context itemscreate_density_matrix(): Builds mixed state from rating historytrain(): Gradient descent with quantum normalization
11 comprehensive sections covering:
- Introduction - Background and motivation
- Class Definition - Complete implementation with explanations
- Initialization - Setting up the quantum system
- Data Generation - Creating synthetic training data
- Model Training - Optimizing quantum embeddings
- Quantum Interference Demo - Interactive exploration
- Density Matrix Predictions - Mixed state approach
- State Visualization - Complex plane and 2D projections
- Method Comparison - Side-by-side evaluation
- Interactive Exploration - Custom prediction function
- Summary & Experiments - Key takeaways and suggestions
A comprehensive review of the research field covering:
- Quantum Algorithms: Kerenidis-Prakash algorithm, Tang's dequantization
- Quantum Annealing: D-Wave applications for feature selection, carousel optimization
- Quantum-Inspired Methods: Complex embeddings, quantum cognition, density matrices
- Quantum Neural Networks: Recent QNN architectures for recommendations
- Theoretical Foundations: Quantum probability, geometric interpretations
- Empirical Results: Benchmarks and performance comparisons
- Future Directions: Open challenges and opportunities
Users and items are represented as complex vectors (quantum states):
- Each vector has unit norm: ||ψ|| = 1
- Complex numbers encode both magnitude and phase
- Inner products give quantum similarity: ⟨ψ|φ⟩
Recommendations can be influenced by "context items" that create interference:
Total Amplitude = Direct Amplitude + Σ(Context Path Amplitudes)
Probability = |Total Amplitude|²
This captures how considering related items affects final predictions.
User preferences as mixed quantum states:
ρ = Σᵢ wᵢ |ψᵢ⟩⟨ψᵢ|
Where weights wᵢ represent the importance of different preference states.
From the demonstration:
Quantum Interference Effects:
- Direct path only: 1.701 stars
- With context [1, 2]: 4.373 stars
- With context [10, 15]: 4.360 stars
- With context [1, 2, 10]: 5.000 stars
Different context items produce different predictions due to quantum interference!
This repository is ideal for:
- Quantum Computing Students: Learn practical applications of quantum formalism
- Machine Learning Researchers: Explore novel recommendation approaches
- Course Projects: Quantum computing, recommender systems, or applied mathematics courses
- Research Exploration: Starting point for quantum-inspired ML research
The survey article provides extensive references, but key papers include:
- Kerenidis & Prakash (2016): "Quantum Recommendation Systems" - Original quantum algorithm
- Tang (2018): "A quantum-inspired classical algorithm for recommendation systems" - Classical dequantization
- Busemeyer & Bruza (2012): "Quantum Models of Cognition and Decision" - Quantum cognition foundations
- Ferrari Dacrema et al. (2021-2024): Series on quantum annealing for recommendations
- Pilato & Vella (2023): "A Survey on Quantum Computing for Recommendation Systems"
The core mathematics draws from quantum mechanics:
State Representation:
|u⟩ = Σᵢ aᵢ|i⟩, where aᵢ ∈ ℂ and Σᵢ|aᵢ|² = 1
Quantum Inner Product:
⟨u|v⟩ = Σᵢ ūᵢvᵢ
Born Rule:
P(outcome) = |⟨outcome|state⟩|²
- Embeddings: Complex-valued NumPy arrays (n_entities × embedding_dim)
- Normalization: States maintained at unit norm throughout training
- Training: Custom gradient descent respecting quantum constraints
- Sampling: Uses quantum probability distributions via Born rule
Ideas for extensions:
- Real Datasets: Load MovieLens, Amazon Reviews, or other recommendation datasets
- Advanced Interference: Implement higher-order interference terms
- Quantum Entanglement: Model user-user or item-item correlations
- Measurement Operators: Add projection operators for preference categories
- Benchmarking: Compare against classical matrix factorization
- Quantum Hardware: Adapt for actual quantum processors (Qiskit, Cirq)
Example extension:
def predict_with_entanglement(self, user1_idx, user2_idx, item_idx):
"""
Model entangled preferences between two users
"""
# Create entangled state
state = self.user_embeddings[user1_idx] ⊗ self.user_embeddings[user2_idx]
# Project onto item space
# ... implement entangled recommendation logicContributions are welcome! Areas of interest:
- Algorithms: New quantum-inspired recommendation methods
- Visualizations: Better ways to visualize quantum states
- Datasets: Integration with standard benchmarks
- Documentation: Improved explanations and tutorials
- Performance: Optimizations and scalability improvements
Please open an issue to discuss major changes before submitting a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.
This work synthesizes ideas from multiple research communities:
- Quantum Computing: For the mathematical formalism
- Recommender Systems: For the application domain
- Cognitive Science: For quantum models of decision-making
- Information Retrieval: For quantum-inspired IR methods
Special recognition to researchers who pioneered this interdisciplinary field, including Iordanis Kerenidis, Anupam Prakash, Ewin Tang, Peter Bruza, Jerome Busemeyer, Maurizio Ferrari Dacrema, and many others cited in the survey.
If you use this code or survey in your research, please cite:
@software{quantum_recommender_2025,
title = {Quantum Recommender: Quantum Mechanics for Recommendation Systems},
author = {Ian Buckley},
year = {2025},
url = {https://github.com/roguetrainer/quantum-recommender}
}Potential research directions:
- Quantum Annealing Integration: Connect to D-Wave systems for optimization
- Quantum Neural Networks: Implement variational quantum circuits
- Cognitive Validation: Empirical studies of quantum-like user behavior
- Hybrid Systems: Combine quantum and classical recommendation engines
- Explainability: Use quantum geometry for interpretable recommendations
- arXiv preprints on quantum machine learning
- "The Geometry of Information Retrieval" by van Rijsbergen
- RecSys conference proceedings (quantum sessions)
- QuantumCLEF evaluation lab
- PennyLane: Quantum machine learning framework
- Qiskit: IBM's quantum computing toolkit
- D-Wave Ocean: Quantum annealing platform
- edX: Quantum Computing courses
- Coursera: Recommender Systems specializations
- MIT OpenCourseWare: Quantum computing lectures
Built with ❤️ for the quantum × machine learning community
"The universe is not only queerer than we suppose, but queerer than we can suppose." - J.B.S. Haldane
"Quantum mechanics is very impressive. But an inner voice tells me that it is not yet the real thing." - Albert Einstein
Perhaps quantum mechanics can tell us something about how we choose what to watch on Netflix... 🎬🔮
