功能上,AI包括推理和训练两个环节。在训练层面,通过大数据训练出一个复杂的神经网络模型。
a) 训练环节主要使用类似NV GPU集群完成,谷歌TPU2.0也支持训练环节和深度网络加速。
b) 推理环节指利用训练好的模型,使用新数据推理出各种结论。
总体来看,训练环节对芯片的性能要求比较高,推理环节对简单指定的重复计算和低延迟的要求很高。
应用场景上,AI芯片应用于云端和设备端。
a) 在深度学习的训练阶段需要极大数据量和大运算量,单一处理器无法独立完成,因此训练环节只能在云端实现。
b) 在设备端,智能终端的数量庞大,且需求差异较大,比如VR设备对于实时性要求很高,推理环节无法在云端完成,要求设备有独立的推理计算能力,因此专用芯片的需求还是很大。
技术架构分四类:
a) 一是通用性芯片,如GPU;
b) 二是以FPGA为代表的半定制化芯片,如深鉴科技的DPU;
c) 第三,ASIC全定制化芯片,如谷歌的TPU;
d) 第四,类脑芯片。
GPU:是单指令、多数据处理,采用数量众多的计算单元和超长的流水线,如名字一样,图形处理器,GPU善于处理图像领域的运算加速。但GPU无法单独工作,必须由CPU进行控制调用才能工作。CPU可单独作用,处理复杂的逻辑运算和不同的数据类型,但当需要大量的处理类型统一的数据时,则可调用GPU进行并行计算。
FPGA:和GPU相反,FPGA适用于多指令,单数据流的分析,因此常用于预测阶段,如云端。FPGA是用硬件实现软件算法,因此在实现复杂算法方面有一定的难度,缺点是价格比较高。将FPGA和GPU对比发现,一是缺少内存和控制所带来的存储和读取部分,速度更快。二是因为缺少读取的作用,所以功耗低,劣势是运算量并不是很大。结合CPU和GPU各自的优势,有一种解决方案就是异构。
ASIC芯片:是专用定制芯片,为实现特定要求而定制的芯片。除了不能扩展以外,在功耗、可靠性、体积方面都有优势,尤其在高性能、低功耗的移动端。谷歌的TPU、寒武纪的GPU,地平线的BPU都属于ASIC芯片。谷歌的TPU比CPU和GPU的方案快30-80倍,与CPU和GPU相比,TPU把控制缩小了,因此减少了芯片的面积,降低了功耗。
在ASIC芯片里还有一个特殊的群体—类脑计算。类脑计算是真正模拟人脑进行设计,人脑的特点就是神经元进行传输数据。当我们用硬件去模拟人脑时,在硬件环节里还有许多多余的元素,而类脑芯片就拟合人脑的作用。要做类脑芯片非常难,IBM、高通、英特尔等公司的芯片策略都是用硬件来模仿人脑的神经突触。”