面部识别中的增量学习

时间:2020-09-24 23:03:35

标签: python deep-learning face-recognition online-machine-learning

我正在尝试为面部识别应用程序实现增量/在线学习。我已经在数据集中训练了一个模型,并且模型工作得很好,但是,随着时间的推移,我需要捕获新的面孔(类)并将其添加到现有的数据集中。我有什么方法可以用新的类训练模型而无需从头开始进行训练?

到目前为止,我还没有找到任何丰富的资源,如果有人可以指出我在某处,我会非常感激。

1 个答案:

答案 0 :(得分:1)

我的建议是使用以下两种技术之一来训练您的模型:

最后,您应该认为您不会保留该模型,而只是将其用作特征提取器。换句话说,这些模型将非常擅长提取未分类的面部信息(这不会成为他们的任务)。

稍后您可以修复该模型,然后可以执行其他操作:

  • 直接使用距离作为余弦来识别相对于数据集的最接近的人脸(如果您不需要非常确定的准确性,则可以使用)。您可以在人脸特征和整个数据库之间直接使用KNN,并将识别结果视为最接近的人脸。

  • 您将训练一个附加模型,该模型使用先前模型的功能。您可以再次使用神经网络,但是在这种情况下,我的建议是使用SVM(因为SVM模型是LASVM,是在线学习的近似值)。因此,他们只需要经常训练一个小的分类器。 https://machinelearningmastery.com/how-to-develop-a-face-recognition-system-using-facenet-in-keras-and-an-svm-classifier/