triplet-loss minist 代码实现

参考链接:https://github.com/SpikeKing/triplet-loss-mnist

本文用于记录一下在跑这个代码时遇到的一些问题以及解决办法:

Environment

  • python2.7
  • keras ‘2.2.4’
  • tensorflow ‘1.13.1’
  • numpy ‘1.16.4’
  • pydot ‘1.2.4’
  • graphviz ‘2.40.1’
  • bunch ‘1.0.1’

问题一:

OSError: `pydot` failed to call GraphViz.Please install GraphViz (https://www.graphviz.org/) and ensure that its executables are in the $PATH.

解决办法:

pip install pydot-ng

pip install pydot==1.2.4

conda install graphviz

问题二:

TypeError: Required Group, str or dict. Received: .

解决办法:
修改代码:
triplet_trainer.py 87行

self.model.save(str(os.path.join(self.config.cp_dir,"triplet_loss_model.h5")))

triplet_infer.py 36行

model_path = str(os.path.join(self.config.cp_dir, "triplet_loss_model.h5"))

运行python main_train.py -c configs/triplet_config.json
训练截图:
triplet-loss minist 代码实现_第1张图片

运行python main_test.py -c configs/triplet_config.json
测试截图:
triplet-loss minist 代码实现_第2张图片

triplet-loss minist 代码实现_第3张图片

你可能感兴趣的:(机器学习)