谷歌I/O大会总结:人工智能冲破障碍 未来有更多潜力

AI看看

    如果要给谷歌今年的I/O开发者大会寻找一个主题,那么就是人工智能(AI)已经融入了公司所有要做的事情中。从让人印象深刻的Duplex到全新的第三代Cloud TPU,包括在下一代Android P系统中整合的很多功能,机器学习技术将会继续扮演非常重要的角色,而谷歌每年在这个领域都会保持对竞争对手的优势。
    在这次I/O开发者大会上,许多谷歌公司知名的代表人物都纷纷分享了自己对人工智能领域的看法。包括Greg Corrado, Diane Greene和Fei-Fei Li谈话,以及Alphabet董事长John Hennessy的演讲,都展示了谷歌最近的突破以及思维变化对计算机领域如何产生影响,进而影响我们的生活。
    谷歌在机器学习和人工智能方面的雄心壮志已经采用了“多管齐下”的方法。在云计算中,有专门适用于硬件的机器学习技术和第三代Cloud TPU这种面向开发者的应用工具。还包括TensorFlow以及大量科学界和开发者界的研究也在进行中。
    熟悉的硬件轨道
    约翰·亨尼斯是计算机科学行业的资深人士,他在最后一天的演讲中表现非常出色,就像第一天桑达尔·皮查伊的表现一样中肯。在过去的10年里,技术追随者对很多关键的主题都很熟悉,包括摩尔定律的失效、性能效率和电池电源的限制等,现在已经有越来越多的计算方法来解决日益复杂的问题。
    而解决方案就是需要一种新的计算方法,针对特定领域的体系结构。换句话说,为特定的应用程序定制硬件架构,可以最大限度地提高性能和提高能源效率。
    当然,这并不是一个全新的概念,我们已经尝试过在图形任务中使用GPU,而高端智能手机也越来越多的使用包括专门的神经网络处理器在内来处理机器学习任务。智能手机芯片多年来一直在朝着这个方向发展,并且也扩大到了服务器领域。对于机器学习任务来说,硬件正越来越多地围绕低精度的8或16位数据大小进行优化,而不是更大的32或64位的精确浮点数,以及少量专用的高度并行指令,如质量矩阵乘法。与通用的大型指令集CPU和甚至并行GPU计算相比,性能和能源效益是不言自明的。约翰o亨尼斯认为,谷歌的产品将继续使用这些异构的集成芯片和非模离散的组件,这取决于不同的实际用例。
    然而,这种向更广泛的硬件类型的转变带来了新的问题,它增加了硬件的复杂性,破坏了数以百万计的开发人员所依赖的高级编程语言,并进一步破坏了Android平台。
    专用的机器学习硬件如果它的程序非常困难,那么用处就不是很大,或者如果性能被低效的编码语言浪费了。在C语言中,与更友好的Python相比,矩阵乘法的性能差异为47倍。这是一个例子,使用英特尔的特定领域AVX扩展,达到了62806倍的性能改进。但是,仅仅要求专业人士转向低级编程并不是一个可行的选择。相反,他认为编译器需要被重新考虑,以确保程序尽可能高效地运行,而不考虑编程语言。这种差距可能永远不会完全消除,但即使达到25%,也会极大地提高性能。
    这也延伸到了亨尼斯设想未来芯片设计的方式。它的编译器可能最终在调度机器学习任务中扮演更重要的角色,而不是依赖于硬件调度和高强度的、投机性的无序机器。可以允许编译器决定哪些操作是并行处理的,而不是在运行时,这是不太灵活的,但是可以带来更好的性能。
    在这里带来另一个好处是,更聪明的编译器还应该能够有效地将代码映射到各种不同的体系结构中,因此相同的软件可以在不同的硬件上尽可能高效地运行,并具有不同的性能目标。
    对软件的潜在转变的影响并不止于此。操作系统和内核可能也需要重新考虑,以便更好地满足机器学习应用程序和各种可能最终在野外生存的硬件配置。即便如此,我们今天在市场上已经看到的硬件,如智能手机NPUs和谷歌的云计算,都是谷歌未来机器学习将如何发展的愿景的一部分。
    
    
    1  2  下一页>