【深度学习框架】-Caffe(入门级学习一:简单介绍)
1.什么是Caffe?
全称-Convolutional Architecture for Fast Feature Embedding,核心语言C++,支持命令行、Python和Matlab接口,支持CPU和GPU运行。
2.Caffe架构:
(1)数据存储: Caffe通过”blobs”以N维数组的方式存储和传递数据(相当于将数据封装了起来)。Blobs提供了一个统一的内存接口,用于数据的存储和传递(包括原始数据,模型参数等)。
常规4维数组:N,K,H,W(图像数,通道数,图像高,图像宽)
注:Caffe支持的数据类型不包括图像类型,训练前需要将图像类型转为lmdb类型的数据。
(2)layer: Caffe layer采用一或多个blobs作为输入,并产生一或多个blobs输出,Caffe提供了完整的layer类型(数据层、卷积层、激活层、loss层……)。
layer的定义由两部分组成,层属性和层参数,每个layer有’bottom’ blobs(表示输入),’top’ blobs(表示输出)。
(3)Net: Net是由layers组成的有向无环图(DAG),一个典型的网络始于数据层终于loss层。
(4)Model: 以Google Protocol Buffers的方式进行存储(xx.prototxt格式),训练得到的模型格式:xx.caffemodel (binaryproto)。
(5)Solver: 用于网络的求解,模型的优化。Solver每一次迭代:1⃣️调用forward计算输出和loss,2⃣️调用backward计算梯度,3⃣️按照solver方法,进行参数更新和优化。
Caffe solver方法:随机梯度下降(Stochastic Gradient Descent, type:”SGD”);AdaDelta(type:”AdaDelta”);自适应梯度(Adaptive Gradient,type:”AdaGrad”);Adam(type:”Adam”);Nesterov’s Accelerated Gradient(type:”Nesterov”);RMSprop(type:”RMSProp”).
3.Caffe中的迁移学习:
Fine-tuning:Caffe中同样可以加载pretrained model进行迁移学习。
4.为什么选择Caffe?
(1)模型的定义与优化均在配置文件中实现,不需要写太多的代码,代码能力弱的朋友也可以很容易地上手;
(2)CPU与GPU之间转换方便,可实现无缝切换;
(3)Caffe的速度快,高效;
(4)模块化,使得代码有很好的可扩展性;
(5)开源,且社区好,在学术界和工业界均有很好的支撑。
参考:
1. https://blog.csdn.net/qq_27923041/article/details/77431833
2. https://blog.csdn.net/ycheng_sjtu/article/details/39693655
【深度学习框架】-Caffe(入门级学习一:简单介绍)相关推荐
- 深度学习框架Caffe源码解析
作者:薛云峰(https://github.com/HolidayXue),主要从事视频图像算法的研究, 本文来源微信公众号:深度学习大讲堂. 原文:深度学习框架Caffe源码解析 欢迎技术投稿. ...
- HI3559A和AI深度学习框架caffe
from:http://blog.sina.com.cn/s/blog_156e567660102ygdf.html 1.HI3559A支持深度学习框架caffe.其中的NNIE神经网络加速单元是主要 ...
- 深度学习框架caffe及py-faster-rcnn详细配置安装过程
深度学习框架caffe及py-faster-rcnn详细配置安装过程 配置环境: ubuntu14.04 CUDA7.5 1.准备工作 安装vim.python-pip.git sudo apt-ge ...
- 深度学习框架Caffe, MXNet, TensorFlow, Torch, CNTK性能测试报告
香港浸会大学对于深度学习框架Caffe, MXNet, TensorFlow, Torch, CNTK性能测试报告 http://dlbench.comp.hkbu.edu.hk/
- 【深度学习】caffe 中的一些参数介绍
[深度学习]caffe 中的一些参数介绍 标签: 深度学习caffe 2016-05-30 14:33 7122人阅读 评论(1) 收藏 举报 本文章已收录于: 分类: [机器学习&深度 ...
- 【学习记录】Inception结构的简单介绍及Filter Concatenation的理解
文章目录 [学习记录]Inception结构的简单介绍及Filter Concatenation的理解 Inception Filter Concatenation [学习记录]Inception结构 ...
- python学习笔记(一)Python 简单介绍
Python学习笔记(一)Python 简单介绍 Python介绍 Python简介 Python应用领域 Python是解释型的语⾔ 编译和解释的区别是什么? 编译型vs解释型 编译型 解释型 Py ...
- 35 万行代码,旷视重磅开源天元深度学习框架 ,四大特性实现简单开发
[导读]2020 年 3 月 25 日,人工智能企业旷视科技举办线上发布会,旷视联合创始人兼 CTO 唐文斌宣布正式开源其 AI 生产力平台 Brain++ 的核心组件--天元(MegEngine). ...
- 贾扬清分享_深度学习框架caffe
Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的 贾扬清,目前在Google工作.本文是根据机器学习研究会组织的online分享的交流内容,简单的整理了一下. ## ...
- Windows系统下首次安装深度学习框架Caffe失败
Caffe,全称Convolutional Architecture for Fast Feature Embedding,是一个兼具表达性.速度和思维模块化的深度学习框架. 下载caffe,GitH ...
最新文章
- 相机与激光雷达融合的3D目标检测方法MVAF-Net
- ubuntu 配置网络
- SpringMVC 类扫描原理解析
- [SCOI2005]扫雷
- 使用泛型查询数据小例
- 抽象类 VS 接口 (3)
- java 压缩多个文件_java实现一次性压缩多个文件到zip中的方法示例
- 【转】Android 4.4前后版本读取图库图片和拍照完美解决方案
- iphone打字怎么换行_除了打字,iPhone的键盘还有这12个功能
- 网络发展之网络电话应用
- Linux环境下用vim编写编译运行C/C++程序
- 2.ubuntu 配置目录
- Atitit cio之道 attilax著 2. CIO是企业组织很重要的一个官员,未来就靠信息取胜了	1 3. Cio职责	2 3.1. 企业信息化 对信息技术的利用来实现组织攻略目标	2 3
- 三星note10 android11,【极光ROM】-【三星NOTE10/NOTE10+/5G N97XX-9825】-【V11.0 Android-R-UCD】...
- vscode更改背景颜色
- 每周一练:如何创建自己的Python爬虫代理IP池(免费IP)
- 信息学奥赛知识点(一)—计算机基础知识【转载】
- 【MATLAB】基础01
- 合肥工业大学宣城校区计算机大赛,合工大宣城校区学子!全国冠军!
- scaffold-dbcontext 命令使用说明
热门文章
- 二、vue组件化开发(轻松入门vue)
- 随机森林算法原理梳理
- kuka机器人程序是c语言吗,KUKA机器人示教器编程问题讲解——KUKA机器人
- matlab 加根号
- mysql数据库默认管理员是_数据库管理员密码的设置
- 【Arduino】步进电机驱动程序Stepper_Motor_TB6600
- 如何格式化写保护的U盘(删除多个盘的U盘)
- php自动发卡程序8.0_API支付代理版自动发卡平台源码 v4.5.8
- 2020-09-08风扇并联与串联应用学习
- somachineV4.1的注册