Return to Video

计算机如何学会快速识别物体

  • 0:01 - 0:02
    10年前,
  • 0:02 - 0:05
    计算机视觉研究者认为
    要让一台电脑
  • 0:05 - 0:08
    去分辨出一只猫和狗的不同之处
  • 0:08 - 0:10
    几乎是不可能的,
  • 0:10 - 0:13
    即便是在人工智能已经取得了
    重大突破的情况下。
  • 0:13 - 0:17
    现在我们已经可以做到
    让它的正确率在99%以上。
  • 0:18 - 0:20
    这个方法叫做图像分类——
  • 0:20 - 0:23
    给它一张图,再给这张图贴上标签——
  • 0:23 - 0:26
    通过这种方式,电脑就可以知道
    数千种的分类。
  • 0:27 - 0:30
    我是华盛顿大学的一名研究生,
  • 0:30 - 0:32
    我致力于一个名叫“暗网”的项目,
  • 0:32 - 0:33
    这是一个用来训练和测试
    计算机视觉模型的
  • 0:33 - 0:36
    神经网络结构。
  • 0:36 - 0:39
    让我们来看看暗网是如何看待
  • 0:39 - 0:41
    我们手上的这张图片。
  • 0:43 - 0:45
    当我们在这张图片上
  • 0:45 - 0:46
    运行识别器时,
  • 0:46 - 0:49
    我们注意到,它不仅能判断出
    图片上是猫是狗,
  • 0:49 - 0:51
    还能给出它是哪个品种的预测。
  • 0:51 - 0:53
    这就是我们目前所达到的粒度级别。
  • 0:53 - 0:55
    而且它的预测是正确的。
  • 0:55 - 0:57
    我的狗的确是一只
    阿拉斯加雪橇犬。
  • 0:57 - 1:01
    很明显,我们在图像识别上
    取得了惊人的进步,
  • 1:01 - 1:03
    但是如果我们对这样一张图片上
  • 1:03 - 1:05
    运行识别器,会如何呢?
  • 1:07 - 1:08
    看一下。。。。。
  • 1:13 - 1:17
    我们看到识别器给出了一个
    非常相似的预测。
  • 1:17 - 1:20
    而且是正确的,图中是有一只
    阿拉斯加雪橇犬,
  • 1:20 - 1:23
    但只使用这一个标签,
    我们并不能真正的了解
  • 1:23 - 1:25
    这张图片里的故事。
  • 1:25 - 1:27
    我们需要更强大的检测器。
  • 1:27 - 1:30
    我正在研究一个叫做
    目标检测的问题,
  • 1:30 - 1:33
    也就是我们尝试
    将一张图上的所有目标物都找出来,
  • 1:33 - 1:34
    然后将它们分别框起来,
  • 1:34 - 1:36
    再加上标注。
  • 1:36 - 1:40
    这就是我们对这张照片
    运行检测器时所发生的。
  • 1:41 - 1:44
    基于这样的结果,
  • 1:44 - 1:46
    我们可以用计算机视觉算法
    做更多的事情。
  • 1:46 - 1:49
    我们发现,它知道
    这里有一只猫和一只狗。
  • 1:49 - 1:51
    它知道它们的相对位置,
  • 1:51 - 1:53
    它们的大小。
  • 1:53 - 1:54
    它可能甚至还知道一些
    额外的信息。
  • 1:54 - 1:57
    例如背景里有一本书。
  • 1:57 - 2:01
    如果你想建立一个
    基于计算机视觉的系统,
  • 2:01 - 2:04
    比如说无人驾驶汽车
    或者机器人系统,
  • 2:04 - 2:07
    那么这就是你想要得到的那类信息。
  • 2:07 - 2:10
    你要一个能与物质世界互动的系统。
  • 2:11 - 2:13
    当我最开始开展目标检测项目时,
  • 2:13 - 2:16
    它要花20秒去处理一张图片。
  • 2:16 - 2:20
    为了感受一下为什么速度
    在这个领域是如此重要,
  • 2:21 - 2:24
    举一个例子,这是一个2秒钟
  • 2:24 - 2:26
    就能处理一张图片的检测器。
  • 2:26 - 2:29
    这个检测器的速度要比
  • 2:29 - 2:32
    处理每张图需要20秒的
    检测器快10倍,
  • 2:32 - 2:35
    你还可以看到
    在它做出预测的时候,
  • 2:35 - 2:37
    被检测的世界已经发生变化了,
  • 2:38 - 2:40
    这对于一个应用来说
  • 2:40 - 2:42
    是没有多大用处的。
  • 2:42 - 2:44
    如果我们将它的速度再提升10倍,
  • 2:44 - 2:47
    这个检测器每秒可处理5张画面。
  • 2:47 - 2:49
    这就好很多了,
  • 2:49 - 2:51
    但是,举个例子
  • 2:51 - 2:53
    如果有任何重大的移动
    (它就反应不过来了),
  • 2:53 - 2:56
    我可不想让这样的一个系统
    来驾驶我的汽车。
  • 2:57 - 3:00
    这是在我电脑上运行的
    实时检测系统。
  • 3:01 - 3:04
    当我在移动时,它能顺利地追踪我,
  • 3:04 - 3:08
    而且它强大到能适应不同的大小、
  • 3:09 - 3:11
    姿势、
  • 3:11 - 3:13
    向前、向后的改变。
  • 3:13 - 3:14
    很了不起。
  • 3:14 - 3:16
    如果我们想要建造一个
  • 3:16 - 3:19
    基于计算机视觉的系统,
    那么这就是我们真正需要的。
  • 3:19 - 3:23
    (掌声)
  • 3:24 - 3:27
    仅仅是几年的时间,
  • 3:27 - 3:29
    我们就从每张图20秒,
  • 3:29 - 3:33
    提升到了每张图20毫秒,
    速度提高了1000倍。
  • 3:33 - 3:34
    我们是如何做到的呢?
  • 3:34 - 3:37
    事实上在过去,目标检测系统
  • 3:37 - 3:39
    会将这张图片
  • 3:39 - 3:42
    分成很多小区域,
  • 3:42 - 3:45
    然后在每一块区域运行一下识别器,
  • 3:45 - 3:48
    在识别器中获得最高分数(的输出)
  • 3:48 - 3:51
    就会被认为是这张图片的检测结果。
  • 3:51 - 3:55
    这涉及到要在一张图片上
    运行数千次识别器,
  • 3:55 - 3:58
    以及数千次的神经网络评估
    才能获得检测结果。
  • 3:59 - 4:04
    而现在,我们训练了可以做出
    所有检测的单一网络。
  • 4:04 - 4:08
    它能同时生成边界盒和类别概率。
  • 4:09 - 4:12
    使用我们的系统,
    不需要为了生成检测结果
  • 4:12 - 4:14
    去重复上千数次地看同一张图片,
  • 4:14 - 4:15
    “只看一次”就行了,
  • 4:15 - 4:18
    这也是为什么我们称之为
    目标检测的“YOLO”法。
  • 4:19 - 4:23
    有了这个速度,我们就
    不仅限于识别图像了,
  • 4:23 - 4:26
    还可以实时处理视频。
  • 4:26 - 4:29
    现在,我们不仅看到了猫和狗,
  • 4:29 - 4:32
    还能看到它们走来走去,互相嘻戏。
  • 4:35 - 4:37
    这是一个我们在微软的
    COCO数据库上,
  • 4:37 - 4:41
    用80种不同种类的物品
  • 4:41 - 4:44
    训练过的检测器。
  • 4:44 - 4:48
    包含了各种东西,
    像勺子、叉子、碗
  • 4:48 - 4:49
    等常见物品。
  • 4:50 - 4:54
    还有各种奇特的东西:
  • 4:54 - 4:57
    动物、汽车、斑马、长颈鹿。
  • 4:57 - 4:58
    现在我们要做点儿有趣的事情。
  • 4:58 - 5:01
    我们的摄像头将要对准观众区,
  • 5:01 - 5:02
    看看能检测出什么。
  • 5:02 - 5:04
    谁想要一个毛绒动物玩具?
  • 5:06 - 5:08
    观众席里有了一些泰迪熊。
  • 5:10 - 5:15
    我们把检测阀值调低一点,
  • 5:15 - 5:18
    这样就可以找出更多的观众。
  • 5:20 - 5:22
    看下我们能不能找出这些停车标志。
  • 5:22 - 5:24
    我们找到了一些背包。
  • 5:26 - 5:28
    再放大一点。
  • 5:30 - 5:31
    非常棒。
  • 5:31 - 5:35
    所有这些都是在电脑上
  • 5:35 - 5:36
    实时处理的。
  • 5:37 - 5:38
    请大家记住:
  • 5:38 - 5:42
    这是一个通用的目标检测系统,
  • 5:42 - 5:47
    因此我们可以将它训练
    用于任何领域的图像识别。
  • 5:48 - 5:51
    我们在无人驾驶汽车中
  • 5:51 - 5:53
    用来发现停车标志、行人
  • 5:53 - 5:55
    和自行车的代码,
  • 5:55 - 5:58
    同样可以用于在组织活检中
  • 5:58 - 6:01
    找出癌细胞。
  • 6:01 - 6:05
    全球已经有很多研究者
    正在利用这一技术
  • 6:06 - 6:10
    在医学、机器人学等方面取得了进展。
  • 6:10 - 6:11
    今天早上,我刚读到一篇文章,
  • 6:11 - 6:16
    人们在内罗毕国家公园
    对动物数量进行普查,
  • 6:16 - 6:19
    使用了YOLO作为检测系统的一部分。
  • 6:19 - 6:22
    这是因为暗网是一个开源项目,
  • 6:22 - 6:24
    在公共领域,任何人都可以免费使用。
  • 6:26 - 6:31
    (掌声)
  • 6:31 - 6:36
    但是我们想要让检测器
    能被更多人使用、也更好用,
  • 6:36 - 6:40
    因此通过结合模型优化,
  • 6:40 - 6:43
    网络二值化和近似法,
  • 6:43 - 6:47
    我们实际上已经可以
    在手机上进行目标检测了。
  • 6:53 - 6:58
    (掌声)
  • 6:59 - 7:04
    我真的很激动,
    因为我们在这个低级的
  • 7:04 - 7:06
    计算机视觉问题上
    有了一个强大的解决方案,
  • 7:06 - 7:10
    而且任何人都可以
    使用它来做些什么。
  • 7:10 - 7:13
    所以接下来就看所有在座的各位
  • 7:13 - 7:16
    以及世界上所有
    能够使用这个软件的人了,
  • 7:16 - 7:20
    而我已经等不及想要看看,
    人们会用这一技术造出什么来了。
  • 7:20 - 7:21
    谢谢。
  • 7:21 - 7:25
    (掌声)
Title:
计算机如何学会快速识别物体
Speaker:
约瑟夫·雷德蒙
Description:

十年前,研究者认为让电脑去分辨一只猫和一只狗几乎是不可能的。今天,计算机视觉系统的正确率已经达到了99%以上。这是怎么做到的呢?约瑟夫·雷德蒙致力于YOLO(只看一眼)系统,这是一个开源的目标检测方法,可以分辨出图片和视频中的物体——从斑马到停车标志——以快如闪电般的速度。在一个卓越的现场演示中,雷德蒙展示了这一对于像无人驾驶汽车、机器人甚至癌症检测这些应用来说,向前迈进的重要一步。

more » « less
Video Language:
English
Team:
closed TED
Project:
TEDTalks
Duration:
07:37

Chinese, Simplified subtitles

Revisions