开源
Caffe:深度学习框架
来源:元经纪     阅读:907
网站管理员
发布于 2023-03-07 07:46
查看主页

概述

Caffe 是一个深度学习框架,在构建时考虑到了表达、速度和模块化。它由 Berkeley AI Research ( BAIR )/The Berkeley Vision and Learning Center (BVLC) 和社区贡献者开发。

安装示例:

安装之前,请浏览本指南并记下适用于您的平台的详细信息。我们在 Ubuntu 16.04–12.04、OS X 10.11–10.8 上以及通过 Docker 和 AWS 安装并运行 Caffe。官方 Makefile 和Makefile.config 更新 Caffe 时,最好make clean在重新编译之前。

必要条件

[hidecontent type="logged" desc="隐藏内容:登录后可查看"]

分步说明 概述 Caffe 有几个依赖项:
  • GPU 模式需要 CUDA 。
    • 建议使用库版本 7+ 和最新的驱动程序版本,但 6.* 也可以
    • 5.5 和 5.0 是兼容的,但被认为是遗留的
  • 通过 ATLAS、MKL 或 OpenBLAS 的BLAS 。
  • 提升>= 1.55
  • protobufgloggflags,hdf5
可选依赖项:
  • OpenCV >= 2.4 包括 3.0
  • IO 库:lmdbleveldb(注意:leveldb 需要snappy
  • 用于 GPU 加速的 cuDNN (v6)
Pycaffe 和 Matcaffe 接口有其天然的需求。
  • 对于 Python Caffe: Python 2.7Python 3.3+numpy (>= 1.7), boost-providedboost.python
  • 对于 MATLAB Caffe:带有mex编译器的 MATLAB。
cuDNN Caffe:为了实现最快的操作,Caffe 通过NVIDIA cuDNN的嵌入式集成加速。要加速您的 Caffe 模型,请安装 cuDNN,然后在安装 Caffe 时取消注释USE_CUDNN := 1标志。Makefile.config加速是自动的。当前版本为cuDNN v6;较旧的 Caffe 支持较旧的版本。 CPU-only Caffe:对于冷酿的 CPU-only Caffe,取消注释CPU_ONLY := 1Makefile.config配置和构建没有 CUDA 的 Caffe。这有助于云或集群部署。

CUDA 和 BLAS

Caffe 需要 CUDAnvcc编译器来编译其 GPU 代码和 CUDA 驱动程序以进行 GPU 操作。要安装 CUDA,请访问NVIDIA CUDA 网站并按照那里的安装说明进行操作。分别安装库和最新的独立驱动程序;与库捆绑的驱动程序通常已过时。警告!331.* CUDA 驱动程序系列有一个严重的性能问题:不要使用它。 为了获得最佳性能,可以使用NVIDIA cuDNN加速 Caffe 。在 cuDNN 站点免费注册,安装它,然后按照这些安装说明继续。要使用 cuDNN 进行编译,请USE_CUDNN := 1在您的Makefile.config. Caffe 需要 BLAS 作为其矩阵和向量计算的后端。这个库有几个实现。这是你的选择:
  • ATLAS:免费、开源,因此是 Caffe 的默认设置。
  • Intel MKL:针对 Intel CPU 进行商业化和优化,具有免费许可证。
    1. 安装 MKL。
    2. 设置 MKL 环境(详细信息:LinuxOS X)。示例:source /opt/intel/mkl/bin/mklvars.sh intel64
    3. 置入BLAS := mkl_Makefile.config
  • OpenBLAS:免费和开源;这个优化的并行 BLAS 可能需要更多的安装工作,尽管它可能会提供加速。
    1. 安装 OpenBLAS
    2. 置入BLAS := open_Makefile.config

Python 和/或 MATLAB Caffe(可选)

Python

主要需求是numpyand boost.python(由boost提供)。pandas也很有用,某些示例需要它。 您可以安装依赖项
for req in $(cat requirements.txt); do pip install $req; done
但我们建议首先安装Anaconda Python 发行版,它提供了大部分必需的包以及hdf5库依赖项。 安装完成后导入caffePython模块,将模块目录添加到你$PYTHONPATH的byexport PYTHONPATH=/path/to/caffe/python:$PYTHONPATH之类。你不应该在caffe/python/caffe目录中导入模块! Caffe 的 Python 接口适用于 Python 2.7。Python 3.3+ 应该在没有 protobuf 支持的情况下开箱即用。如需 protobuf 支持,请安装 protobuf 3.0 alpha (https://developers.google.com/protocol-buffers/)。早期的 Python 是你自己的冒险。

软件

安装 MATLAB,并确保它mex在您的$PATH. Caffe 的 MATLAB 接口适用于 2015a、2014a/b、2013a/b 和 2012b 版本。

汇编

Caffe 可以使用 Make 或 CMake 编译。Make 得到官方支持,而 CMake 得到社区支持。

用 Make 编译

通过为您的设置复制和修改示例来配置构建Makefile.config。默认值应该有效,但如果使用 Anaconda Python,请取消注释相关行。
cp Makefile.config.example Makefile.config
# Adjust Makefile.config (for example, if using Anaconda Python, or if cuDNN is desired)
make all
make test
make runtest
  • 对于 CPU 和 GPU 加速的 Caffe,不需要任何更改。
  • 对于使用 NVIDIA 专有 cuDNN 软件的 cuDNN 加速,取消USE_CUDNN := 1注释Makefile.config. cuDNN 有时但并不总是比 Caffe 的 GPU 加速更快。
  • 对于 CPU-only Caffe,CPU_ONLY := 1Makefile.config.
要编译 Python 和 MATLAB 包装器,请分别执行make pycaffemake matcaffe。请务必先设置您的 MATLAB 和 Python 路径Makefile.configDistribution:运行make distribute以创建一个distribute目录,其中包含分发到其他机器所需的所有 Caffe 标头、编译库、二进制文件等。 速度:为了更快地构建,通过执行并行编译,make all -j8其中 8 是用于编译的并行线程数(线程数的一个不错选择是机器中的内核数)。 现在您已经安装了 Caffe,请查看MNIST 教程http://caffe.berkeleyvision.org/gathered/examples/mnist.html 和参考 ImageNet 模型教程http://caffe.berkeleyvision.org/gathered/examples/imagenet.html。

构建

Makefile.config由于 @Nerei、@akosiorek 和社区的其他成员,Caffe 提供了一个非官方的 CMake 构建,而不是手动编辑以配置构建。它需要 CMake 版本 >= 2.8.7。基本步骤如下:
mkdir build
cd build
cmake ..
make all
make install
make runtest
有关选项和详细信息,请参阅PR #1667

硬件

实验室测试硬件:Berkeley Vision 在 Titan Xs、K80s、GTX 980s、K40s、K20s、Titans 和 GTX 770s 上运行 Caffe,包括 ImageNet/ILSVRC 规模的模型。对于 CUDA 功能 >= 3.0 的设备,我们在内部没有遇到任何问题。到目前为止,所有报告的硬件问题都是由于 GPU 配置、过热等原因造成的。 CUDA 计算能力:由于硬件限制,计算能力 <= 2.0 的设备可能不得不减少 CUDA 线程数和批处理大小。谨慎酿造;我们建议计算能力 >= 3.0。 安装后,请根据我们的参考性能数据检查您的时间,以确保一切配置正确。 在caffe-users 组询问硬件问题。

[/hidecontent]

 
免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 开源
深圳全面构建超大城市数字电网
企元数智如何解决全网营销的痛点?
科富花炮鞭炮智能化生产线项目 签约启动
聪明“脑”指挥灵巧“手”
以科技金融和风险管控为抓手,哈银消费金融持续增强市场竞争力!

首页

分类

定制方案

消息

我的