2017.12.15 15:28*
万事开头难,在接触到新鲜事物时,往往会因为一些已有的经验,而影响我们对其的了解和判断。
同学们,晚上好。
今天我们来探讨一个看似不难,实则很难的问题:普通程序员如何一步步走向人工智能?
班主任访谈了十几位成功从程序员过渡到人工智能的童鞋,大概总结了一套【晋级方法】,仅供大家参考~
1、重新拾起数学和英语
在正式进入人工智能学习之前,建议同学们重新拾起数学和英语。数学主要复习微积分和线性代数,英语主要以一些专业词汇为主,免得后面看论文资料的时候很吃力。
复习微积分还是推荐那本经典教材---《普林斯顿微积分读本》,吃透这本书会对你以后学习Machine Learning 很有帮助。
复习线性代数推荐麻省理工的公开课,大家可以去搜集视频课程。
2、了解下人工智能领域
在决定真正进入某个领域之前,应该先对这个领域的做个大致的了解,比如这个领域的发展方向?这些技术能解决什么?
这个领域有哪些分支,哪些是我真正感兴趣的?
人工智能是一门非常广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,如果盲目开始进行所谓的学习,可能越往深处研究越容易失去方向。
3、入门机器学习
机器学习是一种实现人工智能的方法,一度被很多人称为是现在人工智能的核心。
入门机器学习除了需要观看大量的学习课程之外,还需要一定的编程基础,Python / matlab这样的语言技能栈必不可少,其中Python需要关注一下爬虫,数据可视化等方面的应用。
入门课程首推Andrew Ng的机器学习课程(Machine Learning | Coursera),难度适中,而且完全免费。
配合吴恩达教授的教学视频推荐2本基础书籍,一本是《Python 机器学习》,另一本是《机器学习导论》。
4、结合工作简单做一些项目
学习了一段时间的机器学习之后,咱们的程序员同学可以开始做一些简单的项目。在文本识别,图像识别,音频识别这三个基础应用方向,大家可以随意选择一个。
这三个基础应用方向的开源项目都很多,选择计算机视觉(图像识别)的同学,可以下载OpenCv(开源计算机视觉库),它是一个非常强大的学习资料库,包括了计算机视觉,模式识别,图像处理等许多基本算法。
它免费提供给学术和商业用途,有C++,C,Python和java接口,支持Windows、Linux、Mac OS、iOS和Android。
5、研究深度学习
同学们学习到这一步,基本已经过了初级阶段,深度学习是机器学习中一种基于对数据进行表征学习的方法,也是目前研究最火热的方向之一。
深度学习其实要学习的知识很多,因为它很杂,也很零散,但好在经过前面系统的学习,基本的知识结构框架已经有了。
大家可以根据自身掌握的程序,选择性的进行一些补充,班主任推荐2个在线学习的教程:Neural Nerworks for Machine Learning;Recurrent Neural Networks.
6、继续做一些开源项目
按部就班了解并研究了深度学习之后,同学们的知识储备系统应当时比较完善了,这时候需要再去找一些开源项目来实践一下,深度学习的优秀开源库有很多,比如谷歌的TensorFlow。
同学们一定要避免尽量避免走入一个误区,知识储备是为了更好的实践,如果一直不找项目来练手,储备再多知识,也没有实际的意义。
好啦~今晚的分享就到这里啦!说一百遍不如同学们亲自练习一遍,作为不那么话唠的班主任,还是想告诉下大家,方向已经明了,路要自己走。