Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Jupyter widgets for human in the loop data science


Published on

You can use Jupyter widgets to build user interfaces for controlling data science pipelines.

In this talk, I show how widgets can be used to enhance your data science workflow by allowing you to concentrate on visualizations and abstrations rather than the minutiae of translating your thoughts into code. I talk through several widgets that we use every day at ASI Data Science.

Published in: Data & Analytics
  • Be the first to comment

Jupyter widgets for human in the loop data science

  1. 1. ASI Data Science is a London-based data science consultancy
  2. 2. About me — Committer for Jupyter widgets — Main author of jupyter-gmaps, a library for visualizing geographical data in Jupyter notebooks — Author of Scala for data science (Packt Publishing)
  3. 3. Jupyter widgets for human-in-the-loop data science
  4. 4. Developing machine learning software is hard
  5. 5. Developing machine learning software is hard — almost always stochastic — often black box
  6. 6. Developing machine learning software is hard — robustness — overfitting — overreliance on certain features or groups of features
  7. 7. Traditional software development workflows are inadequate
  8. 8. Human intuition It should be easy for humans to explore the model.
  9. 9. Human intuition Computers think in terms of bytes and instructions, and humans think in terms of concepts and images.
  10. 10. Human intuition We need a framework to rapidly create UIs that allow the human to think at a higher level of abstraction. The UI should not be a black box.
  11. 11. Jupyter widgets
  12. 12. Jupyter widgets allow building user interfaces entirely in Python, directly in Jupyter notebooks.
  13. 13. Build user interfaces in Python directly in Jupyter notebooks
  14. 14. Examples
  15. 15. Jupyter widgets — Jupyter widgets are written entirely in Python — They are written in the environment the data scientist is currently working in — Widgets have access to the entire state of the notebook
  16. 16. Ecosystem
  17. 17. Core: ipywidgets
  18. 18. bqplot
  19. 19. ipyleaflet and gmaps
  20. 20. qgrid
  21. 21. ipyvolume
  22. 22. Learning about widgets — mlviz: visualising machine learning algorithms with Jupyter widgets and bqplot. — Jupyter widgets tutorial — Coding a simple widget from scratch: video and code — Jupyter widgets documentation
  23. 23. Libraries used in this talk — ipywidgets — bqplot — gmaps — lens — superintendent
  24. 24. Use widgets to reduce friction at the human computer interface
  25. 25. Acknowledgements — Jupyter widgets developers: Jason Grout, Sylvain Corlay, Maarten Breddels, Matt Craig, Vidar Tonaas Fauske — ASI Data Science — Chakri Cherukuri (ChakriCherukuri) — Victor Zabalza (zblz) and Scott Stevenson (srstevenson) — Jan Freyberg (janfreyberg) — SherlockML