重磅|继吴恩达后,亚马逊AI主任科学家李沐上线“动手学深度学习”中文课程,全部免费!

2,925 阅读9分钟


讲真,这么多好课,都想学,怎么学得过来呢?好焦虑...

作者 | 周翔

编辑 | 鸽子

上周二(8 月29 日),网易云课堂与吴恩达的 Deeplearning.ai 宣布达成合作,后者的最新深度学习课程“Deep Learning Specialization”中文字幕版上线网易微课程,并永久免费,这对国内的开发者社区来说,绝对是一个重磅好消息。

AI科技大本营在全网进行首发后,留言区的评论一致夸赞“网易云课堂真乃业界良心”。

好消息不止于此。AI科技大本营再跟大家播报一个重磅好消息。

曾经的百度少帅、如今的亚马逊AI主任科学家、 MXNet 的作者李沐博士也开设了自己的深度学习课程。

今天(9 月 4 日),这位亚马逊AI主任科学家将给中文开发社区带来全新的深度学习课程《动手学深度学习》。


“动手学深度学习”课程

该课程将使用 Apache MXNet (incubating) 的最新 gluon 接口来演示如何从 0 开始实现深度学习的各个算法,利用 Jupyter notebook 将文档、代码、公式和图形统一在一起的优势,为开发者提供了一个交互式的学习体验。据此,目前并没有哪个项目能既覆盖全面深度学习,又提供交互式的可执行代码,该门课程则填补了这个空白。

哎呀,都是深度学习课程,都是大牛,到底怎么选呢?营长有选择恐惧症啊...

李沐表示,这个课程和吴恩达的课程还是有几个显著的区别滴,听听他怎么说:

  1. 我们不仅介绍深度学习模型,而且提供简单易懂的代码实现。我们不是通过幻灯片来讲解,而是通过解读代码,实际动手调参数和跑实验来学习。

  1. 我们使用中文。不管是教材,直播,还是论坛。(虽然在美国呆了5,6年了,事实上我仍然对一边听懂各式口音的英文一边理解内容很费力。)

  2. Andrew 课目前免费版只能看视频,而我们不仅仅直播教学,而且提供练习题,提供大家交流的论坛,并鼓励大家在 github 上参与到课程的改进中来。希望能与大家有更近距离的交互。

也就是说,这次的课程将以动手实操为主,不仅直播教学,而且还提供了“Deep Learning Specialization”在网易云课堂上不提供的练习题。据AI科技大本营了解,李沐将于每周六的上午 10 点在斗鱼进行课程直播,第一次直播时间为 9 月 9 日上午 10 点。此外,这次课程全程使用中文,进一步降低了学习门槛。

不过,这门课程目前还只是 0.1 版本,因此只有“预备知识”、“监督学习”、“神经网络”三个章节,此外,里面还有部分英文内容没有汉化。

课程内容

目前,“动手学深度学习”的每个教程主要是按照以下方式来组织(除了少数几个背景知识介绍教程外):

  1. 引入一个(或者少数几个)新概念

  1. 提供一个使用真实数据的完整样例

这个教程的最大特色在于,每个教程都是一个可以编辑和运行的 Jupyter notebook,而运行这些教程需要 Python、Jupyter 和其插件 notedown,以及最新版 MXNet,因此学习者首先要知道如何安装并使用这些程序。

不过,该课程在开始之前提供了详细的“安装和使用”教程,学习者按照步骤来操作就可以了。

以下是“动手学深度学习”课程 0.1 版的全部章节:

预备知识

监督学习

神经网络


那么,我们不禁想问,为什么李沐要开这门课?到底哪些人群最适合看这门课?为什么这门课的前后逻辑需要这样设计?我们从李沐的公开信中,找到了答案。或许,开课背后的思考,更值得我们学习。

附:李沐的公开信

两年前我们开始了MXNet这个项目,有一件事情一直困扰我们:每当MXNet发布新特性的时候,总会收到“做啥新东西,赶紧去更新文档”的留言。我们曾一度都很费解,文档明明很多啊,比我们以前所有做的项目都好。而且你看隔壁家轮子,都没文档,大家照样也不是用的很嗨。

后来有一天,Zack 问了这样一个问题:假设回到你刚开始学机器学习的时候,那么你需要什么样的文档?

我是大二开始接触机器学习。当时候并没有太多很好资料,抱着晦涩的翻译版《The Elements of Statistical Learning》读了大半年仍是懵懵懂懂。后来 08 年的时候又啃了好几个月《Pattern Recognition And Machine Learning》,被贝叶斯那一套绕得云里雾里。10 年去港科大的时候 James 问我,你最熟悉的模型是哪个?使劲想了想,竟然答不出来。

虽然在我认识的人里,好些人能够读一篇论文或者听一个报告后就能问出很好的问题,然后就基本弄懂了。但我在这个上笨很多。读过的论文就像喝过的水,第二天就不记得了。一定是需要静下心来,从头到尾实现一篇,跑上几个数据,调些参数,才能心安地觉得懂了。例如在港科大的两年读了很多论文,但现在反过来看,仍然记得可能就是那两个老老实实动手实现过写过论文的模型了。即使后来在机器学习这个方向又走了五年,学习任何新东西仍然是要靠动手。

几年前我开始学习深度学习,在MXNet这个项目里也帮助和目睹了很多小伙伴上手深度学习。我发现也有很多小伙伴跟我一样,动手去实现、去调参、去跑实验才会真正成为专家(或者合格的炼丹师)。虽然深度学习崛起前的年代,不写代码不跑实验可以做出很好的理论工作。但在深度学习领域,动手能力才是核心竞争力。例如就算我熟知卷积的三种写法,Relu 的十个变种,理解 BatchNorm 为什么能加速收敛,对 Imagenet 历届冠军的错误率随手拈来,能滔滔不绝说上几小时神经网络几度沉浮的恩怨史。但调不出参数,一切都是枉然。发论文被问你为啥跟 state-of-the-art 差老远,做产品被喷你这精度还不如我的便宜 100 倍的线性模型。

在过去一年我在 AWS 工作中,很大一部分是在帮助 Amazon 内部团队和云上的用户来了解深度学习,并将其应用到他们的产品中。在今年夏威夷的 CVPR 上,遇到很多老朋友,例如地平线的凯哥,今日头条的李磊,第四范式的文渊和雨强,也认识了很多新朋友,例如 Momenta 旭东和商汤俊杰。我说 MXNet 有了新 Gluon 前端,可以一次性解决产品和研究的需求。大家纷纷表示,好啊好啊,来我们这里讲讲吧。而且特别强调说,我们这里新人很多,最好能讲讲入门知识。

所以很自然的会想,我们能不能帮助更多人。于是我们想开设一些系列课程,从深度学习入门到最新最前沿的算法,从 0 开始通过交互式的代码来讲解每个算法和概念。希望通过这个让大家既能了解算法的细节,又能调得出参数。既赢得了竞赛,又做的出产品。

为此我们做了(正在做)这四件事情:

  1. Eric 和 Sheng 开发了 MXNet 的新前端 Gluon,详细可以参见 Eric 的这篇介绍。这个前端带来跟 Python 更一致的便利的编程环境,不管是debug还是在交互上,都比 TensorFlow 之类通过计算图编程的框架更适合学习深度学习。

  1. Zack, Alex, Aston 和很多小伙伴一起写了一系列的 notebook 来讲解各个模型。Zack 从一个外行(他是专业音乐人)和老师(CMU 计算机教授)的角度,从0开始讲解和实现各个算法。

  1. 我们同时将 notebook 翻译成中文,而且做了很多改进(我个人认为中文版质量更高),并建立中文社区 discuss.gluon.ai 方便大家来讨论和学习。

  2. 我们联合将门在斗鱼上直播一系列课程,深入讲解各个教程。

在我们准备这个的时候,Andrew Ng 也开设了深度学习课程。从课程单上看非常好,讲得特别细。而且 Andrew 讲东西一向特别清楚,所以这个课程必然是精品。但我们做的跟 Andrew 的主要有几个区别:

  • 我们不仅介绍深度学习模型,而且提供简单易懂的代码实现。我们不是通过幻灯片来讲解,而是通过解读代码,实际动手调参数和跑实验来学习。
  • 我们使用中文。不管是教材,直播,还是论坛。(虽然在美国呆了 5~6 年了,事实上我仍然对一边听懂各式口音的英文一边理解内容很费力。)
  • Andrew 课目前免费版只能看视频,而我们不仅仅直播教学,而且提供练习题,提供大家交流的论坛,并鼓励大家在 github 上参与到课程的改进中来。希望能与大家有更近距离的交互。

从大出发点上我们跟 Andrew 一致,希望能够帮助小伙伴们快速掌握深度学习。这一次技术上的创新可能会持续辐射技术圈数年,希望小伙伴们能更快更好的参与到这一次热潮来。

课程地址:http://zh.gluon.ai/index.html


作者:AI科技大本营(rgznai100)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。