# ProductizeML: Assisting Your Team to Better Build ML Products

Adrià Romero, ProductizeML | MLOps Meetup | Episode 47 | 50:53
Hosted by Demetrios Brinkmann

Source: https://www.youtube.com/watch?v=B7_xPTQtZIE
Channel: MLOps Community, now AAIF Live (https://www.youtube.com/@AAIFLive-x1r). Summarised by MLOps Talks.
Page: https://mlopstalks.com/talks/productizeml-assisting-your-team-to-better-build-ml-products
Published: 2021-01-18
Tags: continual-learning, product-strategy, team-adoption

## TL;DR
- ProductizeML uses free educational resources to help technical, product, and management teams understand the full machine learning product lifecycle.
- ML teams communicate better when they share clear concepts and use simple interfaces, such as configuration files, between specialist teams.
- A machine learning product should be planned around business goals, the minimum viable product, and the value of its predictions, rather than model accuracy alone.

## Summary
Adrià Romero explains why he created ProductizeML after working on a healthcare application that classified skin lesions from smartphone photographs. At the startup, data scientists, data engineers, data management specialists, and software teams often struggled to work together. Different programming languages and handoffs made model deployment slow, so he became interested in shared platforms and clearer ways to communicate. ProductizeML addresses this through a free, collaborative guide covering machine learning theory, data, MLOps, and product development. Its lessons are written for different audiences, including product managers and engineers. Adrià argues that teams should define the business benefit, the right performance measure, and the minimum viable product before focusing too heavily on accuracy. He also describes plans for hands-on end-to-end examples, community contributions through GitHub pull requests, and future material on ethics, explainability, healthcare, and finance. He is direct about the course's current gaps, including its lack of an ethics section.

## Key ideas
### ProductizeML is meant to give different teams a shared understanding of ML products
[14:42](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=882s)
Adrià Romero created ProductizeML to help teams move from a research idea to a deployed product. He targets both teams and individual contributors, with the goal of shortening the path from an idea to a packaged service. He chose educational resources because people in different roles need to understand one another's constraints. The material covers the machine learning lifecycle and explains what each team needs from the others. The intended result is better cross-functional work, rather than another platform that hides the underlying process.

### Programming languages and deployment handoffs caused friction at the healthcare startup
[12:31](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=751s)
At the startup, data scientists mainly used Python while data engineers used Ruby and R. Data scientists prepared data, trained and optimized models, then had to ask data engineers to deploy them. This created repeated friction around requests and ownership. Adrià considered using a configuration file as a shared communication layer. It could be close to code while remaining understandable across teams. He describes this kind of shared interface as a translation machine that lets people with different levels of ML knowledge work with the same platform.

### Each ProductizeML lesson is aimed at a different audience
[19:13](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=1153s)
The machine learning lesson introduces supervised and unsupervised learning for product managers and data management teams. It explains why models need large datasets, why classes need suitable representation, and why training a deep convolutional neural network can take time. A later lesson called "Productize It" is aimed at engineers who focus mainly on implementation. It asks them to connect technical choices to business objectives, such as the benefit of automating a process or improving predictions.

### Model accuracy is only one possible product measure
[21:08](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=1268s)
Adrià says teams should decide whether accuracy is the measure that matters for their product. Some customers may care more about class coverage than very high performance. The team also needs to define the minimum viable product. Engineers can spend too much time improving a model while missing the business purpose of the system. Product planning therefore needs to include the benefit of the prediction, the intended users, and the product's business objectives.

### ProductizeML teaches transferable ideas instead of prescribing one tool
[23:51](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=1431s)
Adrià compares the project to teaching someone how to fish. ProductizeML does not build a solution for one customer or one problem. It provides examples and explanations that people can adapt to new products. He says it is difficult to automate tool choices without deep knowledge of the task and data structure. The planned catalog follows the same approach, with end-to-end examples such as an urban sound classifier and visual classification tasks that people can use as inspiration.

### The guide is open to contributions through GitHub
[29:26](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=1766s)
ProductizeML is built with GitBook and linked to a GitHub repository. External contributors can propose changes to the content by opening pull requests. Adrià wants the project to give knowledge back to the community, in the same way that practitioners have learned from Stack Overflow and other forums. He is also working with contributors whose backgrounds include software engineering, product management, and ML engineering.

### Production data can show when a model needs retraining
[37:17](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=2237s)
For the skin lesion service, the team converted Keras models to TensorFlow, used TensorFlow Serving in Docker images, and deployed them with Kubernetes as an API for the frontend. Adrià explains that a production system also collects examples from the domain where predictions are being made. Once those new examples are labelled, they can be used to retrain the model. He calls this data flywheeling. The retraining point depends on the domain, but the purpose is to improve performance on real cases rather than only on the initial dataset.

### The course needs more material on ethics and explainability
[27:00](https://www.youtube.com/watch?v=B7_xPTQtZIE&t=1620s)
When Demetrios Brinkmann asks about skin-tone bias and ethics, Adrià says the skin lesion work tried to sample different skin tones but lacked enough data for some groups. Data augmentation was used to expand underrepresented image classes. He also acknowledges that ProductizeML does not yet have an ethics section. Future additions include less biased products, explainability, and domain-specific material for areas such as healthcare and finance. He gives U.com as an example of a product designed around privacy, user values, and reduced bias.

## Notable quotes
- Adrià Romero: "The objective overall is to enable the creation of new AI products." (16:09)
- Adrià Romero: "I thought that the best or like the low hanging fruit was to do it through educational resources." (15:08)
- Adrià Romero: "We should build our technical solutions considering the business objectives." (21:37)
- Adrià Romero: "As soon as you label these new data that you are sampling and collecting from your users, that's the point I think that you should be retraining your model." (44:53)
- Adrià Romero: "I really want this course to promote the creation of new products." (39:39)

## Tools & references mentioned
- ProductizeML
- ImageNet
- Keras
- TensorFlow
- TensorFlow Serving
- Kubernetes
- GitBook
- GitHub
- Stack Overflow
- U.com
- Buy Me a Coffee
- Discord
- Twitter
- Florida Atlantic University
- Triage
- deep learning
- convolutional neural networks
- data augmentation
- data flywheeling

## Who should watch
- Your ML team has data scientists, data engineers, product managers, and software engineers who keep handing work across role boundaries.
- You are an engineer who needs to connect model choices with the product's business goal and minimum viable product.
- You want a free guide with end-to-end ML examples or a way to contribute practical material through pull requests.

## Related talks

- [The Long Tail of ML Deployment](https://mlopstalks.com/talks/the-long-tail-of-ml-deployment) (Tuhin Srivastava, Baseten, 50:37)
- [Product Management in Machine Learning](https://mlopstalks.com/talks/product-management-in-machine-learning) (Laszlo Sragner, Hypergolic, 57:52)
- [ML Stepping Stones: Challenges & Opportunities for Companies](https://mlopstalks.com/talks/ml-stepping-stones-challenges-opportunities-for-companies) (John Crousse, 47:47)
- [Just Build It! Tips for Making ML Engineering and MLOps Real](https://mlopstalks.com/talks/just-build-it-tips-for-making-ml-engineering-and-mlops-real) (Andy McMahon, NatWest Group, 48:17)
- [From Idea to Production ML](https://mlopstalks.com/talks/from-idea-to-production-ml) (Lex Beattie, Spotify, 53:18)
