孪生(siamese)网络的训练(keras 和 pytorch)

先放资料

  1. 论文
  2. pytorch教程
  3. 官网例子

孪生网络相关资料

1.最初的论文

论文Learning to Compare Image Patches via Convolutional Neural Networks

论文分析https://blog.csdn.net/shenziheng1/article/details/81226123

孪生网络的论文很多,没有太多时间阅读,之后再学习。

 

 

 

遇到的问题

首先尝试pytorch的训练(pytorch灵活),dataloader会出现线程错误(内存爆炸)。自己写了载入数据的程序,还是会卡在某一步。由于服务器跑程序,没有尝试去调试。

改用keras,载入数据程序月pytorch一致,没问题(pytorch有的bug)。

 

由于载入程序没改,导致训练不出结果。查找原因发现,两种损失函数不一致。keras采用原文的损失,pytorch修改了正负类别(坑)。需要调整标签。

pytorch:样本同类,标签为0;反之为1.

keras: 样本同类,标签为1;反之为0.

你可能感兴趣的:(图像处理,孪生网络,keras,pytorch)