关闭

Docker-tensorflow跑VGG16

标签: VGGdockertensorflow
3823人阅读 评论(7) 收藏 举报
分类:

在我们的实际项目中,一般不会直接从第一层直接开始训练,而是通过在大的数据集上(如ImageNet)训练好的模型,把前面那些层的参数固定,在运用到我们新的问题上,修改最后一到两层,用自己的数据去微调(finetuning),一般效果也很好。

如果要在docker上的tensorfow上跑,我们需要做以下几件事情:

1.下载好VGG16的权重文件

一般是 VGG16_Weights.npy ,或者VGG_Weights.npz, 可以自行百度上搜,文件比较大,我下的是537M,外网比较慢的话,可以从百度网盘上下;

(补充一个VGG下载链接(墙外):https://mega.nz/#!YU1FWJrA!O1ywiCS2IiOlUCtCpI6HTJOMrneN-Qdv3ywQP5poecM


2. 把主机上包含VGG16_Weights.npy权重的文件夹挂载到tensorflow上

由于文件很大,不可能直接上传,docker给镜像提供了挂载机制,具体操作是通过docker -v 主机地址:挂载目录的方式,以我的为例:


docker run -it - p 8888:8888 -v /home/zhu/Downloads:/aa/data tensorflow/tensorflow


通过这种方式,我就把我Downloads文件夹挂载到了tensorflow上,就可以直接引用了;

可以检查以下是否挂载成功:

# cd  /aa/data
# ls
data   data1(1)  input_data.py     rtl8192eu-master.zip   tensorflow-vgg-master.zip  vgg16_weights.h5
data1  data2     rtl8192eu-master  tensorflow-vgg-master  vgg16.py                   vgg16_weights.npz



3. 定义VGG网络结构

github上有很多开源代码,这里给出一个https://github.com/leihe001/tensorflow-vgg


4. 根据需要修改网络结构


5.fine-tuning VGG

finetuning的流程可以参见 http://blog.csdn.net/andrewseu/article/details/70142950 caffe finetuning CaffeNet流程总结


补充:

不fine-tuning的情况下提取VGG特征



参考资料:

1. https://my.oschina.net/piorcn/blog/324202(docker挂载文件目录)

2. http://scikit-image.org/docs/dev/install.html(scikit-image)

3. https://github.com/leihe001/tensorflow-vgg(VGG16 & VGG19)

4. http://www.cnblogs.com/dmir/p/5009075.html(.npy&.npz文件)

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

TensorFlow VGG-16 预训练模型

在我们的实际项目中,一般不会直接从第一层直接开始训练,而是通过在大的数据集上(如ImageNet)训练好的模型,把前面那些层的参数固定,在运用到我们新的问题上,修改最后一到两层,用自己的数据去微调(f...
  • daydayup_668819
  • daydayup_668819
  • 2017-04-18 10:14
  • 14060

自动下载解压的python logging download os ,一份比较好的python下载解压代码

复制文件 #copy the file "test.py" in now path to the child path mytest/ if not os.path.exists("mytest")...
  • cai13160674275
  • cai13160674275
  • 2017-03-09 14:42
  • 1053

使用vgg16模型进行图片预测

使用vgg16模型进行图片预测
  • u013473520
  • u013473520
  • 2016-02-24 14:27
  • 37552

基于深度学习和迁移学习的识花实践

深度学习是人工智能领域近年来最火热的话题之一,但是对于个人来说,以往想要玩转深度学习除了要具备高超的编程技巧,还需要有海量的数据和强劲的硬件。不过 TensorFlow 和 Keras 等框架的出现大...
  • c2a2o2
  • c2a2o2
  • 2017-11-23 17:29
  • 256

学习TensorFlow,调用预训练好的网络(Alex, VGG, ResNet etc)

视觉问题引入深度神经网络后,针对端对端的训练和预测网络,可以看是特征的表达和任务的决策问题(分类,回归等)。当我们自己的训练数据量过小时,往往借助牛人已经预训练好的网络进行特征的提取,然后在后面加上自...
  • helei001
  • helei001
  • 2016-11-14 16:20
  • 21916

vgg16测试模型的实现

VGG-16又称为OxfordNet,是由牛津视觉几何组(Visual Geometry Group)开发的卷积神经网络结构。 VGG在2014年的 ILSVRC localization and c...
  • u011489887
  • u011489887
  • 2017-10-03 18:57
  • 339

keras面向小数据集的图像分类(VGG-16基础上fine-tune)实现(附代码)

本文地址:http://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html ...
  • caanyee
  • caanyee
  • 2016-09-11 10:48
  • 19077

caffe+python 使用训练好的VGG16模型 对 单张图片进行分类,输出置信度

网上看了一堆都是图片转lmdb格式,然后测试总的准确率,我想测试每张图片的top1,top2以及对应置信度是多少,摸索了一下午+一晚上终于搞定,期间遇到不少坑!!!同时感谢实验室博士师兄一块帮我找bu...
  • tangwenbo124
  • tangwenbo124
  • 2016-10-02 22:12
  • 12298

vgg16 包括网络参数的导入

1. vgg16 含有导入网络参数 2.值得学习的部分为: 2.1 参数移植, 但不太了解assign的用法 sess.run(self.parameters[i].assign(w...
  • wuguangbin1230
  • wuguangbin1230
  • 2017-03-22 21:57
  • 1002

keras用vgg16预训练的参数训练自己数据集

keras深度学习入门
  • cai13160674275
  • cai13160674275
  • 2017-05-17 15:52
  • 2112
    个人资料
    • 访问:328452次
    • 积分:5014
    • 等级:
    • 排名:第6511名
    • 原创:182篇
    • 转载:11篇
    • 译文:1篇
    • 评论:115条
    最新评论