移动设备面部检测的深度学习

4
我想创建一个人脸检测的移动应用程序,并希望使用普通的深度学习(卷积网络)实现。我将在自己的计算机上进行训练,并在移动应用程序中使用已训练的数据。
我的问题是:我能否在像iPhone这样的普通手机上得到非常快的计算速度?我需要它非常快,可以在1秒内检测到视频中的人脸。这在移动设备上是否可能?还是这种任务需要更强大的硬件?
我知道训练阶段必须在强大的计算机中进行,但我指的是在移动设备上的生产阶段。
例如,如果我把手机放在街上,它能否使用与训练阶段相同的深度网络检测所有人的面孔?
1个回答

7
是的,这是可能的,但不是使用标准CNN架构,需要进行一些更改:
一种方法是使用具有二进制权重的CNN,因此可以通过位运算来评估CNN。有许多关于此的出版物,例如这个这个这个。我看到过使用二进制权重实现的YOLO在iPhone上实时运行的实现,所以这是完全可能的。
第二种方法是减少神经网络的参数数量,例如如果您训练了一个具有5000个权重的网络,并获得了接近所需检测性能的结果,则该网络可能会实时运行。但这更难。
第三种方法只是优化神经网络架构以最小化参数,并将其与非常优化的实现结合使用。有算法可以加速卷积操作,例如L-CNN或由cuDNN实现的算法。
一个非常好的相关资源是来自深度神经网络高效方法第一国际研讨会的演示文稿和论文。

谢谢,这对我很有帮助。 - Fcoder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接