Description
In this course, you will learn:
- Recommendation algorithms based on neighborhood-based collaborative filtering and more modern techniques, including matrix factorization and even deep learning with artificial neural networks.
- The real-world challenges of applying these algorithms at a large scale with real-world data.
- Developing your own framework to test algorithms and building your own neural networks using technologies like Amazon DSSTNE, AWS SageMaker, and TensorFlow.
Syllabus:
1. Getting Started
- Install Anaconda, review course materials, and create movie recommendations
- Course roadmap
- Understanding you through implicit and explicit ratings
- Top-N recommender architecture
- Review the basics of recommender systems
2. Introduction to Python
- Data structures in Python
- Functions in Python
- Booleans, loops, and a hands-on challenge
3. Evaluating Recommender Systems
- Train/test and cross-validation
- Accuracy metrics (RMSE and MAE)
- Top-N hit rate: Many ways
- Coverage, diversity, and novelty
- Churn, responsiveness, and A/B tests
- Review ways to measure your recommender
- Walkthrough of RecommenderMetrics.py
- Walkthrough of TestMetrics.py
- Measure the performance of SVD recommendations
4. A Recommender Engine Framework
- Our recommender engine architecture
- Recommender engine walkthrough, part 1
- Recommender engine walkthrough, part 2
- Review the results of our algorithm evaluation
5. Content-Based Filtering
- Content-based recommendations and the cosine similarity metric
- K-nearest neighbors (KNN) and content recs
- Producing and evaluating content-based movie recommendations
- Bleeding edge alert: Mise-en-scene recommendations
- Dive deeper into content-based recommendations
6. Neighborhood-Based Collaborative Filtering
- Measuring similarity and sparsity
- Similarity metrics
- User-based collaborative filtering
- User-based collaborative filtering: Hands-on
- Item-based collaborative filtering
- Item-based collaborative filtering: Hands-on
- Tuning collaborative filtering algorithms
- Evaluating collaborative filtering systems offline
- Measure the hit rate of item-based collaborative filtering
- KNN recommenders
- Running user- and item-based KNN on MovieLens
- Experiment with different KNN parameters
- Bleeding edge alert: Translation-based recommendations
7. Matrix Factorization Methods
- Principal component analysis (PCA)
- Singular value decomposition (SVD)
- Running SVD and SVD++ on MovieLens
- Improving on SVD
- Tune the hyperparameters on SVD
- Bleeding edge alert: Sparse linear methods (SLIM)
8. Introduction to Deep Learning
- Deep learning introduction
- Deep learning prerequisites
- History of artificial neural networks
- Playing with TensorFlow
- Training neural networks
- Tuning neural networks
- Introduction to TensorFlow
- Handwriting recognition with TensorFlow, part 1
- Handwriting recognition with TensorFlow, part 2
- Introduction to Keras
- Handwriting recognition with Keras
- Classifier patterns with Keras
- Predict political parties of politicians with Keras
- Intro to convolutional neural networks (CNNs)
- CNN architectures
- Handwriting recognition with CNNs
- Intro to recurrent neural networks (RNNs)
- Training recurrent neural networks
- Sentiment analysis of movie reviews using RNNs and Keras
9. Deep Learning for Recommender Systems
- Intro to deep learning for recommenders
- Restricted Boltzmann machines (RBMs)
- Recommendations with RBMs, part 1
- Recommendations with RBMs, part 2
- Evaluating the RBM recommender
- Tuning restricted Boltzmann machines
- Exercise results: Tuning an RBM recommender
- Auto-encoders for recommendations: Deep learning for recs
- Recommendations with deep neural networks
- with RNNs
- Get GRU4Rec working on your desktop
- Exercise results: GRU4Rec in action
- Bleeding edge alert: Deep factorization machines
- More emerging tech to watch
10. Scaling It Up
- Introduction and installation of Apache Spark
- Apache Spark architecture
- Movie recommendations with Spark, matrix factorization, and ALS
- with Spark
- Amazon DSSTNE
- DSSTNE in action
- Scaling up DSSTNE
- AWS SageMaker and factorization machines
- SageMaker in action: Factorization machines on one million ratings, in the cloud
11. Real-World Challenges of Recommender Systems
- Implement random exploration
- Exercise solution: Random exploration
- Stoplists
- Implement a stoplist
- Exercise solution: Implement a stoplist
- Filter bubbles, trust, and outliers
- Identify and eliminate outlier users
- Exercise solution: Outlier removal
- Fraud, the perils of clickstream, and international concerns
- Temporal effects and value-aware recommendations
12. Case Studies
- Case study: YouTube, part 1
- Case study: YouTube, part 2
- Case study: Netflix, part 1
- Case study: Netflix, part 2
13. Hybrid Approaches
- Hybrid recommenders and exercise
- Exercise solution: Hybrid recommenders