
Explore how machine learning builds recommender systems, from implicit and explicit data to top end architectures with candidate generation, ranking, and filtering in Python on Google Colab.
Learn to evaluate recommender systems using online and offline metrics, including mean absolute error, root mean squared error, hit rate, leave one out cross validation, and coverage, diversity, and novelty.
Explore content-based recommender systems by using item features to compute similarity, illustrated with a movie genre matrix and cosine similarity to recommend similar titles.
Leverage neighborhood based collaborative filtering to use user behavior and identify similar users. Recommend movies their similar users watched and prepare for a hands-on Python project.
Explore mammoth interactive's school, founded in 2012 by John Burrough, emphasizing in-demand tech skills to help learners land their dream jobs. Note 800,000 copies sold and Harvard CNN features.
Learn how online courses maximize efficiency with industry-led instructors, affordable content, and project-based practice that builds a strong portfolio while you finish what you start.
Explore Python language basics for beginners, including variables, operators, collection types, conditionals, loops, functions, and classes and objects, with browser-based practice in Google Colab.
Discover how Python variables act as placeholders for data and how booleans, ints, floats, and strings represent different data types. Master dynamic typing, none values, and type conversion in practice.
Explore Python type conversion with booleans, integers, floats, and strings, including which conversions are allowed and how booleans map to 0/1. See how Python preserves the original value when converting.
Explore Python operators, including arithmetic, assignment, comparison, and logical operators, and learn how they modify variables, respect order of operations, and apply to numbers and strings with practical examples.
Explore Python collections—lists, tuples, dictionaries, and ranges. Learn about indices, mutability, and how to access and manipulate elements, including lists of mixed types and key-value pairs.
Learn python lists through inventory examples, mastering indexing and common operations like append, insert, pop, remove, and clear, then explore multidimensional lists with row and column access.
Learn how to create and access tuples, compare them with lists, and use tuple operations such as count, index, length, max, and min with practical examples like inventory items.
Learn Python dictionaries through key-value pairs, access and modify items, and use get, pop, and clear. Build a game inventory to illustrate practical dictionary usage.
Explore conditionals in Python to add logic and control flow, using if, elif, and else, test multiple conditions with and/or operators, and apply nesting to test program state.
Explore if, elif, and else in Python with practical examples, including a two-dimensional movement scenario and the ternary operator, then examine nested and multi-condition checks using and/or.
Explore loops in Python, comparing while and for loops, their break and continue controls, and practical examples with ranges, lists, and simple game simulations.
Explore Python functions as self-contained blocks of code, learn to define and call them, and master parameters, return values, and scope including global and local variables.
Explore how to add parameters and return values to functions in Python, including default values, bounds checking, and returning updated positions.
Explore the basics of classes and objects in Python, learn how state and behavior define objects, use initializers and instantiation, and apply inheritance and static members.
Subclasses a game character into a player character in python, adding lives and max health, and overriding take_damage and is_dead. Use super() to initialize the base class.
Explore static variables and static methods in Python classes, and learn how they belong to the class, not individual instances, enabling cross-instance data access via class-level syntax.
Summarizes Python basics from variables and operators to lists, dictionaries, tuples, loops, and functions, emphasizing practice and progression. Encourages exploring libraries like matplotlib, pandas, numpy, and TensorFlow for future projects.
Load Movielens data into a pandas dataframe in Google Colab, read movies.csv and ratings.csv, rename columns, drop the first row, convert data types to float, and prepare for merging.
Merge the ratings and movie titles dataframes in pandas by cleaning columns, using movie id as the key, and grouping to count and sort ratings.
Build a cross tab via a pivot table with rating by user id and movie title, transpose it, then use truncated SVD to generate a correlation matrix for movie recommendations.
Test the recommender by selecting an example movie from Movielens, building a correlation matrix, and showing top correlated titles using a minimum correlation threshold.
Explore a beginner-friendly movie recommender built from scratch using pandas data handling, Euclidean distance, and k-nearest neighbors to predict top-rated movies for similar users.
Define what machine learning is and how algorithms learn from data to make predictions and classifications, with examples from medicine, search, and autonomous robots, and outline the data-to-deployment workflow.
Explore the main machine learning model types, from clustering and supervised learning with labeled data to regression, deep learning, and classification, with real-world examples and common algorithms.
Explore supervised learning, where models map inputs to outputs and learn from training data. Build, train, and evaluate models to predict new outputs and deploy them.
Load movies.csv and ratings.csv from the dataset into pandas dataframes with read_csv in Google Colab. Set the movie_id as the index and work with title, genres, user_id, rating, and timestamp.
Explore building movie recommendations by using multiple features, such as ratings count and average rating, and applying sorting, group by, and mean-based filters.
Learn to compute user similarity by calculating the distance between two users on a feature graph using their X and Y coordinates, via the Pythagorean theorem and numpy arrays.
Learn to find similar users using Euclidean distance on user ratings data. Build reusable functions to compute distances between user rating vectors and identify similar tastes.
Define a reusable function to compute user similarity in a movie ratings dataset by joining user ratings, dropping NaNs, and calculating the distance with numpy, enabling top similar users.
Define relative distances between users and build a distances dataframe from unique user ids. Identify the top similar users by sorting by distance.
Define make movie recommendation using a user's and their most similar users' ratings to propose unwatched top-rated movies; drop watched titles, sort by rating, and join with movie data.
Explore the k-nearest neighbors model as a nonparametric, instance-based method for classification and regression, and learn how to tune k, assess error with cross-validation, and balance overfitting and underfitting.
Learn to implement a k nearest neighbors classifier for movie recommendations by averaging the top k neighbors' ratings.
Create a random test user by selecting movies and ratings, build a new user data frame, and append it to the ratings data to test a k-nearest neighbors recommendation.
Apply a k-nearest neighbors approach to generate movie recommendations for a new user by averaging top movies from the five most similar users, with ratings guiding the ranking.
Preview the project on building a movie recommendation model with python, loading and cleaning data, applying one-hot encoding, training two regression models, and identifying top predictors of user ratings.
We'll cover tried and true recommendation algorithms based on neighborhood-based collaborative filtering, and work our way up to more modern techniques including matrix factorization and even deep learning with artificial neural networks. Along the way, you'll learn from our extensive industry experience to understand the real-world challenges you'll encounter when applying these algorithms at large scale and with real-world data.
You've seen automated recommendations everywhere - on Netflix's home page, on YouTube, and on Amazon as these machine learning algorithms learn about your unique interests, and show the best products or content for you as an individual. These technologies have become central to the largest, most prestigious tech employers out there, and by understanding how they work, you'll become very valuable to them.
We'll cover tried and true recommendation algorithms based on neighborhood-based collaborative filtering, and work our way up to more modern techniques including matrix factorization and even deep learning with artificial neural networks.
Recommender systems are complex; don't enroll in this course expecting a learn-to-code type of format. There's no recipe to follow on how to make a recommender system; you need to understand the different algorithms and how to choose when to apply each one for a given situation. We assume you already know how to code.
However, this course is very hands-on; you'll develop your own framework for evaluating and combining many different recommendation algorithms together, and you'll even build your own neural networks using Tensorflow to generate recommendations from real-world movie ratings from real people.
This comprehensive course takes you all the way from the early days of collaborative filtering, to bleeding-edge applications of deep neural networks and modern machine learning techniques for recommending the best items to every individual user.
The coding exercises in this course use the Python programming language. We include an intro to Python if you're new to it, but you'll need some prior programming experience in order to use this course successfully. We also include a short introduction to deep learning if you are new to the field of artificial intelligence, but you'll need to be able to understand new computer algorithms.