Recommendation systems are sophisticated machine learning systems that leverage user behavior data to surface relevant content from vast candidate pools, typically organized into multiple stages (retrieval, ranking, post-ranking) to balance computational efficiency with recommendation quality; despite their widespread importance—driving 40% of app installs on Google Play and 60% of YouTube watch time—these systems present significant challenges including handling high-cardinality sparse features, managing multiple optimization objectives, and deploying efficiently at scale, which is why Google has open-sourced several specialized libraries including TensorFlow Recommenders, ScaNN, TF Ranking, and TFLite to help developers build effective recommendation systems.
Recommendation Systems Overview with TensorFlow: Key Concepts
Added:hi there thanks for watching this video series of building recommendation systems with tensorflow my name is wei and i'm a developer advocate at google in this video series we'll be showing you what a recommendation system is and how you can leverage google's open source products to build powerful recommendation systems for your needs since these components are all based on tensorflow we're going to assume you already have a solid machine learning background and are familiar with tensorflow 2. for example you should already know what embedding is or how to build and train a neural network with keras if you're ready let's get started recommendation systems often called recommenders as well are super useful in our daily lives from recommending movies or restaurants to highlighting entertaining videos recommenders are an important occupation of machine learning to help you surface competing components from a large pool of candidates to your users for example the google play store offers millions of apps to in-store while youtube provides billions of videos to watch and even more apps and videos are being added every day so how can users find desirable new content yes one can use search to access content he or she already has in mind but a recommendation engine can display items that users might not have sought to search for on their own and just to give you a sense of how impactful those recommendations are forty percent of app installs on google play come from recommendations sixty percent of watch time on youtube comes from recommendations outside of google 35 of what consumers purchase on amazon and 75 of what users watch on netflix confirm recommendations according to a mckinsey study in other words recommenders drive a huge amount of user engagements and this is why you want to build powerful recommendation systems for business needs generally speaking recommenders leverage data on past user behaviors to make future recommendations from a technical standpoint machine learning based recommendation models determine how similar videos and apps are to other things you like and then serve up a recommendation for example if you are watching youtube and have just watched a couple of tensorflow dev summit videos chances are you're going to watch another one instead of what's new in chrome video we know this from others behavior if a lot of people watched all the dev summit videos together and you happen to watch one episode you can then use their behaviors to teach the model to pick the next dev summit video for you as well recommenders are sophisticated machine learning systems rather than individual models most applications will have multiple components instead of a single machine learning model for example if you are on youtube the recommendations you see are a result of a complex dance of many individual models first you have the retrieval stage which takes tens of millions of available videos and quickly narrows them down to a thousand or so then you have the ranking stage which narrows this further down to a couple of hundred finally you have the post ranking stage which can help ensure diversity freshness and fairness and reorganize those into a set of valuable recommendations in the order of dozens you may be curious to ask why don't we just have a single model to achieve all those things in one's past the reason is that ranking millions of candidates will be very expensive to run and the latency will not be able to satisfy your production system that's why it's broken down into multiple stages despite their ubiquity recommendation models are complex tricky to train evaluate and deploy they're tricky to trend for a couple of reasons first they have large-scale models that rely on high-cardinality sparse features embedding vocabularies can routinely run in the tens of millions second we have multiple objectives to optimize for if you're using youtube you can click on a video as well as like it or dismiss it or you can even comment or share it that's for training what about evaluation evaluation can be equally complex recommenders are not really supervised learning there are complex dynamic systems this means that offline metrics can be highly misleading your actions on your video sites are not an infallible guide to what videos you like looking at your past interactions help us understand how you behave in response to the existing system but as soon as we deviate sufficiently from that system all bets are off this is compounded by learning effects and objective tradeoffs a new model may be good initially and get worse over time as novelty wears off a model that leads to more clicks may be worse overall because for instance it leads to more clickbait videos being served finally recommendation systems are tricky to deploy models with huge vocabularies cannot be served with a simple softmax we have to be able to pick the top videos out of millions in mid seconds they require efficient retrieval systems for acceptable latency additionally most models have multiple stages and all those stages needs to work together given all these challenges google has open sourced several products to make it easy for you to build effective recommenders in this series we'll be focusing on tensorflow recommenders which is our recommended library for building recommendation systems but before we dive into the details of tf recommenders let me just give you an overview of all the related projects so that you have a better overview of how they fit together first tensorflow recommenders tfrs for short it was open sourced on github in september 2020 and is built on top of tensorflow 2 and keras it provides a set of components for building evaluating and deploying recommended models using tensorflow it aims at covering the entire stack from retrieval through ranking to post ranking and ties into the larger tensorflow ecosystem to power research and production use tensorflow recommenders also seamlessly integrates with scans for efficient retrieval tf ranking for efficient ranking and tpu for training large scale models the next products scan which stands for scalable nearest neighbors as you already know modern machine learning models can transfer inputs such as images into embeddings which are high dimensional vectors trend such that more similar inputs cluster close together for a given query item we can therefore compute in embedding and find the embeddings that are closest to the query items in betting however a computational challenge remains for a given query embedding how does one quickly find the nearest data set embeddings from a large pool of embeddings and scan is designed to tackle this challenge scan was open sourced in june 2020 and includes state-of-the-art implementations of approximate nearest neighbor search algorithms if you're curious about how scan works we'll be showing you how to use scan together with tensorflow recommenders in the last episode of this video series as for the ranking stage we have another product tensorflow ranking so ranking is a process of ordering a list of items in a way that maximizes the utility of the entire list in the context of recommenders the relative order of recommended items matter a lot because the device screens of your users is limited in space so serving the most relevant content in the most reasonable spots is critical tf ranking helps you do exactly that rank the list of candidate items effectively tf ranking was released in december 2018 and it is a scalable deep learning library for learning to rank in tensorflow it is widely used inside and outside of google for various products and products we'll be showing you how to use tf ranking together with tf recommenders in a future episode if you have followed recent machine learning engineering trends you might have noticed there's a growing tendency to run machine learning models on device without sending any network requests to the servers the reason is that on-device machine learning provides full user privacy production lightweight inference without network dependency and instant response to user's interaction or context changes tensorflow lite is our official framework to run tensorflow models on mobile devices and we have open sourced an end-to-end reference app that demos a novel recommendation solution fully deployable in mobile environments check out the link to find out more details about our own device recommendation model lastly i'll just briefly mention that we also have a recommendation add-on seek group this is a community driven special interest group that focuses on training and deploying large-scale recommendation models for example how to train large-scale sparse models how to deal with dynamic embeddings and etc the contributor codes there are complementary to tensorflow core and tensorflow recommenders and also have implementations of useful tools such as dynamic embedding and embedding variables contributed by the community you should definitely check them out if you want to train large scale recommendation models so just to summarize in today's video we discussed what a recommendation system is and why it's important we also talked about how the model recommendation systems look like and why it's hard to build an effective one lastly we introduced several products open sourced by google to help you build your own recommendation systems if you are building recommenders today we highly recommend you start with tensorflow recommenders which can leverage scan and tensorflow ranking as well in our next video we'll be introducing you to two traditional machine learning methods to build the recommendation systems content-based filtering and collaborative filtering see you next time [Music] you
Up Next

Multi-Task Learning Basics | Stanford CS330 Lecture 2
@stanfordonline
28.8K views•2023-03-31

Building Real-Time ML Pipelines with Feature Stores and MLOps Frameworks
@ODSCAI
5.1K views•2022-02-20

Efficient Serving with ScaNN for Approximate Nearest Neighbor Search
@TensorFlow
15.4K views•2021-08-10

Neural Networks Explained: Math, Layers, and Learning Fundamentals
@3blue1brown
21.9M views•2017-10-05
Related Study Plans & Knowledge Roadmaps
Structured learning paths in Artificial Intelligence


















![[NLP'25] Final Revision Part III](https://i.ytimg.com/vi/I466Cj74edk/maxresdefault.jpg)















![[ИТ-лекторий] Рекомендательные системы: от простого к сложному и обратно](https://i.ytimg.com/vi/kTWVGOvws8Q/maxresdefault.jpg)



