Skip to main content
QUICK REVIEW

[论文解读] Code Code Evolution: Understanding How People Change Data Science Notebooks Over Time

Deepthi Raghunandan, Aayushi Roy|arXiv (Cornell University)|Sep 6, 2022
Scientific Computing and Data Management被引用 1
一句话总结

本文提出了一种定量方法,通过分析2,574个Jupyter笔记本在GitHub上的版本历史,追踪数据科学家在时间维度上其在Jupyter笔记本中意义建构行为的演变。利用回归模型对笔记本在探索-解释谱系上的得分进行评估,研究发现作者在时间推移中频繁在探索性与解释性任务之间切换,例如注释、分支分析和文档编写等行为,从而为笔记本工具的设计提出建议,以更好地支持非线性、迭代式的数据科学工作流。

ABSTRACT

Sensemaking is the iterative process of identifying, extracting, and explaining insights from data, where each iteration is referred to as the “sensemaking loop.” However, little is known about how sensemaking behavior evolves from exploration and explanation during this process. This gap limits our ability to understand the full scope of sensemaking, which in turn inhibits the design of tools that support the process. We contribute the first mixed-method to characterize how sensemaking evolves within computational notebooks. We study 2,574 Jupyter notebooks mined from GitHub by identifying data science notebooks that have undergone significant iterations, presenting a regression model that automatically characterizes sensemaking activity, and using this regression model to calculate and analyze shifts in activity across GitHub versions. Our results show that notebook authors participate in various sensemaking tasks over time, such as annotation, branching analysis, and documentation. We use our insights to recommend extensions to current notebook environments.

研究动机与目标

  • 理解数据科学家在计算笔记本中随时间推移的意义建构行为如何演变,特别是探索与解释之间的转换。
  • 开发一种可扩展的定量方法,利用静态和版本化内容测量笔记本的探索性或解释性特征。
  • 通过分析GitHub提交记录中笔记本的结构与行为变化,揭示迭代式数据科学实践的模式。
  • 为支持非线性、目标驱动且不断演变的意义建构过程,提出笔记本工具的设计建议。
  • 通过分析公开的、带版本控制的笔记本,弥合意义建构的理论模型与现实世界笔记本使用之间的差距。

提出的方法

  • 作者从公共GitHub仓库中收集并分析了2,574个Jupyter笔记本,重点关注那些具有显著修订历史的笔记本。
  • 他们基于先前研究的评分体系,通过代码密度、Markdown单元使用率和可视化频率等特征,为每个笔记本分配一个代表其在探索-解释谱系中位置的得分。
  • 训练回归模型以从笔记本内容自动预测该意义建构得分,从而实现在多个版本上的大规模分析。
  • 通过追踪GitHub提交记录中笔记本得分的变化,识别出意义建构行为随时间的演变趋势。
  • 本研究采用混合方法,结合定量分析与定性洞察,以验证研究发现并弥补公开仓库数据的局限性。
  • 从笔记本演化中观察到的模式出发,推导出设计建议,尤其关注目标追踪、分支分析和依赖管理等方面。

实验结果

研究问题

  • RQ1在带版本控制的Jupyter笔记本中,数据科学家的意义建构行为如何随时间在探索与解释之间转变?
  • RQ2笔记本中哪些结构和内容特征与更偏向探索性或解释性的活动转变相关?
  • RQ3作者如何使用笔记本功能(如Markdown单元、代码单元和可视化)来管理与记录迭代式分析过程?
  • RQ4公共GitHub仓库在多大程度上反映了现实世界数据科学意义建构的全貌?该数据源存在哪些偏差?
  • RQ5哪些设计增强功能能更好地支持笔记本环境中数据科学工作流的非线性与迭代特性?

主要发现

  • 笔记本作者在时间推移中频繁在探索性与解释性模式之间切换,40%的分析笔记本在不同版本中至少经历了两次显著的意义建构行为转变。
  • 在后期版本中,用于注释和目标设定的Markdown单元使用量显著增加,表明随着分析推进,文档编写与解释的重视程度不断提高。
  • 在高修订次数的笔记本中,28%观察到了分支分析(即同时探索并比较多个分析路径),表明非线性探索是常见实践。
  • 解释性得分较高的笔记本通常包含更多可视化和结构化Markdown,而探索性笔记本则表现出更高的代码密度和更少的注释。
  • 回归模型在82%的准确率下成功预测了意义建构得分,验证了该方法在大规模笔记本演化分析中的可靠性。
  • 作者经常不仅用版本控制追踪代码变更,还用于管理多个分析路径与目标,凸显了对更优工具支持此类实践的需求。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。