Caffe是由伯克利人工智能研究实验室(BAIR)开发的深度学习框架,由Yangqing Jia创建,Evan Shelhamer担任首席开发者。
核心特点
灵活的架构:模型和优化通过配置定义,无需硬编码;仅需设置一个标志即可在CPU和GPU之间切换,方便在GPU机器上训练后部署到通用集群或移动设备。
可扩展的代码:首个年份就被超1000名开发者分叉,大量社区贡献让框架跟踪代码和模型的最新进展。
高效的速度:单NVIDIA K40 GPU每天可处理超6000万张图片(基于ILSVRC2012获奖模型SuperVision和预取IO),是现有最快的卷积网络实现之一,后续版本和硬件速度更优。
广泛的社区:支持学术研究项目、创业原型及视觉、语音、多媒体领域的大规模工业应用,社区交流可通过caffeusers小组和GitHub进行。
文档与资源
教程资料:包含《DIY Deep Learning for Vision with Caffe》(框架介绍)、《Caffe in a Day》(全天速成课程)、教程文档(实用指南与框架参考)。
学术与安装:提供arXiv/ACM MM ‘14论文(4页ACM多媒体开源竞赛报告)、安装指南(适配Ubuntu、Red Hat、OS X)。
模型与开发:Model Zoo(BAIR推荐的Caffe模型标准分发格式及预训练模型)、开发贡献指南(开发与贡献规范)、API文档(代码注释自动生成的开发者文档)、基准测试(不同网络和GPU的推理与学习对比)。
示例内容
Notebook示例:涵盖图像分类与滤波器可视化(用预训练模型即时识别、逐层可视化特征与参数)、LeNet学习(用Python接口定义、训练和测试经典LeNet)、风格识别微调(在ImageNet训练的CaffeNet上微调新数据)、非图像HDF5数据的逻辑回归训练、Python数据层的多标签分类、模型参数编辑、RCNN检测、Siamese网络嵌入等。
命令行示例:包括ImageNet教程(训练测试CaffeNet)、LeNet MNIST教程、CIFAR10教程、Flickr Style数据集微调、C++特征提取、C++分类示例、Flask web服务器运行的图像分类演示、MNIST上的Siamese网络训练测试等。
引用与联系
引用要求:若研究中使用Caffe,需按指定格式引用论文(Jia et al., 2014),鼓励通过Google Scholar追踪引用。
联系渠道:通过caffeusers小组讨论使用、安装和应用问题;框架开发讨论与详细bug报告提交至GitHub Issues。
致谢
感谢NVIDIA捐赠GPU、A9与AWS提供研究资助支持Caffe开发及深度学习可复现研究,BAIR PI Trevor Darrell提供指导;感谢Carl Doersch、Eric Tzeng等BAIR成员及开源社区贡献者。Yangqing个人致谢NVIDIA学术项目、Oriol Vinyals的讨论及Trevor Darrell的建议。
