AISEJul 16, 2018

Teaching machines to understand data science code by semantic enrichment of dataflow graphs

arXiv:1807.05691v212 citations
Originality Highly original
AI Analysis

This work aims to help data scientists by providing intelligent tools to reveal connections between code and its subject matter, contributing to collaborative and reproducible science.

The researchers tackled the problem of machines lacking meaningful understanding of data science code by developing an AI system that creates semantic representations of programs through semantic enrichment of dataflow graphs, resulting in a new ontology language for modeling programs and a data science ontology.

Your computer is continuously executing programs, but does it really understand them? Not in any meaningful sense. That burden falls upon human knowledge workers, who are increasingly asked to write and understand code. They deserve to have intelligent tools that reveal the connections between code and its subject matter. Towards this prospect, we develop an AI system that forms semantic representations of computer programs, using techniques from knowledge representation and program analysis. To create the representations, we introduce an algorithm for enriching dataflow graphs with semantic information. The semantic enrichment algorithm is undergirded by a new ontology language for modeling computer programs and a new ontology about data science, written in this language. Throughout the paper, we focus on code written by data scientists and we locate our work within a larger movement towards collaborative, open, and reproducible science.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes