I just want to ask If I can use Surprise Library (SVD algorithm) in building a recommender system that predicts the watch duration for a user_id and video_id pair?

I have a dataset that contains the user_id, video_id, and watch_duration of the user_id to the video_id.

The watch duration ranges from 1s to 1014573s and is very right skewed (Most watch duration are 1-3000s) and I'm just wondering If I can use the surprise package in making an SVD model that predicts the watch_duration and not a traditional rating system (1-5)?

I tried this method and got a 3500 RMSE which I think is really bad. I got the same RMSE from my CV result and my hold out set so the model doesn't overfit, the results are just really bed.

Any help will be appreciated, thanks!

  • $\begingroup$ IMO user_id and video_id are not good features to predict watch time. Instead properties of user and video should be used. Eg user A likes animals and nature and video B is about flowers (most probably high watch time). Else user_A, video_B simply does not capture such information $\endgroup$
    – Nikos M.
    Jun 19, 2021 at 12:41
  • $\begingroup$ @NikosM. I'm using a collaborative Filter wherein the values of my data are video watch duration instead of ratings (1-5) $\endgroup$
    – KMLearner
    Jun 19, 2021 at 14:17

1 Answer 1


No - using a recommender system to predict watch duration is not going to work well.

Watch duration is a continuous target so it would be more useful to model your scenario as a regression problem.

Try to the find the user and video features that are associated with differences in watch duration time.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.