Google 所提供的网络服务可能是地球上最大的电脑网络,这套网络拥有 15 个仓库大小的资料中心,并分布在 4 块大陆上。
你可能觉得这个网络已经够强大,日常使用 Google 自家的各种服务完全没有问题,但 Google 并不这么认为,Google 的工程师们也不这么想,他们担心这套已经非常庞大的网络有一天会不堪重负。
为了省钱,自己做芯片
大约在 6 年前,Google 为其 Android 系统加入了新的语音辨识技术,也就是我们熟悉的 Google Now 和 Google Assistant。
而除了工作就是思考的 Google 工程师突然想到,如果世界上每个 Android 手机用户每人每天使用 Google 的语音搜寻服务 3 分钟,那么所需要的资料中心大小至少是现在的两倍之多,如果用户更频繁使用 Google 语音服务,那么当前的资料中心将不堪负荷。
此外,Google 当时已经开始研究使用深度神经网络和复杂的数学系统来开发语音辨识服务,这使其语音服务可以透过分析大量数据,来学习一些特定的任务处理能力。而这种机器学习形式,不但重新发明了语音辨识,还促进了图像辨识、机器翻译、网络搜寻等技术的发展,但它对资料处理的能力要求非常严格。
(Source:Google)
由于使用深度神经网络学习技术,Google 看到机器的辨识错误率下降了 25%,但是这种进步需要更强大的资料处理能力,也就是说,需要更多的资料中心。
资料中心不够用,那就多建几座啰?可是建这么多资料中心是要花不少钱的,像 Google 这种财大气粗的公司也不是不把钱当钱,精打细算过日子的理智心态也是有的。
因此 Google 并没有豪掷千金将资料中心占地面积翻倍,而是专门为执行深度神经网络研制自家的电脑芯片──Tensor Processing Unit,TPU。在 TOPS / Watt 测试中,TPU 的性能高于标准处理器 30 到 80 倍,这个测试结果非常可观。
一颗芯片顶一座资料中心?
Google 在去年 5 月首次透露自家这款订制处理器,但并没有透露太多细节。现在,负责 TPU 芯片研发的 Norm Jouppi 和他的团队发表了一篇文章,详细说明了该计划,并解释了 TPU 的执行方式以及对一些特殊问题的解决方案。
Google 的 TPU 芯片仅用于执行神经网络服务,只在用户使用 Android 手机启用语音指令或搜寻指令时才会运行。由于神经网络拥有自主学习的能力,因此不用特意训练它。但 Jouppi 说,TPU 除了能让神经网络自主学习和高速运算外,最重要的是,Google 不需要为担心数据运算能力不足而多建额外 15 个资料中心,这样便节省了大量的成本。
外媒 Wired 认为,TPU 将为电脑芯片领域带来重大转变。由于 Google、Facebook、微软等网络巨头使用深度神经网络构建其服务的动作越来越多,他们都需要专门的芯片来训练和执行这些 AI 模型。
但不同的是,Google 在构建自己的芯片,而很多公司还在使用 GPU 来解决深度神经网络和人工智能的问题。
Google 自家芯片的出现,也为电脑芯片市场带来冲击。由于有自己的芯片,Google 不用再购买别家芯片,来适应自己的神经网络和人工智能架构,而 Google 甚至有可能成为 TPU 芯片的供应商,因为像 Facebook、微软和亚马逊这类公司都是芯片的高级买主。大型的芯片制造商如英特尔等,也正在研发类似的处理器以适应新的市场需求。
适用于多种神经网络模型
此外,Google 这块 TPU 芯片可用在当下任何一个深度神经网络中,包括从图像辨识到辨识语音命令的神经网络等。用 Jouppi 的话说:
我们并不会因为别人造了新的神经网络架构而把我们这块芯片当垃圾扔掉。
不过 Jouppi 也认为,TPU 还有进一步提高性能的空间。如果使用 NVIDIA K80 GPU 中存的 GDDR5 显存,TPU 便可以提供比 Google 当前测试更好的性能。根据 Google 当前的测试发现,深度神经网络一些服务性能受内存带宽的限制,而 GDDR5 则能解决这些问题。
Google 其实已经在两年前就用到 TPU 芯片了,而 TPU 芯片除了用于图像辨识和机器翻译,最值得夸耀的事迹,就是去年打败韩国棋手李世乭的人工智能 AlphaGo 了。
TPU 芯片的未来?现在看来,很明朗,而机器学习和人工智能发展的步伐,或许会因此加快。
(本文由 爱范儿 授权转载;首图来源:Google)