Luca Negrini
Logo

Luca Negrini

data-science  static-analysis  abstract-interpretation  jupyter-notebooks

Talk: Static Analysis of Data Transformations in Jupyter Notebooks

12th ACM SIGPLAN International Workshop on the State Of the Art in Program Analysis (SOAP 2023)
Orlando FL USA (Virtual talk), June 17, 2023, 9:30 AM - 10:00 AM EST
Conference presentation

Abstract

Jupyter notebooks used to pre-process and polish raw data for data science and machine learning processes are challenging to analyze. Their data-centric code manipulates dataframes through call to library functions with complex semantics, and the properties to track over it vary widely depending on the verification task. This paper presents a novel abstract domain that simplifies writing analyses for such programs, by extracting a unique CFG from the notebook that contains all transformations applied to the data. Several properties can then be determined by analyzing such CFG, that is simpler than the original Python code. We present a first use case that exploits our analysis to infer the required shape of the dataframes manipulated by the notebook.

Conference talk: Paper @ SOAP 2023
Associated project: LiSA
Conference page: Link