基于深度学习的图像匹配技术专题- [Patch-Based Matching 2]-matchnet- Trianing in Caffe frame
2018-01-23 15:08
519 查看
这个博客主要介绍 如何把实验在Caffe上跑起来。在服务器上,有几个常用的指令。
1. 服务器与本地传输 数据 scp -r ../.. username@ip: ../..
2.ssh 登陆命令
在数据上下载好数据以后,执行作者已经写好的SHELL:
在运行的时候会报几个错误,已经有前辈( 配置和运行matchnet),准备好了解决方案,应该会对大家有帮助。
其实,在生成数据集的时候,如果你只有其中的一两个,也是会报错的。
所以,需要你把不用的语句注释掉,就可以解决这个问题。
————————————————————————————————————————
论文提供了训练好的模型,数据集做好之后就可以运行这个模型,看看正确率是多少。现在我们要如何训练自己的模型呢?
用mnist训练Lenet模型的例子,分为三步:1,下载数据;2,制作数据集;3,训练模型
在训练shell中调用:
./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt $@
可见是 lenet_solver.prototxt文件--网络求解文件,这个文件主要包含了一些求解网络,梯度下降参数、迭代次数等参数……,看下手写字体的solver.prototxt文件.
在这个文件中,我们可以看迭代次数,测试间隔,学习率等。
————————————————————————————————————————————————————
通过对mnist结构的分析,我们发现文章作者只提供了如何做数据的代码和一个matchNet.py文件,没有公布网络结构文件和网络参数配置文件,好吧,只能靠自己了。
说了这么多,还是不能训练自己的模型,但是这个话题并没有终结,是我近期要完成的工作,欢迎follow.
1. 服务器与本地传输 数据 scp -r ../.. username@ip: ../..
2.ssh 登陆命令
在数据上下载好数据以后,执行作者已经写好的SHELL:
./run_gen_data.sh
在运行的时候会报几个错误,已经有前辈( 配置和运行matchnet),准备好了解决方案,应该会对大家有帮助。
其实,在生成数据集的时候,如果你只有其中的一两个,也是会报错的。
所以,需要你把不用的语句注释掉,就可以解决这个问题。
————————————————————————————————————————
论文提供了训练好的模型,数据集做好之后就可以运行这个模型,看看正确率是多少。现在我们要如何训练自己的模型呢?
用mnist训练Lenet模型的例子,分为三步:1,下载数据;2,制作数据集;3,训练模型
在训练shell中调用:
./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt $@
可见是 lenet_solver.prototxt文件--网络求解文件,这个文件主要包含了一些求解网络,梯度下降参数、迭代次数等参数……,看下手写字体的solver.prototxt文件.
在这个文件中,我们可以看迭代次数,测试间隔,学习率等。
# The train/test net protocol buffer definition net: "examples/mnist/lenet_train_test.prototxt" //网络协议具体定义 # test_iter specifies how many forward passes the test should carry out. # In the case of MNIST, we have test batch size 100 and 100 test iterations, # covering the full 10,000 testing images. test_iter: 100 //test迭代次数 如果batch_size =100,则100张图一批,训练100次,则可以覆盖10000张图的需求 # Carry out testing every 500 training iterations. test_interval: 500 //训练迭代500次,测试一次 # The base learning rate, momentum and the weight decay of the network. //网络参数:学习率,动量,权重的衰减 base_lr: 0.01 momentum: 0.9 weight_decay: 0.0005 # The learning rate policy //学习策略:有固定学习率和每步递减学习率 lr_policy: "inv" gamma: 0.0001 power: 0.75 # Display every 100 iterations //每迭代100次显示一次 display: 100 # The maximum number of iterations //最大迭代次数 max_iter: 10000 # snapshot intermediate results // 每5000次迭代存储一次数据,路径前缀是<span style="font-family: Arial, Helvetica, sans-serif;">examples/mnist/lenet</span> snapshot: 5000 snapshot_prefix: "examples/mnist/lenet"
————————————————————————————————————————————————————
通过对mnist结构的分析,我们发现文章作者只提供了如何做数据的代码和一个matchNet.py文件,没有公布网络结构文件和网络参数配置文件,好吧,只能靠自己了。
说了这么多,还是不能训练自己的模型,但是这个话题并没有终结,是我近期要完成的工作,欢迎follow.
相关文章推荐
- 基于深度学习的图像匹配技术专题- [Patch-Based Matching 1]-从matchnet 开始
- 基于深度学习的图像匹配技术专题- [patch based matching4]-手把手教你实现MatchNet
- 基于深度学习的图像匹配技术专题- [patch based matching5]-手把手教你实现MatchNet(Metric network)
- 基于深度学习的图像匹配技术专题- [patch based matching6]-将匹配进行到底
- 基于深度学习的图像匹配技术专题- [patch based matching3]-mnist siamese 学习
- 论文笔记 | 基于深度学习的图像语义分割技术概述之5.1度量标准
- 基于深度学习的图像语义分割技术概述之背景与深度网络架构
- 基于深度学习的图像语义分割技术概述之背景与深度网络架构
- 基于深度学习的图像语义分割技术概述之5.4未来研究方向
- 基于深度学习的图像语义分割技术概述之常用方法
- 基于深度学习的图像语义分割技术概述之背景与深度网络架构
- 基于深度学习的图像语义分割技术概述之5.1度量标准
- 基于深度学习的图像语义分割技术概述之4常用方法
- 基于深度学习的人脸识别系统系列(Caffe+OpenCV+Dlib)——【二】人脸检测与预处理接口的设计
- 自然图像抠图/视频抠像技术发展情况梳理(image matting, alpha matting, video matting)--计算机视觉专题1
- 【《Real-Time Rendering 3rd》 提炼总结】(九) 第十章 · 游戏开发中基于图像的渲染技术总结
- [转]基于OpenCV的PHP图像人脸识别技术
- 基于深度学习的人脸识别系统系列(Caffe+OpenCV+Dlib)——【四】使用CUBLAS加速计算人脸向量的余弦距离
- Image inpainting 图像修复,基于梯度(一阶导数)和拉普拉斯算子(二阶导数)
- 【Python】【Caffe】图像特征与特征库匹配的物体识别方法