How Recommender Systems Work (Netflix/Amazon)

Поділитися
Вставка
  • Опубліковано 27 лют 2020
  • The key insights behind content and collaborative filtering (Matrix Factorization). How Amazon, Netflix, Facebook and others predict what you will like.
    Paper in this video:
    Matrix Factorization Techniques for Recommender Systems
    www.inf.unibz.it/~ricci/ISR/p...

КОМЕНТАРІ • 203

  • @whuzzzup
    @whuzzzup 4 роки тому +204

    And then there is Amazon asking me to buy a second washing machine.

    • @zeikjt
      @zeikjt 4 роки тому +19

      Some products really need a "people usually buy only one at a time" tag. Refrigerators, cars, houses...

    • @Flankymanga
      @Flankymanga 4 роки тому +4

      Wait a minute... hey Thats basically amazon telling you "Hey your washing machine is about to go out of service wanna buy a new one just in case?"

    • @owendavies8227
      @owendavies8227 3 роки тому +1

      Amazon uses "customers that bought this also like" and similar simple algorithms. Nothing complicated or sophisticated. They work just fine.

    • @carkod
      @carkod 2 роки тому

      People are terrified at the thought of machines taking over, but actually the algorithms being used in AI and recommendation system are just as inacurate as a friend's recommendation.

    • @user-tb4ig7qh9b
      @user-tb4ig7qh9b 8 місяців тому

      🤣🤣🤣🤣

  • @TheKmisra
    @TheKmisra 2 роки тому +38

    I think it should be noted that for the cold start problem, you'd want to use content filtering to define which users to show those new items to - hence, a combination of content and collaborative filtering is the best approach.

  • @pritamdas06
    @pritamdas06 2 роки тому +27

    These are some solid gold videos on your channel you are putting up for free! Your incredible knowledge, such hardwork and the will to put such amazing educational concepts before the audience is really creating these masterpieces! Absolutely love it! 💗

  • @imqwerty5171
    @imqwerty5171 4 роки тому +64

    the background music is weird

  • @user-or7ji5hv8y
    @user-or7ji5hv8y 3 роки тому

    Really like how the explanation is concise and clear.

  • @holyflame7653
    @holyflame7653 4 роки тому +3

    The name I learnt this as in Uni was Singular Value Decomposition. Same thing, different names. Great video as usual!

  • @ryanmckenzie1990
    @ryanmckenzie1990 3 роки тому +13

    I love all the artistic choices you guys make when putting these videos together, they have a spacious mood to them. It’s a little sad to read other viewers don’t like the music choice as much, each to their own I guess.

    • @ArtOfTheProblem
      @ArtOfTheProblem  3 роки тому +1

      I get that a lot, it's nice to hear from both sides that the mood 'works'

  • @JustSkillGG
    @JustSkillGG 3 роки тому

    I AM SO HAPPY i discovered this channel!!!

  • @roadmonitoroz
    @roadmonitoroz Рік тому +9

    Interesting video. I downloaded my netflix data once. It is amazing how much data they actually collect . One of the bits they collect is how long you watch each video (whether the actual movie) or the preview clip on the movie selection screen. i.e. If you watch the whole thing, you are somewhat interested in it and "that type of movie".
    It also logs what suggestions it gave to you and why that suggestion was given (due to another video) .
    It also collects search terms (full / partial) and what results were given to you. i.e. You type "term" and up comes "Terminator 1,2,3" , "The terminal" (totally different type of movie)

    • @mnamaddy
      @mnamaddy Рік тому +1

      how did you download your netflix data?

  • @ArtOfTheProblem
    @ArtOfTheProblem  4 роки тому +5

    STAY TUNED: Next video will be on "History of RL | How AI Learned to Feel"
    SUBSCRIBE: www.youtube.com/@ArtOfTheProblem?sub_confirmation=1
    WATCH AI series: ua-cam.com/play/PLbg3ZX2pWlgKV8K6bFJr5dhM7oOClExUJ.html

    • @guyindisguise
      @guyindisguise 4 роки тому +1

      Well it's the same "reversal" of programming logic
      - non NN: you give the computer some input and an algorithm and the computer will give you the output
      - NN: you give the computer some input and output and the computer will give you the algorithm (the neural network)
      (this is only true for training of course, at inference time you will use the input and the learned algorithm to get the output again, but the learning part is kind of like the "solving the problem" part)
      Now that I think about it, mentally I originally compared this to deep learning (neural network with more than 3 layers), but collaborative filtering seems more like a single layer neural network since the more complicated levels of feature abstraction which comes with more layers, seems to be missing here, instead all the abstraction is contained in a single layer, if I'm not mistaken?
      Basically we have one weighted feature vector for the people and one for the movies and we multiply them to see how well they match (bigger total number = better match), which is also part of what NNs do.
      I guess the bias and activation functions are missing since we just need the score and not a decision boundary?

    • @Primius80
      @Primius80 4 роки тому +2

      It looks similar to a neural network with one hidden layer, but the activation functions are missing. These are critical for neural networks in order to be more powerful than matrix multiplication. The standard learning algorithm for neural networks (stochastic gradient descent) should still work, but there are probably faster direct methods from linear algebra to calculate the matrix entries.

  • @malchicken
    @malchicken 4 роки тому +43

    Love the video, thank you, great explanation. I wonder if I’m the only one who finds the music a bit...creepy or disturbing....or, maybe that’s intended.
    Rewatching, I see that may be my fault for watch at 2x speed.

    • @joqiao400
      @joqiao400 3 роки тому +4

      I feel the same, it's rather distracting

    • @ipek2556
      @ipek2556 2 роки тому +3

      its rly disturbing at any speed...couldnt keep watching it so I was looking for this comment :/

    • @thangtran145
      @thangtran145 2 роки тому +2

      My god, the music put me in a freaking trauma. The explanation was great but I had to turn off the audio. What the heck did the creator think? Since when horror music as background music is a good idea?

    • @danielbertuzzi6953
      @danielbertuzzi6953 3 місяці тому

      awful background music

  • @NeuroPulse
    @NeuroPulse 4 роки тому +39

    Art of the Problem is one of the better things on the internet.

  • @iMegaStorm
    @iMegaStorm 2 роки тому

    Hi, where did you get the images of netflix about content filtering at 4:16 in the video? I need it for my dissertation as a talking point that Netflix was a content filtered recommender at one point, thanks!

  • @NevinVlogs
    @NevinVlogs 3 роки тому

    Hi, for your explanation on collaborative filtering are you explaining from the model-based approach, I'm a little bit confused between the memory and model-based approach fro CBF

  • @ernietam6202
    @ernietam6202 2 місяці тому +1

    Thanks a lot. It is so simple that I can understand immediately.

  • @snowwolf4148
    @snowwolf4148 Рік тому +1

    Dude , literally watched a zillion videos on YT , nothing comes close to this video. The SVD simplification is on another level!

  • @thomasmabelemasibo5495
    @thomasmabelemasibo5495 2 роки тому

    Great work. Very precise and comprehensive. Thank you.

  • @MrDaanjanssen
    @MrDaanjanssen 4 роки тому +2

    Very enjoyable and clear explanation! Great video

  • @hantuchblau
    @hantuchblau 4 роки тому +5

    It's worth noting that the patterns in data don't always mirror reality. People with asthma and copd check earlier with the doctor when they have trouble breathing. So an ann would predict that people with asthma are at lower risk when catching pneumonia and schedule them accordingly.
    These problems are frustratingly hard to find. Most approaches to make answers interpretable seem to be about learning a linear local approximation of the machine model, which works reasonably well on convolutional networks.

  • @thecheekychinaman6713
    @thecheekychinaman6713 3 місяці тому

    Easily and concisely explained. Appreciated

  • @deepd2901
    @deepd2901 3 роки тому

    This gold. Thank you so much for making this.

  • @vaiterius
    @vaiterius 7 місяців тому

    I’m attempting to make a video game recommendation system from a Steam games dataset and your video was super helpful to me!

  • @jeremyknowsbetter4631
    @jeremyknowsbetter4631 2 роки тому

    Thank you for this video! Explained a very complex concept for me in a very understandable way.

  • @joshhug2578
    @joshhug2578 2 роки тому +1

    Damn. This is so concise and perfect.

  • @jasertio
    @jasertio 4 роки тому +16

    Very interesting!! I would love to see more videos on this topic. I would guess that the amount of features can be increased in order to have a more accurate result, at the expense of greater computing power and storage requirements.

    • @ArtOfTheProblem
      @ArtOfTheProblem  4 роки тому +3

      yes, exactly (same as making a neural network wider)

    • @nezv71
      @nezv71 4 роки тому +4

      Not necessarily more accurate though, due to a phenomenon called overfitting: en.wikipedia.org/wiki/Overfitting?wprov=sfla1

  • @KenCubed
    @KenCubed 4 роки тому +24

    I am a mathematics phd student doing my thesis on low-rank matrix completion, it was great seeing this video show up in my feed! One of my biggest concerns was why we can assume that real life data is part of a low-rank matrix. Even though data being non-random and part of a low-dimensional space is a very reasonable assumption, the issue is that the space of low rank matrices is a very specific low-dimensional space, so why should we assume that our data lies on this specific low dimensional space? The features argument seems fair to me as why it may be reasonable to assume that our data is low-rank.

    • @ArtOfTheProblem
      @ArtOfTheProblem  4 роки тому +4

      It's a great question. I'm currently working on a video on manifold hypothesis that gets at this question a little deeper. Would love to hear other's thoughts

    • @lucacaccistani9636
      @lucacaccistani9636 4 роки тому

      That's very interesting, I like the field of prediction/compression/NMF fact a lot. Do you have some references or papers on the subject you mentioned ? How do you define real life data ?

    • @KenCubed
      @KenCubed 4 роки тому +3

      @@lucacaccistani9636 Here is a paper on matrix completion that describes the alternating projection method, and some theoretical results using algebraic geometry: arxiv.org/abs/1711.02151
      By real life data I mean data that comes from real life, such as an image or the incomplete user ratings in the netflix problem. Given unknown positions of a matrix, it's easy to find a partially complete matrix which can be completed to a rank r matrix. Just generate a rank r matrix then delete entries in the unknown indices, then we know the resulting incomplete matrix has a rank r completion. If we choose the known entries of a partially complete matrix randomly from a continuous distribution, then often times there will exist a rank r completion with probability 0, or there will be infinitely many rank r completions. However, it is assumed that our data lies on some low dimensional space, so choosing random known entries may not be a good model for real data.

    • @dmc-au
      @dmc-au Рік тому +2

      In reverse, doesn't the utility of the approximation (people do seem to like the recommendations) provide some clue that there is a lower-dimensional manifold useful for the purpose of estimating *specifically* the preferences of people regarding movies? Also, if true randomness provides maximum information, and for the most part people's movie preferences, and movies themselves, are far from random, doesn't that also imply that there will be a useful, lower-dimensional manifold? All while keeping in mind that the movies people make and the movies that people watch are reflections of each other: people make movies that other people want to watch, and people only watch what movies people make.

    • @ArtOfTheProblem
      @ArtOfTheProblem  5 місяців тому +2

      this is what I assume (low-dimensional manifold)@@dmc-au

  • @user-do5vk8et2j
    @user-do5vk8et2j 3 роки тому +6

    The real problem here is traditional recommendation algorithm would recommend to you with things you already have. We need a new algorithm which can analyze and tell you what you may need to get in future, based on historical data.

  • @anhquocnguyen1967
    @anhquocnguyen1967 4 роки тому +1

    Can you explain me what if there are many, many ways to generate the current data? At that time does it mean that we will have multiple reference table? How do we fix this problem?

  • @markheaney
    @markheaney 4 роки тому +3

    I don't understand why this channel isn't more popular. From the beginning it's been great.

    • @ArtOfTheProblem
      @ArtOfTheProblem  2 дні тому

      thanks for sticking around, have you checked out the new series?

  • @acada
    @acada Рік тому

    Excellent presentation and visualisation. I recommend this video for Google best award.

  • @LUCA54
    @LUCA54 3 роки тому

    Very nice video! I'm searching for a while for the correct explanation of those algorithm. Finally I've found it!

  • @Ramkumar-uj9fo
    @Ramkumar-uj9fo 18 днів тому

    Recommendation engines, a hot CS topic, are desired by business folks for personalization and user engagement in marketing, media, and e-commerce.

  • @mineman1736
    @mineman1736 3 роки тому +4

    I find it funny you used the matrix as the main movie while also explaining matrix and matrices

  • @tuannguyenxuan8919
    @tuannguyenxuan8919 2 роки тому

    Very intuitive approach, thanks a lot !!!

  • @tomblanchfield9913
    @tomblanchfield9913 2 роки тому

    thanks for this video, i have to build a recommender system for college and this was a really good concise description of how the thing works!

  • @Photis
    @Photis 4 роки тому +1

    Really nice and insightful video.

  • @Gytax0
    @Gytax0 4 роки тому +2

    How is the preference data matrix factorized?

  • @joqiao400
    @joqiao400 3 роки тому

    Is there any product we can filter out the background music it doesn't really fit the topic and is really distracting

  • @maxcoteclearning
    @maxcoteclearning Рік тому

    Great explaination !
    Thankyou

  • @thaear1
    @thaear1 2 роки тому

    Very interesting and clear explanation

  • @kangzoel8717
    @kangzoel8717 3 роки тому

    what is the background music for?

  • @nbme-answers
    @nbme-answers 4 роки тому +1

    Brit, you posted a video but I didn't see a Patreon billing. Please take my money! You deserve it!

  • @ForTomorrowToday
    @ForTomorrowToday 4 роки тому

    Lemmino if you find any more channels like this. These days prediction has made youtube channel subscription less important. However, I use them just as an A-list. Btw I subscribed.

  • @dilalovegood
    @dilalovegood 8 місяців тому

    Answer me, which one is true netflix using deep learning or machine learning for algorithm?

  • @StefanTheFink
    @StefanTheFink 4 роки тому +1

    Great work 👏👏

  • @debatradas1597
    @debatradas1597 Рік тому

    thank you so much

  • @shandou5276
    @shandou5276 3 роки тому

    Fantastic job again! :)

  • @philipnel7481
    @philipnel7481 Місяць тому +1

    Great explanation!

  • @mikejason3822
    @mikejason3822 3 роки тому

    Very clear video!

  • @phraust17
    @phraust17 6 місяців тому +3

    "The things that are recommended to you are based on patterns the machine has observed in other people that are similar to yourself"
    It would be interesting to take this to the next step of analysis.. what happens when the recommendations the machine gives start to have an actual tangible affect on the people being given the recommendations?

    • @ArtOfTheProblem
      @ArtOfTheProblem  6 місяців тому +1

      i would say this is certainly the case

  • @andrewaquilina7601
    @andrewaquilina7601 4 роки тому

    great vid!!! thank you

  • @ViclVl
    @ViclVl Рік тому

    good job, amazing video

  • @batungcao3494
    @batungcao3494 2 роки тому

    Very good and funny videos bring a great sense of entertainment!

  • @lukaskoenigsfeld
    @lukaskoenigsfeld 7 місяців тому

    Can someone help me: how are wo normalising the data? At 3:48?

  • @PouryaHosseini
    @PouryaHosseini 2 роки тому

    That was really helpful thanks

  • @hamidashim9016
    @hamidashim9016 3 роки тому

    what a nice video! sooo useful :)

  • @Yeeezy
    @Yeeezy Рік тому

    This was really cool

  • @safrizal513
    @safrizal513 3 роки тому

    thank you

  • @MdYousuf-gw2dn
    @MdYousuf-gw2dn 3 роки тому

    i don't see any use of recommendation system instead of online movie and online product? can anyone give me some others example

  • @akashverma_107
    @akashverma_107 Рік тому

    what is background song name?

  • @AMGitsKriss
    @AMGitsKriss 2 роки тому

    But how to know how many latent features to use? There must bea better way than trial and error.

  • @anangelsdiaries
    @anangelsdiaries 4 місяці тому

    Great video!

  • @karannchew2534
    @karannchew2534 Рік тому

    Notes for my future revision.
    *CONTENT FILTERING*
    Based on what someone like, work out what else he/she might like.
    *COLLABORATIVE FILTERING*
    A user likes things that other users with similar habit also like.

  • @obaidient
    @obaidient 3 роки тому

    Which ML algo is used in 5:10 to 5:48 can you please name it, it will be very helpful.
    Thanks for sharing this amazing work.

    • @ArtOfTheProblem
      @ArtOfTheProblem  3 роки тому

      interestingly enough, you can do the most simple thing here which is repeatedly guess and keep what works.

  • @user-ez3ml9us1u
    @user-ez3ml9us1u 5 місяців тому +1

    it was just awesome

  • @chanxo643
    @chanxo643 2 роки тому

    this was pretty good

  • @madara9897
    @madara9897 2 роки тому +1

    3:47, Sir Can I ask? where did you get the "By diving the all values by 8?". Can I know where did you get the 8? thank you sir

    • @shahaelshowk7533
      @shahaelshowk7533 2 роки тому

      I was asking myself the same question but I think it's smth like:
      you take the highest value (in this case 28) and you know that you need a value that is less or equal to 4, so you solve the inéquation 28/x

    • @ArtOfTheProblem
      @ArtOfTheProblem  Рік тому

      that's just to normalize the data, so you take the largest

    • @tmorid3
      @tmorid3 Рік тому

      @@ArtOfTheProblem Couldn't fully understand - the largest what??

  • @Eta_Carinae__
    @Eta_Carinae__ 4 роки тому +1

    This reminds me of factor analysis...

  • @Tracks777
    @Tracks777 4 роки тому +4

    nice video

  • @Dante_Grimiz
    @Dante_Grimiz 4 роки тому

    nice vid i love it

  • @harshamusunuri1924
    @harshamusunuri1924 Рік тому

    some legend made this video!

  • @NidaSyeda
    @NidaSyeda 4 роки тому +1

    Do we use classifiers in collaborative filtering?

    • @lucacaccistani9636
      @lucacaccistani9636 4 роки тому +2

      Not really, no. There is always some sort of classifying being done but in this case not in the way you mean it, I think. In this approach we decide (by hand or algorithmically, but always beforehand) that we are going to reduce the data space to a smaller space of dimension k. Choosing k is often difficult. Then, the main algorithm converges to the optimal representation, that is, the space of dimension k that represents the best the data space. You can look up NMF factorization, k-means clustering or even PCA (the last one doesn't has a k and tends to over-fit, in the end you have the same problem of choosing when you stop, hence choosing k..)

  • @raphaelquinones4002
    @raphaelquinones4002 4 роки тому +1

    Please don't stop making videos

  • @subramaniannk3364
    @subramaniannk3364 3 роки тому

    Is this anyway related to SVD? Nice video!

  • @ebayo4075
    @ebayo4075 Рік тому

    How can I like the video a million times...now I can gladly go back those papers with recondite information.

  • @dewinmoonl
    @dewinmoonl 3 роки тому +2

    holy cow this is a good video

  • @emanuelmma2
    @emanuelmma2 3 місяці тому +1

    Nice!

    • @ArtOfTheProblem
      @ArtOfTheProblem  Місяць тому

      would love if you could help share my newest video: ua-cam.com/video/5EcQ1IcEMFQ/v-deo.html

  • @xTh3N00b
    @xTh3N00b 4 роки тому +10

    I'd love to meet the people with the most similar movie taste to me.

  • @kc3vv
    @kc3vv 4 роки тому +5

    Actually it's pretty cool, my thesis is in that area :)

    • @obaidient
      @obaidient 3 роки тому

      Which ML algo is he talking about in 5:10 to 5:48?

  • @christianalexandernonis2260
    @christianalexandernonis2260 3 місяці тому

    The bg music feels like being in an horror movie lol
    But the video is great

  • @sefferz7582
    @sefferz7582 Рік тому

    3:40 why do you divide by 8 specifically?

    • @algiersLee
      @algiersLee 9 місяців тому

      could used 7 I guess

  • @cowla
    @cowla 2 роки тому

    2:07 content filtering
    6:20

  • @kevinkkirimii
    @kevinkkirimii 11 місяців тому

    Content Filtering still is required for Collaborative Filtering to work.

  • @won20529jun
    @won20529jun 6 місяців тому

    INTERESTINGGGG

    • @ArtOfTheProblem
      @ArtOfTheProblem  6 місяців тому

      Took 2 years to finish this one, finally live would love your feedback: ua-cam.com/video/OFS90-FX6pg/v-deo.html

  • @satyasangoju4142
    @satyasangoju4142 Рік тому +2

    very nice video, but background music disturbing the original content, sorry its a bit annoying, thank you for the video.

  • @TheeSlickShady
    @TheeSlickShady 3 місяці тому

    Liked and subbed

    • @ArtOfTheProblem
      @ArtOfTheProblem  Місяць тому

      would love if you could help share my newest video: ua-cam.com/video/5EcQ1IcEMFQ/v-deo.html

  • @JavierSalcedoC
    @JavierSalcedoC 4 роки тому +1

    youtube knew I was gonna like this video u say?

  • @user-or7ji5hv8y
    @user-or7ji5hv8y 3 роки тому

    Kind of see a connection with autoencoder here.

  • @shoaibfarooqui4776
    @shoaibfarooqui4776 2 роки тому

    Holy shit this super fucking interesting

  • @roycrxtw
    @roycrxtw Рік тому +3

    the background music is quite annoying

  • @qzwxecrv0192837465
    @qzwxecrv0192837465 2 місяці тому

    Recommendation algorithms don't have enough actually useful data. What do I mean by that? First, they recommend things based on what you have watched, assuming you are interested in that topic. For example, I may click on a random video about a bass player or bass guitar style.....then my feed is full of bass guitar channels. NO, I was curious about the video, but I don't want bass channels. Also, they don't take a good survey of the person's tastes.
    for example, Netflix could have a customer take a "what do you like" survey, 4 or 5 pages of 20 - 30 various movies, shows, etc, have the customer pick 8-10 on each page. Essentially sprinkle in enough variety on each page to get a more accurate read on their tastes.
    Netflix suggestions are usually 50% wrong for me. I would love if they would allow a "don't recommend" option along with like, don't like, etc so it never shows up again in the normal lists. Grapes of wrath and Annie Hall are NOT on any list I would ever create. ahhahaha. would also be great if we could exclude specific actors, directors, etc to keep them from the list as well, considering I can't stand Will Ferrell.

  • @nikolajp1530
    @nikolajp1530 2 роки тому

    this is a great video but why is the music so scary? T.T

  • @Msyoutube38
    @Msyoutube38 Рік тому

    Loved the explanation but song selection is really weird

  • @StephenRoseDuo
    @StephenRoseDuo 4 роки тому +2

    I didn't know you were Canadian

  • @gabnaressi
    @gabnaressi 2 роки тому

    background music volume is too high

  • @konovan
    @konovan 3 роки тому

    great video but the background music sounds like it comes from a horror film

  • @leppe999
    @leppe999 2 роки тому

    Bro I'm home alone in the middle of the night but why did the music scare me so much

  • @almasrausanfikri2545
    @almasrausanfikri2545 Рік тому

    Fucking great explanation!

  • @fistrthecat1544
    @fistrthecat1544 4 роки тому +2

    when i saw you upload "in my head" YES YES YES thx you : do you take bitcoin or other coins? ;)

    • @ArtOfTheProblem
      @ArtOfTheProblem  4 роки тому +2

      Yes! thank you. I have a BTC address: 1HF6uFWxXEtGJmMz7CCyaLwffk4EY9t4Dh

  • @AndersonSilva-dg4mg
    @AndersonSilva-dg4mg 4 роки тому +1

    interesting, continue