原创 caffe源碼深入學習5:超級詳細的caffe卷積層代碼解析

   在本篇博客中,筆者爲大家解析一下caffe卷積層的源碼,在開篇提醒各位讀者朋友,由於caffe卷積層實現較爲複雜,參數相對較多,因此,讀者朋友們如果發現筆者的博客中的疏漏或者錯誤之處,請大家不吝賜教,筆者在此表示衷心的感謝。    

原创 caffe源碼深入學習8:caffe框架深度神經網絡反傳代碼解析(二)之pooling層源碼解析

caffe源碼深入學習8:caffe框架深度神經網絡反傳代碼解析(二)之pooling層源碼解析寫在前面池化層源碼及註釋池化層源碼解析最大池化平均池化 寫在前面 在上一篇博客,即重啓caffe源碼深入學習7中,筆者從最簡單的激活層

原创 重啓caffe源碼深入學習7:caffe框架深度神經網絡反傳代碼解析(一)之ReLU層源碼解析

重啓caffe源碼深入學習7:caffe框架深度神經網絡反傳代碼解析(一)之ReLU層源碼解析寫在前面爲什麼重啓三年之前的系列爲什麼是caffe該系列之後的寫作計劃與打算ReLU層源碼解析caffe中的梯度ReLU層源碼ReLU層

原创 PyTorch經驗分享:新手如何搭建PyTorch程序

PyTorch經驗分享:新手如何搭建PyTorch程序爲什麼是PyTorch如何搭建PyTorch程序網絡模型的定義數據讀取接口訓練程序測試程序寫在後面 爲什麼是PyTorch 在2017年的10月份,筆者還在研二的時候,曾發佈過

原创 caffe源碼深入學習4:支持魔改的layer:layer.hpp與layer.cpp

   到caffe源碼深入學習3爲止,我們解析了caffe底層的數據相關代碼,瞭解了caffe這個深度學習框架中數據的存儲與流通實現細節,那麼,從本篇博客開始,筆者將開始解析更高層的代碼,首先解析的是caffe中構成深度神經網絡的網絡層l

原创 caffe源碼深入學習2:blob.hpp+blob.cpp

  在caffe源碼深入學習1中我們提到了caffe.cpp文件調用用戶定義的solver.prototxt文件進行網絡的訓練,其中,網絡訓練的接口是train()函數,而在train()函數中,使用了Solve()這個函數接口去求解網絡

原创 caffe源碼深入學習6:超級詳細的im2col繪圖解析,分析caffe卷積操作的底層實現

   在先前的兩篇博客中,筆者詳細解析了caffe卷積層的定義與實現,可是在conv_layer.cpp與base_conv_layer.cpp中,卷積操作的實現仍然被隱藏,通過im2col_cpu函數和caffe_cpu_gemm函數(

原创 caffe源碼深入學習1:caffe.cpp解析

        距離筆者接觸深度學習已經將近半年了,在這段時間中,筆者最先接觸的是lenet網絡,然後就學習了2015-2016年非常火爆的fast-rcnn與faster-rcnn,到最近自己利用深度學習搞事情,筆者的最大感受是,經過

原创 caffe初探4:對訓練得到的模型進行測試

請各位讀者朋友們注意,鑑於大家比較關心測試caffe訓練完畢的模型的步驟,筆者特地將在c++程序中調用caffe訓練完畢的模型與classification.cpp解析整理成了完整的博客: classification.cpp解析與使用c

原创 caffe源碼深入學習3:更底層的數據信息存取與交換代碼:syncedmem.hpp和syncedmem.cpp

  還記得在上一期博客中,當我們解析Blob類相關時,遇到一些成員函數如Update(),cpu_data(),mutable_gpu_data()等等,這些函數在完成對應功能的同時,調用了更多底層的函數,這些函數與Blob中的函數同名,

原创 實用:使用caffe訓練模型時solver.prototxt中的參數設置解析

   筆者之前發佈了關於解析caffe的層的博客,解析caffe常用層的博客正在不斷更新中。本篇博客是一個插播的博客,目的在徹底解決使用caffe訓練模型時的參數設置問題,爲什麼要發這篇博客呢?是因爲筆者最近在自定義網絡時,需要構造自己的

原创 caffe初探3:結合數據集與設計的網絡模型進行訓練

續caffe初探1和caffe初探2,回首一下,此時已經有一些收穫了呢,已經生成了數據集,並準備了均值文件還有網絡結構文件,現在就可以進行模型的訓練了。首先,我們來清點一下訓練所需要的物資清單吧。 茲訓練物資清單如下: (1)數據集  

原创 nvidia jetson TX2配置caffe

   英偉達在2017年3月發佈了全新嵌入式計算平臺TX2,從網上的介紹來看,TX2延續了小體積、高度集成的特性,整合了 4 核 ARM A57 CPU、Pascal 架構 GPU(16 納米工藝)、最高 8G 內存、32G 固態存儲器等

原创 乾貨!caffe源碼深入學習9:caffe框架神經網絡反傳代碼解析(三)之contrastive_loss_layer源碼解析

caffe源碼深入學習9:caffe框架神經網絡反傳代碼解析(三)之contrastive_loss_layer源碼解析寫在前面理論解析源碼及註釋源碼分析寫在最後 寫在前面 本篇博客是Caffe源碼解析系列的第9篇,也是Caffe

原创 乾貨!如何修改在TensorFlow框架下訓練保存的模型參數名稱

乾貨!如何修改在TensorFlow框架下訓練保存的模型參數名稱爲何要修改TensorFlow訓練的模型參數名?如何修改TensorFlow訓練保存的參數名? 爲何要修改TensorFlow訓練的模型參數名? 在TensorFlow框