研究生一年之计,对深度学习的感受

前言

在即将结束研究生第一年之际,前来谈谈自己的感受。

你可以把这篇文章当做深度学习者、程序员、研究生的简短自白。可能会有点啰嗦,会有点无趣。但如果有时间、感兴趣,不妨阅读阅读,或许你能从其中挑出点有用的东西来呢。

无题

谈到的话题:

  • 编程语言选择
  • 该怎么准备去找工作
  • 上不上博

杂谈

不知不觉入行深度学习即将快一年,虽然说入行之前所做的项目,所编写的代码和现在做的并没有什么直接关系。但是从自己的上手程度和过来的经验来说,好的基础还是很重要的。

对于深度学习的基础,大体分为三个部分:

  • 理论知识基础(数学知识的掌握程度)
  • 编程基础(C/C++/python)
  • 实践基础(配置环境,debug,遇到问题寻找答案)

因为之前大部分的工作是在电赛,主要使用的语言是C。也参加过ACM,使用C++来编写算法。得益于这些实践,自己的C/C++编程功底是有一些的,因此上手python很快,也了解了些python的底层知识(推荐一本<Python源码剖析>)。

Python语言很华丽很美妙很高级。C语言100行做的事情Python可能2行就做到了,但是啊,你不知道Python的2行代码中其实也执行了C语言,如果你使用的是C实现的Python,在Python内核中,实际调用的还是C语言,只是你看不到摸不着罢了。

深度学习的入门门槛虽然,但是稍微努努力,过了这扇门,以后的路就好走多了:一篇文章解决机器学习,深度学习入门疑惑

大部分编程语言都是共通的,熟练掌握其中一门,其他语言也就好入手了。

编程语言接触的越多就会越明白这个道理,不论是动态语言、静态语言还是解释型语言、编译型语言,大体都是互通的。都有近似统一的数据类型,都有近似统一的流程结构,很多关键字也是一样的,

本科的时候我们第一个学习的编程语言应该是C语言。当时一人一本红皮谭浩强,且不说对这本书的评价,也是起码引领我们步入了编程的大门。实话实话学好C语言受益无穷。到如今,C语言的C99标准还是一如既往地稳定,C语言仍然无处不在。

每种编程语言都有归宿

自从升入研究生以来,写C语言的机会变少了,大部分时间只是在看。面对着自己曾经很熟悉很熟悉的语言,像是陌生了很多,担心自己这样会“忘掉”它,于是想着去用用啊,去随便写点东西啊,强行去操作啊。

但还是发现,C语言不适合我当时的项目,强行往上凑是不行的。就和我曾盲目相信python是世界上最好用的语言一样(2333,不是php)。曾一度以为python什么也可以做,但是忽略了重要的一点,编程语言设计的初衷。

翻了翻C语言的历史。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。主要是用于底层开发的。而Python呢,Python的设计者Guido van Rossum是根据ABC语言开发出来的,而这门语言的初衷是为了服务那些非程序员们。怪不得Python语言长得那么像伪代码。

所以啊,面对不同的项目,挑一门不同的编程语言吧,比如我来说:

  • Python:主要用来编写深度学习代码,利用Tensorflow和Pytorch库来实现自己的想法,当然Python还可以做别的,也用Python搭建过网站的后台(Django)。
  • C/C++:自己对C语言更熟悉一些吧,因为C语言很纯粹很干净,没有直接的类功能的支持虽然是硬伤,但是其底层性的特点还是无与伦比的,C语言更多的是在写瓶颈算法代码。而C++对我来说稍微臃肿一些,标准更新太快,不过毕竟和C有亲戚关系,一视同仁了。
  • JavaScript:又是一门脚本语言,但是在我看来JS也开始面向大工程来发展了,各种标准也是层出不穷,每年一个草案,模块与模块间的互相调用也越来越严谨了。这门我一般拿来在浏览器上玩耍,制作一些自己的小工具之类的。

还有一些语言,还接触过luaphp,亦或是C#lua是为了快速入门torchphp是为了搭建这个wordpress做后端的博客。C#是为了使用VS做一个WPF上位机。lua小巧强大和C语言很亲近,PHP自己并不是很喜欢,看了纯粹为了WordPress,C#看了有小半年,各方面也挺好用,不过需要充分理解一切皆对象的概念。

人的精力有限,掌握一门编程语言还是很难的。所以很羡慕那些会多国语言的人,既然人家都能学那么好,那么我们怎么就不能掌握多门编程语言呢?

还是多学一些语言吧

很多人说精通一门语言比学会多种语言有用,这句话说得在理,但是我在实际的项目中更多的是多种编程语言齐驱并驾的,一种语言吃到死的项目还是比较少的。

为什么,其实工作中更多遇到的是交叉编译,但凡涉及到项目,光使用一门语言一般是行不通的。大多数都需要结合不同语言的特长来进行。把自己的技能树点满,遇到不同的怪物也就游刃有余了。

在利用Pytorch这个深度学习框架在搭建一些深度学习算法的时候,我们利用pyyhon来写核心程序,但是如果遇到瓶颈,一些算法速度要求只用python写满足不了这时候就需要C/C++了。另外学习学习cuda也是必要的。

但有一门语言是必学的。

今天,IEEE Spectrum 发布了第五届顶级编程语言交互排行榜:Python 卫冕成功,C++ 异军突起,雄踞第二,C 语言和 Java 则「退位让贤」,分据第三和第四。

微信图片_20180803094322

可以这么说,Python不管在求职、开源项目、自定义项目都占据第一的位置可以说很强势了,Python的优势不必多说,学好Python好好搞事才是硬道理。

总结下,建议学习的的语言:C/C++、Python以及JS

好习惯

我这里要说的好习惯不是指早睡早起,这个睡觉的习惯,我不做过多的评价,每个人有每个人的习惯。而且自己也是反例,平时都是一点多睡,早上8点左右起,这样着实不好,大家别学我。

我要说的,是编写代码过程中,能做的检查尽量都做了,别嫌麻烦,该使用assert就别嫌影响代码美观,注释最好都写上,该有的loglog了,该gitgit,要不然到时候调试起来真的很影响效率。

本人深深受了这个的苦啊。

应不应该上博

这个应该是老生常谈的问题了,曾有一老友专门过来劝我读博,彻夜畅谈,当时差点就被打动了...读博这个真的需要考虑清楚,我身边有很多转博的人,无非就是两种:

  • 老师劝直博,答应肯定能毕业,因为专业偏理论,然后自己感觉研究生出来也不知道做什么,索性再读几年。
  • 自己有想法,想搞研究,感觉研究生三年时间不够用,需要博士的时间继续搞。

确实,如果自己想要研究的东西发现一两年根本出不来结果,何不尝试一下博士呢?

因为一旦你工作了,你想要做的,其实和老板让你做的,差距还是挺大的。

上不上博不是自己一个人的事儿,问问家人,问问女朋友,看看他们是否支持你,然后最终当然看自己的选择了。

项目?工作?

如果一直以研究的心态去找工作,去做项目,那么我想说:你想的和人家要的,那可以天壤之差。

之前有一个项目,我想要用Python来写,用GPU来跑,想多了啊,人家要求用C++来写,用CPU来跑,你以为谁都有GPU呢,项目谈的更是实际,实际落位才是硬道理,因为使用你产品的人,不一定都有GPU。

如果一心科研,那么项目将会是一个完全不同的天地,两者差别还是很大的,各有各有长处短处,有人说理论很难,也有人说实际项目很难,这个真的不好说,只有理论和实际相结合,才是最好的吧。

找工作来说,算法领域,C++/C语言仍然是万金油,不能忽视哇。

后记

简单谈谈自己的感受,希望对大家有帮助。

好几天没写博客,发现一个道理:

对于大多数有需求的程序员来说,阅读博客是一件很爽的体验。

尤其是在看满满知识干货的时候,那新鲜的代码和公式啊,赤裸裸地铺满在博主整齐有条理的页面上,那一张张配图是多么地诱人。虽然恨不得赶紧把这些内容扫荡下来,鼠标滚轮上的中指就要按奈不住往下滑——等等!先收藏了。

但是写博客就稍稍麻烦了,想吐槽的知识太多,奈何时间又不够,只能慢慢来啊...总得需要酝酿是吧?

贵在坚持吧~

交流

如果你与我志同道合于此,老潘很愿意与你交流;如果你喜欢老潘的内容,欢迎关注和支持。博客每周更新一篇深度原创文,关注「oldpan博客」不错过最新文章。老潘也会整理一些自己的私藏,希望能帮助到大家,公众号回复"888"获取老潘学习路线资料与文章汇总,还有更多等你挖掘。如果不想错过老潘的最新推文,请点击神秘链接

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 226,979评论 6 528
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 97,750评论 3 412
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 174,647评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,299评论 1 307
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,104评论 6 405
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 54,623评论 1 320
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,716评论 3 434
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 41,873评论 0 285
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,380评论 1 330
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,344评论 3 354
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,496评论 1 365
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,055评论 5 355
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,756评论 3 343
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,146评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,410评论 1 281
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,072评论 3 386
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,485评论 2 370

推荐阅读更多精彩内容