NPUbench–神经网络模型

NPUbench测试工具包含的八种神经网络模型:

网络模型名称
发布时间
数据集
神经网络风格
应用领域
LeNet-5[1]
1998MNIST
Convolutional, Fully-Connected
Hand written digits recognition
AlexNet[2]
2012ImageNet
Convolutional, Fully-Connected
Image classification
GoogLeNet[3]
2014ImageNet
Convolutional, Fully-Connected
Image classification
ResNet -152[4]
2015ImageNet
Convolutional, Fully-Connected
Image classification
Sequence to Sequence[5]
2015MSVD
LSTMs
Generate captions for videos
Fully Convolutional Networks[6]
2015PASCAL VOCConvolutionalSemantic Segmentation
Inception-BN network[7]
2015ImageNetConvolutional, Fully-Connected
Image classification
Holistically-Nested Edge Detection[8]2015BSDS500Convolutional
Edge Detection

表1:NPUbench包含的神经网络模型

NPUbench使用神经网络结构解析法来确定测评工具中所包含的神经网络模型:网络结构解析法通过选择多种结构参数来对神经网络的网络结构进行描述,每一个网络模型的网络结构都被抽象为一组向量,再把这所有三十组向量使用主成分分析以及相似性分析两种方法进行分析计算,同时还考虑到了每种神经网络模型的使用热度和权威性,最终确定了八种有代表性、多样性的神经网络模型组成NPUbench测试工具。

NPUbench测试工具还包括八种神经网络所使用的数据集,分别是:MNIST[9],ImageNet[10],Pascal[11],MSVD[12],BSDS500[13]。

 

[1] Y. LeCun, L. L. Bottou, Y. Bengio, and P. Haffner, “Gradient-Based Learning Applied to Document Recognition,” Proceedings of the IEEE, vol. 86, no. 11, pp. 2278– 2324, 1998.

[2]A. Krizhevsky, G. E. Hinton, I. Sutskever, and G. E. Hinton, “ImageNet Classification with Deep Convolutional Neural Networks,” Advances In Neural Information Processing Systems, pp. 1–9, 2012.

[3]C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich. ”Going deeper with convolutions”. Technical report, arXiv: 1409.4842, 2014.

[4]K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition” in arXiv: 1506.01497, 2015.

[5]S. Venugopalan, M. Rohrbach, J. Donahue, T. Darrell, R. Mooney, K. Saenko. “Sequence to Sequence – Video to Text”.The IEEE International Conference on Computer Vision (ICCV) 2015.

[6] Jonathan Long, Evan Shelhamer, Trevor Darrell, “Fully Convolutional Models for Semantic Segmentation”. CVPR 2015.

[7] Sergey Ioffe and Christian Szegedy, “Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift”, in arXiv: 1502.03167,2015.

[8] Xie, Saining and Tu, Zhuowen. “Holistically-Nested Edge Detection”. Proceedings of IEEE International Conference on Computer Vision, 2015.

[9] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. “Gradient-based learning applied to document recognition.” Proceedings of the IEEE, 86(11):2278-2324, November 1998.

[10] J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li and L. Fei-Fei, “ImageNet: A Large-Scale Hierarchical Image Database”. IEEE Computer Vision and Pattern Recognition (CVPR), 2009.

[11] Roozbeh Mottaghi, Xianjie Chen, Xiaobai Liu, Nam-Gyu Cho, Seong-Whan Lee, Sanja Fidler, Raquel Urtasun, Alan Yuille. “The Role of Context for Object Detection and Semantic Segmentation in the Wild”. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2014

[12] Jun Xu,Tao Mei,Ting Yao,Yong Rui.” MSR-VTT: A Large Video Description Dataset for Bridging Video and Language”, IEEE International Conference on Computer Vision and Pattern Recognition (CVPR),2016.

[13] P. Arbelaez, M. Maire, C. Fowlkes and J. Malik.” Contour Detection and Image Segmentation”. IEEE TPAMI, Vol. 33, No. 5, pp. 898-916, May 2011.

NPUbench–评估指标以及使用方法

NPUbench评估指标:

性能指标  MAC/S

Multiply and Accumulate operations per Second,即每秒执行乘加操作的数量,这一指标主要用于度量NPU在计算性能方面的表现。

功耗指标 MAC/S/W

Multiply and Accumulate operations per Second per Watt,即每秒每瓦执行乘加操作的数量,这一指标主要用于度量NPU在能耗方面的表现。

NPUbench使用方法:

首先把NPUbench评测套件中适合待测神经网络处理器的神经网络模型部署到待测神经网络处理器上,NPUbench在运行时有两种模式可以选择:第一种模式是将Batch参数设置为1,从而会记录神经网络处理器处理一个Batch数据时的性能,第二种模式是把Batch参数设置到最大,尽可能的达到待测神经网络处理器的性能极限,这一模式是用来记录NPU的最大吞吐性能。运行NPUbench后,根据所选择的模式请按照下表中的记录模板对待测神经网络处理器的性能表现进行记录。

指标单位
网络名称文字
准确率百分比
执行时间
执行功耗瓦特

模式一记录模板

指标单位
网络名称文字
Batch 大小数字
准确率 百分比
执行时间
执行功耗瓦特

模式二记录模板

需要注意的是在使用过程中为了保证测试过程的公平性,首先使用者必须保证不会更改任何神经网络结构描述文件以及神经网络模型中的数据。其次NPUbench要求所记录的结果必须都是准确率不低于该神经网络模型标准准确率的1%的那些性能数据。