微博收藏(机器学习代码与工具)(一)
轉載自:
http://blog.csdn.net/linj_m/article/details/44244051
在微博上見過很多好資料,可是以前一直沒有時間好好看,都只能先轉發或者收藏,最后一個學期,一定要先把這些庫存一點點清掉。
——————————————————————————————————————————
1.0 卷積神經網絡CXXNET
@陳天奇怪 和 @antinucleon 完成的卷積神經網絡代碼 cxxnet(核心2k代碼)和 GPU/CPU 矩陣庫 mshadow(3k代碼+1k注釋)
評論:
@antinucleon: 天奇偉大,跟著大神受益匪淺。mshadow設計精巧,完美統一了CPU和GPU編程。依賴mshadow,cxxnet里一個Layer平均10行。在我的780 GTX上訓練ImageNet可以達到211pic / sec的速度
@李沐M:建議 typedef Tensor<gpu,2> GPUMatrix 之類,直觀一點。構造函數應該可以不用Shape2吧,直接丟進數字會更方便點?
? ? ? ??@陳天奇怪:回復@李沐M: 因為所有的dimension的tensor都是同一個模板實現的,直接丟數字還真不知道怎么搞..或許cxx11的intializer list可以
? ? ? ? ? ? ? ?@李沐M:回復@陳天奇怪: O網頁鏈接 c++11或者boost都行。不過如果你用了c++11就意味著對gcc版本有要求了
? ? ? ? ? ? ? ? ? ? ? ? ?@陳天奇怪:回復@李沐M: 其實Tensor<gpu,x>也有好處,在寫代碼的時候可以直接take一個模板xpu然后輸入參數是Tensor<xpu,x>,然后寫出來的代碼cpu,gpu都可以用。
@yuzzzzzzzzz:基于這個實現的CNN和caffe比效率哪個高呢?
? ? ? ??@陳天奇怪:回復@yuzzzzzzzzz: 在效率上應該是沒有什么差別,因為最終編譯出來的代碼應該差不多。差別是用mshadow實現的時候寫公式而不是直接寫CUDA kernel。
卷積神經網絡代碼 cxxnet?地址
GPU/CPU矩陣庫 mshadow?地址
——————————————————————————————————————————
2.0 CUDA-CONVNET2.0
谷歌Alex Krizhevsky 寫了一篇在GPU集群并行Convolutional Neural Network的文章并公布了源代碼
Paper:One weird trick for parallelizing convolutional neural networks地址
code地址?(PS:據說google要關閉code.google.com了)
之前看過Alex的cuda-convnet1.0的代碼,表示很痛苦,粗粗看了一下2.0,代碼確實整潔多了。
——————————————————————————————————————————
3.0
卷積神經網絡總結 ?代碼與論文
文章地址
——————————————————————————————————————————
4.0
【scikit-learn】學習Python來分類現實世界的數據
一個機器可以根據照片來辨別鮮花的品種嗎?在機器學習角度,這其實是一個分類問題,即機器根據不同品種鮮花的數據進行學習,使其可以對未標記的測試圖片數據進行分類。這一小節,我們還是從scikit-learn出發,理解基本的分類原則,多動手實踐。
http://dataunion.org/5583.html
——————————————————————————————————————————
5.0
LDA工程實踐之算法篇-2 SparesLDA
標準 LDA 算法中的Gibbs Sampling 算法實際上采樣的時候速度太慢, 這就是為什么學者基于 LDA 模型的稀疏性給出了 SparseLDA 算法,在速度上可以比標準采樣方法要快幾十倍,所以在工業應用中當然應該要實現 Sparse 的算法。
地址
——————————————————————————————————————————
6.0
《用 Python 和 OpenCV 檢測圖片上的條形碼》正規商品的包裝上都會有條形碼,有想過自己寫一個程序/算法來檢測識別圖形碼么?
地址
——————————————————————————————————————————
7.0
使用Python和OpenCV在視頻中實時監測條形碼
http://python.jobbole.com/81130/
http://blog.csdn.net/suipingsp/article/details/41897901
——————————————————————————————————————————
8.0
@梁斌penny:
過擬合一部分原因和訓練數據少,抽樣不好有關,一部分和模型變量數量有關,還有一部分和模型本身有關,比如線性模型不容易過擬合,非線性的就容易。最后其實可以利用過擬合,堵不如疏,多個過擬合的model就好像多個有偏見的人,把他們ensemble好就行了,此乃君王治國,廠長制廠之道啊。
@南大周志華:
Ensemble在做理論分析的時候通常是假設弱學習器。至于過擬合的作用,20年前就有研究,見Solich和Krogh的95年著名文章Learning with ensembles: How overfitting can be useful,他們不是你說的美軍,是歐洲軍
@龍星鏢局:
建議讀?地址
@硅谷獵頭TomZhang:把樣本分為10份,隨機用9份訓練,剩下1份校核,做十次試驗,解決小樣本問題
? ? ? ? ?@梁斌penny:回復@硅谷獵頭TomZhang:是的,你說的這個是一種常用方法10-fold
? ? ? ? ?@SMTNinja:回復@硅谷獵頭TomZhang: 你說的是 10-fold cross validation. 這只能解決由訓練數據分隔方法不同所導致的對模型好壞判斷不準確的問題. 這和過擬合不是一個問題..
@為娶白富美發SCI:弱弱的問下梁博,集成學習由多個弱學習模型組成,那過擬和是不是指強學習模型呢,這樣會不會沖突?
? ? ? ? ?@梁斌penny:回復@為娶白富美發SCI:你不要拘泥于美軍的東西,弱學習可以ensemble,過擬合的model為什么不能ensemble。。只要數量足夠多,就相當于投票嘛
——————————————————————————————————————————
9.0
EasyPR——一個開源的中文車牌識別系統 基于OPENCV
http://www.cnblogs.com/subconscious/p/3979988.html
——————————————————————————————————————————
10
@facebook開源了基于Torch的深度學習工具fbcunn,包含了利用FFT等方法加速的卷積神經網絡等。
地址
總結
以上是生活随笔為你收集整理的微博收藏(机器学习代码与工具)(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python-OpenCV 杂项(三):
- 下一篇: 微博收藏(机器学习探讨)(二)