自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 Caffe 实践 在数据集MNIST上使用LeNet

概述安装好Caffe后,这篇文章是我根据http://caffe.berkeleyvision.org/gathered/examples/mnist.html 进行学习的笔记准备数据cd $CAFFE_ROOT#从http://yann.lecun.com/exdb/mnist/网上下载四个文件,train-images-idx3-ubyte train-labels-idx1-u

2016-10-04 05:37:57 509

原创 深度学习论文笔记 [图像处理] Deep Residual Learning for Image Recognition

概要证明了残差网络更容易训练,而且网络更深的时候能够取得更高的准确率。在ImageNet数据集上我们使用152层的残差网络并取得了3.57%的错误率。简介深度网络一直存在梯度消散的问题,但最近这个问题已经被normalized initialization和batch normalization很大程度的解决了。另一个问题是网络效果变差,当网络深度增加的时候,准确率反而比层数低的网络要差,但它并不是

2016-09-29 22:00:45 1862

原创 Caffe 实践 在macOS (版本号10.11) 上安装Caffe

安装指南主要是按照Caffe官方指南安装的,但遇到各种各样的问题。下面把我安装时遇到的问题和教训列出来,做个记录无法用brew install 安装snappy和leveldb。后来发现是因为我更新了MacOS的版本,homebrew原有的版本就失效了,原本brew update能够更新到最新的版本,但那个也失效了,于是我只能卸载掉homebrew重新安装它。结果就成功安装snappy和

2016-09-29 18:53:32 1092

原创 Caffe 源码阅读笔记 [基本模块] Caffe.cpp

概述到目前为止,我们已经把所有Caffe的基本模块从最基本的SyncedMemory到最上层的Solver都过了一遍。那么Caffe最后是怎么把他们串在一起的呢?这一篇主要讲解Caffe从main函数开始是怎么完成整个训练过程的Caffe支持的命令train: 训练或者调整一个模型test : 在测试集上测试一个模型device_query : 打印GPU的调试信息time:

2016-09-28 22:18:54 1340

原创 Caffe 源码阅读笔记 [基本模块] Solver

概述前面介绍了网络Net模块来描述一个神经网络,Solver则是一个计算模块对网络进行参数的优化。跟Layer一样,Caffe把Solver实现成一个接口,使得开发者可以开发自己的Solver。Solver成员变量 SolverParameter param_; // Solver参数 int iter_; // 第几次迭代 int current_step_; //

2016-09-27 21:48:49 960

原创 Caffe 源码阅读笔记 [基本模块] 网络Net

概述前面讲了Layer,Net就是把Layer串起来的神经网络。本篇主要讨论在神经网络中如何进行Layer之间的管理和计算Net成员变量 // Net相关变量 string name_; // 网络名字 Phase phase_; // TRAIN 或者 TEST // 网络的输入和输出Blobs以及在blobs_中对应的索引 vector*> net_inp

2016-09-24 22:18:49 782

原创 Caffe 源码阅读笔记 [基本模块] Layer和LayerFactory

概述因为前两篇讲的是数据的读取,本来是打算阅读DataLayer这一块的,但考虑到DataLayer是Layer的子类,因此从Caffe的另一个重要模块Layer开始看起感觉更自然。毕竟Caffe里面最多的代码都是各种各样的Layer,整个Caffe的神经网络都是一个个Layer串起来的,DataLayer只是网络的第一层而已。LayerLayer是神经网络的基本单元。每一个Lay

2016-09-23 22:02:24 671

原创 Caffe 源码阅读笔记 [DB] 存储Caffe数据的LevelDB类

概述上一篇文章 描述Caffe如何从DB读取训练集数据。这篇要研究DB的具体实现是什么样子的。Caffe目前支持从LevelDB和lmdb两种key-value store读取和存储数据。我个人认为rocksdb(leveldb的改进版)比lmdb性能会更好。因此我只对Caffe如何使用leveldb感兴趣,lmdb的部分因为时间关系略过。三个基本类Cursor, Transaction, DBCa

2016-09-23 21:17:14 1625

原创 Caffe 源码阅读笔记 [数据读入和处理] DataReader和DataTransformer

概述这一篇主要阅读Caffe如何从数据源读取训练数据和如何对训练数据进行变换。DataReaderDataReader通过LayerParameter获取配置信息。一个训练数据集可以读取到多个GPU(solver)进行训练。为了保证数据分布均匀,每个训练数据集只分配一个线程进行读取,这个线程把数据通过round-robin的方式分发给不同的GPU(solver),每个solver获得的数据是唯一的,

2016-09-23 17:16:11 1180

原创 Caffe 源码阅读笔记 [基本模块] Syncedmem & Blob

syncedmemsyncedmem管理一段大小为size的内存。这段内存可以从GPU或者主机内存分配,syncedmem负责GPU和主机内存之间的同步。如果数据是在GPU里而要从主机内存取出,syncedmem会先把数据从GPU内存memcpy到主机内存返回(标记为SYNCED); 相反也是一样。分配/释放内存的方式 CPU: ptr = malloc(size) / free(pt

2016-09-22 22:46:44 549

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除