Data Science professionals are often tasked with an interesting new project where modeling results depend on user input. We roll up our sleeves, create beautiful Jupyter notebooks with nice graphs and thoughtful insights, write extensive documentation and cover our code by unit tests. All that is to demonstrate only a few use cases. Will we convince our product managers and stakeholders that our MVP is solid? Especially when front-end product development work is not on the horizon yet. In this talk, learn how to own the product and create an interactive demo without front-end development skills. The demo is cloud-hosted, with built-in support for user feedback so that our internal stakeholders can spot hidden edge cases before our customers notice them!
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
[DSC Europe 22] Show Me Your MVP! - Liliya Akhtyamova
1. Show Me
Your MVP!
Learn how to own the product and create an interactive
demo without front-end development skills
2. About Me
Liliya Akhtyamova
• Data Scientist/ML Engineer
@ iCIMS
• PhD in biomedical Natural
Language Processing
• Mentor and volunteer @
Women in AI (WAI) Ireland
non-profit org
• Meetup speaker
3. Agenda • What is Minimum Viable Product
(MVP) within DS
• When UI is needed
• How to build appealing UI
• Testing industry ML through web apps
• User feedback integration
• Hosting apps in a cloud
4. Who is a Data Scientist?
• PM, product owner
• Developer advocate
• ML engineer
• Software developer
...But also, to some degree,
Data Insights
*Image proudly generated with DALL-E by OpenAI
6. Okay. What is MVP?
MVP = minimum viable product
Does it always require building
UI? -No
Jupyter notebooks, graphs copy-
paste, and documentation may
suffice
• UI brings the hidden abstract model to life
for all stakeholders to see results and
play with inputs and outputs
7. UI is Useful
When...
ML/analytics product design is not established
yet
Outcomes of data modeling are not trivial
Requires "eyeballing" the quality of outputs,
especially when web interface is not ready yet
Different solutions are competing
The ML product is multi-compound
It will benefit from user feedback
8. Most Popular
Python Low-
code App
Frameworks
Plotly Dash
+ Pros: the largest support community, wide range of widgets
- Cons: no easy way to add user feedback functionality, many
widgets are not open-sourced
Streamlit
+ Pros: supported by HuggingFace, has rapidly developed in
the last few years, less verbose than Plotly Dash, concurrency
and cache support
- Cons: fewer number of widgets to build dashboards, does
require some time to learn its own syntax
Gradio
+ Pros: supported by HuggingFace, less verbose than
both Plotly Dash and Streamlit
- Cons: quite new, smaller support community and
limited documentation on specific features; very few widgets;
targeting mainly ML model results display; doesn't cache data
10. Under the Hood
1. Load data – cache massive
data samples and results of
expensive functions
11. Under the Hood
2. Create main blocks of code
• "key" arguments are specified when
an object needs to be modified in
or impacts another event
• st.session_state helps to control
the execution flow
15. Feedback Collection
"By failing to prepare, you are preparing to fail" - Benjamin Franklin
Feedback collection is useful for:
• Multiple ML models in a pipeline
• No or limited ground-truth data Model
1
Model
2
Model
3
Final Next Role
recommendation
algorithm
18. Web App Deployment
Virtual machine spin up
(Azure, AWS, GCP...)
Containerization
(Docker, Podman, BuildKit)
Container orchestration
(k3s, minikube...)
• activate tmux
• streamlit run app.py
Dockerfile
May not be necessary
19. We
covered...
THE CONCEPTS OF MVP
IN RELATION TO DS
WHY AND WHEN IT IS
NEEDED TO BE DONE
HOW TO DO IT
USER FEEDBACK
GATHERING AND
EVALUATION
WEB APP DEPLOYMENT
20. Call to Action
20
Start using modern web application frameworks to display DS/ML product
development work results
Leverage your company cloud provider and VPN for access to hosting apps in the
cloud for internal company use
Add user feedback capability and start collecting feedback from domain experts
Get stakeholder buy-in with early demos and QA