跳到主要导航 跳到搜索 跳到主要内容

Restoring reproducibility of jupyter notebooks

  • Jiawei Wang
  • , Tzu Yang Kuo
  • , Li Li
  • , Andreas Zeller

科研成果: 书/报告/会议事项章节会议稿件同行评审

摘要

Jupyter notebooks-documents that contain live code, equations,visualizations, and narrative text-now are among the most popular means to compute, present, discuss and disseminate scientificfindings. In principle, Jupyter notebooks should easily allow to reproduce and extend scientific computations and their findings; butin practice, this is not the case. The individual code cells in Jupyternotebooks can be executed in any order, with identifier usages preceding their definitions and results preceding their computations.In a sample of 936 published notebooks that would be executablein principle, we found that 73% of them would not be reproduciblewith straightforward approaches, requiring humans to infer (andoften guess) the order in which the authors created the cells.In this paper, we present an approach to (1) automatically satisfydependencies between code cells to reconstruct possible executionorders of the cells; and (2) instrument code cells to mitigate theimpact of non-reproducible statements (i.e., random functions) inJupyter notebooks. Our Osiris prototype takes a notebook as inputand outputs the possible execution schemes that reproduce theexact notebook results. In our sample, Osiris was able to reconstructsuch schemes for 82.23% of all executable notebooks, which hasmore than three times better than the state-of-the-art; the resultingreordered code is valid program code and thus available for furthertesting and analysis.

源语言英语
主期刊名Proceedings - 2020 ACM/IEEE 42nd International Conference on Software Engineering
主期刊副标题Companion Proceedings, ICSE-Companion 2020
出版商IEEE Computer Society
288-289
页数2
ISBN(电子版)9781450371223
DOI
出版状态已出版 - 27 6月 2020
已对外发布
活动42nd ACM/IEEE International Conference on Software Engineering, ICSE-Companion 2020 - Virtual, Online, 韩国
期限: 27 6月 202019 7月 2020

出版系列

姓名Proceedings - International Conference on Software Engineering
ISSN(印刷版)0270-5257

会议

会议42nd ACM/IEEE International Conference on Software Engineering, ICSE-Companion 2020
国家/地区韩国
Virtual, Online
时期27/06/2019/07/20

指纹

探究 'Restoring reproducibility of jupyter notebooks' 的科研主题。它们共同构成独一无二的指纹。

引用此