python - 如何准备数据集以训练暹罗神经网络

标签 python keras neural-network computer-vision conv-neural-network

我正在尝试通过使用 keras 构建人脸识别模型来实现暹罗神经网络。之前我通过使用分类实现了 CNN 人脸识别模型(使用 keras),因此我的数据集已分为训练数据、训练标签、验证数据、验证标签和测试数据。我为此目的使用的数据集包含 226 个图像类。我使用 2799 个图像进行训练,使用 226 个图像进行验证。现在我想使用该数据集来训练暹罗神经网络。如何为此目的分割数据?

最佳答案

对于连体神经网络,每个类需要的图像数量非常少。这些网络学习区分而不是分类。如果您从每个类中取一个 inage 意味着 226 个类,那么:

  • 形成图像对。如果一对中的两个图像属于同一类,则关联标签为 1,否则设置为 0。因此,对的最大数量非常巨大 ( 226^226 )。将这些对限制在一定数量。

查看此blog .

关于python - 如何准备数据集以训练暹罗神经网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56854988/

相关文章:

python - 无法在使用 pyvenv-3.4 构建的虚拟环境中使用 pip 安装请求

python - 为什么字符串方法在 for 循环中使用时停止对对象列起作用

python - 训练 CNN 后准确率较低

python - 为 PyTorch 中的简单神经网络增加训练和测试精度

machine-learning - 如何保存 keras 实验运行产生的数据结果?

machine-learning - 使用神经网络学习方波函数

python - django查询用于对作为外键出现的字段上的数据进行排序

Python:小波、PyWavelets 的问题

python - 属性错误 : 'module' object has no attribute 'computation'

keras - 如何在 Keras 的培训类(class)中保留指标值?