caffe修煉之路 資料的基本介紹

2021-06-28 15:23:54 字數 1000 閱讀 6388

平台 ubuntu14.04lts

這篇文章主要是講caffe中的資料儲存機制,參考資料是caffe的官網,並且本文也並非深入理解這些東西,更多的是翻譯官網上的文件,然後加上自己的理解。

blob是caffe執行過程中很重要的資料報裝器,可以在cpu與gpu間傳遞。blob資料是乙個四維矩陣(num, channel, height, width),結合影象,很容易理解這個矩陣,其中num就是每個batch的中包含的影象的個數,channels就是影象的通道數,height與width分別是每幅圖的高度與寬度。不過caffe不僅僅可以用在影象上,所以對於其他方面的應用時,可以自己調整channels、height、width,以適應自己的要求。blob儲存資料時和c語言一樣(與matlab相反)是行優先的,對於 blob(n, k, h, w) 的位置就是((n * k + k) * h + h) * w + w  ,注意這裡的大寫和小寫。

blob的引數是由當前層的配置所決定的。比如對於乙個包含有11*11大小的96個濾波器、輸入個數為3的blob,它的引數就是 96*3*11*11。再比如乙個完全連線層,如果它由1000個輸出, 1024個輸入, 那麼它的blob的引數就是 1* 1 * 1000* 1024. 

關於gpu與cpu資料交換這方面,官網上有介紹,不過對於一般的使用者不用去看,直接在配置檔案中修改模式即可。

下面說說layer的資料。

layer有三個已經定義好了的標準計算:setup、forward和backward。setup就是初始化,forward定義了輸入與輸出之間的計算,backward定義的是偏導(given the gradient w.r.t. the top output compute the gradient w.r.t. to the input and send to the bottom. a layer with parameters computes the gradient w.r.t. to its parameters and stores it internally)。                      

狗子的PM之路 資料埋點

一 是什麼 中級的資料埋點 在產品中植入多段 追蹤使用者連續行為,建立使用者模型來具體化使用者在使用產品中的操作行為。高階的資料埋點 與研發及資料分析師團隊合作,通過資料埋點還原出使用者畫像及使用者行為,建立資料分析後台,通過資料分析 優化產品。二 為什麼 做好資料埋點是資料分析的前提,想要知道產品...

ORACLE學習之路 資料庫的儲存結構

最近特別忙,連上網的時間都沒有。今天把oracle的儲存結構介紹一下。oracel資料庫中的資料邏輯儲存在tablespace中,同時物理地儲存在資料檔案中。要了解資料庫的儲存結構,就要先了解資料庫中的資料是存放在 以及存放資料庫的邏輯空間名。oracle中對資料的儲存分了四層,根據儲存大小以及從屬...

Python小白的高階之路(三) 基本資料型別

2.識別符號 3.基本資料型別 4 字串 5 變數 函式的2個要素 關鍵字含義 false 布林型別的值,表示假,與true相反 none none比較待殊,表示什麼也沒有,它有自己的資料型別 nonetype true 布林型別的值,表示真,與false相反 and用於表示式運算,邏輯與操作 as...