bilylee / SiamFC-TensorFlow

A TensorFlow implementation of the SiamFC tracker
MIT License
358 stars 112 forks source link

训练流程与测试流程的区别? #58

Closed Hislocked closed 5 years ago

Hislocked commented 6 years ago

你好,非常感谢你精彩绝伦的代码。 在调用的过程中,发现了如下奇怪现象: 将训练集与验证集所用的图片都换成了同一张,并且验证与训练的预处理方法都更改为None。 但是训练起来后发现,训练与验证的log并不是完全一致,结果如下图,请问这样的原因是什么? 2018-09-10 10-30-21

谢谢

bilylee commented 5 years ago

你好,

训练和测试时并不完全一致。

  1. 训练时有 data augmentation;
  2. Batch Normaizatin 训练和测试时不同;

你可以将 data augmentation 去掉,即删除这里的 RandomStretch() 和 RandomCrop(255 - 2 * 8) https://github.com/bilylee/SiamFC-TensorFlow/blob/17f51563f081281fc7d966602d393715e7ecb469/datasets/dataloader.py#L33-L39

并且将下面改为 is_model_training = True. https://github.com/bilylee/SiamFC-TensorFlow/blob/17f51563f081281fc7d966602d393715e7ecb469/embeddings/convolutional_alexnet.py#L43

再进行比较。

bilylee commented 5 years ago

Close due to lack of activity. Feel free to reopen.