1.Caffe是什么?
Caffe是个开源框架,这个框架是一个具有Python和MATLAB接口的一个具有BSD验证的C++库,用来训练和部署通用卷积神经网络和其他的深度学习。其中代码的书写是用十分简洁,高效的C++编写,结合GPU的CUDA进行运算。并且Caffe中有有序的,可扩展的,大量的先进深度学习算法的工具包以及参考模型。
那它到底有多牛叉呢,它在单个K40或者Titan GPU下每天可以处理4千万张图片,平均每2.5ms处理一张;Caffe通过从实际实现中分离模型表示,Caffe可以实验和无缝切换在先进的以及部署的平台从原型机到云环境间。现在运用到很多领域当中去了,不只单纯在视觉这个方面。
2.有啥亮点呢?
Caffe提供训练、测试、微调、部署一整套完善的工具包,并且有对所有这些任务的详细文本案例。与此同时它也是最有可能是对于一些算法最快速的实现,让其迅速进入到工业实践中;同时也是初学者一个很好的起点平台。
2.1 模块化
这款软件在设计时就尽可能的模块化,这样能够让其很轻松的扩展新的数据形式,网络层和损失函数。大量的层和损失函数已经应用到其中。
2.2 实现和表征的分离
Caffe模型的定义是使用Protocol Buffer语言的配置文件写的。Caffe支持在指向非循环图的形式中的网络结构。在实例化后,Caffe保存着与网络所需一样大小的内存,并且从主机或者GPU底层位置抽象出来。在CPU 和GPU之间的切换只需要一个函数就可以了。
2.3 测试覆盖
在Caffe中每一个模型都是已经经过测试过的,没有相关测试是不会有新的代码加入到项目中去。
2.4 Python和MATlAB接口
可能用于构建网络和分类输入;对于已经存在的(现有的)代码能够快速的兼容和应用。
2.5 预先训练的参考模型
Caffe提供视觉任务的参考模型,包括“ALexNet”和“R-CNN”;以及更多的模型计划发布。
2.6 对比于其他软件
1.完全基于C++基础的实现
一旦模型被训练了,CPU模型去除了具体化