作者:智亮,鲁朗软件联合创始人 
责编:胡永波 
本文为《程序员》原创文章,未经允许不得转载,更多精彩文章请订阅《程序员》

在计算机行业,关于从业人员的素质,一直都有一个朴素的认识——科班出身好过非科班,学历高的好过学历低的。大部分时候,这个看法是对的。在学校学习,有老师指点,有同学讨论,有考试压迫,有项目练手。即便不大用心的学生,几年耳濡目染下来,毕业后作为半个专业人士,还是没什么问题的。

不过,量子物理告诉我们,这个世界的本质要看概率。所以,科班出身的同学,在技术上好过非科班出身的同学,这是大概率事件;相反,非机器学习专业,甚至非计算机专业的同学,在这个领域做的比本专业同学更好,则就是小概率事件了。但小概率事件并非“不可能事件”,国内很多做机器学习公司的CTO,都不是机器学习专业的科班出身,却能够抓住这里的“小概率”,让自己华丽地转身并实现弯道超车。

他们是怎么做到的?

如果在上学的时候,我们没能嗅到机器学习领域的机会,而是选择其他领域来学习和工作……如今却打算半路出家、改行机器学习,应该怎么做,才能做到跟这些人一样好?或者,至少是足够好?

我自己痛苦转型的经历,说出来可以供大家参考一下。

我也是非科班出身,但因为工作,一直需要接触计算机视觉的一些传统算法。后来,看到ImageNet竞赛的结果,我意识到了深度学习在视觉领域的巨大优势,遂决定开始转型深度学习和神经网络,走上了这条学习的不归路(笑)。

想要转型,跟上学的时候不同,因为手头正在做的工作意味着,自己需要从没有时间的情况下挤出时间,需要把别人睡觉、打游戏的时间用来学习,而所学的又是一种颇为艰深晦涩的学问。

转型,其实很容易,需要做到的只有一件事:学习。

转型,其实很困难,因为必须做到一件事:坚持学习。

最难的不是下定决心,而是贯彻到底。所以,在开始之前,不妨先问问自己这样几个问题:

“我真的已经想清楚,要踏足这个行业吗?” 
“我能够付出比其他人更多的辛苦汗水,在这条路上坚定地走下去吗?” 
“在遭受了痛苦甚至打击之后,我对机器学习的热爱,仍然能够维持我继续前进吗?”

根据我掌握的数据,100个程序员里大概有30个考虑过转型,而真正付诸行动的不过10个。一个月以后仍然在坚持的仅有5个,最终能完成第一个阶段学习的,最多两三个而已。

真的这么困难吗?是的。特别是你要白天上班,晚上才能学习,独学而无友,有问题又只能自己查。而要系统地入门,又不是咬牙一天两天就能学出来,恐怕得坚持几个月才能get到点。

我个人的经历是这样:一开始接触时,每周一、三、五固定3天时间,每晚花两个小时去学习、看视频、翻书,周六周日则用来完成课程附带的编程作业,大概也是每天两小时左右。在这种强度下坚持了三个月,我才算是完成了入门的第一步。

也许有的人效率更高一些,也许有的人步子更慢一些,但快和慢不是关键,即使学习最慢的人,也要比一开始放弃学习的人走得更远。

所以,其实真正重要的,不是“我该学什么”,或者“我该怎么学”;而是“我是不是真的有足够的决心”,以及“我是不是能坚持到底”。

上手的课程

定好决心后,我们就能看看:在学机器学习的时候,我们到底在学什么?

几乎所有人都知道人工智能这个概念;有一部分人知道“机器学习”这个概念;其中一小部分人能清楚描述“深度学习”、“机器学习”和“神经网络”的关系; 很少一部分人能够正确说明“卷积”、“池化”、“CTC”这些名词的正确含义与计算/实现的方法;非常少的人能清楚地理解损失函数和反向传播的数学表达;极少极少的人能够阐述网络的一个修改(比如把卷积核改小)对precision/recall会产生什么影响;几乎没有人能描述上述影响到底是什么原理。

这就是目前“程序员”这个群体,对于机器学习的了解程度。

我个人的经验,适用于“很少一部分人”之外的那“很大一部分人”,也就是说,他们最多知道深度学习是什么意思,神经网络又是什么概念,却并未真正系统地学习接触过这个领域。

在这之前,你所要用到的数学知识,只有以下这三点:

  1. 懂得矩阵运算的基本计算方法,能够手动计算[3×4]×[4×3]的矩阵,并明白为什么会得到一个[3×3]的矩阵。
  2. 懂得导数的基本含义,明白为什么可以利用导数来计算梯度,并实现迭代优化。
  3. 能够计算基本的先验及后验概率。

编程语言与深度学习框架的选择

当然,作为开发者,想要去实现一个模型,绕不开的问题便是:

应该选择什么语言?应该选择什么框架?

对于开发人员而言,语言的选择其实不是问题。但作为入门,最为理所当然的建议则是Python,原因也非常简单:Python最好学。

对于机器学习的学习,使用Python就意味着你不必分心去学习那些复杂的数据类型约束以及转化、指针、内存管理或垃圾收集之类的“高级”(一般同时也代表着复杂)的特性,将精力集中在自己的目标上。当然,一些Python特有的方法(如lambda、yield或reduce)以及工具(如NumPy、pandas),还是需要多多使用,尽快熟练。

而框架方面,从使用者的维度去划分,当前数量非常之多的机器学习框架,则可大体上分为两大阵营。

学术友好型: Theano、Torch与Caffe

Caffe已算是最简单的了,但仍要经历漫长而痛苦的摸索历程。

工业友好型: Tensorflow、MXNet与Caffe

对于大多数有志于投身于机器学习开发(而非研究)的同学们来说,我推荐首选Tensorflow作为你的第一个开发框架。除了上述的优点之外,最主要的因素是它人气高。遇到任何问题,你都可以找到一群志同道合的伙伴们去咨询,或是一起研究。对于初学者而言,其重要程度不言而喻。

实战阶段的学习用机配置

接下来,我们就需要一台机器来把框架搭建起来,以编写和运行我们的helloAI。然而,我在很多地方都看到小伙伴们在问:

我需要什么样的配置能学机器学习? 
我需要买块GTX1080/TITAN/Tesla吗? 
我应该装几块显卡?一块?两块?还是四块?

而答案也往往倾向于:

“必须得有GPU啊,至少1080,没有四路Titan你都不好意思跟人打招呼!”

其实,并不完全是这样。

如果仅仅是入门和学习,CPU或GPU完全不影响你对代码和框架的学习。运行MNIST或CIFAR之类的玩具数据集,它们的差距并不大。以我的机器为例,运行自带的CIFAR demo,i7 CPU和GTX 1080 Ti的速度分别是770 pics/s和2200 pics/s。GPU大概有不到三倍的性能优势。所以,差距其实也没多大。

打好基础之后,跟踪论文并复现、学习和思考,这样的任务将成为你现阶段的一项日常作业,如果你已经进入或是决定进入这个行业的话。因为稍有懈怠,便要面临着被时代抛弃、跟不上节奏的情况。所以,到这一步,对于有些人来说是一个结束,而对另一些人来说,则才刚刚是开始。

这个时候,我们可以回过头来重新问问自己前面那几个问题:

“我真的已经想清楚,要踏足这个行业吗?” 
“我能够付出比其他人更多的辛苦汗水,在这条路上坚定地走下去吗?” 
“在遭受了痛苦甚至打击之后,我对机器学习的热爱,仍然能够维持我继续前进吗?”

这条路,我在走,很多人在走,那么,你来吗?


最后,再说一点题外话。

看到这里的各位,一定很希望自己的深度学习路上,能有这样一位具备成功转型经验的先行者来帮助自己趟坑。

智亮老师的想法也是一样的,为了让自身的实践经验能够转化成对大家真正有帮助的东西,他特地在CSDN学院开设了《人工智能工程师》实训班课程。

这是一项为期个月的趟坑实践,目的是通过全程的实战案例学习,能直接让你从AI小白晋级为具备一年实践经验的人工智能工程师。

仅需30秒,测试自己是否适合学习AI + 智亮老师的AI实训营地址:

https://edu.csdn.net/topic/ai20?utm_source=blog08

学成之日,还会有来自AI产业界的专业讲师来做就业指导,就业推荐。

欢迎踏上这趟人工智能工程师的直通车,成功转型的经验正在向你招手。

人工智能实训营地址

:https://edu.csdn.net/topic/ai20?utm_source=blog08

这是一个转型AI的励志故事,从非科班到拿下竞赛一等奖相关推荐

  1. 实战 | 这是一个转型AI的励志故事,从非科班到拿下阿里云栖一等奖,他经历的坑足够你学习100天

    作者 | 智亮 编辑 | 胡永波 深度学习正在从实验室下沉到技术一线."年薪百万"的人才需求背后,是各用人团队找不出可用之才的窘境,同时也说明广大有志于AI的人才没能迅速掌握深度学 ...

  2. 一个程序员转型 AI 工程师的故事

    [编者按]每天的新闻千千万,天天追热点的笔者累了,今天笔者只想讲故事,故事的主人公是田松君.他是计算机专业研究生毕业,工龄 8 年. 十年前,计算机专业是当时的高薪职业,圈内一直流转有"程序 ...

  3. 送你一个励志故事—掌握这些你也可能拿到腾讯offer

    作者:守望者1028来源:牛客网 终于有时间来回馈牛客了,接下来将继续我的学习历程(keep learning).我的秋招故事很长很长,期间无穷多的心酸与苦难,当然也不乏兴奋与惊喜. 写在这里,是对自 ...

  4. 送你一个励志故事——涵盖20多所互联网公司的校招C++面经

    作者:守望者1028 链接:https://www.nowcoder.com/discuss/55353 来源:牛客网 终于有时间来回馈牛客了,接下来将继续我的学习历程(keep learning). ...

  5. 佳都科技要讲一个“AI+交通”的故事,资本市场愿意买单么?

    数据智能产业创新服务媒体 --聚焦数智 · 改变商业 在提供人工智能服务的企业当中,佳都科技算是上市较早的,其1999年就在上海证券交易所A股主板上市(股票代码:600728).佳都科技创立于1992 ...

  6. [ChneChen的文字]盘点2015,来一个最励志故事

    在15年即将离去之际,写一些文字,记录并追忆这一年的日子. 题记:其实我一直觉得自己比较适合做一名教师,而不是现在的市场监督管理员,因为我更擅长于讲故事,而通过讲故事讲道理的方式,传道授业解惑的过程会 ...

  7. 送你一个励志故事(转载)

    转载 MARK一下 作者:守望者1028 链接:https://www.nowcoder.com/discuss/55353 来源:牛客网 本面试主要分成三块内容: 第一部分:知识水平的提升方法与面试 ...

  8. 马上 2018 年了,该不该下定决心转型AI呢?

    本文授权转自知乎 如此火爆的AI,会不会像Android和iOS一样,五年后归于平淡?转型AI真的有必要吗? 2017年,AI就像一个点石成金的神器,所有的行业,任何的创业,抑或是职位背景,只要沾着这 ...

  9. 年薪翻倍的100篇面经:如何转型AI拿到阿里等大厂的40万offer

    前言 熟悉我的朋友可能已经知道,我个人从 2010 年开始在CSDN写博客,写了十年,如今接近1700万PV,创业做「七月在线」则已五年,五年已30多万学员.这五年经历且看过很多的人和事,比如我们的机 ...

  10. 从流水线工人,到谷歌上班的程序媛,一位湖南娄底妹子的励志故事...

    热文导读|   点击标题阅读 互联网寒冬下,程序员如何突围提升自己? Android中高级面试题准备整理分享(含答案) Android内存泄漏检测和定位 综合整理:程序员的那些事(id:iProgra ...

最新文章

  1. 5款没有专利纠葛的Linux发行版
  2. python截图保存到内存卡_Python画月饼,云上过中秋,天池Python入门案例系列赛开启...
  3. Git 常用命令(二)
  4. 各个 Android Gradle 插件版本所需的 Gradle 版本
  5. 使用Camel在Amazon上构建分布式工作流应用程序
  6. matlab字符串固定长度,限制Matlab用户界面编辑框中的字符串长度
  7. 2 PP配置-一般设置-为工厂分配工厂日历
  8. 思维导图软件下载与安装 记录xmind安装过程
  9. 【ElasticSearch】 ElasticSearch 写入流程
  10. jdbctemplate 执行多条sql_白帽推荐:可以自动检索、挖掘sql注入的神器,sqlmap入门实战
  11. error while loading shared libraries: libconfig.so.8
  12. android+动态隐藏图标,2018安卓手机怎么隐藏图标 进入隐藏应用界面
  13. utc时间怎么转换北京时间?
  14. Android应用开发之PNG、IconFont、SVG图标资源优化详解
  15. 和小鲜肉相比,老程序员该由哪些优势?同时说下我看到的老程序员的三窟
  16. 美团拼多多挑起社区团购新战事,谁能“见血封喉”?
  17. 2020计算机考研扩招,官|东北石油大学计算机学院2020研究生调剂·增额扩招
  18. ubuntu安装mysql-python报错
  19. 基于微信小程序的订水送水系统设计与实现毕业设计毕设开题报告
  20. Eyou内核开发木质装饰材料建材公司网站模板源码

热门文章

  1. matlab脉宽调制pwm,脉宽调制matlab仿真
  2. android设置ip地址连接网络打印机,如何使用IP地址的方式连接网络打印机
  3. Hyperledger Fabric 1.0 公有云安装7--集群部署记录
  4. 求x的n次方编程_C++编程X的N次方程序
  5. 怎么在图片上加水印?
  6. 抖音短视频如何快速制作?抖音怎么赚钱?
  7. windows 7 官方旗舰版
  8. 方程思想应用于化学方程式配平
  9. echart获取geoJson格式世界各国地图的资源,世界地图,世界各国分区显示,精确到乡镇一级资源
  10. C++ 排列组合问题