返回 播客 学习 audios

吴恩达谈深度学习趋势、端到端学习与机器学习项目工作流程

吴恩达在研讨会演讲中分享深度学习两大趋势:规模与端到端学习,并详细讲解偏差方差分析、训练/开发/测试集划分等实用工作流程。他还给出职业发展建议,强调读论文、复现结果和坚持周末学习的重要性。

深度学习端到端学习机器学习工作流程职业发展
成长分 / 100 71 综合收获、行动、留存与影响

为什么值得读吴恩达在研讨会演讲中分享深度学习两大趋势:规模与端到端学习,并详细讲解偏差方差分析、训练/开发/测试集划分等实用工作流程

他还给出职业发展建议,强调读论文、复现结果和坚持周末学习的重要性

关键洞察
  1. 这条内容的价值在于把外部信息转化为可执行的判断和行动。
转成行动

Lex Fridman · 中文播客

查看原视频 ↗

节目文字稿

中文播客全文

Podcast Script (zh)

[0.120-11.546] SPEAKER_00: 当初办这研讨会,合办人一开始要求 让我第一天结束时做个展望演讲。几小时前 我的演讲还被宣传为展望演讲。但我 过去几天一直在准备这次演讲。我想

[11.626-21.868] SPEAKER_00: 什么对你们最有用,以及哪些 你们周一能带回工作并做出改变的事情 下周一工作。在当前背景下, 像Peter说的,我负责百度AI团队,大概有1000人

[21.948-32.129] SPEAKER_00: 做视觉、语音、NLP,还有应用和机器学习 所以我想到,与其采用 我见过最闪亮的深度学习成果,不如提取 百度里看到的,在众多不同

[32.209-45.760] SPEAKER_00: 学术和应用中常见的经验,比如 广告、搜索、医学诊断, 并提取我发现共通的经验教训, 那些简单而强大的想法, 帮助推动百度在机器学习上的进步。 我想和你们分享这些想法,

[45.840-53.804] SPEAKER_00: 因为我在很多项目中看到的模式, 我觉得可能正是这些模式。 这对你最有帮助, 不管你做什么 接下来几周或几个月内。

[53.884-69.606] SPEAKER_00: 所以,会有一个常见主题 在今天演讲中 是组织机器学习项目的工作流程 感觉有些部分在改变 在深度学习时代。 比如,我要讨论的一个观点 是偏差与方差,一个很古老的概念,对吧? 然后,你们很多人

[69.686-84.769] SPEAKER_00: 可能你们都听过偏差和方差, 但在深度学习时代, 我觉得有些变化 在我们思考偏差方差的方式上。 所以我想聊其中一些观点 这些甚至可能不是深度学习本身, 但一直在慢慢转变 随着我们把深度学习 用到越来越多的应用中,好吗?

[84.849-95.985] SPEAKER_00: 哦,有问题别都留到最后。 如果你中途有疑问, 也可以随时举手提问。 我很乐意中途答疑。 这次是非正式的白板讲座,对吧? 哦,另外,跟在家观众打个招呼。 嗨,好的。

[96.065-107.886] SPEAKER_00: 有个问题我偶尔还会被问到, 就是安德烈之前也提过。 深度学习很多基本思想 已经存在几十年了。 那为什么现在才起飞呢,对吧? 为什么深度学习, 这些几十年前就有的神经网络,

[107.966-118.638] SPEAKER_00: 现在表现这么好? 我觉得深度学习最大的趋势 是规模,规模推动了进步。 而且安德烈提到数据规模 和计算规模, 我画张图说明这个概念。 再多一点点,对吧?

[118.718-127.262] SPEAKER_00: 所以我画个图, 水平轴上, 我画数据量,针对某个问题。 纵轴上, 我们画性能,对吧? x轴是垃圾邮件数据量, y轴是分类准确度。

[127.342-132.485] SPEAKER_00: 然后如果用, 传统学习算法,对吧? 性能往往慢慢趋于平稳。 旧一代学习算法,

[132.565-145.547] SPEAKER_00: 包括支持向量机和逻辑回归, 支持向量机不会处理所有数据。 而在过去大约20年里, 也许过去十年, 随着互联网兴起, 移动设备和物联网兴起, 社会沿着曲线向右移动,对吧?

[145.627-156.299] SPEAKER_00: 对对对,很多问题,不是所有。 在深度学习的各种热潮炒作中, 我觉得最重要的原因, 深度学习效果这么好,是因为如果你训练, 我管它叫小型神经网络,

[156.379-160.082] SPEAKER_00: 性能可能只提升一点点。 如果你训练一个中型神经网络,

[160.162-173.144] SPEAKER_00: 也许性能会更好。 只有训练大型神经网络时, 你才能训练出一个有能力的, 吸收所有我们没法访问的数据, 这才让你得到最佳性能。 所以我觉得这是现在的趋势,

[173.444-175.940] SPEAKER_02: 在很多垂直领域和应用场景里。

[176.240-187.736] SPEAKER_00: 几点评论吧。 第一,这个,你知道, 我画这张图时,有人问我, 是不是小神经网络总比传统算法好? 其实不是。 技术上,如果你看小数据场景, 看图的最左边,

[187.816-199.509] SPEAKER_00: 算法顺序其实没那么明确。 这要看谁更有动力设计特征,对吧? 所以,假如说,你知道, 搞SVM的人更愿花时间设计特征。 他们可能会击败, 那个神经网络应用。 但当你没太多数据时,

[199.589-210.679] SPEAKER_00: 很多算法知识靠手工设计,对吧? 但这个趋势在机制中更明显。 大数据时,手工特征不够, 而大型的, 网络加大量数据往往更优。 所以,有几点评论。

[210.759-219.454] SPEAKER_00: 这个图表是说,要最佳性能, 要达到目标,需要两样东西,对吧? 一是训练一个很大神经网络。 一个比较合理的大网络。 还需要大量数据。

[219.534-227.393] SPEAKER_00: 这就反过来带来大网络压力,对吧? 也要搭建大型网络。 我们需要大量数据。 另一个有趣趋势是, 我们发现构建很有意义。

[227.473-239.782] SPEAKER_00: 一个AI团队和一个系统团队。 让两个团队相邻。 我这么说是因为,我们看看。 当我们开始时, 通过研究,我们这样组了团队。 其他团队也这样安排。 彼得提过,OpenAI有系统团队和机器学习团队。

[239.862-255.329] SPEAKER_00: 我们这样组织团队的原因是, 我想是, 我们做的一些计算机系统工作,对吧? 我们有一个HPC团队。 高性能计算团队。 百度的超级计算团队。 HPC中一些极专业的知识是 AI研究员很难学会,对吧? 有些人非常聪明。

[255.409-265.451] SPEAKER_00: 也许Jeff Dean聪明到学一切。 但一个人要在HPC和机器学习都专业 机器学习方面要够专业 所以我们发现,Shubo 他是我们HPC团队的共同组织者

[265.531-276.261] SPEAKER_00: 我们发现从多个来源引进人才知识 多个社区帮我们获得最佳性能 其中一个,你已听到很多演讲 今天听到了很多精彩演讲 我想再画一幅图,在我脑中

[276.341-288.348] SPEAKER_00: 这就是我心理分类深度学习的工作 所以这可能是个有用分类 当你回顾这次演讲时 你就能把演讲放进我刚画的分类 但我觉得很多工作是关于 我称之为 通用DL或通用模型 这基本上就是

[288.428-297.170] SPEAKER_00: Hugo LaRochelle今早说的那种模型 在那里你有 非常密集连接的层,对吧 嗯,FC那里有一大堆模型。 嗯,第二类是序列模型。

[297.250-307.582] SPEAKER_00: 所以,一维序列。 这里我归了很多RNN的工作。 呃,LSTM、GRU这些。 还有一些注意力模型。 可能Yosha Rangel明天会讲。 或者其他人,比如Quarkus,不确定。

[307.662-320.992] SPEAKER_00: 嗯,一维序列模型是另一大类。 嗯,第三类是图像模型。 嗯,这通常是二维,有时三维。 这就是我归类的地方。 呃,所有CNN的工作,卷积网络。 按我的分类。 那么还有第四类。 就是其他。

[321.072-331.091] SPEAKER_00: 这包括无监督学习。 呃,强化学习。 还有很多其他创意。 嗯,正在文献中探索。 而且,我还是觉得慢特征分析、 快速编码,还有ICA、

[331.171-338.299] SPEAKER_00: 各种模型属另一类,很让人兴奋。 所以,看今天的行业, 今天价值由这三类驱动,对吧? 所以说呢, 这三类算法,

[338.379-349.875] SPEAKER_00: 让我们有更好的产品,对吧? 或者变现得很好。 它对很多事很有用。 这个类别可能是AI的未来,对吧? 所以无监督学习尤其让人兴奋, 所以我对此也很兴奋。 虽然我觉得,如果你知道,

[349.955-358.720] SPEAKER_00: 周一你有工作,并且你试图, 比如,开发产品什么的, 用这三类中的某个,机会最高。 但我鼓励你为研究做贡献,对吧? 所以趋势一,

[358.800-368.494] SPEAKER_00: 深度学习主要趋势之一是规模。 这就是我讲的主要趋势二。 这两个趋势之一。 这不会永远持续,对吧? 主要趋势二呢, 端到端深度学习的兴起,

[368.574-379.873] SPEAKER_00: 用于生成丰富的输出。 所以端到端深度学习, 后面我会详细解释具体指什么。 我举的例子都来自这三类,对吧? 通用深度学习、序列模型、图像2D3D模型。

[379.953-390.462] SPEAKER_00: 几个例子最能说明问题。 嗯 直到最近,很多机器学习只输出实数,你知道吗? 所以在理查德的例子中, 有篇电影评论,对吧? 但我准备了完全不同的例子。

[390.542-404.012] SPEAKER_00: 我改了一下例子,和前面演讲者更连贯。 有篇电影评论,输出情感,正面还是负面? 判断是正面还是负面。 或者有一张图片,对吧? 然后你想做,呃, 图像网络目标识别, 你知道,这将是零一输出。

[404.092-417.597] SPEAKER_00: 可能是一个1到1000的整数。 但直到最近,很多机器学习只输出单个数字, 可能是实数,可能是整数。 嗯,第二大趋势让我们很兴奋, 引入能输出比数字复杂得多的深度学习算法。

[417.677-431.762] SPEAKER_00: 你们见过一个例子,呃, 图像描述,不是拿一张图像说, 不是这是一只猫,而是拿一张图像, 并输出,你知道, 用RNN生成整个文本字符串来生成序列。 所以我想,呃,什么,嗯, 呃,刚才发言的安德烈,呃,

[431.842-442.235] SPEAKER_00: 我想,百度公司的奥雷尔·文达尔, 舒伊,对吧,很多人都在研究这个问题。 嗯,我想其中一件事,呃, 我的合作者亚当·科茨明天会讲, 呃,可能还有郭,不确定,

[442.315-453.126] SPEAKER_00: 语音识别是以音频为输入,直接输出文本。 就是文本转录,对吧? 所以第一次提出用端到端架构做语音识别时, 这很有争议。 我们基于Alex Grace的工作构建,

[453.206-464.679] SPEAKER_00: 但把这个想法用到实际语音系统中,非常 有争议,最初我们 说想这么做时。 但整个社区最近开始接受这个观点。 或者机器翻译, 比如英语到法语,对吧? 所以,是的。 是的。 有Kwok Le,

[464.759-475.152] SPEAKER_00: 其他人也在研究这个, 现在很多团队, 或者给定参数, 合成全新图像,对吧? 而你们看到一些图像合成的例子。 所以深度学习第二个主要趋势,让我很兴奋。

[475.232-489.317] SPEAKER_00: 它让我们能构建出 那些三四年前我们建不了的变革性事物 这种趋势不仅是 学习算法不仅能输出数字 还能输出复杂东西,如句子、说明、法语句子、图像 或者像最近的WaveNet论文输出音频,对吧?

[489.397-497.059] SPEAKER_00: 所以我认为这是第二个主要趋势 所以尽管大家很兴奋 但关于端到端深度学习 端到端深度学习并不是 解决所有问题的办法

[497.139-506.624] SPEAKER_00: 我来给你一些经验法则,判断何时用端到端学习 以及何时用,何时不用 我们来看第二点,逐一讲解 所以端到端学习的趋势一直是

[506.704-520.116] SPEAKER_00: 不再设计很多中间表示 从原始输入直接预测任何东西 好的 好的 好的 好的。 好的。 好的。 好的。 好的。 好的。 好的。 好的。 好的。 好的。 好的。 对。 比如啊, 就拿语音来反复举例。 嗯,做语音识别时,

[520.196-527.138] SPEAKER_00: 以前是从音频入手, 手动设计特征,像FCC这些, 再提取音素,对吧? 最后要生成转录文本。

[527.218-534.706] SPEAKER_00: 有人不清楚音素是啥。 你看这个单词,听听看 猫和踢的k音相同,所以音素 这些基本音单位,比如k音作为音素,还被

[534.786-551.704] SPEAKER_00: 语言学家假设基本音单位。k音、æ音、t音是猫的三个音素。传统系统曾 他们这么做过。我认为2011年李丹和杰夫·辛顿在语音识别上取得了很大 进展。他们说可以用深度学习来做这个 第一步。但端到端方法就是让我们忘掉

[551.784-563.907] SPEAKER_00: 音素,直接用一个神经网络,对吧。输入音频,输出 转录文本。结果发现,在某些问题中,这种端到端方法,即一端 是输入,另一端是输出,所以端到端深度学习这个短语

[563.987-576.574] SPEAKER_00: 指的是直接用一个神经网络,或者像一种学习算法 直接从输入到输出。这就是端到端的意思。 这种端到端公式,我觉得宣传效果很好。 而且它其实非常简单,但有时才有效。

[576.654-590.704] SPEAKER_00: 其实,嗯,我们聊聊这个有趣的故事吧。 这个端到端的故事,我们真得罪了很多人。 做这工作时,我常到处说, 我觉得音素是语言学家的幻想,应该废除。 我记得斯坦福有一次会议,然后

[590.784-599.642] SPEAKER_00: 我记得斯坦福有一次会议,然后 你们中有人知道是谁。 有位语言学家因为那句话当众朝我吼。 可能我不该说,但事实证明我们是对的。 好的。

[599.722-611.172] SPEAKER_00: 那么,深度学习的致命弱点 就是需要大量标签数据,对吧? 所以如果这是x,那是y,要让端到端深度学习起作用, 就需要大量标签数据。 就是输入输出数据,x和y。

[611.252-623.131] SPEAKER_00: 比如,有人会考虑或不考虑端到端深度学习。 我上周从Curtis Langlis和Dobbin那儿听说的。 我想Dobbin就在观众席里。 想象一下,用手部X光片预测孩子年龄。

[623.211-634.266] SPEAKER_00: 对吧,这是真的,医生确实会看 孩子手部X光片来预测年龄。 所以 天哪,我画一张X光图像。 所以这是孩子的手。 这些是骨头,对吧? 我想是吧,所以我不是医生。

[634.346-645.401] SPEAKER_00: 好,这是一只手,能看到骨头。 传统算法先输入一张图像,然后首先, 提取骨头。 所以先找出, 这里有块骨头,这里有块骨头, 这里有块骨头,再量这些骨头的长度,

[645.481-655.259] SPEAKER_00: 对吧? 嗯,我要说的是骨头长度。 然后可能有某种公式, 比如线性回归平均值, 简单方法,从骨头长度估算孩子年龄,对吧? 所以这不是端到端的方法。

[655.339-666.893] SPEAKER_00: 嗯,端到端方法是拿一张图像,然后, 运行卷积网络之类,直接输出孩子年龄。 我觉得这是个问题例子,嗯, 端到端深度学习很有挑战性, 因为数据不够。

[666.973-679.444] SPEAKER_00: 没有足够带年龄标签的儿童手部X光片。 相反,深度学习发挥作用是在这里,对吧? 从图像到, 确定骨骼位置。 为此用了深度学习。 但非端到端架构的好处是,你可以

[679.524-689.789] SPEAKER_00: 手动添加更多系统信息,比如骨骼长度映射。 年龄嘛,看表格就能大概知道。 嗯,这样的例子很多。 我觉得深度学习有个不好的地方, 嗯,让我想想,你知道,

[689.869-697.392] SPEAKER_00: 你可以,对合适的X和Y值, 几乎总能训练个模型发论文。 但这不表示, 这真的是个好主意。彼得?

[697.692-702.835] SPEAKER_01: 可能这就是端到端的定义, 但可以在前面安排人, 部分人知道后面的事。

[703.135-714.503] SPEAKER_00: 明白了。对,明白了。 对,明白了。没错,确实。 是啊,彼得说实际中你可以, 嗯,如果这是个固定函数f,对吧, 可以从年龄反向裁剪。 回到图像上。 对,这主意不错。

[714.803-717.055] SPEAKER_02: 谁说的?你刚才说赶紧做。

[717.355-728.340] SPEAKER_00: 对,我再举几个例子。 更难反向传播到底的情况,对吧? 这里有个例子。 比如自动驾驶汽车。 多数团队用一张图像作为输入。 比如汽车前方有什么。 再检测其他车辆,对吧?

[728.420-738.497] SPEAKER_00: 再用图像检测行人,对吧? 自动驾驶车更复杂,对吧? 既然你知道其他车辆和 行人相对你的车的位置, 然后有个规划算法, 然后, 得出一个轨迹。

[738.577-743.766] SPEAKER_00: 对吧?然后既然你知道, 你想要车行驶的轨迹, 然后你可以, 计算转向方向,对吧?

[743.846-753.902] SPEAKER_00: 比如说,嗯…… 这是大多数自动驾驶团队用的架构。 嗯,而且你知道, 有些有趣的方法可以这样讲, 好,我输入一张图像, 然后给出转向方向,对吧?

[753.982-767.637] SPEAKER_00: 我觉得这是个例子,其中 嗯,就目前技术水平, 我对第二种方法会很谨慎——呃, 而且我觉得如果你有足够数据, 第二种方法会有效, 甚至能证明一个定理,你知道, 证明它会有效,我想。 但嗯,我不知道今天有谁

[767.717-782.603] SPEAKER_00: 有足够数据让第二种方法真的工作,对吧? 而且——Peter刚才有个好评论, 而且我认为,你知道,其中一些, 这些组件会极其复杂,你知道, 比如可能是有强大计划的显式搜索。 你其实可以设计很复杂的电源计划 还能生成轨迹

[782.683-797.186] SPEAKER_00: 但你手写代码的能力还是很有价值的,对吧? 所以这点要注意 嗯,我见过项目团队说 我能得到X,也能得到Y 我要训练深度学习 嗯,但除非你确实有数据 有些东西很适合做演示 如果你挑例子的话,但是

[797.266-810.808] SPEAKER_00: 要大规模应用可能很有挑战性 我应该说,对于自动驾驶汽车 这个争论仍然没有定论 我对此持谨慎态度 我不认为这必然会失败 只是所需数据会非常庞大 所以我现在对此非常谨慎 但数据足够,也许能行

[810.888-817.807] SPEAKER_00: 嗯,所以 机器学习中一个常见主题是 如果你在做机器学习项目, 常会遇到一件事, 你会, 开发一个学习系统,

[817.887-829.720] SPEAKER_00: 训练它但效果不理想, 接下来该怎么做? 这在机器学习中很常见, 机器学习从业者常遇到, 你训练一个模型, 但效果不理想, 接下来怎么办? 这很常见。 你会面临很多选择。

[829.800-844.361] SPEAKER_00: 可以收集更多数据, 也许训练更久, 换不同的网络架构, 尝试正则化, 更大的模型, 用更多GPU,选择很多。 而我认为, 机器学习研究员或工程师的很多技能 机器学习工程师就得知道怎么做这些决定,对吧?

[844.441-862.473] SPEAKER_00: 而性能的差异以及你是否, 你知道,是训练一个更大的模型还是尝试正则化? 你在选择这些决策时的技能会极大影响你 嗯,呃,你能在实际机器学习问题上取得进展的速度。 所以,嗯,我想稍微谈一下 偏差和方差,因为这是机器学习中

[862.553-874.409] SPEAKER_00: 你知道,最基本的概念之一。 而且我觉得在深度学习的时代,它正在稍微演变。 所以作为一个激励性的例子,嗯, 假设目标是构建一个人类水平的, 对吧,呃,语音系统,对吧?

[874.489-890.281] SPEAKER_00: 语音识别系统,好吗? 所以,嗯,我们通常的做法, 尤其是在学术界,我们会得到 一个数据集,你知道, 这是我的包含大量样本的数据集, 然后我们打乱它,随机分成70-30的训练测试, 或者可能70%训练,

[890.361-901.009] SPEAKER_00: 开发集占15%, 测试集占15%,对吧? 然后, 有人叫它验证集, 但我用开发集, 代表开发集, 和验证集意思一样,对吧? 这很常见,我们就会… 我建议大家这样做,

[901.089-909.250] SPEAKER_00: 如果你们还没做, 测量以下这些。 人类水平误差。 让我举个例子吧。 假设你的开发集, 在你的开发集上, 人类水平误差是1%。

[909.330-916.237] SPEAKER_00: 训练集误差是, 我用5%吧, 并假设开发集误差, 开发集是测试集的代理。 除了调开发集,对吧?

[916.317-927.291] SPEAKER_00: 嗯,6%的错误率,对吧? 所以这是最基本的—— 开发学习算法的一步。 我建议你去试试,如果还没做过。 搞清楚这三个数字是啥。 因为这三个数字, 能帮你判断下一步该做什么。

[927.371-940.458] SPEAKER_00: 所以在这个例子中, 你做得比人类差很多。 所以这里有1%到5%的巨大差距。 我会称之为,对吧, 你算法的偏差。 嗯,对统计学家来说, 我非正式用偏差和方差这两个词。

[940.538-954.623] SPEAKER_00: 它们不完全对应教科书定义。 但我发现这些概念对决定如何推进问题很有用。 嗯,所以我会说,在这个例子中, 你的分类器偏差高。 试试训练更大的模型。 试试训练时间长一点。 稍后再回来看这个问题。

[954.703-966.095] SPEAKER_00: 换个例子哈, 这就是个例子。 再换个例子, 如果人类误差是1%, 然后训练集误差是2%,对吧? 开发集误差是6%, 那你确实有个很高的, 就是方差问题,对吧?

[966.175-976.835] SPEAKER_00: 比如过拟合问题, 这就告诉你怎么做,试什么,对吧? 试试加正则化,或者, 或者早停,或者, 更棒的是,多搞点数据,对吧? 嗯,还有第三种情况, 那就是如果你有,

[976.915-990.605] SPEAKER_00: 人类水平误差1%, 嗯,我会说开发集误差6%, 哦,实际上,改成5%的开发集误差。 嗯,10%,呃,抱歉 训练误差5%和10% 深度设定错了,这种情况 你高偏差和高方差,对吧

[990.685-999.044] SPEAKER_00: 嗯,我想,是的 高偏差和高方差,很糟糕,对吧 嗯,我和应用机器学习团队交流时 有个很简单的工作流程

[999.124-1014.512] SPEAKER_00: 嗯,能帮你做出 很多你该做什么的决策 在你的机器学习应用上 嗯,顺便说一下 如果你想知道我为什么谈这个 这和深度学习有什么关系 我马上回到这一点,对吧 深度学习时代会变吗 但是,我觉得有这样一个,你知道

[1014.592-1020.095] SPEAKER_00: 就是工作流程,像流程图,对吧 那就是,首先,问你自己 你训练误差高吗

[1020.175-1029.651] SPEAKER_00: 我写大一点,大家都能看到。 如果你看不清楚, 告诉我,我再读一遍,好吗? 先问问大家, 训练集上表现怎么样? 如果训练误差很大, 那就是高偏差问题。

[1029.731-1038.647] SPEAKER_00: 标准做法是训练更大的模型, 就是更大的神经网络。 或者训练更长时间。 确保优化算法做得好。 还有个神奇方法, 新的模型架构。 这个很难吧?

[1038.727-1048.934] SPEAKER_00: 我们后面再说,好吗? 然后不断重复, 直到训练集表现好了为止。 一旦训练集表现好了, 训练误差就不高了。 训练误差不高,没问题。 然后我们会问,

[1049.014-1055.712] SPEAKER_00: 你的深度误差高吗? 如果是的话, 如果你的深度集误差很高, 那就是高方差问题。 你过拟合了。 所以,

[1055.792-1059.797] SPEAKER_00: 多收集数据就行了,对吧? 或者加正则化,或者换模型架构,对吧?

[1059.877-1066.204] SPEAKER_00: 然后一直这样做直到 直到两方面都做好 在训练集和深度集上 然后就完成了 所以其中一个

[1066.284-1075.467] SPEAKER_00: 深度学习的好处是,无论 无论用现代深度学习工具遇到什么困难 都有清晰的路径,以前没有 至少以前远远没有 特别是 不管什么问题

[1075.547-1088.076] SPEAKER_00: 过拟合或欠拟合,其实就是高偏差, 或者高方差,或者两样都有,对吧? 你至少能采取一个行动, 就是更大的模型或更多数据。 所以在深度学习时代, 相比于逻辑回归或SVM时代,

[1088.156-1102.206] SPEAKER_00: 我们更容易找到解决办法。 嗯,现在我觉得, 人们很少再提偏差-方差权衡了。 你可能听过偏差-方差权衡这个说法, 就是欠拟合和过拟合。 过去常提它,是因为很多 我们能做的调整,比如调正则化,

[1102.286-1115.988] SPEAKER_00: 实际上就是在权衡偏差和方差。 所以这就像, 零和博弈,对吧? 你能改进一个, 但另一个会变得更差。 但在深度学习时代, 深度学习之所以这么强,是因为 偏差和方差之间的耦合可以变弱。 现在我们有了更好的工具,

[1116.068-1129.015] SPEAKER_00: 可以在不增加方差的前提下减少偏差, 反向也一样。 真正最大的其实是, 你总能训练更大的模型, 更大的神经网络,这在训练时更难做到, 就像不断加特征。 那更难实现。

[1129.095-1133.460] SPEAKER_00: 嗯,那我们看看。 一会儿我还会在图底部加点内容。 这个影响可能是,

[1133.540-1143.689] SPEAKER_00: 顺便说一句,我一直很惊讶, 这种新架构真的很难。 但就算经验不多, 对各种深度学习模型, 蓝色框里的东西, 你也能推动很多进步。 但如果有经验,

[1143.769-1154.162] SPEAKER_00: 知道如何调整不同网络。 当然,也试过那些。 我鼓励你继续掌握那些。 但这个笨方法——更多数据, 更大的模型,更多数据就够用。 对吧?嗯,我们看看。

[1154.242-1161.625] SPEAKER_00: 呃,更大的模型给系统压力。 所以系统需要高性能计算团队。 更多数据还带来其他有趣投资。 所以,呃,你知道。

[1161.705-1173.770] SPEAKER_00: 我们都对数据永不满足。 我们用众包来标注。 嗯,我们就是想出各种 聪明的方法来获取数据。 我看到一个领域越来越活跃,对吧? 还处于萌芽阶段。 但我看到很多活动。

[1173.850-1184.847] SPEAKER_00: 自动数据合成,对吧? 嗯,我们看看。 所以这就是我的意思。 你知道,从前。 过去手动设计特征,很考验技巧 手动设计特征,比如说 像SIF或HOG,输入到SVM里

[1184.927-1196.377] SPEAKER_00: 嗯,自动数据 数据合成是个小众领域 但感觉在增长 需要一些手动设计 不过在很多问题上进展挺大 靠手动设计实现的,嗯 合成数据,喂给大神经网络

[1196.457-1209.102] SPEAKER_00: 好,我举几个例子说明 嗯,简单例子是OCR 除非你想训练一个,嗯 光学字符识别系统 在百度,我很惊讶 这个API用户量很大 这是百度最有用的API之一,对吧 嗯,想象打开Word

[1209.182-1220.028] SPEAKER_00: 然后从网上下载一张随机图片 再随机选个Word字体 从英语词典里随便抽个单词。 用随机字体打进Word,再贴到上面。 就像网上找张图,加个透明背景。

[1220.108-1230.838] SPEAKER_00: 然后就合成一个OCR训练样本了,对吧? 嗯,这样你就能拿到 几乎无限量的数据。 结果发现,这个简单想法实际行不通。 你需要很多调整,模糊文字背景,

[1230.918-1243.726] SPEAKER_00: 让颜色对比度匹配训练分布。 所以实践中,微调数据合成方式挺费功夫。 但我在很多垂直领域看到过, 举几个例子。 如果你做了那些工程, 虽然很痛苦, 但确实能取得很大进展。 实际上,Tao Wang,

[1243.806-1252.687] SPEAKER_00: 他以前是斯坦福的学生, 做了几个月工程,进展很小, 后来突然调对了参数, 就有了海量数据。 而且能做出当时最好的OCR系统,对吧?

[1252.767-1263.833] SPEAKER_00: 嗯,其他像语音识别,对吧? 呃,一个非常强的想法,呃, 建一个有效的语音系统,就是取干净的音频, 你知道,就像干净、少噪音的音频, 然后取随机背景音,

[1263.913-1276.860] SPEAKER_00: 然后合成他在那种背景噪音下的声音,对吧? 而且效果非常好。 所以如果你录大量汽车噪音, 你车内的声音, 再录一段安静环境下的干净语音, 嗯,数学上就是加法, 就是声音叠加,

[1276.940-1289.109] SPEAKER_00: 但就是把两个波形相加, 然后得到他说话的音频片段, 在车里说的, 然后输入到学习算法中, 所以这个效果很明显, 对扩大语音训练集, 而且对性能影响巨大,嗯。 还有自然语言处理。

[1289.189-1303.471] SPEAKER_00: 这里有个斯坦福学生做的例子。 就是用端到端深度学习纠正语法。 输入一个语法错误的英语句子。 可能是非母语者写的,对吧? 然后自动得到一个 注意力循环神经网络。 输入错误句子并纠正语法。

[1303.551-1315.151] SPEAKER_00: 就是帮我编辑这个句子。 可以自动合成大量这类数据。 另一个例子是数据合成。 效果非常好。 还有,我认为 电子游戏和强化学习,对吧? 其中之一,广义上说是游戏,对吧?

[1315.231-1328.886] SPEAKER_00: 最强大的之一, 深度强化学习用于电子游戏。 而且我认为,如果 监督学习对数据贪得无厌, 等你用强化学习算法时再说吧。 我觉得数据需求更大。 但玩游戏时, 能合成近乎无限的数据来

[1328.966-1340.915] SPEAKER_00: 满足更大需求,对吧? 就是强化学习算法的更大需求。 嗯,提醒一句要谨慎。 数据合成有很多局限。 嗯,再讲个故事。 嗯,除非要识别汽车,对吧? 呃,很多电子游戏。 嗯,得多玩点游戏。

[1340.995-1355.661] SPEAKER_00: 哪个游戏里有汽车? 哦,GTA,侠盗猎车手,对吧? 所以GTA里有很多车。 何不直接从GTA拍车照? 能合成很多车, 有很多角度,然后贴上去, 作为训练数据。 嗯,其实很难,因为人类感知。 一个游戏里可能只有20辆车。

[1355.741-1369.559] SPEAKER_00: 你觉得很好,因为看不出到底有多少。 是20辆车还是1000辆,对吧? 有些情况下,合成数据 你觉得很棒,游戏里20辆车就够,确实如此。 人不需要100种车才觉得真实。 但从算法角度看, 这是非常贫乏的数据,

[1369.639-1377.905] SPEAKER_00: 非常差的数据集。 我认为有很多 需要理清数据合成的问题。 对于在公司工作的人, 我强烈推荐建统一数据仓库,对吧? 我的意思是

[1377.985-1392.058] SPEAKER_00: 如果你的团队, 你的工程师团队, 研究团队到处从 公司不同组织收集数据, 那会很麻烦,很慢。 在百度,我们 我们的政策是 你的数据就是公司的数据吧? 用户数据的话, 就会进我的用户数据仓库。

[1392.138-1407.105] SPEAKER_00: 呃,我们得谈谈用户访问权限, 隐私,还有谁能看哪些数据。 但在百度,我强烈觉得, 这些数据必须进入一个日志—— 当作逻辑仓库来看,对吧? 它物理上散在多个数据中心, 但应该属于一个系统。 该讨论的是访问权限,

[1407.185-1417.822] SPEAKER_00: 而不是要不要把数据 尽可能统一到一个仓库。 这是另一个做法, 让数据访问顺畅很多, 还能帮团队提升绩效。 所以,如果你老板问你, 就告诉他们我说的:

[1417.902-1427.085] SPEAKER_00: 建个统一数据仓库,对吧? 这就是—— 所以,我想用 训练测试,你知道的 偏差方差图,再细化 其实70-30划分,对吧 训练测试什么的

[1427.165-1441.099] SPEAKER_00: 这很常见 以前机器学习,你知道的 老实说,当年学术界大多用小的数据集,对吧 所以,以前有个东西叫 UCI数据集库,用来 机器学习数据集,你知道的 当时这资源很惊人 但按今天标准,它很小

[1441.179-1451.491] SPEAKER_00: 然后你下载数据集 打乱数据集,然后你有 训练集、验证集、测试集等等 现在生产环境里 现在机器学习更常见的是 训练和测试分布来自不同分布,对吧

[1451.571-1469.197] SPEAKER_00: 这带来了偏差方差的新问题和新思路 我来分享一下这个。 嗯,其实这里有个具体的,呃, 一个具体例子,来自百度的真实案例。 我们建了个高效的语音识别系统。 最近,其实已经有段时间了。 我们想推出一款用语音识别的新产品。

[1469.277-1479.984] SPEAKER_00: 嗯,我们要个带语音的后视镜。 如果你车没内置GPS,对吧? 呃,这是中国的真实产品。 你拆下后视镜换一个新的, 一个AI语音驱动的后视镜,更方便。

[1480.064-1491.235] SPEAKER_00: 呃,属于后装件。 直接对着后视镜说, 亲爱的后视镜, 带我去任何地方,对吧? 这是真实的产品。 嗯,那你怎么为 这个车载后视镜做语音识别? 嗯,这就是现状,对吧?

[1491.315-1501.647] SPEAKER_00: 我们有大概五万小时的数据。 从各地来的语音识别数据,对吧? 买的数据和授权的用户数据,很多。 从各处收集的,但不是后视镜场景的。

[1501.727-1508.309] SPEAKER_00: 产品经理来回跑,做大量工作。 比如,他们又收了10小时数据。 刚好来自后视镜场景,所以装车上。

[1508.389-1515.587] SPEAKER_00: 坐驾驶位,从目标分布收10小时。 测试。问题:这5万小时数据。 扔掉,还是能用?深度学习之前。

[1515.667-1528.556] SPEAKER_00: 大家习惯建独立的模型。比如语音。 后视镜一个模型,地图查询一个。 深度学习时代,这越来越常见。 把所有数据直接喂给一个模型。 让模型自己处理。 只要模型够大。 通常就能搞定。

[1528.636-1543.754] SPEAKER_00: 再加上点技术处理,特征调对了。 通常能合并所有数据到一个模型。 通常能看到收益,但基本不会。 看到什么损失。 但问题是,给定这个数据集, 你怎么把它分成训练集、开发集和测试集? 那你可以这样做:

[1543.834-1545.970] SPEAKER_00: 这个叫训练集,这个叫开发集。

[1546.050-1553.271] SPEAKER_00: 然后这个叫测试集,对吧? 其实是坏主意。 别这么做。 所以我们总结的一个最佳实践是: 确保开发集和

[1553.351-1561.872] SPEAKER_00: 测试集来自同一分布,对吧? 我们发现这些技巧里,这条确实 提升了机器学习团队效率。 所以特别地,我会 把这个当训练集。

[1561.952-1574.981] SPEAKER_00: 然后在我10小时数据里,嗯,我稍微扩展一下, 对吧? 数据集小很多,也许五小时开发集, 五小时测试集。 这么做的原因是,你的团队 会在开发集上调参数,对吧? 最怕他们花了三个月时间

[1575.061-1589.123] SPEAKER_00: 在开发集上搞,最后测试才发现 测试集完全不一样 很多工作都白干了 所以我说,打个比方,如果开发集和 呃… 测试集分布不一样,就像 假如我说,嘿,大家,往北走,对吧? 几个小时后, 你们到了奥克兰,我问,你们在哪?

[1589.203-1604.437] SPEAKER_00: 等等,我要你们去旧金山。 你们就问,什么?为啥说往北走? 直接说去旧金山不就行了,对吧? 所以我觉得,开发集和测试集要来自 同一个分布,我发现 能大大提高效率,因为,你知道, 开发集是 团队调整算法的依据, 它其实就是

[1604.517-1618.637] SPEAKER_00: 问题规格,对吧? 但问题说明让他们来这里, 但其实你想让他们去那里, 就会浪费很多精力。 所以只要可能, 从同一分布拿明确的测试, 虽然不总是这样, 有些漏洞, 但在合理情况下, 确实能提高

[1618.717-1632.918] SPEAKER_00: 团队效率。 还有一件事, 一旦你指定了深度集, 就像问题说明,对吧? 一旦指定测试集, 那就是问题说明。 团队可能会收集更多训练数据, 或者改训练集, 或者合成更多训练集。 但你不该改变测试集,

[1632.998-1641.496] SPEAKER_00: 如果测试集就是问题说明,对吧? 所以在实践中, 我建议这样划分训练集。 训练集, 只覆盖一小部分。 用20小时数据,我称为 训练深度集,

[1641.576-1654.546] SPEAKER_00: train-depth。 开发集来自 和训练集同分布。 然后有深度集和测试集,对吧? 这些是你关心的分布的数据。 而训练集 5万小时各种数据, 可能我们也不确定这是什么数据。 但只分出一小部分。

[1654.626-1661.429] SPEAKER_00: 所以现在这是, 49980小时和20小时。 这是偏差-方差概念的推广。 让我用这个项目符号。

[1661.509-1669.566] SPEAKER_00: 但我得说, 训练集和测试集不匹配是问题之一 学术界很少研究这个问题 有一些领域适应的工作 有一些相关文献

[1669.646-1678.469] SPEAKER_00: 但训练和测试分布不同时 这有时纯属随机 泛化到不同测试集靠运气 所以很难系统地研究 所以我认为学术界没充分研究

[1678.549-1688.826] SPEAKER_00: 对我们搞生产系统的人很重要 有一些工作,但还不行 还没广泛部署的方案,我感觉 所以最佳实践是,如果 概括我刚才说的就是 测量人类水平表现

[1688.906-1695.268] SPEAKER_00: 测量训练集表现 测量训练深度表现 测量深度集表现 再测量测试集表现 这样你就有五个数字 举个例子,

[1695.348-1704.220] SPEAKER_00: 假设人类犯错率是1%。 我举个明显的例子。 训练集表现是10%, 这是10.1%,对吧? 10.1%到10.2%。 所以很明显,

[1704.300-1711.045] SPEAKER_00: 人类水平和训练集差距很大。 偏差很大,对吧? 你会用那种 修正偏差的 解决方案。 然后, 我只是举个例子。

[1711.125-1720.041] SPEAKER_00: 我发现机器学习中, 最有用的是看系统总误差。 也就是测试误差的集合, 分解各部分,看错误来源。 就知道重点在哪。

[1720.121-1726.309] SPEAKER_00: 误差累积,差了9%,很大。 所以我会研究怎么减少偏差。 这里的差距更像是方差。

[1726.389-1730.533] SPEAKER_00: 这个差距是训练测试分布不匹配。 而这个是深度过拟合。

[1730.613-1738.391] SPEAKER_00: 好,具体一点说, 举个例子,训练测试误差不匹配很高。 如果人类水平是 1%,而且训练测试误差差很大, 训练误差是,

[1738.471-1749.688] SPEAKER_00: 2%,训练深度是2.1%。 在深度集上, 误差突然跳到10%。 所以——抱歉,x轴没对齐。 但如果差距很大, 那就是训练测试集严重不匹配。

[1749.768-1755.898] SPEAKER_00: 好,在这个基本分析层面, 机器学习公式, 而不是深度。 我会用训练深度代替这个。 接下来,

[1755.978-1760.111] SPEAKER_00: 机器学习的秘诀其实很简单。 那我就会问。 你的深度误差高不高?

[1760.191-1768.248] SPEAKER_00: 如果高,那就是训练和测试不匹配。 解决方法就是多拿数据。 拿和测试集相似的数据。 或者做数据合成、数据增强。

[1768.328-1776.373] SPEAKER_00: 调整训练集,让它更像测试集。 总会有这种情况。 最后的绝招,我想是。 试试新的架构。 最后,收个尾。 没什么了。

[1776.453-1784.591] SPEAKER_00: 还有这个,对了。 如果你完成了,希望。 测试集误差会很低。 测试集表现好了。 但其实是过拟合测试集。 那就多拿测试集数据。 我就写这个了。

[1784.671-1788.641] SPEAKER_00: 测试集误差高,对吧? 如果是,就多拿点深度数据。

[1788.721-1801.157] SPEAKER_00: 行,然后搞定。 不好意思,这个不太看得清。 我这里写的是,嗯, 如果深度集误差不高, 但测试集误差很高, 说明你过拟合深度集了。 那就多收集测试集。 呃,多拿点深度集数据。

[1801.237-1810.223] SPEAKER_00: 好,嗯,其中一个, 嗯,偏差和方差,听着简单, 但实际比说起来难用得多。 不管是嘴上说还是写出来,对吧? 所以,这里有些技巧。

[1810.303-1818.720] SPEAKER_00: 很多问题,算算这些数值就行。 能帮你分析,决定下一步。 嗯,对。 而且我发现,真要理解它需要特别久。 深入理解偏差和方差。

[1818.800-1831.469] SPEAKER_00: 但我发现,真正搞懂偏差和方差的人,往往能 在机器学习里进步飞快,对吧? 我知道,展示炫酷的新网络架构更吸引人 我不确定,但这确实帮我们团队快速推进

[1831.549-1840.407] SPEAKER_00: 嗯,所以,你懂的 有件事我悄悄提过,但没说透 就是整个分析里 我们一直在做基准测试 嗯,跟人类水平比,对吧? 所以还有另一个趋势

[1840.487-1853.272] SPEAKER_00: 另一个已经不一样的东西 呃,我在回顾我见过的很多项目 许多领域,想找共同趋势 但我发现,跟人类水平比现在更常见 比几年前更常见,对吧,随着,我猜 Andre 成为那个 ImageNet 的人类基准

[1853.352-1861.896] SPEAKER_00: 呃,还有百度 我们把语音系统跟人类水平比,试图超越 那为什么呢? 嗯,事实证明,为什么人类水平的表现 对,这在深度学习中很常见?

[1861.976-1873.368] SPEAKER_00: 嗯,其实,如果…… 嗯,x轴是时间, 也就是你做了这个项目多久。 y轴是准确率,对吧? 如果这是人类水平, 比如人类水平的准确率或表现, 或者某个任务的人类水平,

[1873.448-1881.470] SPEAKER_00: 很多项目你会发现, 团队会快速进步, 直到达到人类水平, 然后可能稍微超越, 之后就变得更难,对吧? 这是常见模式。

[1881.550-1892.930] SPEAKER_00: 原因有很多。 我好奇为什么会这样? 有什么猜测吗?有。 嗯。 酷,标签来自人类。 标签是人类做的,嗯? 哦,酷。对,标签是人标的。还有吗? 不用了。好。酷。还有吗?

[1893.010-1901.287] SPEAKER_00: 。 哦,有意思。突然变成人脑模型了。 对。不知道。也许吧。 我觉得那个距离从… 神经网络到人脑差远了。 所以那个,我会…呃… 。

[1901.367-1904.292] SPEAKER_00: 明白了。对,人类在这块能力差不多。

[1904.592-1907.424] SPEAKER_02: 嗯,有点。哦,当然。 只是…

[1907.724-1916.106] SPEAKER_00: 。 哦,无聊了。明白。 。 好,酷。再来一个,我就… 。 哦,满意了。好的,酷。 对。满意和无聊,我猜。 我觉得是硬币的两面。 。 好,那么— 。 。

[1916.186-1921.433] SPEAKER_00: 哦,随你。对,对,酷。 所以我觉得,嗯,都有。 很多好答案。有几个好理由解释这效果。

[1921.513-1929.175] SPEAKER_00: 第一个是。 很多问题有理论性能极限,对吧? 比如语音识别,有些数据就是噪声。 有人接电话,像在摇滚演唱会。

[1929.255-1936.638] SPEAKER_00: 根本听不清说什么。或者有些图像, 太模糊,看不清。所以有个上限, 性能的理论极限, 叫最优错误率, 对吧?而且

[1936.718-1947.596] SPEAKER_00: 贝叶斯学派叫它贝叶斯率,对吧? 但实际有个理论最优值,就算你最好的 函数,用最好的参数, 也无法更好,因为输入只是噪声,有时无法标记。

[1947.676-1958.638] SPEAKER_00: 结果发现 人类在很多任务上很擅长 不是所有人都这样,但人类在语音和视觉上很厉害 超过人类水平后,进步空间就不大了 再往上,这算一个原因,人类很厉害

[1958.718-1962.026] SPEAKER_00: 还有其他原因,有人提到过 对,只要你还比人类差

[1962.106-1964.242] SPEAKER_00: 就有更好的层次来进步

[1964.322-1966.388] SPEAKER_00: 所以,当还比人类差时

[1966.468-1967.779] SPEAKER_00: 对,有好的方法

[1967.859-1969.530] SPEAKER_00: 来进步,而且

[1969.610-1973.418] SPEAKER_00: 有些方法是对的,有人提到,能从人类那里拿标签

[1973.498-1975.564] SPEAKER_00: 对,你还可以做错误分析

[1975.644-1982.470] SPEAKER_00: 错误分析就是看开发集里算法出错的例子 看人类能否明白为什么人说是猫,算法说是狗

[1982.550-1985.382] SPEAKER_00: 正确识别了这段话,但系统却

[1985.462-1988.016] SPEAKER_00: 误译了давно,另一个原因更容易

[1988.096-1990.592] SPEAKER_00: 去 估计 偏差方差和性别

[1990.672-1992.007] SPEAKER_00: 我就是这个意思

[1992.087-2004.036] SPEAKER_00: 我们来看看 再说个例子,你说你的efx诗很有力,对吧? 狮子卡尔洛,不,VW骄傲 所以,我们去打p trong poup足球оба 假设你在做图像识别,对吧? 如果我告诉你

[2004.116-2009.259] SPEAKER_00: 你的训练错误率是8% 你的测试错误率是10%,对吧? 那你就该考虑

[2009.339-2019.210] SPEAKER_00: 偏差减少还是方差减少? 方差减少技术,这很不清楚,对吧? 如果我说人类能到7.5% 你在训练集上已经接近人类了 你会觉得更多是方差问题

[2019.290-2031.065] SPEAKER_00: 如果我说人类能到1% 1%的错误率,那即使训练集上 你也比人类差很多 所以你应该建个更大的网络,对吧? 所以,这个 人类当前水平的信息, 我觉得人类能当个代理,

[2031.145-2042.397] SPEAKER_00: 近似贝叶斯和最优错误率。 这信息告诉你要专注哪里, 从而提高团队效率。 但一旦超越人类水平, 如果连人类, 有30%的错误率,对吧? 那只是稍微难一点。

[2042.477-2051.581] SPEAKER_00: 所以只是更难了, 你没有了代理来估计 贝叶斯错误率来提升性能,对吧? 我们超越人类水平的问题很多, 人类水平表现,而且越来越好。 但我发现,

[2051.661-2063.726] SPEAKER_00: 搞深度学习应用时, 超越人类水平前通常更容易, 这工具更好。 超越人类水平之后, 实际上,如果你要细节, 我们通常想找那些比人类差的数据子集。 比如,举个例子,

[2063.806-2078.297] SPEAKER_00: 现在,语音准确度已经超过人类了, 对短音频片段来说。 但如果我们发现, 某种口音上我们远不如人类, 就算总体上比人类好很多, 可某部分数据差很多的话, 这些级别还是适用的。 不过,这算是一个有点高级的话题,

[2078.377-2082.962] SPEAKER_00: 就是你分割和分析训练集子集的过程。对吧? 如果有个工具能把

[2083.262-2087.813] SPEAKER_02: 人类错误率从30%降到1%, 你觉得我们会造它吗? 对,我懂你意思。

[2088.113-2098.320] SPEAKER_00: 其实,这问题问得好。 我想问大家一个相关的测验题, 之后再回到亚历克斯说的。对吧? 那么,基于我们刚才讲的, 基于刚才说的这些。 我还有个问题想考考你。 我要提个问题。

[2098.400-2106.085] SPEAKER_00: 写下四个选项。 你们举手投票选正确答案,好吗? 所以呢, 我讲过,你知道, 人类水平准确率怎么推动机器学习进步。

[2106.165-2116.848] SPEAKER_00: 你咋定义人类水平的表现? 举个具体例子。 我花了很多时间研究医疗AI。 现在脑子里都是医学例子。 假设用医学影像做诊断, 看片子, 告诉病人有没有病。

[2116.928-2123.626] SPEAKER_00: 这是个医学例子。 那我要问的是, 你如何定义人类水平的表现? 选项A是, 普通人,非医生,

[2123.706-2128.013] SPEAKER_00: 假设看某种医学影像的误诊率是3%,对吧? 选项B是个典型医生。

[2128.093-2133.317] SPEAKER_00: 假设典型医生有1%的失误率。 或者找专家医生,失误率假设0.7%。

[2133.397-2134.964] SPEAKER_00: 或者干脆找个专家团队。

[2135.044-2145.841] SPEAKER_00: 我的意思是,让团队一起看 每张影像,讨论辩论,得出 他们对这个病人的最佳判断。 假设能达到0.5%的失误率。 想几秒,请举手投票。

[2145.921-2151.807] SPEAKER_00: 哪个选项最能用来定义 人类水平错误率,来驱动算法性能? 好,选A的请举手。

[2152.107-2153.442] SPEAKER_02: 哦,好的。

[2153.742-2163.424] SPEAKER_00: 嗯,呃,嗯。 呃,先别管数据难不难获取。 对,没错。 那哪个定义最有用? 选项A?有人选吗? 好,就几个人。 选项B?选这个的有谁? 酷,就像五分之一。

[2163.504-2172.466] SPEAKER_00: 选项C?专家医生?再五分之一。 选项D?哦,酷。 哇,有意思。好的。 我跟你说啊, 我觉得,要推动机器学习进步, 忽略数据收集成本,好问题。

[2172.546-2183.496] SPEAKER_00: 我觉得这个定义最 有用,因为我认为, 人类水平表现的一个代表是基准率。 其实就是最佳错误率,对吧? 其实是衡量数据中的基线噪声水平。 所以,你知道,

[2183.576-2194.782] SPEAKER_00: 如果一组人类医生能达到0.5%的错误率, 那你就知道最佳错误率是0.5%, 甚至可能更低一点。 用这个数字驱动所有决策,比如, 估计偏差和方差,对吧?

[2194.862-2203.186] SPEAKER_00: 这个定义给了最好的偏差估计,对吧? 因为基准错误率是0.5或更低。 因为成本,要获取标签等。 我预期团队会用这个定义。

[2203.266-2214.878] SPEAKER_00: 而且,发表论文与 发论文目标与实际不同。 构建最好的产品,对吧? 所以为了发论文,人们喜欢说 我们比人类水平好,所以我想 很多人会用这个定义。 而且,如果你真在收集数据

[2214.958-2225.606] SPEAKER_00: 有分层,让典型医生标记例子 不确定就雇专家,再不确定就找 所以数据收集还有其他过程。 我倾向用0.5作为那个数字的定义。 好,还有什么问题?

[2225.686-2230.271] SPEAKER_00: 专家医生团队会不会比单个医生差? 我不知道,要问观众里的医生。 我不知道。

[2230.351-2243.681] SPEAKER_00: 好了,好了。 再两页我就结束。 所以,深度学习时代的原因之一 我们更直接参考人类水平是因为 对很多这类任务来说 我们正接近人类水平了,对吧? 所以计算机视觉准确率,你知道

[2243.761-2253.829] SPEAKER_00: 比如继续这个例子,对吧? 如果,你知道 训练集准确率是 30%,深度误差约35% 人类水平是1%、2%或3%其实不重要

[2253.909-2268.867] SPEAKER_00: 它不会太大影响决策,因为你远低于贝叶斯误差 但现在 随着深度学习系统接近人类水平 衡量人类水平 能为你提供很有用的信息来驱动决策 说实话,对我合作的很多团队 我和他们见面时

[2268.947-2277.991] SPEAKER_00: 一个常见建议是:弄清人类水平是什么 然后花时间让人类标注得到那个数字,因为那对决策很有用 最后两件事 然后我们就结束

[2278.071-2282.912] SPEAKER_00: 常有人问我,人工智能能做什么? 深度学习能做什么,对吧? 可能也常伴随你,

[2282.992-2295.138] SPEAKER_00: 随着人工智能兴起, 我觉得, 这或许又是公司的事。 在硅谷, 我们有了不错的工作流程, 桌面和移动时代设计产品,对吧? 有画线框的流程, 设计师画线框, 不对,产品经理画,

[2295.218-2308.769] SPEAKER_00: 设计师做视觉设计, 或者一起工作,然后程序实现。 我们有明确的工作流程, 设计像Facebook或Snapchat这样的应用。 我们大概知道怎么设计。 公司内部有流程来设计这类东西。 但在人工智能时代,

[2308.849-2319.602] SPEAKER_00: 我们还没好的流程来设计AI产品。 产品经理应该怎么定呢? 自动驾驶汽车,你知道我不知道。 产品定义怎么定? 产品经理怎么定猫检测器的准确度?

[2319.682-2332.989] SPEAKER_00: 对,就是这样——所以今天在硅谷, 随着人工智能越来越好, 设计AI产品时,我们发明了新流程,对吧? 这些流程以前真没有。 但有个问题要问你: 常有人问我一个问题: 有些产品人员呢, 业务人员常问:AI能做什么?

[2333.069-2346.039] SPEAKER_00: 因为产品经理设计新东西时, 能帮他们知道能设计什么,挺好。 他们能设计的,有些根本造不出来,对吧? 所以,当我——所以,嗯, 所以,我分享一些不完美的经验法则, 但思考AI能做什么时很有用。

[2346.119-2357.928] SPEAKER_00: 在我告诉你我用的规则之前, 这是一位产品经理用的一个经验法则。 就是说,他说 假设AI啥都能干,对吧? 但这其实并不糟糕 它其实带来了不少好处 但我想给你们一些

[2358.008-2364.846] SPEAKER_00: 更细致的讨论方法 现代深度学习在组织中的应用 你知道,任何一个人 普通人能做到的事

[2364.926-2377.516] SPEAKER_00: 不到一秒就能完成,对吧? 我知道这规则并不完美 这方面有不少反例 但我觉得这规则挺有用 如果普通人不用一秒思考就能完成 我们很可能用深度学习实现自动化 所以,给它一张

[2377.596-2392.842] SPEAKER_00: 识别图片里是微笑还是皱眉 你不需要思考一秒钟 深度学习系统能做得很好,对吧? 或者语音识别,听这段音频,对吧? 或者语音识别,就像听这段音频,对吧? 或者语音识别,就像听这段音频, 他们说什么? 不用想太久,不到一秒。 这确实是很多感知工作,

[2392.922-2407.924] SPEAKER_00: 在计算机视觉、语音, 深度学习研究的领域。 这条经验法则对自然语言处理不太适用, 因为人类读文本需要时间, 但我们发现, 现在在百度, 产品经理找人类一秒内能完成的任务, 试图将它们自动化。 这已经深思熟虑过,

[2408.004-2418.385] SPEAKER_00: 但仍然是有用的经验法则。 有问题吗? 那会怎么影响开发评估? 你期望大家轮流在一秒内评估研究? 我明白了。 我不知道。 对,我—— 嗯。 对,问得好。

[2418.465-2431.691] SPEAKER_00: 深度学习有很多价值, 很多很多, 那些短期应用, 其中很多都是, 试图自动化人能做的事。 对,尤其是那些快速完成工作的人。 而且这带来了很多优势,当 当你自动化人类已能做的事时。 对。

[2431.771-2432.363] SPEAKER_00: 嗯。

[2432.663-2433.498] SPEAKER_02: 嗯。

[2433.798-2441.576] SPEAKER_00: 哦,明白了,那是初步观察。 如果人类能在不到一秒内标注它, 就能获得大量数据。 对,那是初步观察。 酷。

[2441.876-2442.886] SPEAKER_02: 是的。 对。

[2443.186-2448.468] SPEAKER_00: 然后,我想另一个是, 深度学习创造大量价值的应用, 就是预测结果。

[2448.548-2457.327] SPEAKER_00: 下一个事件, 比如一系列事件中, 但你知道, 如果有事反复发生, 可能不太鼓舞人心, 我们给用户展示广告, 这种情况很常见。 然后用户点或不点。

[2457.407-2472.920] SPEAKER_00: 我们有大量数据预测用户是否点广告。 这可能是AI深度学习最赚钱的应用。 或者,百度,我们做外卖服务。 我们看到大量数据, 关于这个时间从这家店送到这个地址, 需要多久。 我们已经见过很多次了。 很擅长预测如果你点餐。

[2473.000-2489.465] SPEAKER_00: 把这份食物送到你那里要多久? 所以我觉得,不好说。 深度学习确实做了很多事。 所以我挺纠结,想不出简单的规则来解释。 真的是给产品经理解释,对吧? 怎么围绕它做设计。 我发现这两条规则挺有用的。 虽然我知道这些规则明显有缺陷,而且很多—

[2489.545-2504.350] SPEAKER_00: 很多反例,对吧? 嗯,那我想,来看看吧。 嗯,这是深度学习一个激动人心的发现。 因为它让我们能做很多有趣的事。 也让我们重新思考怎么组织公司。 比如建立系统团队、混合AI团队。 一个产品的工作流程怎么做。

[2504.430-2516.483] SPEAKER_00: 所以有很多激动人心的事在发生。 最后我想说的是,你知道, 我发现大家问得最多的问题是, 嗯,怎么在机器学习领域建立职业生涯? 对吧?而且我觉得,嗯,你知道。

[2516.563-2529.870] SPEAKER_00: 我在Reddit做“问我任何事”时 Reddit AMA就是其中之一 到今天还有几个人来跟我说 学一门机器学习课程 Coursera上的机器学习MOOC之类的 怎么建立机器学习职业生涯? 我得承认我没有很好的答案

[2529.950-2541.539] SPEAKER_00: 但常被问到这个问题 而且我想思考什么对你们最有用 我想至少试试回答,尽管 可能不是一个好答案,对吧? 这是我一开始准备的最后一点内容 纯属个人建议 嗯,我认为

[2541.619-2552.453] SPEAKER_00: 我问自己同样的问题 就像几个月前,对吧? 就是你学完机器学习课之后 下一步是什么,发展机器学习职业生涯? 当时我想 最好去参加深度学习学校

[2552.533-2560.392] SPEAKER_00: 。 萨米、彼得和我一起做了这个。 我希望这是动力的一部分。 然后在那之后,对吧? 哪些东西真正有帮助? 实际上,我觉得我们所有组织,

[2560.472-2572.363] SPEAKER_00: 很多人想从非机器学习转向机器学习。 看到职业发展路径时, 常见的是上完课后自己做个项目,对吧? 我很尊重Kaggle。 很多人参与其中。 从Kaggle博客学习,然后 越来越擅长。

[2572.443-2581.858] SPEAKER_00: 我想分享一件没说过的事。 顺便说,今天讲的大部分内容 是我从没展示过的新内容,对吧? 我希望效果不错。 谢谢。 谢谢。 我想真正分享的是,

[2581.938-2592.273] SPEAKER_00: 就像读博士的过程,对吧? 就是说,很多很多。 我在斯坦福全职教书时,很多人 来斯坦福问我, 怎么成为机器学习研究员? 怎么产生新想法推动前沿?

[2592.353-2597.960] SPEAKER_00: 而且,无论你是做机器人还是 机器学习或其他领域,对吧? 读博士这个过程,我发现很可靠。

[2598.040-2607.539] SPEAKER_00: 我说出来,你可能信也可能不信, 但这过程我见过多次可靠,希望你能信我。 这过程能把非机器学习研究员变成 优秀的机器学习研究员,没什么魔法,

[2607.619-2616.245] SPEAKER_00: 真的,多读论文、复现结果,对吧? 人脑真是了不起的设备,对吧? 经常有人问我,怎么产生新想法? 我发现,如果你读 够多论文并复现够多结果,

[2616.325-2629.330] SPEAKER_00: 你就会产生推动新艺术的新想法,对吧? 我不知道大脑怎么运作,真不知道,但 我见过,这过程特别可靠。 读够论文,20到50篇后,然后—— 不是一两篇,是20甚至50篇,你才有想法。

[2629.410-2640.860] SPEAKER_00: 一直都是这样,你看Sammy在点头。 这过程很可靠,对吧? 另一个建议是,有时候, 有人问我AI工作什么样。 有人想象我们做AI时, 在百度、谷歌、OpenAI之类的地方。

[2640.940-2653.632] SPEAKER_00: 想象我们待在这种 通风好、光线足的房间里,背后有绿植。 站白板前讨论人类未来,对吧? 你们知道,做AI不是那样的。 对吧?做AI不是那样的。 做AI不是那样的。

[2653.712-2660.898] SPEAKER_00: 做AI不是那样的。 坦率说,我们做的全是脏活,对吧? 有人栽跟头,以为AI工作是谈未来,回避脏活。

[2660.978-2671.801] SPEAKER_00: 脏活包括从网上下载数据、清洗数据, 或者下载代码调参数看效果。 或者调试堆栈,看这破玩意儿为啥溢出。 要么优化数据库,要么改GPU内核提速。

[2671.881-2681.810] SPEAKER_00: 或者读篇论文,努力重现结果。 说到底,我们做的很多事都是脏活。 没错,确实有灵感的时候。 但有人不肯做脏活,结果就卡住了。 所以,我的建议是,嗯,

[2681.890-2694.977] SPEAKER_00: 另一种情况是,只做脏活就卡住了。 那么你会变得很擅长数据清理。 但也不会变得更好。 而且要有自己的灵感时刻。 所以最靠谱的公式就是两者都做。 深入做脏活,比如团队需要的话。

[2695.057-2700.920] SPEAKER_00: 团队需要你做脏活,那就去做。 同时,多读论文。 两者结合是培养研究员最靠谱的方法。 对吧?

[2701.000-2710.882] SPEAKER_00: 所以,嗯,我想以,呃, 再讲个相关的故事。 你们可能听过我讲星期六那个故事,对吧? 但对想在职场提升机器学习技能的人, 下周末你有个选择,对吧?

[2710.962-2718.299] SPEAKER_00: 下周末你可以在家看电视, 或者你可以做这个,对吧? 结果这个难得多,而且没有任何短期回报,对吧? 这周末大家都做得很好。

[2718.379-2732.766] SPEAKER_00: 但是下周末, 如果你下周末花时间学习, 读论文、反思结果,没有短期回报。 如果你下周一去上班, 老板不知道你做了什么, 同事也不知道你做了什么。 没人会拍拍你背说, 干得好,整个周末都在学习。 说真的,经过下周末的

[2732.846-2748.266] SPEAKER_00: 非常努力的工作之后, 实际上你没进步多少, 工作上提升微乎其微。 所以几乎没有回报激励你 整个下周末拼命工作。 嗯,但我觉得职业晋升的秘诀是, 如果不止用一个周末做这件事, 而是每个周末都坚持,持续一年,

[2748.346-2761.177] SPEAKER_00: 你会变得非常厉害。 其实,几乎每个人—— 我在斯坦福的同事,那些亲近又厉害的人, 你知道的,所有人,包括我,当时都是研究生。 我们都熬夜干活, 弯着腰调参,像神经网络, 想找出它为啥不工作。

[2761.257-2774.843] SPEAKER_00: 就是这种过程,不只是一个周末, 而是一个接一个周末地做, 让我们所有人真正——让大脑神经网络, 学会那些教我们怎么做的模式。 嗯,所以我希望, 即使周末过后, 你也能继续花时间学习,

[2774.923-2788.428] SPEAKER_00: 因为我保证,坚持得够久, 你会变得非常擅长深度学习。 嗯,那么总结一下, 你知道吗,我对AI特别兴奋。 我常说,AI就像新电力,对吧? 我的意思是,好比说 一百年前啊, 电力一个接一个改变行业,对吧?

[2788.508-2799.133] SPEAKER_00: 电力改变了很多,你懂的 农业、制造、交通、通信。 我觉得那些懂AI的人 现在就站在好位置,可以去改变 不只是一个行业,可能是很多个。 所以呢,我在百度

[2799.213-2810.535] SPEAKER_00: 工作挺有趣,努力改变不只一个行业, 而是好几个行业。 不过嘛, 我看到啊,其实 人类历史上特别罕见, 有像你这样的人, 能掌握技能去干活, 对社会影响这么大。

[2810.615-2826.500] SPEAKER_00: 我想在硅谷, 改变世界这词儿被用滥了,对吧? 你知道,斯坦福的学生都爱说, 我要改变世界。 但你们搞AI的人, 我觉得从你们所做的工作, 到真正对很多人产生大影响, 在交通方面, 医疗物流等领域帮助很多人, 实际上越来越清晰了。

[2826.580-2832.965] SPEAKER_00: 所以,我希望各位, 即使周末之后,也能继续努力。 并为人类做很多很棒的事。 谢谢。 谢谢。

[2833.045-2844.228] SPEAKER_00: 谢谢。 谢谢。 谢谢。 谢谢。 谢谢。 谢谢。 谢谢。 我们要发个公告吗,Shivo? 我们太晚了,我稍后再来,行吗? 好的,那我们今天就到这里吧。 期待明天和大家见面。 谢谢。