resnet50代码_经验干货!竞赛比完,代码、模型怎么处理?Kaggle大神:别删,这都是宝藏...

点击上方“菜鸟学Python”,选择“星标”公众号

重磅干货,第一时间送达

9af7b9140ecf592be07a64ec7e388325.png

作者:Vladimir Iglovikov 本文转自:机器之心
那些被遗忘的竞赛项目代码、权重可能也是一笔宝藏。
很多人可能参加过许多比赛,做过许多项目,但比赛或项目结束之后,曾经写过的代码、用过的模型就被丢到了一边,甚至不久就被删掉。 这种情况并不只存在于比赛中,在学术领域同样存在。当学生训练完模型、写完论文并被学术会议接收后,该模型的 pipeline 就会被抛弃,训练数据也随之被删除。这是不是有点太可惜了? 长期参加 Kaggle 比赛的 Vladimir Iglovikov 在自己的博客中指出了这个问题,并提出了一些重新利用这些资源的建议。 Vladimir Iglovikov 是一位 Kaggle Grandmaster,曾在 Kaggle 全球榜单中排名第 19,拿到过 Carvana 图像遮蔽挑战的冠军(他的个人经历参见:《Kaggle Grandmaster 是怎样炼成的》)。

6828623ddc4cb9fc52fc575f7700827f.png

在他看来,竞赛中曾经用到的代码、权重等资源是一笔宝贵的财富,可以帮助你 巩固技术知识、树立个人品牌、提高就业机会 。 为了解释这些资源资源的价值,他还专门创建了一个 GitHub 项目(retinaface)来讲述文本的建议。 项目链接:https://github.com/ternaus/retinaface

953dce883ff197e6f7fe3dc09f421f4b.png

以下是博客的具体内容。 花 5 分钟将代码发布到公开的 GitHub 存储库 很多时候,你的代码可能已经存到 GitHub 上了,但是是存在私人库里。那公开又有什么损失呢? 某些情况下,有些代码确实不宜公开,但你在 Kaggle 里做的那些练手项目、解决方案和论文或许没这个必要。 为什么有些人不愿公开呢?因为很多人认为,「所有公开发布的代码都应该是完美的,否则就会遭到批判。」 但实际情况是,其他人根本不 care,你只管发布就行。 公开代码是心理防线的一次重大突破,公开不完美的代码更是一个自信、大胆的举动。所有后续步骤也都在这一步的基础上展开。 花 20 分钟提升代码可读性 你可以通过添加语法格式化工具和检查工具来提升 python 代码的可读性。 这并不困难,也并不费时。检查工具和格式化程序不会将烂代码变成好代码,但其可读性会有所提升。以下是具体步骤: 步骤 1:文件配置 将这些文件添加到存储库的根目录。
  • setup.cfg — flake8 和 mypy 的配置。

  • pyproject.toml — black 的配置。

步骤 2:requirements 用以下命令安装所需的库:
pip install black flake8 mypy
步骤 3:black 格式化代码的方法有 100500 多种。诸如 black 或 yapf 之类的格式化工具会按照一组预定义的规则来修改代码。 阅读具有一定标准的代码库会更加容易。当你花费几个小时编写代码并需要在不同的编码风格之间切换语境时,你的意志力会被消耗殆尽。因此,没有充分的理由就不要这么做。 运行以下命令将重新格式化所有的 python 文件以遵循 black 的规则。
black .
步骤 4:flake8 运行以下命令不会修改代码,但会检查代码中的语法问题并将其输出到屏幕上。然后修改这些问题。
flake8
步骤 5:mypy Python 没有强制性的静态类型化,但还是建议将类型添加至函数参数并返回类型。例如:
class MyModel
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值