深度学习的一些经验总结和建议| To do v.s Not To Do

关注&置顶“Charlotte数据挖掘

每日9:00,干货速递!

昨天看到几篇不同的文章写关于机器学习的to do & not to do,有些观点赞同,有些不赞同,是现在算法岗位这么热门,已经不像几年前一样,可能跑过一些项目、懂点原理就可以了,现在对大家的要求更高,尤其工程能力更不可缺少,只跑过一些iris鸢尾花分类、啤酒与尿布、猫狗分类等的同学需要再提高提高,因为竞争太激烈了,我在这里结合我自己的经验总结一下吧~


To Do

  • 做项目时,边搜集数据可以边用已经搜集好的少部分数据跑模型。不用等到所有数据都搜集好了再跑。

  • 不知道什么算法合适,可以直接把所有的算法都跑一遍,看效果再选择,多跑几个应用场景你就知道什么算法适合什么场景,什么数据对不同的算法会有什么影响了。

  • 不知道什么参数是最佳参数,可以用random search或者grid search自动搜索最佳参数组合,有经验以后对于每个参数的大概范围心里会有个数。

  • 一定要练习工程能力,只会调参的demo侠现在很难找到工作啦。

  • 模型复现和刷题是很好的锻炼工程能力的一种方式。

  • 刷题不要追求数量,要总结不同类型的题目的经验,并结合之前的业务中,看能不能优化之前的业务逻辑。

  • 模型复现可以给自己规定一个任务,譬如在一个月内,把某篇论文的Tensorflow实现的代码,复现成Pytorch或者PaddlePaddle等其他框架的代码,不是闲着没事做,而是模型复现可以迅速提高你对框架的熟悉度和代码能力。

  • 模型复现的过程中,最难的是写新的op和模型效果(精度和速度)的对齐。这可能很折磨人,但是收获也很大。

  • 如果要做新项目,可以先看看有没有预训练模型,可以快速做迁移学习的,如果有,那么整体的模型周期会快很多。

  • 如果跑完算法,一定要有一个成品的形态,最好不要只做算法这一块,譬如跑完模型将其打包封装成服务接口(服务端和移动端等),达到让人可用的状态最好。

  • 领导不想知道过程,只想知道结果。没有可用的东西和可视化的结果,他会觉得你啥也没做。

  • 上条只针对部分领导。

  • 没有人会比你更关心模型的参数调整导致模型的效果提升了0.1%还是1%,大多数人,尤其是leader、或者leader的leader,只关心它有什么用,真实场景的效果好不好。

  • 可以多和同事、同行等互相交流,参加线下的学习会、交流会等,可能会有意想不到的收获。

  • 学习新的算法,先把代码跑起来再说,再来看理论、数学推导、自己手写实现等。

  • 除了调参以外,还需要关注关注部署上线、模型压缩等方面的内容。

Not To Do

  • 训练数据不要太干净了,因为真实场景的数据往往和实验数据差很多,尝试加点噪音吧,做些数据增强和mixup等。

  • 论文里的效果不一定能复现。可以尝试论文的思路,但是不要太过相信论文里的效果数据。

  • 做一个项目就好好深挖,不仅仅要做出来,还要不断的优化,不然每个项目都只是跑通了,效果还行,没必要写到简历里,不如写一个做的很深入,尝试了各种优化方法并有效果提升的项目。

  • 不要因为觉得自己数学不好就先去恶补数学,买一堆高等代数、数学分析、实变函数、复变函数等纯数学书,如果一定要看,推荐《线性代数》《信息论》《凸优化》《数值分析》。

  • 上条推荐的四本数学书也不用全看,凸优化太厚了,其他三本可以在自己有大块时间可以刷书的时候,规定自己在一个月或者几个月的时间迅速刷完。线性代数是基础,数值分析是优化方法(也不用全看),凸优化与信息论与目标函数相关,涉及机器学习的很多理论知识。

  • 不要觉得你训练的模型效果多好就多么厉害,除非是做科研、打比赛、工业界更关注能不能落地,能不能应用产生价值,不要自high = =

  • 如果把你的算法封装成服务了,也要做做压测,学习下工程方面的内容。

  • 最好的状态是,工程能力强,又懂算法,两者结合,效果更佳。不要只注重某一方面的提升,多关注下自己的代码风格,不要让你的同事code review的时候犯难 - -


暂时想到这些,每条都是试错后的血泪教训的总结T_T,有补充的欢迎大家在下面留言~


640?wx_fmt=jpeg

-点击右下角 告诉大家你“在看”-

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/408567.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch系列 | 快速入门迁移学习

点击上方“算法猿的成长”,选择“加为星标”第一时间关注 AI 和 Python 知识图片来源:Pexels,作者:Arthur Ogleznev2019 年第 68 篇文章,总第 92 篇文章本文大约 6800 字,建议收藏阅读原题 | TRANSFER LEAR…

AI研发工程师成长指南

AI研发工程师成长指南本文为数据茶水间群友原创,经授权在本公众号发表。关于作者:Japson。某人工智能公司AI平台研发工程师,专注于AI工程化及场景落地。持续学习中,期望与大家多多交流技术以及职业规划。0x00 前言首先&#xff0c…

进程和线程(上)

点击上方“算法猿的成长”,选择“加为星标”第一时间关注 AI 和 Python 知识2019 年第 70 篇文章,总第 94 篇文章本文大约 6000 字,阅读大约需要 15 分钟最近会开始继续 Python 的进阶系列文章,这是该系列的第一篇文章&#xff0c…

你有哪些deep learning(rnn、cnn)调参的经验?

点击上方“算法猿的成长”,选择“加为星标”第一时间关注 AI 和 Python 知识来源:知乎问题深度学习中调参其实是一个比较重要的技巧,但很多时候都需要多尝试多积累经验,因此算法工程师也被调侃为调参工程师。这里分享来自知乎上的…

A+B for Matrices 及 C++ transform的用法

题目大意&#xff1a;给定两个矩阵&#xff0c;矩阵的最大大小是M*N&#xff08;小于等于10&#xff09;&#xff0c;矩阵元素的值的绝对值小于等于100&#xff0c;求矩阵相加后全0的行以及列数。 1 #include<iostream>2 using namespace std;3 #define N 104 5 int main…

进程和线程(下)

点击上方“算法猿的成长”&#xff0c;选择“加为星标”第一时间关注 AI 和 Python 知识2019 年第 71 篇文章&#xff0c;总第 95 篇文章本文大约 8000 字&#xff0c;建议收藏阅读上一篇文章介绍了进程和线程的基本概念&#xff0c;以及多进程如何实现&#xff0c;本文则介绍下…

8月总结抽奖

1首先是小小总结下 8 月发文的情况&#xff0c;总共推文时间是 21 天&#xff0c;原创文章有 9 篇&#xff0c;分别如下&#xff1a;Jupyter 进阶教程PyTorch 系列 | 数据加载和预处理教程PyTorch系列 | 如何加快你的模型训练速度呢&#xff1f;Leetcode 系列 | 反转链表PyTorc…

【文件系统】浅解释FAT32

了解完linux下的文件系统之后&#xff0c;顺便对FAT32也研究一下。 假如一个FAT32表如下所示。 文件的簇应该保留在目录中&#xff0c;根据此簇&#xff0c;应该能得到一个块。 要找到文件的下一块&#xff0c;就要根据簇在FAT中寻找&#xff0c;所以FAT中存储的不是本簇的簇号…

全网首发!2020年AI、CV、NLP顶会最全时间表!

点上方蓝字计算机视觉联盟获取更多干货在右上方 设为星标 ★&#xff0c;与你不见不散编辑&#xff1a;Sophia计算机视觉联盟 原创总结 | 公众号 CVLianMeng联盟花费一周对2020年顶会时间进行了总结&#xff01;2020 AI、CV、NLP顶会时间表&#xff0c;包含会议举办的时间、…

互联网大佬学历背景大揭秘,看看是你的老乡还是校友

作者&#xff1a;徐麟&#xff0c;某互联网公司数据分析狮&#xff0c;个人公众号数据森麟&#xff08;id&#xff1a;shujusenlin&#xff09;前言 互联网作为一个快速发展的新兴领域&#xff0c;聚集了大量的优秀人才&#xff0c;前沿技术的广泛应用也不断地为互联网注入着新…

Setup SQL Server 2008 Maintenance Plan Email Notifications

一条龙作完&#xff0c;如何设置EXCHANGE的操作员邮件通知。。 ~~~~ http://808techblog.com/2009/07/setup-sql-server-2008-maintena.html For most of the SQL installs that I maintain, nightly SQL dumps to disk and then copy to tape is my preferred backup method. …