Recommendation Engine Design Deep Dive with Google SWE! | Systems Design Interview Question 20

  Рет қаралды 13,418

Jordan has no life

Jordan has no life

Күн бұрын

Пікірлер: 39
@surendralamichhane8429
@surendralamichhane8429 2 жыл бұрын
You are a true gem, already been following lot of your contents in youtube. You articulate the system design cases and solutions so well with in-depth explanations of the technologies used.
@jordanhasnolife5163
@jordanhasnolife5163 2 жыл бұрын
Thanks Surendra ♥️♥️
@tyson96
@tyson96 2 жыл бұрын
This video randomly popped up in my recommendations (pun intended) and it was a very good recommendation. Really like the detailed explanation. Follower += 1
@jordanhasnolife5163
@jordanhasnolife5163 2 жыл бұрын
Thanks Rahul! Funny to see the system in action haha
@ayanSaha13291
@ayanSaha13291 Ай бұрын
Great video Jordan! Nicely explained.
@AidamanTV2
@AidamanTV2 2 жыл бұрын
You're the Yin to my Neetcode :)
@avirajkumar4115
@avirajkumar4115 7 ай бұрын
Have You thought about how you will work with a recommendation system if we have addition data on users such as age/ location/handset/Time based recommendation and their activity as well as adding different types of tags such as Content/ category/ genre/ actors/ director/ content creator etc.
@jordanhasnolife5163
@jordanhasnolife5163 7 ай бұрын
How would you say this would deviate from our traditional recommendation system pipeline? At least to me, these just seem like more features with which to make decisions!
@clara.hwajoon
@clara.hwajoon 6 ай бұрын
Hi! what are the ranking models exactly taking in and putting out? I thought that from the retrieval, nodes containing the lists of candidates would have scores associated to each candidate based on the neighbors being close. And then filtering happens with bloom filters. thank u!
@jordanhasnolife5163
@jordanhasnolife5163 6 ай бұрын
Hey Clara! So in the retrieval phase, we hit our embedding caches to find all of the possible suggestions that we may give to a user. Then we filter, to ensure that we don't show the user any content that they've seen, or shouldn't be shown to them for whatever reason. In the ranking phase, we have room to rank a more limited search space of potential items (because we limited them before) according to user specific criteria. If we retrieved items that already had a score, it would mean that we would either need a copy of the embeddings per user (probably impossible) or that we couldn't account for any user specific information when making our rankings (not ideal). Hope this makes sense!
@clara.hwajoon
@clara.hwajoon 6 ай бұрын
@@jordanhasnolife5163Thanks for the answer + thanks for the help! love your videos.
@himanshukriplani6867
@himanshukriplani6867 3 ай бұрын
I personally liked your ipad notes and prev method more than this.
@jordanhasnolife5163
@jordanhasnolife5163 3 ай бұрын
My iPad notes is my current method - that's why I'm remaking them
@user-fl9pg1zb2v
@user-fl9pg1zb2v 2 жыл бұрын
Hey just a silly question are you same guy in your dp , if yes you are a gem and a meme legend too
@jordanhasnolife5163
@jordanhasnolife5163 2 жыл бұрын
No I'm not haha, I just also enjoy the meme - it may be time for me to change it tbh
@harshbhatt_
@harshbhatt_ 4 ай бұрын
If the embedding model is trained offline, how will it recommend most up to date data? (ie a new video got created 10 mins ago) In that case, I'm a bit confused on how it's real-time? Also do we not need to use Spark Streaming anywhere in this design? Thanks!
@jordanhasnolife5163
@jordanhasnolife5163 4 ай бұрын
It probably won't. That being said, you can combine those suggestions with things like subscriptions (see Twitter design) to deliver videos of creators that you subscribe to to your news feed
@aryamansinha2932
@aryamansinha2932 4 ай бұрын
hello.. all model training seems offline with the 2nd approach..so how is it real time?
@jordanhasnolife5163
@jordanhasnolife5163 4 ай бұрын
The real time part is just asking for more videos. That being said, I suppose you could use stream processing to create embeddings of newly created videos on the fly and then include those as candidates for new suggestions.
@LeoGoldenLabrador
@LeoGoldenLabrador 2 жыл бұрын
Can you a video to talk more about KAFKA? why should we use it and when in SD?
@jordanhasnolife5163
@jordanhasnolife5163 2 жыл бұрын
I recommend watching my stream processing video - it's a log based message broker.
@harshbhatt_
@harshbhatt_ 4 ай бұрын
One more question: Does the embedding model + index only look at the item embeddings? (videos recently watched) or does it take user information as well (I set my preferences as liking action movies) Also how would it worked for a cold start user? (user does not have any "'last 5 videos watched" to get 1000 nearest neighbors?
@jordanhasnolife5163
@jordanhasnolife5163 4 ай бұрын
Embedding model doesn't have any user info or else we'd have to duplicate all the embeddings, for the first open we can just show popular videos or something
@jordanhasnolife5163
@jordanhasnolife5163 4 ай бұрын
Embedding model doesn't have any user info or else we'd have to duplicate all the embeddings, for the first open we can just show popular videos or something
@Prem-xe8hk
@Prem-xe8hk 2 жыл бұрын
Can you please elaborate more on the neighbouring index?? and how the vector model linked to this index? Anyways Great content (y)
@jordanhasnolife5163
@jordanhasnolife5163 2 жыл бұрын
It's a map from (vector) to [closest neighboring vectors]. Feel free to elaborate on your question and I'll do my best to help!
@muhammadhabibullah1205
@muhammadhabibullah1205 2 жыл бұрын
great content!
@anahata.kaalki
@anahata.kaalki Ай бұрын
I saw comments and thought it's a good video but It was a huge waste of time. Maybe interesting for people who have Zero idea about tech.
@jordanhasnolife5163
@jordanhasnolife5163 Ай бұрын
Kek
@Gerald-iz7mv
@Gerald-iz7mv 11 ай бұрын
what are item change events?
@jordanhasnolife5163
@jordanhasnolife5163 11 ай бұрын
Mind giving me a timestamp to reference?
@Gerald-iz7mv
@Gerald-iz7mv 11 ай бұрын
@@jordanhasnolife5163 in the architecture diagram here at timestamp 306 sec
@user-vv8fw4fj5i
@user-vv8fw4fj5i 11 ай бұрын
@@jordanhasnolife5163 top right in diagram at 5:13
@jordanhasnolife5163
@jordanhasnolife5163 11 ай бұрын
@@user-vv8fw4fj5i Ah ok - just describes any changes made to the set of items that we could possibly be recommending (adds, removes, edits of an existing item) as resulting from user action
@Gerald-iz7mv
@Gerald-iz7mv 10 ай бұрын
@@jordanhasnolife5163 could that be a good usecase to store it in a feature store? could the user activity also be stored in a feature store? in case of a music recommendation system are those infos regarding: song titles, text, images, artists, music genre, audio analytics?
The Lost World: Living Room Edition
0:46
Daniel LaBelle
Рет қаралды 27 МЛН
24 Часа в БОУЛИНГЕ !
27:03
A4
Рет қаралды 7 МЛН
Machine Learning System Design (YouTube Recommendation System)
13:01
Collaborative Filtering : Data Science Concepts
12:03
ritvikmath
Рет қаралды 48 М.
Design an ML Recommendation Engine | System Design
8:46
Interview Pen
Рет қаралды 10 М.
Kafka Deep Dive w/ a Ex-Meta Staff Engineer
43:31
Hello Interview - SWE Interview Preparation
Рет қаралды 20 М.
КОРОЧЕ ГОВОРЯ, НЕДЕЛЯ БЕЗ ТЕЛЕФОНА
3:54
Что такое дагестанский кирпичный завод!
0:53
АВТОБРОДЯГИ - ПУТЕШЕСТВИЯ НА МАШИНЕ
Рет қаралды 746 М.
Её автомобиль никто не хотел ремонтировать!
20:12
Гараж Автоэлектрика
Рет қаралды 1,5 МЛН
В Европе заставят Apple сделать в айфонах USB Type-C
0:18
Короче, новости
Рет қаралды 1,1 МЛН