太好了,我们开始吧。大家好,欢迎来到CS 839深度学习专题课程。很高兴见到大家,非常感谢你们对这门课的热情。我希望大家都度过了一个美好的暑假,并为新学期充满了电。我知道新冠疫情让每个人的处境都非常艰难,特别是对于学生们来说。希望我们的课堂情况不会如此糟糕,我相信无论你们此刻身在何处,都能学到很多东西。

第一堂课主要是给大家提供一个关于这门课程的整体概览:它讲什么,以及我们如何开展教学。首先,我会介绍一些关于课程后勤的重要信息;其次,我将简要概述我们将要一起探索的一些研究主题及其有趣之处。如果时间允许,最后我们可能还会留出一些时间进行自我介绍,让大家互相认识一下。

首先,我来谈谈课程安排。顺便提一句,在这堂课的任何时候,请随时举手提问。你可以使用屏幕底部的“举手”按钮。如果任何时刻音频不清楚,也请随时举手示意我。我想先做一个简短的个人介绍,因为我认为我的背景和经历有助于大家理解课程大纲的形成逻辑。

我在康奈尔大学攻读博士学位,并于2017年毕业。之后我进入业界,在Facebook AI工作了大约两年。在那段有趣的经历后,我决定回到学术界,并在斯坦福大学担任了一年博士后研究员。我分享这些是因为我认为我在业界和学术界的经历塑造了我的研究观点,当然也影响了这门课的设计。

事实上,本课程涵盖的许多主题不仅从基础理论角度看很有趣,而且具有实际意义和相关性。我个人非常欣赏这种双重视角的思维方式,我认为我的职业生涯极大地受益于这种思维模式。我也希望将这种心态带入这门课程中。

这是我的联系方式。我强烈建议使用Piazza论坛提问,因为助教和我会积极查看论坛并回答你的问题。如果有更多针对我个人的事务,你可以发送邮件至cs.whisk.edu(Sharon Lee),请务必在邮件主题中包含“CS 839”,以便我轻松管理。

好的,假设大家都清楚了,让我进入主题概览部分。我想向大家展示本学期我们将一起探索的各个独立主题,以及我认为它们有趣的原因。总共列出了七个不同的主题或方向。对于每个话题,我们将结合讲座和论文展示两种形式进行讲解。

通常我会先提供概述,介绍该主题以及不同研究片段如何相互关联;随后会有几次论文展示环节(大家今天报名)。展示的目的是深入研读单篇论文。希望通过这种结构,你能获得每个主题的广度知识和深度理解。

第一个主题是神经网络架构的演进。回顾深度学习历史,我认为神经网络架构的演变是其中不可或缺的一部分。例如,十年前,如果你只想通过查看照片来区分猫和狗并编写计算机程序,我们只能做到相当低的准确率。而在过去几年里,研究社区通过使用深度神经网络取得了巨大进展。

我相信这也是吸引你选修这门课的原因。例如,我们看到了越来越好的模型架构设计,随着时间的推移提高了分类准确率。如今正是这些技术 powering 你手机上的图像识别功能,也是在线使用Google翻译背后的动力。我们日常依赖的许多实用工具都由这些深度神经网络驱动。

在下一堂课中,我会更详细地展示这些网络是如何构建的,以及它们如何从一个演变到另一个。例如,LeNet被认为是第一个卷积神经网络;2012年发布的AlexNet在ImageNet竞赛中取得了突破;ResNet被视为深度方面的突破,使我们能够训练拥有数百层网络的神经网络。

最后一个例子是DenseNet,由我在康奈尔大学的同事开发,两年前获得了CVPR最佳论文奖。我们将在下周第一次的论文展示环节中专门安排一个环节来讨论这篇论文,对此我非常兴奋。

如果观察所有这些神经网络架构,它们的共同点是它们都是由人类专家手动设计的。这可能需要数年的试错才能成功,并且必须将正确的洞察力构建到这些网络中。例如,LeNet发明于1988年,AlexNet大约在2012年发布。在这两者之间有四年的间隔,随后又花了三年时间才推出残差网络(ResNet)。

这个过程有时可能很慢,这也催生了AutoML这一领域。研究人员,特别是谷歌的团队,一直在大力投入这个方向,目标是取代人类专家的角色,让机器进行搜索。基本上,后台运行的算法是在巨大的神经网络配置空间中搜索并返回最优解。

在第二个论文展示环节中,我们将有一篇专门关于自动神经网络架构搜索的论文,这将非常令人兴奋。接下来我们看第二个主题:可信赖深度学习。我将涵盖其下的三个子话题,第一个是分布外可靠性(out-of-distribution reliability),我的实验室一直在……

聚焦这一主题,我个人对这些话题感到非常兴奋。因此,我想通过以下场景来阐述这个问题:想象一下,你希望开发一款手机应用,能够自动识别拍摄的食物照片。这样,该应用可能会向你展示一些营养信息,以及用这些食材可能制作的食谱。这在疫情期间尤其实用,特别是对于像我这样在烹饪方面苦苦挣扎的人来说。

为此,你需要收集一些训练数据,并在你喜欢的神经网络架构上进行训练。最终你会得到一个食物图像分类器。你以为工作结束了吗?不,更多的工作才刚刚开始。为什么这么说呢?因为在封闭世界(closed world)的设定中,你设想在现实世界中部署这款应用并上架到应用商店时,你会期望用户拍摄的照片与你的训练数据相似。在这种封闭世界设定下,我们假设训练数据和测试数据的分布是一致的。

然而,现实情况更接近于开放世界(open world)设定,训练数据和测试数据的分布很可能存在差异。因此,现实世界中的数据可能是任何东西,超出你的预期。这是我从业经历中学到的最重要的一课之一。例如,你可能会收到一张鸟的照片输入到你的食物图像分类器中。在这种情况下,理想的做法是识别出该输入有些奇怪。你的网络应该将此图像标记为异常值或分布外(out-of-distribution)数据,而不是将其分类为你的食物类别之一。

这种分布外可靠性问题在安全关键型应用中尤为重要,例如从普通肺炎胸部X光片中识别COVID-19,或在自动驾驶中识别街道上的意外物体,以便模型能提前采取应对措施。因此这在那些场景中非常有用。第二个子话题是对抗鲁棒性(adversarial robustness),这也是近期研究界备受关注的领域。举个例子,这里有一张输入图像,神经网络将其预测为熊猫。

Ian Goodfellow等人的一项研究发现,有可能向你的输入图像中添加微小的人眼不可察觉的噪声扰动。然后你可以实际调整、操纵神经网络做出的预测,使其变成完全荒谬且与熊猫无关的东西。例如,经过噪声扰动后,这张图被预测为长臂猿(gibbon)。这在部署这些机器学习模型时非常令人担忧,特别是当它们对某些噪声扰动缺乏鲁棒性时。我们将讨论现有的防御机制如何实现这种鲁棒性,特别是在安全关键型应用中。

第三个子话题是公平性与群体鲁棒性(fairness and group robustness)。如今,公平性问题也变得越来越重要。首先你要问的问题是:为什么我们要关心公平性?主要的动机是因为这与我们自身的利益高度相关。例如,雇主现在使用机器学习系统来选择求职者。你不想在选拔过程中受到不公平的对待,对吧?人工智能变得非常强大,但也可能被错误使用。

因为机器学习模型严重依赖数据,而我们训练的模型是“客观”的——即人类如何教导模型。如果我们用来训练模型的数据本身存在偏见,那么模型最终会继承这些偏见信号。在这个例子中,假设你想使用人脸图像训练一个头发颜色预测模型。结果发现你的训练数据中存在大量隐含的关联:女性常与金发属性相关联,而男性则常与黑发相关联。

因此,机器基本上会学习到标签(头发颜色)与性别之间的相关性。如果你用这种罕见的关联——即金发男性来测试这个模型,它可能会在这些罕见示例上表现出较低的准确率。这是非常不可取的。我们将讨论如何设计更公平的机器学习算法来缓解这些问题。第三个主题是可解释深度学习,这真的很有趣,因为你可以看到很多酷炫的可视化效果。

我想邀请你观看这幅XKCD漫画。可能很多人以前见过它。这个人问:“这是你的机器学习系统吗?”另一个人回答:“是的,你把数据倒入这一大堆线性代数中,然后在另一端收集答案。”接着这个人问:“如果答案是错的怎么办?”那个人回答说:“不停地搅拌这堆东西,直到它看起来正确为止。”

显然,这并不是对科学过程的真实反映。为了给你一个关于可解释性重要性的宏观视角:在最底层,我们观察这个世界;然后基于一些观测结果,从现实世界推导并收集数据;接着用你收集的数据训练一个黑盒模型。一旦模型训练完成,我们希望提取一些可解释性信息,特别是向人类传达机器学习模型为何做出某些预测。

这充当了一种接口,架起了沟通的桥梁——连接人类与黑盒模型之间的沟通,这一点非常重要且关键。思考可解释性在深度学习中为何重要的另一个方面是从“是什么”与“为什么”的权衡角度来看。我记得两年前参加了一个欧洲研讨会,当时有一个非常有趣的辩论环节,颜龙泉(Yan Luquan)和我的共同导师Weinberger都在小组讨论中。

他们辩论了在深度网络设置下可解释性是否重要。我认为看待这个问题的一种有趣方式是:这真的取决于具体情况。在预测建模中,你必须做出权衡:你只是关心“什么”被预测出来吗?例如,当Netflix在推荐电影时……

向所有用户推荐内容时,你可能只关心应该给用户推荐什么电影,而不那么在意为什么做出这些推荐。但在其他场景下,“为什么”可能很重要。也许你想深入了解问题、数据以及学习过程背后的推理逻辑。因此,可解释性至关重要的一个关键场景是医疗保健领域。例如,当你训练分类器预测患者是否患癌时,在向医生传达这一预测结果时,医生们会很好奇并提问:这个机器学习模型是如何得出该预测的?

我认为这在很大程度上取决于具体的场合和任务。我们将在学期稍后深入探讨这些技术。本课程将展示的一篇论文是 GradCAM,这是一种非常流行且广泛使用的可视化技术,用于显示图像中与最终预测相关的部分。例如,原图中有一只狗和一只猫坐在一起。当机器对“猫”做出预测时,该技术能够高亮并可视化相关区域,直观地展示猫的实际位置。

底部一行展示了针对“狗”预测的可视化结果。你可以看到,与单纯的最终预测相比,它们提供了更细粒度的信息,说明了标签是如何得出的。我们要探索的第四个主题是深度学习泛化理论。特别是对于那些对理论方面更感兴趣的同学,在经典机器学习理论的视角下存在一个谜团:随着模型复杂度和容量的增加,模型更有可能进入过拟合状态。

这是经典学习理论中的 U 型曲线。然而,在当今使用的许多深度网络中,模型容量过大(over-capacitated)。例如,残差网络可能有数亿个参数。但突然之间,它们并没有对当前任务过拟合。在一些展示中,我们试图解开这个谜团:尽管深度网络参数过剩,为何仍能在这些学习任务中很好地泛化。

第五个主题是在较少监督下的学习,我认为这也是该社区正在兴起的重要领域。如果我们观察整个监督程度谱系,许多论文都集中在完全监督的模式上。例如,你们可能听说过 ImageNet,它拥有超过一百万张图像且完全标注。每张图像本质上都由人工标注员处理,从一千个不同类别中标记标签。

构建这样的数据集需要数十万个人工小时的工作,这当然很有价值。但整个标注过程成本过高,难以承担。因此,研究界在弱监督学习方面做出了努力,试图将这一过程推向中间地带。例如,我在 Facebook 的一些工作致力于如何利用互联网上公开可用的数据。

用户在 Instagram 等平台上可能会为某些图片提供标签(hashtag)。这些标签并不完美,可能包含噪声。它们也可能存在缺失标签的问题。例如,给定一张猫和狗的图片,用户可能只提供“猫”的标签而遗漏了“狗”。尽管这些数据集中存在大量固有噪声,但我们发表在 ECCV 上的一篇论文显示,模型能够学习到令人惊讶的高度可泛化特征。

如果我们使用在 Instagram 上预训练的神经网络作为初始化,并在 ImageNet 等基准测试上进行微调,它能使 Top-1 准确率降低多达两个百分点,这是一个非常显著的差异。这为解决数据稀缺问题前景广阔,但最终世界必须朝着自监督学习或无监督学习的方向发展。

理想情况下,模型应该能够直接摄取野外图像,而不依赖人工标注的监督,仅利用背后的模式自行学习。这种想法更接近人工智能的真正含义。我们将安排一个论文展示环节,主题涵盖自监督和未监督学习,具体聚焦于终身学习。

这个想法非常吸引人:我们希望机器能通过经验不断改善,随时间推移变得更聪明。例如,想象一辆自动驾驶汽车在路上行驶,它可能会遇到新的路况和不同的物体等。理想情况下,这辆自动驾驶汽车应能适应不同的条件和环境,并随时间推移变得更加准确。

这也与我们之前提到的开放世界学习理念相契合。更现实的设定是,机器学习模型将被部署在不断变化和持续演进的环境中,而不是静态的。因此,“封闭世界”设定下训练数据和测试数据相互匹配的观念在许多现实场景中不再成立,而终身学习正好契合这一问题设定。

我们将探讨一些相关主题。最后,我知道有些同学——根据调查结果看到你们对此很兴奋——对深度生成模型非常感兴趣,这确实令人着迷。这里有一个可视化图表展示了过去 4.5 年中生成人脸图像这一领域的发展进程。

回顾过去,我想中间那张图片是我还在读研究生时拍摄的。那时,我对 GAN 生成的一些人脸图像已经感到相当惊叹。几年后,看到图片变得更加清晰、分辨率更高且非常逼真。如果你访问 whichfaceisreal.com 网站,可以看到许多由深度学习模型合成的面孔,但它们实际上并不存在。

这些模型在现实世界中确实存在,对吧?我觉得这非常迷人。除了合成人脸之外,深度神经网络这些生成模型也非常强大。例如风格迁移。你可以拿一张照片,然后应用一些你喜欢的艺术风格,最终得到非常酷炫、有格调的照片。我们也会探讨其中的一些技术。

所以,关于主题概述部分我基本上就讲到这里了。我不会用过多的技术细节让大家感到 overwhelmed(难以承受),因为我们还有整整一个学期的时间来学习这些内容。让我看看时间进度如何,看起来我们还有15分钟。