PyData London 2023

Actionable Machine Learning in the Browser with PyScript
06-04, 15:00–15:40 (Europe/London), Salisbury

PyScript brings the full PyData stack in the browser, opening up to unprecedented use cases for interactive data-intensive applications. In this scenario, the web browser becomes a ubiquitous computing platform, operating within a (nearly) zero-installation & server-less environment.

In this talk, we will explore how to create full-fledged interactive front-end machine learning applications using PyScript. We will dive into the the main features of the PyScript platform (e.g. built-in Javascript integration and local modules ), discussing new data & design patterns (e.g. loading heterogeneous data in the browser), required to adapt and to overcome the limitations imposed by the new operating environment (i.e. the browser).


PyScript is the new open source platform that brings Python to web front-end applications. In fact, PyScript makes it possible to inject standard Python code into HTML, which is then interpreted and executed directly in the browser. And all that, with no server-side technology needed, and no installation required (not even a local Python interpreter!, ed.) 🔮.

But there's more! Thanks to its built-in integration with pyodide, PyScript brings the full PyData stack into the browser, along with a native integration with the Javascript interpreter, then enabling full support for front-end interactivity.

As a result, PyScript has the potential to radically change the way in which interactive data-driven web apps could be designed and developed: the seamless bi-directional integration of Python and Javascript is complemented by the full support to reliable numerical computation, enabled by the Python scientific ecosystem (e.g. numpy scikit-learn), using the browser as a ubiquitous virtual machine.

In this talk, we will explore how PyScript enables the creation of full-fledged font-end interactive machine learning (ML) apps using PyScript. Multiple examples of supervised and unsupervised ML apps will be presented, and analysed in details, in order to fully understand how PyScript works, and what key features are provided (e.g. built-in Javascript integration; local modules ). Similarly, we will also discuss new_ data & design patterns (e.g. loading heterogeneous data in the browser; multi-core vs multi-threading; _performance considerations) which are required to adapt to the new atypical environment in which we operate: the browser.

No specific prior knowledge is required to attend the talk. Familiarity with Python programming, and the main pydata packages (i.e. numpy, scikit-learn, Matplotlib ) is desirable, along with a general understanding of how the web DOM works (for the Javascript interaction part) and basic principles of data processing.


Prior Knowledge Expected

No previous knowledge expected

Valerio Maggio is a Researcher, a Data scientist Advocate at Anaconda, and a casual "Magic: The Gathering" wizard. He is well versed in open science and research software, supporting the adoption of best software development practice (e.g. Code Review) in Data Science. Valerio is also an open-source contributor, and an active member of the Python community. Over the last twelve years he has contributed and volunteered to the organization of many international conferences and community meetups like PyCon Italy, PyData, EuroPython, and EuroSciPy. All his talks, workshop materials and random ramblings are publicly available on his Speaker Deck and GitHub profiles.