昨天发了《如何通过自学一年进入人工智能行业》的短视频之后,很多同学都私聊我说也想要自学人工智能,问我能不能给推荐一些比较好的人工智能的学习材料。
作为一个曾经自学人工智能的先行者,我深刻的知道找不到好的学习材料的痛苦!
我从决定自学到找到第一个比较好的学习材料用了2个月的时间。这就像明明知道房间面有一个好东西,可就是找不到进入房间的门,白白浪费大量的时间,在门外干着急。
言归正传,Let’s go!
我们先明确一个概念,和以前每种人工智能算法都有各自独有的算法不同的是,这一轮人工智能浪潮中的各种人工智能算法底层都是用的同一种技术,即深度学习技术。也正因为底层技术都是深度学习,因此降低了从事人工智能行业的门槛,因为学会之后,可以用在各个领域,比如人脸识别,语音识别、机器翻译等等。
虽然不够严谨,但是本文以及以后的所有文章中凡是提到人工智能的地方,默认都是说的深度学习算法
自学人工智能需要学习四个方面的内容,分别是深度学习基础课程、编程语言、深度学习框架、以及数学基础。
深度学习的基础课程是最重要的。
通过学习这些基础课程,可以让我们掌握深度学习的各种基础模块,以及深度学习算法是如何通过基础模块搭建起各种不同的深度学习算法的。
深度学习的各个基础模块就像乐高积木一样,一个完整的深度学习算法就是将各个乐高积木用不同的组合方式拼出来的一个大模型。
深度学习的基础课程,我给大家推荐三个视频课程。
第一个是吴恩达的《机器学习基础课》
网址:http://weibo.ws/KsTbgW
这个就是我偶然间从同事那里听说的那个人工智能课程。在这个课程里吴恩达从传统的机器学习开始讲起,一直讲到深度学习算法,是一个讲述概念比较全面的课程,通过这个课程可以对人工智能有一个比较整体的把握。
第二个是台湾大学李宏毅的《深度学习基础课》
网址:http://weibo.ws/cyiYTQ
这个课程最大的优势就是,他是中文版的,学习起来难度会低不少。
第三个是斯坦福李菲菲的《人工智能基础课 》
网址:http://weibo.ws/uEuumS
这个课程专注于深度学习算法各种基础模块的讲解,可以对深度学习的各个基础概念进行深入的理解。另外这个课程主要讲解的是如何利用深度学习算法解决计算机视觉领域的问题,比如图像分类,图像检测等等。
在学习这些基础课程的时候,如果你对于某个概念理解不清,可以通过百度搜索相应的概念,网上有很多同学从不同角度进行的解释,说不定那篇文章就能让你豁然开朗。
你也可以扫描下面的二维码,加微信问我。

编程语言首选Python,因为Python对于多维数组,矩阵计算支持的非常好,而深度学习算法的计算过程就是各种多维矩阵计算组成的。
同时各个非常成熟的深度学习框架都有非常友好的Python语言接口,使用Python可以很方便的调用这些已经实现好的框架代码。
当然如果擅长C++的话那就更好了。
要想自学python的话,我推荐李骏老师的Python编程课,因为讲的真的好。
李骏曾经是沪江网的CTO,他是第一批从事软件开发的从业者,拥有20多年的软件开发设计经验,他的Python编程课会让你建立很好的编程思维,学习过后你就可以此为基础,进行更加深入的自学了。
深度学习框架:我推荐Pytorch。
Pytorch由Facebook人工智能研究院开源的框架,技术实力雄厚。
Pytorch的代码简洁清晰,短短几行就可以开发出牛逼的人工智能算法。
比如下图中的代码,只用了36行就实现了AlexNet这个深度学习模型。AlexNet就是在12年开启这一轮人工智能浪潮的那个算法。

另外一个原因是Pytorch是一个动态的框架,可以在运行过程中修改深度学习模型,这就给予开发者非常大的灵活性,而其他框架比如TensorFlow则是静态的,需要先定义好深度学习模型,在运行过程中不能进行修改。
深度学习会用到微积分的链式求导、矩阵向量计算和概率论的知识。
如果之前就对这些知识掌握的非常好,那么恭喜你,你在学习深度学习算法的时候会容易不少。
如果之前对这些知识掌握的不深,或者就没有接触过,那也没关系。在我给出的几个深度学习课程里都会对这些数学知识进行讲解,你只需要把课程里讲到的内容理解透彻就足够了,不需要单独买书去学习这些数学知识。
恭喜你学完这些内容,你也就可以从事人工智能算法开发了。
第一、研读之前已经发表的经典深度学习论文,深入掌握这些优秀的深度学习算法模型,理解作者的设计优化思路,以便于自己以后在需要的时候也可以用上。
第二、深入某个或某几个深度学习的领域,比如物体检测,视频理解、强化学习、对抗学习等等。研读之前已经发表以及最新发表的相关论文了,利用Pytorch实现论文中提出的深度学习算法或者在Github上找到其他人实现的代码,自己理解一遍代码,然后跑通,利用自己的数据训练深度学习模型。
第三、在工作中,按照业务需求对深度学习算法进行针对性的改进,比较好地实现业务需求。这是工作后成就感最足的部分。
第四、如果有时间的话,可以学习一下传统的深度学习算法,比如聚类、随机森林、决策树等等,可以从中汲取一些经典的算法设计思想。
我是陈雷,我希望通过努力,让更多的人能够从人工智能的发展中受益。
下面是我微信视频号的二维码,我会发布人工智能和个人成长相关的短视频,欢迎大家扫描关注。
code/s?__biz=MzAwMDAzNjk4Mg==&mid=2247484060&idx=1&sn=b3811a9e3063c657f33837f5d059bf92&chksm=9aee5b85ad99d2934d415e067d0f25ac69c88f407d8ccff802a00239c36a0fc73b60dc904396#rd