Pytorch 实现 Xception 模型,并从 TensorFlow 直接转化预训练参数

        本文作为下一篇文章(实现 DeepLab V3+ 语义分割模型)的前传,旨在用 Pytorch 实现 Xeption 分类模型。作为语义分割模型 DeepLab V3+ 的特征提取器,这里实现的 Xception 和论文中的模型在结构上有一些差别,具体为:

  • 全卷积,所有最大池化层都被步幅为 2 的可分离卷积替代
  • 加入了更多的批标准化(Batch Normalization)

        本文实现的 Xception 模型完全参照了其官方的 TensorFlow 实现(官方实现),甚至可以说就是简单的翻译。另外,为了便于使用,以及不需要耗费时间在 ImageNet 上训练就能得到预训练参数,我们还提供了用于直接将 TensorFlow 的预训练参数转化为 Pytorch 参数的代码。

        本文的所有代码见 GitHub: Xception,使用方式也已附在上面。

【参考】
从 TensorFlow 转化预训练参数参考了 EfficientNet-PyTorch 这个项目,具体文件为:load_tf_weights.py。

你可能感兴趣的:(Pytorch 实现 Xception 模型,并从 TensorFlow 直接转化预训练参数)