Page 422 - 《软件学报》2025年第12期
P. 422

黄小龙 等: ReproLink: 面向可复现性的科研数据管理系统                                               5803


                 以被一键执行. 最后, 为了缓解复现环境复杂性的影响, ReproLink             对代码和运行上下文环境进行了一体化建模, 为
                 论文作者和复现者提供了一种共享复现环境的机制, 避免了不同的上下文运行环境对代码执行行为的影响, 从而
                 提升了代码的可复现性. 此外, ReproLink       将科研数据之间的关系一阶实体化, 在统一的框架中对科研数据之间多
                 种不同类型的关系进行了表征, 并在多种类型的科研数据对象和数据关系之上建立了科研数据关系图, 支持基于
                 路径模式匹配的多跳数据查询和基于元数据匹配的关键字查询, 进而实现成果复现相关科研数据的高效发现.
                    本文的主要贡献如下.
                    1) 提出了对科研数据的统一建模, 将论文、代码、数据集这                  3  类数据抽象为包含标识、属性集、数据实体三
                 要素的科研数据对象; 基于数据语用原理, 提出了复现单元模型, 通过多个复现单元相互关联形成的网络实现对复
                 杂复现过程的精确描述; 对科研数据之间不同类型的关系进行了统一表征, 并进一步建立了科研数据关系图, 满足
                 不同复现场景下的科研数据发现需求.
                    2) 设计并实现了一个面向可复现性的科研数据管理系统                   ReproLink. ReproLink  基于数字对象架构    (digital
                 object architecture, DOA) [18] 实现了科研数据对象的统一建模与分散式存储管理, 通过代码和上下文运行环境的一
                 体化建模增强了代码的可复现性, 并实现了基于路径匹配的多跳关系查询以满足不同复现场景下的科研数据发现
                 需求.
                    3) 使用真实数据对     ReproLink  进行了性能测试, 实验结果表明        ReproLink  在百万级的数据规模下具有较好的
                 性能, 且其性能具有良好的可扩展性; 对           ReproLink  进行了用户反馈研究, 用户普遍认为         ReproLink  具有较好的易
                 用性和实用性; 在实际场景下对          ReproLink  进行了用例分析, 结果表明      ReproLink  在论文复现、复现相关数据资
                 源的溯源等场景中具有实际的应用价值.
                    ReproLink  系统技术架构已集成到国内唯一专门面向科研院所的一体化综合管理与服务平台——科南软件,
                 支持国内数百家科研机构的成果复现需求.
                    本文第   1  节介绍与本文研究相关的工作. 第          2  节介绍科研数据的统一建模并对相关概念进行形式化定义. 第
                 3  节介绍  ReproLink  的系统架构和几个主要模块的设计. 第         4  节对  ReproLink  的原型系统进行性能测试, 用户反馈
                 研究和实例分析. 第      5  节总结全文的主要工作.

                  1   相关工作

                  1.1   科研数据共享平台
                    Papers with Code [19] 是  Meta 发起的一个对机器学习论文、代码、数据集进行共享的平台, 它以众包的方式收
                 集论文相关的代码和数据集信息. 分析论文和任务之间的关系. Hugging Face                  [20] 主要关注模型和数据集的开放共
                 享, 通过数据集和模型的元数据, 用户可以在平台上对数据集和模型进行细粒度的筛选. Hugging Face 还支持代码
                 的在线执行功能, 在线执行的代码可以直接使用平台上的数据, 而不需要把平台上的模型或数据下载到本地.
                 GitHub [21] 、Gitee [22] 、GitLab [23] 等开源代码平台提供了代码的开放访问, 可以通过    HTTP、SSH、Git 等多种传输
                 协议进行代码的传输. 许多论文作者将自己论文中所使用的代码上传到这些开源代码平台上, 以便相关领域的研
                 究者使用. 然而, 这些平台的主要设计目标是数据的开放共享, 并不将科研成果的可复现性作为其主要目标. 例如,
                 Papers With Code 中仅将论文和代码仓库进行简单关联, 并不对代码的执行环境进行建模, 也不对一次论文复现过
                 程中的多次代码执行进行细粒度的建模. 本文的工作将单个论文的复现流程拆分为细粒度的复现单元, 提供了一
                 种对复杂复现过程进行精确描述的方式, 并通过代码和运行环境的一体化建模消除了不同执行环境对论文复现的
                 影响, 是对现有科研数据共享平台的重要补充.
                  1.2   数字对象架构
                    数字对象架构      (DOA) [18] 是由  Kahn  等人提出的一种新型网络架构. DOA      将网络中的数据抽象为包含标识、
                 元数据、数据实体三要素的数字对象             (digital object, DO). 在  DOA  中, 数字对象的标识由标识解析系统进行发放
                 和解析, 元数据由数字对象注册表进行索引以提供对数字对象的检索服务, 数据实体则保存在数字对象所有者本
   417   418   419   420   421   422   423   424   425   426   427