Ariadne: Analysis for Machine Learning Programs
Machine learning has transformed domains like vision and translation, and is now increasingly used in science. The correctness of such code is vital. In most programming domains, preventing and catching programming errors is aided by supportive tooling. Python is popular for machine learning, in part because of its wealth of machine learning libraries, and is felt to make development faster, however it supports less error detection at code creation time. This is especially problematic for machine learning: given the statistical nature of what is computed, code with subtle errors may run and produce results that look plausible but are in fact meaningless. This can vitiate scientific results. We report on Ariadne: applying a traditional static framework, WALA, to machine learning code that uses Tensorflow. We have created a static analysis infrastructure for Python, a type system for tracking tensors, one of machine learning’s core data structures, and a data flow based analysis to track correct usage of tensors.
Mon 18 JunDisplayed time zone: Eastern Time (US & Canada) change
09:30 - 10:30 | |||
09:30 30mTalk | Ariadne: Analysis for Machine Learning Programs MAPL Julian Dolby IBM Thomas J. Watson Research Center, Avraham Shinnar IBM Research, Allison Allain IBM Research, Jenna Reinen IBM Research | ||
10:00 30mTalk | Clone-Hunter: Accelerated Bound Checks Elimination via Binary Code Clone Detection MAPL Hongfa Xue George Washington University, Guru Venkataramani George Washington University, Tian Lan George Washington University |