可能需要一台机器来学习最近出现的所有新机器学习技术。BrainChip采用不同于其他的神经形态计算方法深度神经网络(DNN)/卷积神经网络(CNN)解决方案可用。BrainChip的方法使用了一种叫做尖峰神经网络(图1).
1.尖峰神经网络利用神经元的异步尖峰,通过加强连接来触发其他神经元。
snn不同于dnn和cnn(图2)在培训方法和计算需求。在这一点上,它们是互补的,在应用领域有一些重叠,但这可能会随着时间的推移而改变。snn有一些有趣和有用的特性,包括即时训练的能力,通常被称为“一次性学习”。
2.cnn使用一个高开销的特征学习过程——它生成可以识别多个项目的分类过程中使用的权重。snn使用了一种更有效的训练机制,但它被设计用来识别单个实体。
与dnn / cnn相比,snn可以非常准确,在训练和分类方面的计算开销都很低。snn的阈值逻辑和连接增强都显示出高效率,甚至允许软件实现在低端硬件上工作。它们还需要更少的硬件来实现加速器。图3强调了这两种方法之间的差异。
3.卷积神经网络往往是数学密集型的,具有更复杂的训练要求,而尖峰神经网络的开销更少,但目标更具体的分类结果。
BrainChip有一个叫做BrainChip Studio的软件解决方案英特尔至强和酷睿i7处理器,但其最新推出的是BrainChip加速器(图4).x8 PCI Express单板使用Xilinx的Kintex UltraScale FPGA。FPGA中压缩了6个SNN核,每个核的功耗在1w以下,处理速度超过100帧/秒。与gpu加速的深度学习分类神经网络(如GoogleNet和AlexNet)相比,SSN方法在帧/秒/瓦特方面提供了7倍的改进。单板功耗小于15w。
最初,加速器用于需要识别特定物体的视频监控应用。例如,为了安全起见,一个特定的背包或个人可能需要通过数十个摄像机的视频流进行跟踪。最初的图像分辨率可以低至20 × 20像素的图案,24 × 24像素的面部识别。这意味着基于snn的搜索应用程序可以在低光、低分辨率和噪声环境中使用,同时提供良好的结果。一步训练意味着所需的图像可以快速融入系统。
4.BrainChip Accelerator使用Xilinx公司的Kintex UltraScale FPGA实现snn。
SNN还有其他应用,如面部识别、游戏和视觉检测。升级可以帮助寻找对象;因此,硬件平台可以处理多达16个视频流的升级和降级。最大输入视频流分辨率为1080p。
开发人员需要确定哪种神经网络最适合他们的应用程序。无论使用BrainChip的软件还是硬件,snn如果能应用到任务中,都能提供显著的优势。应用程序(如增强现实(AR),其中特定类型的对象需要在图像中定位,对于SNN支持来说已经成熟。DNN/ cnn可以识别许多对象,但通常应用程序不需要这样做。