点上方蓝字计算机视觉联盟获取更多干货

在右上方 ··· 设为星标 ★,与你不见不散

仅作学术分享,不代表本公众号立场,侵权联系删除

转载于:链接:https://www.zhihu.com/question/384519338

编辑:深度学习与计算机视觉

AI博士笔记系列推荐

周志华《机器学习》手推笔记正式开源!可打印版本附pdf下载链接

作者:Fing
https://www.zhihu.com/question/384519338/answer/1160886439

最近发现的一个神库。

深度学习实验结果保存与分析是最让我头疼的一件事情,每个实验要保存对应的log,training curve还有生成图片等等,光这些visualization就需要写很多重复的代码。跨设备的话还得把之前实验的记录都给拷到新设备去。

wandb这个库真是深得我心,只要几行代码就可以把每一次实验打包保存在云端,而且提供了自家的可视化接口,不用每次都自己写一个logger,也省掉了import matplotlib, tensorboard等一大堆重复堆积的代码块。最关键的是,它是免费的:)

作者:jpzLTIBaseline

https://www.zhihu.com/question/384519338/answer/1196326124

关于实验管理,其他人的回答已经写得十分详细了。虽然我自己还是习惯直接Google Sheet然后在表格里的每一行记录【git commit hashcode】、【server name】、【pid】、【bash script to run exp】、【实验具体结果】、【notes】、【log position】、【ckpt position】,而且Google Sheet增加column以及合并格子用起来还是很flexible的。

这里我提一下其他方面的一些有助于提高效率的工具:

  • 给自己的model起一个酷炫的缩写:http://acronymify.com/

现在越来越多的论文标题(尤其是Deep Learning方向)都是 [model缩写]: [正经论文题目] 的格式,而且一个朗朗上口的名字确实有助于记忆与传播。

  • 写paper时候的用词搭配:https://linggle.com/

作为一个non-native speaker,写paper的时候词语搭配真是让人头秃。这个网站可以比较方便地找一些词语搭配。

  • 手写/截图 转 LaTex公式:https://mathpix.com/

LaTex如果所有公式都要自己手打还是很痛苦的。(虽然很多时候一篇Deep Learning方向的paper公式数量只有十个左右(这还是在强行加上LSTM等被翻来覆去写烂的公式的情况下))

  • 颜色搭配(色盲友好型):http://colorbrewer2.org/

这个网站不仅能很方便找到各种常用的 color schemes,而且都是 grayscale friendly and colorblind-friendly,对于paper里画图帮助比较大。

  • 找前人paper的code:https://paperswithcode.com/

有的时候自己复现真是玄学,这个网站和搜索引擎 "[论文题目] site:http://github.com"配合使用即可。

  • 文字转语音:https://cloud.google.com/text-to-speech

有的paper需要做一个video来介绍,对自己口语不是很有信心的话可以用G家的text2speech(这个领域Google应该是当之无愧的霸主),还能调节语速,非常贴心。

作者:一只火山
https://www.zhihu.com/question/384519338/answer/1574144370

MONAI 啊!真不是我给我们英伟达打广告,这个开源工具真的香,我自己天天用。

复现别人代码的时候最怕什么?最怕preprocessing啊!现在大家网络的代码都开源,但再开源,用在你自己的数据集上,你也得preprocessing。懒人不开心。

而MONAI就是拯救懒人的!轻轻松松,几行代码就解决了。

而且MONAI还专门为医学图像预设好了多种preprocessing and data augmentation。妈妈再也不用担心我读取NIfTI文件啦!下面这段代码,从读取文件到normalize,甚至crop ROI一条龙服务。而且这个库代码风格极好,看函数名就能猜到在干嘛。

真的,MONAI,搞医学图像的必须尝试!搞自然图像的也很方便!绝对效率神器!

作者:张骞晖
https://www.zhihu.com/question/384519338/answer/1154117461

都是鄙人的一些经验,不一定有用

(1) 个人经验就是一定要有自己的代码风格,代码仓库。

代码风格可以学习别人的,代码仓库可以上传到github上。

风格可以帮助你快速的实现改动自己的代码,复现Baseline。

写的好了,就可以传到github上,不断地更新,优化。尤其是

深度学习算法,保证可以快速的查询到。

(2) xshell每次连接服务器,可能都要配置一下运行环境, 比如 conda activate tf19, tf14,切到工作目录, 项目很多就会乱。

首先:我们可以再自己用户的 bashrc 建立别名 alias

比如:

alias ns='nvidia-smi'

alias TF19='conda activate TF19'

运行TF19就可以配置好TF环境。每次打开xshell,为了避免每次键入TF19

可以再Session->Properties->Login scripts, Send

加入TF19

对于工作目录,按照同样的步骤,即可。

对于每个工作环境,工作目录,我们都可以建立一个不同的Session。这样打开Session

之后,所有都会配置好了。而且,我们给Session命好名,方便区分。

(3)深度学习环境迁移

我们配置好的环境,如果切换到另外的服务器,可以使用

pip freeze > requirements.txt 得到配置文件。

这个配置文件,到了另外的服务器,可以使用

pip install -r requirements.txt

另外这个文件可以提交到github上,方便别人使用我们的项目。

相似的命令:conda  list

(4)磁盘检查,服务器上跑程序难免把磁盘占满,造成程序停掉

可以利用shutil包,来得到所在磁盘的free space,然后传入挂载点即可。例如

def getFreeDisk(mount_point='/'):
   total, used, free = shutil.disk_usage(mount_point)
   return free // (2**30)

之后,我们可以利用assert

assert getFreeDisk(config.mount_point) > 100

如果小于100,程序会报错。当然也有其他写法。只要在磁盘还有free space之前

给出警告即可。

作者:取栗
https://www.zhihu.com/question/384519338/answer/1153464864

我猜应该会有人提的,就当我重复一下吧:

1.apex 半精度训练 https://github.com/apex/apex

2.ALI (亲测效果很好,用在训练上还是推理上都是效率神器)https://github.com/NVIDIA/DALI

3.ncnn 仅限于推理加速https://github.com/Tencent/ncnn

作者:Ironboy
https://www.zhihu.com/question/384519338/answer/1145476709

计算资源对效率太重要了,几块好一些的显卡能支持你迅速复现别人的工作,验证自己的想法是不是work,以及在通用数据集/比赛上快速迭代刷分

听过一个故事:一名社畜在实验室服务器上训了三个月的模型,各种调参准确率都一直上不去,然后尝试向老板申请租了几块百度云的高性能GPU,单单把batch size调高到128,准确率就唰的上去了,然后一篇CVPR paper诞生。

不说了,调参去了,ImageNet训了好几天,怎么还会把人分成了狗!

作者:Tommey
https://www.zhihu.com/question/384519338/answer/1190380101

上面的回答都是一些大神的经验,非常有用。作为一个早期新人来说,我谈一点个人的看法。我觉得入门早期来说有四个门槛,数据,算力、环境和源码。

一、数据

数据的收集和下载费时费力,而且有些时候一些国外的服务器还经常断线。

二、算力

GPU的加速性能大家应该都知道,这也是N卡这些年火爆的一个主要原因,但是相应的CPU和内存其实也是需要能够配套的。好马还要配好鞍。

三、环境

现在环境安装已经非常方便了,大部分的包用PIP就能解决。但是单机上版本冲突的问题也是很麻烦的,比如有的TF版本要求cuda版本是9,有的又要求是8。这些对于新手来说无疑是满头的包。

四、源码

大神们都说github上别人的源码,但是绝大部分的源码直接下载下来是很难跑起来的。

作为一个预算有限,而且是自己探索的DLer来说,这四道门槛哪一道都不容易过。自己跳过这些坑,花了不少精力和银子,也试用过谷歌的免费GPU(一小时会重重置一次),用过亚马逊的服务器和一些国内的GPU服务商的产品,总体而言感觉@街道口扛把子推荐的这个平台还不错。附上链接:街道口扛把子:推荐一个GPU资源租赁台https://zhuanlan.zhihu.com/p/59905068

作者:zhangxiaoyang
https://www.zhihu.com/question/384519338/answer/1159695551

1. 离线效率:balance/转移成本

搞多个GPU、更多更好的样本(可以是巨量app的日志、找多人标注、自己重点修正边界)、用别人训好的模型(或finetune)、借助规则解决一些明确问题等。

2. 在线效率:通用机制建设

通用的模型serving、复杂模型transfer到简单模型、方便的干预/实验机制。

3. 日常效率:一键脚本

把重复性的操作一键脚本化,就能大大提升效率了。

end

我是王博Kings,一名985AI博士,在Github上开源了机器学习、深度学习等一系列手推笔记,获得了不少同学的支持。

这是我的私人微信,还有少量坑位,可与相关学者研究人员交流学习 

目前开设有人工智能、机器学习、计算机视觉、自动驾驶(含SLAM)、Python、求职面经、综合交流群扫描添加CV联盟微信拉你进群,备注:CV联盟

王博Kings 的公众号,欢迎关注,干货多多

王博Kings的系列手推笔记(附高清PDF下载):

博士笔记 | 周志华《机器学习》手推笔记第一章思维导图

博士笔记 | 周志华《机器学习》手推笔记第二章“模型评估与选择”

博士笔记 | 周志华《机器学习》手推笔记第三章“线性模型”

博士笔记 | 周志华《机器学习》手推笔记第四章“决策树”

博士笔记 | 周志华《机器学习》手推笔记第五章“神经网络”

博士笔记 | 周志华《机器学习》手推笔记第六章支持向量机(上)

博士笔记 | 周志华《机器学习》手推笔记第六章支持向量机(下)

博士笔记 | 周志华《机器学习》手推笔记第七章贝叶斯分类(上)

博士笔记 | 周志华《机器学习》手推笔记第七章贝叶斯分类(下)

博士笔记 | 周志华《机器学习》手推笔记第八章集成学习(上)

博士笔记 | 周志华《机器学习》手推笔记第八章集成学习(下)

博士笔记 | 周志华《机器学习》手推笔记第九章聚类

博士笔记 | 周志华《机器学习》手推笔记第十章降维与度量学习

博士笔记 | 周志华《机器学习》手推笔记第十一章特征选择与稀疏学习

博士笔记 | 周志华《机器学习》手推笔记第十二章计算学习理论(上)

博士笔记 | 周志华《机器学习》手推笔记第十二章计算学习理论(下)

博士笔记 | 周志华《机器学习》手推笔记第十三章半监督学习

博士笔记 | 周志华《机器学习》手推笔记第十四章概率图模型

点个在看支持一下吧

收藏 | 有没有什么可以节省大量时间的 Deep Learning 效率神器?相关推荐

  1. 有没有什么可以节省大量时间的 Deep Learning 效率神器?

    链接:https://www.zhihu.com/question/384519338 编辑:深度学习与计算机视觉 声明:仅做学术分享,侵删 作者:Fing https://www.zhihu.com ...

  2. 4 个节省大量时间的 Deep Learning 效率神器

    问题链接:https://www.zhihu.com/question/384519338,本文来自知乎问答,回答已获作者授权,禁止二次转载. 一.Fing https://www.zhihu.com ...

  3. 节省大量时间的 Deep Learning 效率神器

    1. 每个实验保存完整config + wandb远程追踪 还在给model取巨长的文件名来记录其超参吗?out了.wandb可以把config和结果曲线同步云端供横向评比和查看.同步云端的代码: d ...

  4. 干货收藏!639页《深度学习:Deep Learning》图文并茂课程PPT

    读博总是不容易,最近导师发给我一个深度学习的课程PPT,讲的太好了,图文并茂,是一门非常硬核的学习课程.作为笔记记录一下,同时付了下载链接方便大家一起学习 深度机器学习的最新发展使视觉识别.语音和文本 ...

  5. 核电集团数字化转型该怎么做?这篇案例分析帮你节省90%时间

    当前,我国智能电网的最终目标是建设成为覆盖电力系统整个生产过程,包括发电.输电.变电.配电.用电及调度等多个环节的全景实时系统. 而支撑智能电网安全.可靠运行的基础是电网全景实时数据采集.传输和存储, ...

  6. python工程技巧_重点来了!掌握这些Python技巧,将给你节省大量时间

    希望你们可以将这些技巧运用到项目中.尽管没有运行时的速度或性能优势,但是与从零开始实施此逻辑相比,这将为你节省大量时间.因此,言归正传,让我们来看这三点吧: 1.拉姆达函数(Lambda Functi ...

  7. 计算机二级有趣的圆锥,高考数学圆锥曲线常用二级结论帮你节省解题时间(精).pdf...

    高考数学平圆锥曲线常用二级结论--帮你节省解题时间 高考数学平圆锥曲线常用二级结论--帮你节省解题时间 椭圆 椭圆 2 2 2 2 x a x y x a cos x y cosq ì q ì a b ...

  8. 节省 3/4 的设计时间:14个设计神器

    1.镜像炫光生成器 weavesilk.com  作为在线生成器的鼻祖之一,Silk 早在2010年就发布了,而且效果至今无人超越.   2.在线自动生成背景图片 coolbackgrounds.io ...

  9. 加快效率又节省生产时间,看MPC等五个工作室玩转Action

    Actions是自定义脚本,可以扩展ftrack Studio的功能.通过Actions,你可以自动生成报告,启动应用程序,打开自定义UI等等.下面,来自MPC.Plarium Games.Sila ...

最新文章

  1. 盘点当下大热的 7 大 Github 机器学习『创新』项目
  2. 云服务器apache mysql php_服务器配置教程:阿里云服务器安装PHP环境(附PHP+MySQL+Apache后台小Demo)...
  3. 我遇到的CocoaPods的问题(也许后期会解决,持续更新)
  4. 开源分布式中间件 DBLE 快速入门指南
  5. 【Java】集合框架基础编程练习题
  6. LZW算法PHP实现方法 lzw_decompress php
  7. Java读取Excel文件转换成JSON并转成List——(七)
  8. Eureka心跳续约机制
  9. mysql 横纵表转化_数据库MySQL横纵表相互转化操作实现方法
  10. 4. linux调用文件计算阶乘前5项和_【题解循环】1091:求阶乘的和
  11. 马的走法编程java_马周游问题(Java实现)
  12. 不能忽视 php warning
  13. 内存释放_把微信这两个开关关掉, 手机立马释放大量内存, 快去试试吧
  14. Atitit all diary index va u33 #alldiary.docx Atitit alldiaryindex v1 t717 目录 1. Fix 1 2. Diary deta
  15. PostgreSQL教程
  16. Spring Boot 2.x 基础案例:整合Dubbo 2.7.3 Nacos1.1.3(配置中心)
  17. matlab fft能量守恒吗,功能关系 能量守恒定律
  18. c# 枚举的定义,枚举的用法,获取枚举值
  19. 0922CSP-S模拟测试赛后总结
  20. 中职计算机教师考核工作总结,中职计算机教师教学工作总结

热门文章

  1. python 数据分析 实际案例_python在实际工作中运用的案例
  2. html lt p gt 标签的属性,科技常识:html中amp;lt;tableamp;gt;标签的各种属性介绍_table的使用...
  3. c语言省二历年真题讲解安徽,安徽省计算机等级二考试真题C语言年12月.doc
  4. mysql如何导出word_SQL导出为Word
  5. python list 实现原理,Python 列表(List)的底层实现原理分析
  6. post get mysql_jQuery – AJAX get() 和 post() 方法 | 菜鸟教程
  7. http模拟登陆及发请求
  8. 【luogu4408】 [NOI2003]逃学的小孩 [动态规划 树的直径]
  9. SQL基础:数据表的创建
  10. Android-apk文件反编译