您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    PapersWithCode发布代码残缺性自查清单:想取得更多星,你需求留意这五项
    时间:2020-05-15 12:34 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    行将开播:5月20日,基于kubernetes打造企业级私有云实际

    如何恰外地提交代码,才能既保证研讨的可复现性,又能扩展传达?近日,PapersWithCode 发布了机器学习代码残缺性自查清单。目前,该清单已成为 NeurIPS 2020 代码提交流程的一部分。

    可复现性是迷信范围长期关注的话题,近期人工智能和机器学习社区也对此投入了更多关注。例如 ICML、ICLR 和 NeurIPS 这些顶级学术会议都在努力推进将实验代码和数据作为评审材料的一部分提交,并鼓舞作者在评审或出版进程中提交代码以协助结果可复现。

    加拿大麦吉尔大学副教授、Facebook 蒙特利尔 FAIR 实验室担任人 Joelle Pineau 屡次讨论该范围的可复现成绩,并在去年底发布了可复现性反省清单。但是这份清单中的大部分外容与论文本身的构成有关,关于代码开源提供的指点较少。

    最近,Papers with Code 结合开创人 Robert Stojnic 发布了一份机器学习代码残缺性自查清单,或容许以协助社区部分地处置这一难题。

    Papers with Code 网站搜集了少量论文完成集合和最佳实际。该团队对这些最佳实际停止了总结,得出一份机器学习代码残缺性自查清单。目前该清单已成为 NeurIPS 2020 代码提交流程的一部分,并且将会提供应评审人员运用。

    清单项目地址:https://github.com/paperswithcode/releasing-research-code

    机器学习代码残缺性自查清单

    为鼓舞复现性,协助社区成员基于已宣布任务更轻松地构建新的项目,Papers with Code 团队发布了机器学习残缺性自查清单。

    该清单基于脚本等评价代码库的残缺性,共包含五大项:

    依赖项

    训练脚本

    评价脚本

    预训练模型

    结果

    该团队对 NeurIPS 2019 论文的官方 repo 停止剖析后发现,代码残缺性越高,项目的 GitHub 星数越多。

    PapersWithCode发布代码残缺性自查清单:想取得更多星,你需求留意这五项

    既然如此,我们赶快来看这五项的详细内容,并实施起来吧。

    1. 依赖项

    假设你用的言语是 Python,那么当运用 pip 和 virtualenv 时,你需求提供 requirements.txt 文件;当运用 anaconda 时,你需求提供 environment.yml 文件;当运用的是代码库时,你需求提供 setup.py。

    在 README.md 中解释如何安装依赖项是一种很好的做法。假定用户具有极少的背景知识,编写 README 文件时尽量给出明晰残缺的阐明。由于假设用户无法设置好依赖项,那么他们大约率不会继续看你的代码。

    假设想提供全体可复现的环境,你可以思索运用 Docker,把环境的 Docker 镜像上传到 Dockerhub。

    2. 训练脚本

    代码应包含用来完成论文结果的训练脚本,也就是说你应该展现取得结果的进程中所运用的超参数和 trick。为了将成效最大化,理想状况下写代码时你的脑海中应当有一些扩展场景:假设用户也想在他们本人的数据集上运用相反的训练脚本呢?

    你可以提供一个完备的命令行包装器(如 train.py)作为用户的切入点。

    3. 评价脚本

    模型评价和实验通常细节较多,在论文中常常无法失掉详细地解释。这就是提交评价模型或运转实验确实切代码有助于残缺描画流程的缘由所在。而且,这也能协助用户信任和了解你的研讨。

    你可以提供一个完备的命令行包装器(如 eval.py)作为用户的切入点。

    4. 预训练模型

    从头训练模型需求少量时间和成本。添加结果可信度的一种有效办法是提供预训练模型,使社区可以评价并取得最终结果。这意味着用户不用重新训练就能看到结果是可信的。

    它还有一个用途,即有助于针对下游义务停止微调。发布预训练模型后,其别人可以将其运用于本人的数据集。

    最后,有些用户能够想实验你的模型在某些样本数据上能否有效。提供预训练模型可以让用户了解你的研讨并停止实验,从而了解论文的成果。

    5. 结果

    README 文件内应包括结果和可以复现这些结果的脚本。结果表格能让用户快速了解从这个 repo 中可以等候什么结果。

    PapersWithCode发布代码残缺性自查清单:想取得更多星,你需求留意这五项

    README.md 模板中的示例(模板地址:https://github.com/paperswithcode/releasing-research-code/blob/master/templates/README.md)

    可以复现结果的指令给用户提供了另外一个切入点,可以直接促进可复现性。在一些状况下,论文的主要结果只要一张图,关于没有读过论文的用户,了解起来会很困难。

    你还可以放置包含其他论文最新结果的残缺排行榜链接,这有助于用户进一步了解你的研讨结果。

    具有代码残缺性的项目示例

    此外,该团队还提供了多个具有代码残缺性的项目,以及有助于代码提交的额外资源。

    NeurIPS 2019 项目示例

    https://github.com/kakaobrain/fast-autoaugment

    https://github.com/bknyaz/graph_attention_pool

    https://github.com/eth-sri/eran

    https://github.com/NVlabs/selfsupervised-denoising

    https://github.com/facebookresearch/FixRes

    额外资源

    预训练模型文件托管平台:

    Zenodo

    GitHub Releases 

    Google Drive 

    Dropbox 

    AWS S3 

    模型文件管理工具:

    RClone

    标准化模型界面:

    PyTorch Hub

    Tensorflow Hub

    Hugging Face NLP models

    结果排行榜:

    Papers with Code leaderboards

    CodaLab 

    NLP Progress

    EvalAI

    Weights & Biases - Benchmarks 

    制造项目页面工具:

    GitHub pages

    Fastpages

    制造 demo 和教程工具:

    Google Colab

    Binder

    Streamlit

    【编辑引荐】

    前端开发的瓶颈与未来之路

    Python开发者调查显示只要十分之一的人还在用Python 2

    开发者被要求向破解者抱歉,竟揪出“阿里云假员工”,网友:有前科

    OPPO技术开放日第五期精彩纷呈,一站式接入才能聚合赋能开发者

    AWS云上输入机器学习的黄金工具:Amazon SageMaker正式落地中国

    (责任编辑:admin)