1. 程式人生 > >深度學習框架Caffe學習筆記(1)-Caffe環境搭建

深度學習框架Caffe學習筆記(1)-Caffe環境搭建

Caffe是由伯克利視覺和學習中心開發的基於C++/CUDA/Python實現的卷積神經網路,提供了面向命令列、Matlab、Python的繫結介面。

Caffe環境搭建

系統:Ubuntu16.04

首先安裝Caffe依賴包:

$ sudo apt-get install git
$ sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serail-dev protobuf-compiler
$ sudo apt-get install --no-install
-recommends libboost-all-dev $ sudo apt-get install libatlas-base-dev $ sudo apt-get install python-dev $ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

下載Caffe原始碼

$ git clone https://github.com/bvlc/caffe.git
$ cd caffe/
$ cp Makefile.config.example Makefile.config

修改Makefile.config,開啟CPU_ONLY選項,儲存。

# CPU-only switch (uncomment to build without GPU support).
CPU_ONLY := 1

為了快速入門,就先不倒騰GPU了,這好象挺難了。暫時先在CPU上執行Caffe並閱讀其中的C++程式碼。

執行make進行編譯

# -j選項表示使用多執行緒,利用所有可用CPU,加快編譯速度
# 也可以指定數字,如j8表示開啟8個執行緒編譯
$ make -j8

等待編譯成功…

編譯過程中可能出現錯誤: fatal error: hdf5.h: 沒有那個檔案或目錄
1. 在Makefile.config檔案中,新增/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行程式碼改為第二行程式碼。

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/

2.在Makefile檔案中,把 hdf5_hl 和hdf5修改為hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行程式碼改為第二行程式碼。

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

相關推薦

MyBatis-Plus學習筆記(1):環境搭建以及基本的CRUD操作

MyBatis-Plus是一個 MyBatis的增強工具,在 MyBatis 的基礎上只做增強不做改變,使用MyBatis-Plus時,不會影響原來Mybatis方式的使用。 SpringBoot+MyBatis-Plus環境搭建 SQL指令碼: CREATE TABLE `tb_user` ( `id`

深度學習框架Caffe學習筆記(1)-Caffe環境搭建

Caffe是由伯克利視覺和學習中心開發的基於C++/CUDA/Python實現的卷積神經網路,提供了面向命令列、Matlab、Python的繫結介面。 Caffe環境搭建 系統:Ubuntu16.04 首先安裝Caffe依賴包: $ sudo

深度學習框架的比較(MXNet Caffe TensorFlow Torch Theano

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

輕鬆 無錯 不傷系統的配置深度學習框架 tensorflow cuda cudnn tensorflow caffe 版本任意切換 多版本並存

前置安裝:nvidia 顯示卡驅動 下一步安裝anaconda,如果安裝anaconda3就會自動去連結python3 配套的庫。 首先理解下配置環境是在幹嘛:很簡單,就是安裝軟體 那麼怎麼簡化這個過程,避免換個環境,就得解除安裝重灌,和別人共用一個伺服器,就為了配置環境焦頭爛額。

深度學習框架的比較(MXNet Caffe TensorFlow Torch Theano

                1. 基本概念1.1 MXNet相關概念    深度學習目標:如何方便的表述神經網路,以及如何快速訓練得到模型    CNN(卷積層):表達空間相關性(學表示)    RNN/LSTM:表達時間連續性(建模時序訊號)    指令式程式設計(imperative programm

《TensorFlow:實戰Google深度學習框架》--5.2.1 MNIST手寫識別問題(程式已改進)

目錄 MNIST資料集介紹: TensorFlow完整訓練MNIST資料集(程式已改進): 本篇部落格涉及很多本書第4章的知識:啟用函式、指數衰減的學習率設定、正則化、滑動平均等知識。如有疑問請參考本部落格關於第4章記錄介紹。 MNIST資料集介紹: MNIST資料集是N

[實戰Google深度學習框架]Tensorflow(1)TF環境搭建+入門學習

本篇blog主要以code+markdown的形式介紹tf這本實戰書。(建議使用jupyter來學習) 第三章 TF入門學習 3.1 TF計算模型——計算圖 3.2

《TensorFlow實戰Google深度學習框架》——4.2.1 經典損失函式(交叉熵、均方差)

目錄 1、交叉熵 1、交叉熵 交叉熵是分類問題中使用比較廣的一種損失函式,刻畫了兩個概率分佈之間的距離。 給定兩個概率分佈p和q,通過q來表示p的交叉熵為: 交叉熵刻畫的是兩個概率分佈之間的距離,然而神經網路的輸出卻不一定是一個概率分佈。Softmax迴歸就

深度學習框架Tensorflow學習筆記(二)

交叉熵 權值和偏置值的調整與 無關,另外,梯度公式中的 表示輸出值與實 際值的誤差。所以當誤差越大時,梯度就越大,引數w和b的調整就越快,訓練的速度也就越快。  如果輸出神經元是線性的,那麼二次代價函式就是一種合適的選擇。如果輸出神經元是S型函式, 那麼比較適合用交叉熵代價函

深度學習框架Tensorflow學習筆記(一)

1.需要在會話中完成op 2.初始化操作 init = tf.global_variables_initializer() 3.fetch run多個op print(sess.run([mul,add])) 4.placeholder + feed_dict 

我是初學者——TensorFlow實戰Google深度學習框架學習筆記一)

書本3.1.2計算圖的使用中的第41頁,例項中 v=tf.get_variable(     "v",initializer=tf.zeros_initializer(shape=[1])) 報錯 原因在於新版的tensorflow將語法改為 v=tf.get_varia

Redis學習筆記1 -- 單機環境時分布式鎖的使用

long 刪除 hub ron -i request 同時 HR dep 使用第三方開源組件Jedis實現Redis客戶端,且只考慮Redis服務端單機部署的場景。 前言 分布式鎖一般有三種實現方式:1. 數據庫樂觀鎖;2. 基於Redis的分布式鎖;3. 基於ZooK

深度學習框架Tensorflow學習與應用(5到8)

五. 03-1 迴歸 # coding: utf-8 # In[2]: import tensorflow as tf import numpy as np import matplotlib.pyplot as plt # In[3]: #使用numpy生成200個隨機點 x_

資料分析學習筆記(1):工作環境以及建模理論基礎

一、環境部署   1.python包管理:     (1)安裝:pip install xxx,conda install xxx     (2)解除安裝:pip uninstall xxx,  conda uninstall xxx     (3)升級:pip install -upgrade xx

Arduino 入門學習筆記1 開發環境及雙色LED實驗

本系列學習教程來自 創樂博智慧學習視訊 Arduino 發展 2005年,Massimo Banzi和David Cuartielles、David Mellis設計 Arduino。取該名稱的原因是Massimo Banzi喜歡去一家名叫Arduino的酒吧,其名稱是1000年

深度學習框架Tensorflow學習與應用(八 儲存和載入模型,使用Google的影象識別網路inception-v3進行影象識別)

一 模型的儲存 [email protected]:~/tensorflow$ cat 8-1saver_save.py # coding: utf-8 # In[1]: import tensorflow as tf from tensorflow.examples.tutorials

深度學習框架Keras學習系列(一):線性代數基礎與numpy使用(Linear Algebra Basis and Numpy)

又開一個新坑~~ 因為確實很有必要好好地趁著這個熱潮來研究一下深度學習,畢竟現在深度學習因為其效果突出,熱潮保持高漲不退,上面的政策方面現在也在向人工智慧領域傾斜,但是也有無數一知半解的人跟風吹捧,於是希望藉此教程,讓自己和讀者一起藉助keras,從上到下逐漸

深度學習框架Tensorflow學習--RNN實現識別數字

本文用到的公式基本來自Alex的論文,其中a表示彙集計算的值,b表示經過啟用函式計算的值,w是不同節點之間連線的引數(具體睡誰連誰看下標),帶下標k的是輸出層,帶下標h的是隱藏層相關的,除此之外你看到所有帶括號的的函式都是啟用函式, ϵ 和 δ&nb

深度學習框架Tensorflow學習--CNN實現識別數字

參考連結:https://blog.csdn.net/qq_30159351/article/details/52641644 本例子用到了minst資料庫,通過訓練CNN網路,實現手寫數字的預測。 首先先把資料集讀取到程式中: mnist = input_data

深度學習框架tensorflow學習與應用10(MNSIT卷積神經網路實現)

  import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_sets('F:/PY/MNIST_data/',