【发布时间】:2016-09-24 17:25:48
【问题描述】:
我正在使用深度神经网络进行人脸识别。我正在使用包含 10575 个类的 CASIA-webface 数据库来训练 10 个卷积层、5 个池化层和 1 个全连接层的深度 CNN(由 CASIA 使用,详见 paper)。对于激活它使用"ReLU" 函数。我能够使用 caffe 成功训练它并获得所需的性能。
我的问题是,我无法使用"PReLU"activation 训练/微调同一个 CNN。起初,我认为用"PReLU" 简单地替换"ReLU" 就可以完成这项工作。但是,微调(来自使用"ReLU" 学习的caffemodel)和从头开始学习策略都不起作用。
为了简化学习问题,我只用 50 个类显着减少了训练数据集。然而,CNN 无法使用"PReLU" 进行学习,而它可以使用"ReLU" 进行学习。
为了了解我的 caffe 可以与 "PReLU" 一起正常工作,我通过使用 cifar10 数据运行简单的网络("ReLU" 和 "PReLU")来验证它并且它可以正常工作。
我想通过社区了解是否有人有类似的观察。或者如果有人可以提供任何建议来解决这个问题。
【问题讨论】:
-
您是否更改了任何训练参数?例如,学习率或收敛ε?微调模型有时需要微调一两个参数。另外,我不确定 P/ReLU 函数的插入位置:论文没有指出它们,所以我假设它们在通常的位置(与 POOL 相邻)。
-
是的,正如您提到的,我尝试了不同范围的训练参数。 P/ReLU 在 Conv 层之后插入。
标签: caffe computer-vision neural-network deep-learning caffe face-recognition