1. 程式人生 > >【深度學習:21 天實戰 Caffe】Docker 映象更新

【深度學習:21 天實戰 Caffe】Docker 映象更新

百度網盤已棄用。隨書資源已經放在碼雲和 github,方便國內外朋友下載。

碼雲:https://gitee.com/yongkezhao/PracticeCaffeIn21Days

github:https://github.com/zhaoyongke/Caffe21Days

----------------------------------------------------------

不少讀者在準備 Caffe 環境時耗費太多時間,本文希望能大大加速這部分程序。

考慮讀者的本地環境各異,很難統一用一套流程,為此製作了標準 Docker 映象,包含了 Caffe 和必備的依賴包,開箱即用。

1. 快速搭建 Day 4 環境:

從官方拉取 docker image
$ docker pull zhaoyongke/bookenv:caffe_cpu_only

如果速度很慢,推薦阿里雲 Docker Hub:
$ docker pull registry.cn-hangzhou.aliyuncs.com/master_caffe_in_21days/caffe:cpu_only


建立一個 docker 例項:

$ docker run -ti registry.cn-hangzhou.aliyuncs.com/master_caffe_in_21days/caffe:cpu_only

建立成功後,依次執行如下命令來執行 MNIST 例程。

切到 Caffe 目錄。該原始碼克隆於 master 分支(20161112)。

$ cd root/caffe/
$ ./build/tools/caffe.bin
$ vi examples/mnist/lenet_solver.prototxt
將 solver_mode: GPU 改為 CPU
安裝 wget,便於執行獲取資料指令碼
$ apt-get install wget
獲取 MNIST 資料集
$ ./data/mnist/get_mnist.sh
用 MNIST 資料集建立 LMDB 資料庫
$ ./examples/mnist/create_mnist.sh
執行訓練
$ ./examples/mnist/train_lenet.sh


2. 快速搭建 Day 15 環境:

Docker 官方 Hub:
$ docker pull zhaoyongke/bookenv:caffe_gpu_driver367.57

阿里雲 Docker Hub:
$ docker pull registry.cn-hangzhou.aliyuncs.com/master_caffe_in_21days/caffe:gpu_driver367.57


編寫 Shell 指令碼內容如下,儲存為 start_docker_with_gpu_cuda.sh

#!/bin/bash
docker run -ti \
	--device /dev/nvidia0:/dev/nvidia0 \
	--device /dev/nvidiactl:/dev/nvidiactl \
	--device /dev/nvidia-uvm:/dev/nvidia-uvm \
	-v /usr/local/cuda:/usr/local/cuda \
	$1 \
	/bin/bash

建立 GPU Docker 例項:
$ ./start_docker_with_gpu_cuda.sh 6ce

其中 6ce 就是上圖對應剛剛 pull 下來的 docker image id 縮寫,也可以用 image repo:tag 這種格式:
$ ./start_docker_with_gpu_cuda.sh registry.cn-hangzhou.aliyuncs.com/master_caffe_in_21days/caffe:gpu_driver367.57

看到不如 image id 簡潔。

GPU 環境比較特殊,需要做額外的工作才能保證可用。

首先是驅動版本,如果你宿主機的 GPU 驅動版本與 docker 例項中版本不一致,會報錯:


解決方法:

將宿主機的驅動安裝包(NVIDIA-Linux-x86_64-xxx.xx.run)拷貝到 /usr/local/cuda/ 下面(因為我們做了宿主機和 docker 檔案共享,通過該目錄可以互相傳遞檔案),然後在 docker 例項中 cd 到 /usr/local/cuda/ 可以看到驅動安裝包。

執行如下命令:

$ ./NVIDIA-Linux-x86_64-xxx.xx.run -s -N --no-kernel-module

等待安裝成功,再執行 nvidia-smi,一切正常了。

其次是 CUDA 版本。docker 映象裡預設編譯好的 Caffe 依賴 CUDA 8.0,如果你宿主機上 CUDA 版本不同,需要重新編譯 Caffe。

相關推薦

深度學習21 實戰 CaffeDocker 映象更新

百度網盤已棄用。隨書資源已經放在碼雲和 github,方便國內外朋友下載。碼雲:https://gitee.com/yongkezhao/PracticeCaffeIn21Daysgithub:https://github.com/zhaoyongke/Caffe21Days

深度學習 21實戰Caffe》讀書筆記1

關於深度學習常見術語的通俗描述 “有監督”學習:上課時,我們跟著老師一步一步學習。 “無監督”學習:自主完成課後的作業。 “訓練資料集”:平時做的課後練習題。 “測試資料集”:考試時卷面的題目。 關於訓練效果: “學霸”:訓練效果其他人好,對測試資料集的所有情況如

深度學習 21實戰caffe學習筆記

第二天 深度學習的過往 2.1 傳統機器學習與深度學習方法 傳統機器學習:人工設計特徵提取器–>求取原始資料的特徵向量–>分類器對輸入進行檢測和分類; 深度學習方法:不需要設計特徵提取器,實現端到端的學習。 2.2 表示學習到深度學習 兩者關係:表示

深度學習21實戰caffe》第6 學習筆記

這一節的學習主要是通過手寫體數字識別例程來熟悉caffe的基本使用。 首先下載MNIST資料集 $ cd data/mnist $ ./get_mnist.sh 下載到四個檔案 訓練集(圖片)train-images-idx3-ubyte 訓練集(

深度學習 21實戰caffe 前三 筆記

本文用作《深度學習21天實戰caffe筆記》的備忘,請結合原書食用~ 前言 Caffe框架以“層”為單位對深度神經網路的結構進行了高度的抽象。 Caffe由賈楊清開發。 卷積神經網路發明者Geoffrey Hinton在20世紀70年代提出深度學習理論

caffe原始碼學習--blob基本用法(基於《21實戰caffe》)

1、p102頁編寫blob_demo.cpp後g++編譯生成app檔案。 在趙老師的書中,很簡單就寫成功,估計會有人出現一些錯誤。其實不是路徑問題,是格式的問題,嘿嘿! 在你寫好Blob模板類。生成可執行程式app的時候就會出現錯誤!  CAFFE_ROOT是您之前安

深度學習caffeCaffemodel解析

1 message NetParameter { 2 3 optional string name = 1; // 網路名稱 4 5 repeated string input = 3; // 網路輸入input blobs 6 7 repeated Blo

21實戰caffe筆記_第二

向量 非線性 結果 基本原則 過程 img 從表 而且 提取器 1 傳統機器學習 傳統機器學習:通過人工設計特征提取器,將原始數據轉化為合適的中間表示形式或者特征向量,利用學習系統(通常為分類器)可以對輸入模式進行檢測或者分類。流程如下:

深度學習目標檢測RCNN學習筆記(5)faster rcnn

轉載:http://blog.csdn.net/u011534057/article/details/51247371 reference link:http://blog.csdn.net/shenxiaolu1984/article/details/51152614

深度學習目標檢測RCNN學習筆記(1):Rich feature hierarchies for accurate object detection and semantic segmentat

轉載:http://blog.csdn.net/u011534057/article/details/51218218 rcnn主要作用就是用於物體檢測,就是首先通過selective search 選擇2000個候選區域,這些區域中有我們需要的所對應的物體的bound

深度學習目標檢測RCNN學習筆記(10)SSD:Single Shot MultiBox Detector

之前一直想總結下SSD,奈何時間緣故一直沒有整理,在我的認知當中,SSD是對Faster RCNN RPN這一獨特步驟的延伸與整合。總而言之,在思考於RPN進行2-class分類的時候,能否借鑑YOLO並簡化faster rcnn在21分類同時整合faster rcnn中anchor boxes實現m

深度學習CNNDropout解析(1)

一:引言   因為在機器學習的一些模型中,如果模型的引數太多,而訓練樣本又太少的話,這樣訓練出來的模型很容易產生過擬合現象。在訓練bp網路時經常遇到的一個問題,過擬合指的是模型在訓練資料上損失函式比較小,預測準確率較高(如果通過畫圖來表示的話,就是擬合曲線比較尖,不平滑

深度學習目標檢測 RCNN學習筆記(11):R-FCN: Object Detection via Region-based Fully Convolutional Networks

轉自:http://blog.csdn.NET/shadow_guo/article/details/51767036 作者代季峰 1,14年畢業的清華博士到微軟亞洲研究院的視覺計算組,CVPR 16 兩篇一作的會議主持人同時公佈了原始碼~ 2 1. 簡介

深度學習Ubuntu 常用軟體安裝Tensorflow + TeamViewer + Caffe + ... + Matlab

【UpdateTime:20180212】 (原文由於寫了幾個敏感詞彙,被強制刪除了,特此重新整理一篇) 2017.05.25:根據實踐過程,整理了第一版。 2017.12.22:由於第一版涉及幾個敏感詞彙,博文被強制移到回收站,重新整理一篇。 2018.01.05:

深度學習基於caffe的表情識別(四)在Intel AI DevCloud上訓練模型

一、註冊申請Intel AI DevCloud   2.填寫註冊資訊:   3.Submit提交,提交後會出現下面的介面:   4.說明已經申請成功了,大概等2個工作日左右,會收到一封郵件,郵件長這樣:   第一個紅框內的連結是使用教程,教你怎麼連線到dev

21個專案玩轉深度學習基於TensorFlow的實踐詳解03—打造自己的影象識別模型

書籍原始碼:https://github.com/hzy46/Deep-Learning-21-Examples CNN的發展已經很多了,ImageNet引發的一系列方法,LeNet,GoogLeNet,VGGNet,ResNet每個方法都有很多版本的衍生,tensorflow中帶有封裝好各方法和網路的函式

分享《21個項目玩轉深度學習基於TensorFlow的實踐詳解》PDF+源代碼

更多 技術分享 書籍 詳解 http alt ges text process 下載:https://pan.baidu.com/s/19GwZ9X2E20L3BykhoxhjTg 更多資料:http://blog.51cto.com/3215120 《21個項目玩轉深度學

21個專案玩轉深度學習基於TensorFlow的實踐詳解》PDF+原始碼下載

1.本書以TensorFlow為工具,從基礎的MNIST手寫體識別開始,介紹了基礎的卷積神經網路、迴圈神經網路,還包括正處於前沿的對抗生成網路、深度強化學習等課題,程式碼基於TensorFlow 1.4.0 及以上版本。 2.書中所有內容由21個可以動手實驗的專案組織起來,並在其中穿插Te

21個專案玩轉深度學習基於TensorFlow的實踐詳解》

下載:https://pan.baidu.com/s/1NYYpsxbWBvMn9U7jvj6XSw更多資料:http://blog.51cto.com/3215120《21個專案玩轉深度學習:基於TensorFlow的實踐詳解》PDF+原始碼PDF,378頁,帶書籤目錄,文字可以複製。配套原始碼。深度學習經

21個項目玩轉深度學習基於TensorFlow的實踐詳解》

源代碼 .com 實踐詳解 項目 term vpd 更多 mage mar 下載:https://pan.baidu.com/s/1NYYpsxbWBvMn9U7jvj6XSw更多資料:http://blog.51cto.com/3215120《21個項目玩轉深度學習:基於