Live data from Hacker News

Netflix's Metaflow: Reproducible machine learning pipelines

cortex.dev

41–50 of 105 posts

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#41
If you are feeling overwhelmed with yet another machine learning pipeline automation framework, you should check out Kedro (https://github.com/quantumblacklabs/kedro).

Kedro has the simplest, leanest, functional-programming inspired pipeline definition and also spits out AirFlow and other formats readily + comes in with an integrated visualisation framework which is stunning & effective.

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#42
post #2

Edit: this is a somewhat OT rant. Netflix’s recommender system is hands down the worst I have ever seen. Every single thing I watch, it suggests The Queen’s Gambit and two other random Netflix productions. Even if I watch the first of a trilogy (LotR, for example). How can they be so terrible at this? The categories in the main browsing view are also hysterically arbitrary. It kind of looks like a topic model with ba…

I see this complaint about poor recommendations very often.

But the recommendations seem to work perfectly for me - I wonder whether that is the case for the silent majority?

The match % is usually spot on for me, and I've never seen it recommend any titles I've given a thumbs-down to.

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#43
post #5

If you are curious about how Netflix uses Metaflow to power behind-the-scenes machine learning, take a look at this recent blog article https://netflixtechblog.com/supporting-content-decision-make... Also I'm happy to answer any questions (I lead the Metaflow team at Netflix).

Hey, been meaning to reach out. There's a bit in the Metaflow docs that talks about choosing resources, like RAM: "as a good measure, don't request more resources than what your workflow actually needs. On the other hand, never optimize resources prematurely." The problem is that for memory, too little means out-of-memory crashes, so the tendency I've seen is to over-provision memory, which ends up getting very expen…

The Spark community (LinkedIn) developed Dr Elephant to profile jobs and provide suggestions for reducing memory/cpu consumption. Metaflow would need something similar:

https://github.com/linkedin/dr-elephant

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#44

Earlier quoted context omitted.

>Finally, they replaced the ratings with “% matching”. I guess so they can recommend their subpar productions even if they get low ratings. That's always what ratings were. People didn't understand that (as you can see), so they changed it to make it more transparent. https://www.businessinsider.com/why-netflix-replaced-its-5-s... >Netflix’s star ratings were personalized, and had been from the start. That means when…

It's not just that (obviously, since It's not even possible for me to rate a movie more granular than thumbs up/down) What happened is that the notion changed from "predict a scalar rating" to "predict a binary satisfaction." As parent poster noted, the effect of this is to push "3 star" and "4 star" acceptable shows to the user, instead of "5 star" great (in the user's view) shows. Also, in Netflix's defense, users…

This was a sad turning point for me. We used to have a single streaming platform with an awesome library, a granular review system, and user reviews. You could easily take a quick look to read other users thoughts on a film. Now I have to lookup metacritic / reviews myself, and the NF recommendation is based on whether I've said something is 'palatable enough to watch, isn't terrible, but I'd never watch it again' (thumbs up). I've taken to only thumbs upping stuff that I particularly like to see if that's any better. It all seems to be the same from an uninformed end user perspective.

I remember they stated the reviews would still be available in some form for export.

It's no longer the Netflix of old imo.

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#45

How does this compare against TensorFlow Extended (TFX)? https://www.tensorflow.org/tfx

Metaflow was built to assist in both developing ML models and deploying/managing them in production. AFAIK, TFX is focused on the deployment story of ML pipelines.

https://docs.metaflow.org/introduction/what-is-metaflow#shou...

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#46

Setting up a decent, comprehensive, self-hosted (!) ML environment is still extremely, frustratingly difficult. What I really want is a single solution, or a set of pluggable, integrated components that offer: * training data and model storage (on top of a blob store like S3, minio, ...) * interactive dev environments (Notebooks, dev containers, ...) * training (with history, comparisons, parameters, ...) with experi…

You should checkout Hopsworks (disclaimer: work on it). It does all of the above (including a Feature Store, notebooks as jobs, airflow for ML pipelines, model serving (TensorFlowServing, Flask, and soon KFserving), experiments, a project-based multi-tenancy model that supports sensitive data on a shared cluster, and a UI. It does not have a labelling system - but you can pip install libraries. You don't need to learn Docker - each project has a conda environment, and we compile Docker images for projects transparently, so jobs are tied to Docker images, but you don't need to write a Dockerfile (this is a huge win for data scientists). You can run Python jobs (connect to a k8s cluster) or Spark/Flink jobs (on Hopsworks itself).

Open-source:

* https://github.com/logicalclocks/hopsworks

Managed platform on AWS/Azure (with elastic compute/storage, integration with managed K8s, LDAP/AD):

* https://hopsworks.ai

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#47
post #2

Edit: this is a somewhat OT rant. Netflix’s recommender system is hands down the worst I have ever seen. Every single thing I watch, it suggests The Queen’s Gambit and two other random Netflix productions. Even if I watch the first of a trilogy (LotR, for example). How can they be so terrible at this? The categories in the main browsing view are also hysterically arbitrary. It kind of looks like a topic model with ba…

I long ago ceased to believe that the Netflix recommender system serves any other purpose than to fulfill the company's internal obligations to push favored content, depending on what it cost. Sadly, the same is now true for Amazon Prime, which is an even hotter mess.

That's exactly what's happening. Source: you can imagine.

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#48

Setting up a decent, comprehensive, self-hosted (!) ML environment is still extremely, frustratingly difficult. What I really want is a single solution, or a set of pluggable, integrated components that offer: * training data and model storage (on top of a blob store like S3, minio, ...) * interactive dev environments (Notebooks, dev containers, ...) * training (with history, comparisons, parameters, ...) with experi…

I think the solution to this is a bunch of pluggable tools that integrate well. "AI Platforms" do everything, but they do each thing not very well and force you into a particular way of working. (There is a reason we don't use "software platforms" any longer.)

But unfortunately, as you say, most of the pluggable tools are not very good and/or not mature enough.

Here's our attempt at model storage, experiment tracking, and software heritage: https://replicate.ai/

For interactive dev environments, Colab, Deepnote, and Streamlit are all great.

For deploying to production, Cortex mentioned in the post is great.

All are a work in progress, but I think we'll soon have a really powerful ecosystem of tools.

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#49
post #2

Edit: this is a somewhat OT rant. Netflix’s recommender system is hands down the worst I have ever seen. Every single thing I watch, it suggests The Queen’s Gambit and two other random Netflix productions. Even if I watch the first of a trilogy (LotR, for example). How can they be so terrible at this? The categories in the main browsing view are also hysterically arbitrary. It kind of looks like a topic model with ba…

Do you have a counter example of a streaming service that does recommendations better?

Spotify. Discover Weekly is very good, particularly considering they have only one chance to recommend with 30-40 songs, and quite a large universe to match on.

Not a streaming service but Google's Discover news is also very good (probably the best recommendations I have come across).

Re: Netflix's Metaflow: Reproducible machine learning pipelines

#50
post #5

If you are curious about how Netflix uses Metaflow to power behind-the-scenes machine learning, take a look at this recent blog article https://netflixtechblog.com/supporting-content-decision-make... Also I'm happy to answer any questions (I lead the Metaflow team at Netflix).

What is Metaflow's explicit support for Transfer Learning tasks? In other words, how do I know what models to use or not use? I am surmising from the techblog post that there is a stable set of content-intrinsic features, and that can be separated from perhaps more dynamic features-sets that characterize audiences, presentation treatment, and viewing (as conditioned on all the other stuff). But it sounds like there i…

Good question! What you are asking is pretty much the core question for a certain set of ML tasks at Netflix.

Metaflow is rather unopinionated about those types of questions, since they are subject to active research and experimentation. Metaflow aims to make it easy to conduct the research and experiments but it is up to the data scientist to choose the right modeling approach, features etc.

In some cases, individual teams have built a thin layer of tooling on top of Metaflow to support specific problems they care about. I could imagine such a layer for specific instances of transfer learning, for instance.

In general, we are actively thinking if/how Metaflow could support feature sharing in general. It is a tough nut to crack.

Post reply on HN