深度学习哪家强?吴恩达、Udacity还是Fast.ai

诚朴求食 2017-08-21

深度学习哪家强?吴恩达、Udacity还是Fast.ai

翻译 | AI科技大本营(rgznai100)

参与 | reason_W

引言

过去2年,我一直积极专注于深度学习领域。我对深度学习的兴趣始于2015年初,那个时候Google刚刚开源Tensorflow。我根据Tensorflow的文档快速地尝试了几个例程,当时的感觉是深度学习并不简单。部分原因是因为深度学习的框架很新,也需要更好的硬件支持和耐心来摸索。

时间快进到2017年,我已经在深度学习的项目上花费了几百个小时。并且由于软件(易用性,例如Keras,PyTorch)、硬件(对于我这样在印度工作的人来说,尽管仍然不便宜,但GPU已经发展成了商业产品)、数据可用性、优质书籍以及MOOC的发展,这项技术正在变得越来越触手可及。

在完成了Fast.ai,deeplearning.ai /Coursera (不完全发布)和Udacity这三个深度学习领域最受欢迎的MOOC之后,相信写这样一篇博客,告诉你们能期望自己从这3门课程中学到什么,对以后的深度学习爱好者一定很有用。

Fast.ai:http://www.fast.ai/

deeplearning.ai /Coursera :https://www.deeplearning.ai/

Udacity:https://in.udacity.com/

在这篇文章中,我将从5个方面介绍每门课程,这将有助于你做出决定。

  1. 关于指导老师:每门课程都是由具有不同背景的人教授的。我相信这些经历对教学风格有很大的影响,所以我们将了解一下课程指导老师的背景。

  2. 关于课程:课程的高级概述。

  3. 亮点:课程中最精彩的部分。

  4. 局限:我对这个词非常苛刻。因为我知道所有这些课程都为了让学习内容变得更容易,付出过巨大而真诚的努力。我想把这一部分解释为,我们在课程中错过了什么。某些局限性可能是因为课程的设计带来的。

  5. 费用:参加课程产生的费用。

Fast.ai

我是在kddnudgets的一篇文章中发现的这门课程。当时是我第一次听说Jeremy Howard,于是我在维基百科搜索了他,印象非常深刻。于是我购买了这门由Jeremy和Rachel Thomas教授的MOOC。看完第一堂课,我就被他们的教学风格深深震撼了。

您将在几个小时内学到如何构建顶尖水准的图像分类器,这甚至连几美元的价格都不到。

Jeremy Howard:

https://medium.com/@jeremyphoward

https://en.wikipedia.org/wiki/Jeremy_Howard_%28entrepreneur%29

关于指导老师:

Jeremy的背景与通常的教授非常不同,他不是任何顶尖大学的博士生导师,也未曾就职于谷歌,百度,微软等顶级公司。他自学成才,是kaggle竞赛高手,企业家和Fast.ai的CEO,目前唯一的目标就是让深度学习不再神秘。 他的独特背景让这门课程变得与众不同,因为他教会了不同背景的人如何使用深度学习,而无需大量数据或计算能力。

关于课程:

课程分为2部分,每7周学完一个部分。

课程的第一部分讲授如何在计算机视觉和自然语言处理(NLP)领域使用深度学习。

第二部分讲授生成网络,GAN,序列模型等前沿研究工作,如何阅读研究论文,以及如何在深入学习领域保持领先的实用技巧。这些技巧正在以惊人的速度发展。

本课程教学风格独特。课程作者习惯于这种独特的方法。

我们不会让您在先了解有关速度,动量,分析等方面的信息之后,再去学习打板球(或任何游戏),最后在18点进场。相反,我们先带您先去现场,握着球或棒球棒,然后在实战中学习其他知识。

通过这种独特的方法,您将首先学习如何在云上部署工作站,安装软件,并使用深度学习快速构建解决方案。每周Jeremy会挑选一个新的问题,然后他教授你如何使用技术来提高模型的性能。他教的东西很实用,比如使用预卷积特征,伪标记和许多非常有用的技巧。到第一部分结束,您将能够使用深度学习在您工作的领域构建实用的应用程序。

课程的第二部分介绍了前沿研究,帮助您阅读,理解和实施生成式模型,图像分割和序列到序列模型的各种研究论文。您将学习构建一些有趣的项目,如风格转移,低分辨率图像到高分辨率图像,GAN,图像分割,翻译以及如何将深度学习应用于结构化数据。第二部分最重要的部分是建立自己的工作站。如果您对深度学习充满激情,并希望构建各种深度学习应用程序,这将非常有用。

亮点:

  1. 构建一流的计算机视觉或NLP系统的能力。

  2. 了解和使用为深度学习应用程序提供支持的现代主流架构。

  3. 当您的数据和计算能力有限时,如何快速应用DL的实用技巧。

  4. 一个庞大的社区,支持您在不同阶段学习和实施您的解决方案。

  5. 轻松使用3种流行的DL框架:Keras,TensorFlow,PyTorch。

  6. 在课程结束之后,您将不再为阅读研究论文,构建新项目而头痛。Fast.ai的博客以及整个社区都将为您提供支持。

局限:

  1. 由于本课程遵循自上而下的方法,您将非常依赖一个框架来对基础数学有一定的理解。如果您正在筹备一项工作或计划在该领域进行更多的研究,那么提高你理解DL中的数学知识的能力将很有帮助。

  2. 有些机构对证书很看重,他们认为这是你完成课程的证明。但我猜Jeremy认为我们都是成熟的孩子,所以没有提供任何形式的证书。 Jeremy和Rachel鼓励撰写博客,构建项目,在会议中进行讨论等活动,以实力来代替传统证书的证明作用。 我个人认为这是非常有用的。

费用:

MOOC本身没有相关费用。但是要上手实践这些项目,您最终需要在AWS上产生支出,或许您会选择自己配置机器,但这样做很贵。当然在家里有一个强大的工作站是非常有帮助的。

Deeplearning.ai

最近, Andrew Ng 在Twitter上发布了关于这门课程的消息。 从2014年初开始,我就一直在关注他,我正在参加他在Coursera上的一门课程,学习和机器学习有关的数学知识。 从工程背景出发,他的第一门课程非常有趣,同时也有点难度。2016年底的时候,吴先生从百度离职,不再担任百度的首席科学家,并于今年8月8日推出了一个新的深度学习专业化的课程。 我在今年晚些时候才想起来,因为我的时间之前一直被一些其他的项目所占据。 然后我从Fast.ai上 Arvind N的学生那里读到了一篇关于他如何在4天内完成所有3节课的博客以及他对fast.ai和deeplearning.ai的看法。

4天内完成所有3节课的博客

https://medium.com/towards-data-science/thoughts-after-taking-the-deeplearning-ai-courses-8568f132153

我想挑战自己,看是否我可以在不到4天内完成相同的事情。并且我成功了,在3天内完成了3门课程。

关于指导老师:

Andrew Ng是斯坦福大学教授,共同创办了Coursera,成立并领导了Google Brain的深度学习项目,并曾任百度首席科学家。课程反映了他在各种大规模问题上学习到的知识。

该课程帮助您了解深度学习所需的数学知识,并在课程2结束之后,学习如何从头开始构建深度学习算法的几个关键组件。

关于课程:

课程分为5节。截止到这篇博客发布(8月19日),已经发布了前3节课。 Andrew Ng在本门课中采用了自下而上的教学安排。在他早期的课程中,他选择octave进行编程作业,但这个课程他选择了python。

1. 在课程1中,他详细地介绍了深度学习中许多概念所需的数学和直观认识。他小心地对课程内容进行平衡,并教授数学知识,这是了解深度学习的基础所必需的。指定会话对通过编程的方式实践数学知识非常有帮助。所有的公式都已经提供好了,所以哪怕没有太多的数学知识,你也可以专注于实现它们。

2. 课程2涵盖了正则化,动量,批量归一化和dropout等许多技术,来提高DL模型的性能。这个课程的最好的部分就是使用python和numpy来实现所有的技术。

3. 在第3节课中,他介绍了他从多年的经验中学到的很多技巧和窍门。在第三部分课程结束时,他介绍了DL框架。课程3的作业是学习怎样使用TensorFlow。作业设计的非常明确。

4. 课程4是关于CNN的。课程发布后,我将更新此部分。

5. 课程5是关于RNN或序列数据的。一旦课程发布,我将更新该部分。

亮点:

1. 当你学完前3节课后,你的基础知识将非常强大。

2. 前3个课程采取了框架独立的方法。这能让你轻松使用任何框架。

3. 课程中包含了关于如何设计评估指标、如何分割数据集进行训练以及避免方差和偏差问题的实用技巧。

4. 当然,最好的一部分是案例研究,您可以在这里找到一个机会,来验证你已经理解了如何成功执行深度学习项目。

5. 所有的作业都是以jupyter notebook的形式提供的,并在Coursera服务器上运行,因此无需担心基础的框架。

6. 学完3节精彩的课后,仍有2节课值得期待。

7. 每周都有一个名为“深度学习英雄”的演讲。这是一个很好的来源,让我们了解深度学习背后的历史和灵感。

局限:

1. 对于一些全新的深度学习或机器学习项目,从头开始构建每一部分并了解其背后的数学原理,可能非常具有挑战性。

2. 由于课程遵循自下而上的方法,所以即使在第三节课结束后,您仍然很难在您的领域中使用DL来构建解决方案。

3. 由于提供了基础框架,所以您将不再学习如何管理自己的工作站。而且如果要使用很多技术,有能力在云端或家庭/办公室配置机器这一点非常重要。

4. 课程提供了许多示例代码,使得完成作业变的更容易。但是要真正掌握一个技能,还得不使用示例代码,将整个作业复现一遍,这是非常重要的。这可能谈不上是课程的局限性,但如果您想要充分利用它,这是非常重要的。

费用:

所有课程内容都是免费提供。但是我不知道这些作业是否也免费提供。如果你正在参加付费版本的课程,那么你最终每月花费大约367元或55 $。

Udacity上Siraj Raval深度学习纳米学位

我是Udacity的粉丝。他们在很多主题上都有非常好的课程。所以当今年初读到深度学习课程的公告时,我非常开心,并在第一批就进行了注册。

关于指导老师:

一部分课程来自Siraj Raval的视频,其余部分则来自Udacity。 我了解Siraj Raval是源于他在YouTube上的一些非常有趣的视频。他是一个多才多艺的人,通过将音乐和视频混合在一起,以充满趣味性的方式巧妙地提供教育视频。课程中还有一部分是由Andrew W.Trask和Ian Goodfellow教授。

Siraj Raval

https://medium.com/@siraj_raval

关于课程:

与其他2门课程不同,本课程不会采取非常明确的自下而上或自上而下的方式。课程分为5个部分,并附赠100美元的亚马逊Credit。它涵盖了很多深度学习技术,如CNN,RNN,GAN,自编码器。

亮点:

1. 在本课程的头几个星期,您将学习如何使用python构建神经网络,课程其余部分将集中使用TensorFlow。

2. 作为课程的一部分,对你提交的所有项目,Udacity都将提供个性化的项目批改。

3. 到课程结束的时候,您可以在所有项目中轻松使用TensorFlow。

4. 高质量的社区和论坛指导,他们随时准备为您提供帮助。

局限:

1. 课程提供了一些操作技巧,来告诉你如何最佳地部署深度学习 /获得出色的表现,但这没有作为课程的重点。

2. 一些项目太简单以至于难以在现实世界中应用。这些项目的数据集非常小。

3. 课程提供了示例,对复杂的DL应用程序构建过程进行简化。但是,如果您的学习目的是在现实世界进行实际使用,建议您自行构建项目,而不使用示例代码。

费用:

课程费用较高。没有提供免费版本。我参加课程的时候,有一个限量优惠,所以当时的成本约为2335元或350 $。

建议:

如果有人想从今天就开始[自学]深度学习,我会建议你先完成fast.ai,因为它的先决条件最低。接下来可以按顺序或并行地参加Coursera 深度学习专业化课程的学习。感谢所有为了深度学习的普及真诚的付出过努力的人。

相关推荐