成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

2019 深度學(xué)習(xí)工具匯總

新聞 深度學(xué)習(xí)
深度學(xué)習(xí)的進(jìn)步也嚴(yán)重依賴于軟件基礎(chǔ)架構(gòu)的進(jìn)展。 軟件庫如: Torch(2011), Theano(2012), DistBelief(2012), PyLearn2 (2013), Caffe(2013), MXNet (2015) 和 TensorFlow(2015) 都能支持重要的研究項(xiàng)目或商業(yè)產(chǎn)品。

 深度學(xué)習(xí)工具

深度學(xué)習(xí)的進(jìn)步也嚴(yán)重依賴于軟件基礎(chǔ)架構(gòu)的進(jìn)展。 軟件庫如: Torch(2011),  Theano(2012), DistBelief(2012), PyLearn2 (2013),  Caffe(2013), MXNet (2015) 和 TensorFlow(2015) 都能支持重要的研究項(xiàng)目或商業(yè)產(chǎn)品。

如果說深度學(xué)習(xí)的話,我個人接觸是在2015年,這個技術(shù)其實(shí)被雪藏了很久,在2012年又得到了完全的爆發(fā),至今已經(jīng)是AI界的主流,那今天就來說說最實(shí)際也是接觸最多的一個環(huán)節(jié),那就是框架,也可以說是工具。

大家所了解的工具不知道有哪些???

今天,我以我使用過的工具來和大家分享,希望你們可以找到自己喜歡的工具,與其一起去“ 煉丹 ”(不知道這個意思的,百度下)嘿嘿!

[[256719]]

在我研究生入學(xué)以來,接觸的深度學(xué)習(xí)工具一只手就可以數(shù)過來,有興趣的小伙伴可以深入搜索,網(wǎng)上還是有很多不同說法。我接下來根基我自己的實(shí)際體驗(yàn)而大家說說深度學(xué)習(xí)工具這些事。 Matlab

Matlab

剛開始接觸深度學(xué)習(xí),第一個使用的工具就是:DeepLearnToolbox,一個用于深度學(xué)習(xí)的Matlab工具箱。 深度學(xué)習(xí)作為機(jī)器學(xué)習(xí)的一個新領(lǐng)域,它的重點(diǎn)是學(xué)習(xí)深層次的數(shù)據(jù)模型,其主要靈感來自于人腦表面的深度分層體系結(jié)構(gòu),深度學(xué)習(xí)理論的一個很好的概述是學(xué)習(xí)人工智能的深層架構(gòu)。這個工具箱比較簡單,當(dāng)時我就做了一個手寫數(shù)字和人臉分類(AR人臉數(shù)據(jù)庫)。主要包括如下:

NN :前饋BP神經(jīng)網(wǎng)絡(luò)的庫

CNN :卷積神經(jīng)網(wǎng)絡(luò)的庫

DBN :深度置信網(wǎng)絡(luò)的庫

SAE :堆棧自動編碼器的庫

CAE :卷積自動編碼器的庫

Util :庫中使用的效用函數(shù)

Data :數(shù)據(jù)存儲

tests :用來驗(yàn)證工具箱正在工作的測試

案例如下

  1. rand('state',0)     
  2.   
  3. cnn.layers = {  
  4.   
  5. struct('type''i')            %輸入  
  6.   
  7. struct('type''c''outputmaps'6'kernelsize'5)  %卷積層  
  8.   
  9. struct('type''s''scale'2)    %下采樣層  
  10.   
  11. struct('type''c''outputmaps'12'kernelsize'5) %卷積層  
  12.   
  13. struct('type''s''scale'2)    %下采樣層  
  14.   
  15. };     
  16.   
  17. cnn = cnnsetup(cnn, train_x, train_y);   opts.alpha = 1;     
  18.   
  19. opts.batchsize = 50;     
  20.   
  21. opts.numepochs = 5;     
  22.   
  23. cnn = cnntrain(cnn, train_x, train_y, opts); save CNN_5 cnn;  
  24.   
  25. load CNN_5;     
  26.   
  27. [er, bad]  = cnntest(cnn, test_x, test_y);   figure; plot(cnn.rL);     
  28.   
  29. assert(er<0.12'Too big error');  

運(yùn)行界面比較單一:

PyTorch

這個Pytorch庫的話,其實(shí)我沒怎么用,就是隨便試玩了下,個人感覺還是不要碰了,沒啥意思,我接下來也就簡單聊一下。 他是一個基于Python的科學(xué)計(jì)算包,目標(biāo)用戶有兩類。一類是 為了使用GPU來替代numpy;另一類是一個深度學(xué)習(xí)援救平臺:提供最大的靈活性和速度。

以深度學(xué)習(xí)來說,可以使用 torch.nn 包來構(gòu)建神經(jīng)網(wǎng)絡(luò)。已知道autograd包,nn包依賴autograd包來定義模型并求導(dǎo)。一個nn.Module包含各個層和一個faward(input)方法,該方法返回output。

案例如下

  1. import torch from torch.autograd 
  2.  
  3. import Variable import torch.nn   
  4.  
  5. import torch.nn.functional as F   
  6.  
  7. class Net(nn.Module):      
  8.  
  9. def __init__(self):          
  10.  
  11. super(Net, self).__init__()          
  12.  
  13. # 1 input image channel, 6 output channels, 5*5 square convolution          
  14.  
  15. # kernel           
  16.  
  17. self.conv1 = nn.Conv2d(165)                  
  18.  
  19. self.conv2 = nn.Conv2d(6165)          
  20.  
  21. # an affine operation: y = Wx + b              
  22.  
  23. self.fc1 = nn.Linear(16 * 5 * 5120)              
  24.  
  25. self.fc2 = nn.Linear(12084)              
  26.  
  27. self.fc3 = nn.Linear(8410)       
  28.  
  29. def forward(self, x):          
  30.  
  31. # max pooling over a (2, 2) window 
  32.  
  33. x = F.max_pool2d(F.relu(self.conv1(x)), (22)) 
  34.  
  35. # If size is a square you can only specify a single number 
  36.  
  37. x = F.max_pool2d(F.relu(self.conv2(x)), 2
  38.  
  39. x = x.view(-1self.num_flat_features(x)) 
  40.  
  41. x = F.relu(self.fc1(x)) 
  42.  
  43. x = F.relu(self.fc2(x)) 
  44.  
  45. x = self.fc3(x)          
  46.  
  47. return x       
  48.  
  49. def num_flat_features(self, x):          
  50.  
  51. size = x.size()[1:] 
  52.  
  53. # all dimensions except the batch dimension          
  54.  
  55. num_features = 1          
  56.  
  57. for s in size:              
  58.  
  59. num_features *= s          
  60.  
  61. return num_features 
  62.  
  63. net = Net()  
  64.  
  65. print(net) 

具體操作和細(xì)節(jié)過程,有興趣的可以抽空去玩玩!

Caffe

Caffe的作者為UC Berkeley大學(xué)的賈揚(yáng)清。Caffe是一個c++/CUDA架構(gòu),支持命令行、Python、Matlab接口,可以在CPU/GPU上運(yùn)行。

深度學(xué)習(xí)不斷在發(fā)展,其對應(yīng)的實(shí)驗(yàn)工具也隨著得到了大家的重視。Caffe就是現(xiàn)在流行的深度學(xué)習(xí)框架之一,工具內(nèi)已經(jīng)提前提供了模板,也就是該工具有現(xiàn)成的編程框架,而且可以與現(xiàn)狀流行的圖形計(jì)算GPU聯(lián)合使用,加快網(wǎng)絡(luò)訓(xùn)練的速度,流行的神經(jīng)網(wǎng)絡(luò)框架算法都可以在Caffe中運(yùn)行,而且可以自己設(shè)置框架,因?yàn)镃affe已經(jīng)提前就做好了各結(jié)構(gòu)的定義,研究學(xué)者也可以根據(jù)自己的設(shè)計(jì)需求去進(jìn)行相應(yīng)的添加,設(shè)計(jì)出新的深度學(xué)習(xí)框架去完成所需的任務(wù)。

Caffe框架中,主要就是 Blobs , Layers 和 Nets 三大類結(jié)構(gòu),而且由于是事前定義好的結(jié)構(gòu),所以在使用該框架的時候是不可以更改。

Blobs

Blob是Caffe框架中的一個主要結(jié)構(gòu),其為包裝器,在使用Caffe框架時,數(shù)據(jù)都要被設(shè)置成格式,只有這樣的數(shù)據(jù)格式才能在Caffe框架中進(jìn)行執(zhí)行和處理。并且在Caffe設(shè)計(jì)時,很多函數(shù)和類都提前設(shè)計(jì)好了,在執(zhí)行的過程中是不可以修改其結(jié)構(gòu),否則將無法調(diào)用其中的函數(shù),導(dǎo)致網(wǎng)絡(luò)訓(xùn)練的失敗。

Blob的格式主要由Number,Channel,Height和Width四個元素組成,如果在進(jìn)行圖像處理,則表示圖像通道(一般彩色圖像為3通道的數(shù)據(jù),Height和Width就表示輸入數(shù)據(jù)的尺寸。而對于的元素,其主要體現(xiàn)在訓(xùn)練過程中,因?yàn)橛?xùn)練的時候需要選擇一次性輸入多少數(shù)據(jù),就是一次輸入數(shù)據(jù)的數(shù)量,通常稱之為Batch。這種訓(xùn)練方式也可以大大緩解內(nèi)存的不足。

Layers

Layers是Caffe框架中網(wǎng)絡(luò)構(gòu)成的重要結(jié)構(gòu)之一,網(wǎng)絡(luò)的構(gòu)成就是因?yàn)長ayers的作用,通過接收輸入和輸出數(shù)據(jù),最后通過內(nèi)部的計(jì)算輸出。Caffe在使用網(wǎng)絡(luò)層的時候,其定義方式特別簡單明了,大致都分為三個小步驟,如下: 
1)建立網(wǎng)絡(luò)層,且建立層之間的連接關(guān)系,可以通過隨機(jī)初始化的操作,去對一些網(wǎng)絡(luò)層的變量進(jìn)行初始化; 
2)網(wǎng)絡(luò)訓(xùn)練過程中,首先計(jì)算前向傳播,在改過過程中Layers接受上一層的輸出數(shù)據(jù)作為本次的輸入數(shù)據(jù),最后通過內(nèi)部 
的計(jì)算進(jìn)行輸出。 
3)前向傳播后,由于得到的結(jié)果與期望相差較大,通過之前提及到的反向傳播來進(jìn)行計(jì)算去調(diào)整網(wǎng)絡(luò)的參數(shù)值,以達(dá)到最 
優(yōu)值,并且在反向傳播計(jì)算時,Layers會把每次計(jì)算的梯度值存放在該層中。

Nets

之前介紹的Layers就是Nets的一個子元素,通過多種Layers的組合連接得到整個Nets,在該結(jié)構(gòu)中,Nets定義了網(wǎng)絡(luò)的各 Layers、Input和Output。

例如Caffe定義中最基本的隱層網(wǎng)絡(luò),其定義如下:

  1. name: “LogReg”  
  2. layers {  
  3. name: “mnist”  
  4. type: DATA  
  5. top: “data”  
  6. top: “label”  
  7. data_param {  
  8. source: “input_leveldb”  
  9. batch_size: 64  
  10. }} 
  11.  
  12. layers {  
  13. name: “ip”  
  14. type: INNER_PRODUCT  
  15. bottom: “data”  
  16. top: “ip”  
  17. inner_product_param {  
  18. num_output: 2  
  19. }} 
  20.  
  21. layers {  
  22. name: “loss”  
  23. type: SOFTMAX_LOSS  
  24. bottom: “ip”  
  25. bottom: “label”  
  26. top: “loss”  

Caffe優(yōu)勢

  • Caffe作為一個開源的框架,其表達(dá)式的結(jié)構(gòu)得到很多研究學(xué)者的喜愛,因?yàn)槠淇梢怨膭罡^的人去進(jìn)行創(chuàng)新、修改完善及實(shí)際應(yīng)用。在框架中,網(wǎng)絡(luò)的模型、設(shè)計(jì)和優(yōu)化過程都是指令來調(diào)用和執(zhí)行,不像其他工具框架,需要通過硬編碼來獲取相應(yīng)的操作。而且在Caffe應(yīng)用中可以使用CPU中央處理器和GPU圖形圖像處理器進(jìn)行學(xué)習(xí),而且兩個處理器可以來回切換,只要通過在GPU機(jī)器上設(shè)置一個指令就可以,而且GPU的使用在普遍增加,因?yàn)槠淇梢越o予網(wǎng)絡(luò)的訓(xùn)練速度,減少訓(xùn)練的時間,提高網(wǎng)絡(luò)的訓(xùn)練效率,進(jìn)一步對網(wǎng)絡(luò)進(jìn)行微調(diào)。

  • 開源框架的好處就是可以被大家擴(kuò)展,所以Caffe促進(jìn)了其自身的開發(fā),在賈揚(yáng)清創(chuàng)建Caffe之后,僅在一年時間里,就已經(jīng)有上千位研究愛好者參加了開發(fā),而且他們都做出了很大的貢獻(xiàn)才會有現(xiàn)在完善的深度學(xué)習(xí)框架,現(xiàn)在該框架還在不斷進(jìn)行優(yōu)化和發(fā)展。

  • 上手快,因?yàn)榫W(wǎng)絡(luò)模型不需要用代碼的形式表現(xiàn)出來,只需要通過文本形式表現(xiàn),并且Caffe框架中已定義了該模型。

  • Caffe的出現(xiàn)特征事宜學(xué)校機(jī)構(gòu)的實(shí)驗(yàn)室和工業(yè)相關(guān)部門的使用。因?yàn)镃affe與英偉達(dá)GPU合用,可以達(dá)到很高的效率。曾有過一個實(shí)驗(yàn),用一臺英偉達(dá)生產(chǎn)的K40圖形圖像處理器去訓(xùn)練圖片,一天下來可以執(zhí)行六千萬以上的訓(xùn)練圖像。現(xiàn)在其表現(xiàn)的速度,在常用的深度學(xué)習(xí)框架中,可以算得上最快的框架之一。

  • 方便快速地使用到其他任務(wù)重,因?yàn)镃affe已經(jīng)定義了各層的類型,只需通過簡單調(diào)用來定義自己設(shè)計(jì)的網(wǎng)絡(luò)模型即可。

TF

Google在2011年推出人工深度學(xué)習(xí)系統(tǒng)——DistBelief。通過DistBelief,Google能夠掃描數(shù)據(jù)中心數(shù)以千計(jì)的核心,并建立更大的神經(jīng)網(wǎng)絡(luò)。這個系統(tǒng)將Google應(yīng)用中的語音識別率提高了25%,以及在Google Photos中建立了圖片搜索,并驅(qū)動了Google的圖片字幕匹配實(shí)驗(yàn)。DistBelief還存在不少不足和限制。它很難被設(shè)置,和Google內(nèi)部的基礎(chǔ)設(shè)施聯(lián)系也過于緊密,這導(dǎo)致研究代碼機(jī)會不可能分享。  

針對以上問題,Google在2015年Google Research Blog宣布推出新一代人工智能學(xué)習(xí)系統(tǒng)——TensorFlow。  

TensorFlow是一個異構(gòu)分布式系統(tǒng)上的大規(guī)模機(jī)器學(xué)習(xí)框架,移植性好(小到移動設(shè)備如手機(jī),大到大規(guī)模集群,都能支持),支持多種深度學(xué)習(xí)模型。根據(jù)Google說法,TensorFlow是綜合的、靈活的、可移植的、易用的,更為關(guān)鍵的,它是開源的。同時,TensorFlow的速度相比前代DistBelief有了不小的提升,在一些跑分測試中,TensorFlow的得分是第一代系統(tǒng)的兩倍。

盡管如此,TensorFlow的效率仍然比不過其他大部分開源框架。不過,隨著TensorFlow源碼逐步開放,對新硬件、新設(shè)備、新的加速如cuDNN的支持力度不斷提升,其成為目前極具潛力的深度學(xué)習(xí)。

有興趣可以體驗(yàn)下PlayGround,其是一個用于教學(xué)目的的簡單神經(jīng)網(wǎng)絡(luò)的在線演示、實(shí)驗(yàn)的圖形化平臺,非常強(qiáng)大地可視化了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程。使用它可以在瀏覽器里訓(xùn)練神經(jīng)網(wǎng)絡(luò),對 Tensorflow有一個感性的認(rèn)識。

TF缺點(diǎn)

  • TensorFlow 的每個計(jì)算流都必須構(gòu)造為一個靜態(tài)圖,且缺乏符號性循環(huán)(symbolic loops),這會帶來一些計(jì)算困難;

  • 沒有對視頻識別很有用的三維卷積(3-D convolution);

  • 盡管 TensorFlow 現(xiàn)在比起始版本快了 58 倍,但在執(zhí)行性能方面依然落后于競爭對手。

今天就到此位置吧,感覺講的有點(diǎn)多,但是又不是很深入,有機(jī)會來一次深度學(xué)習(xí)工具專題,我們大家一起慢慢聊!

責(zé)任編輯:張燕妮 來源: 計(jì)算機(jī)視覺戰(zhàn)隊(duì)
相關(guān)推薦

2017-02-15 10:01:49

大數(shù)據(jù)機(jī)器學(xué)習(xí)深度學(xué)習(xí)

2017-03-07 13:14:04

深度學(xué)習(xí)

2019-09-26 05:16:24

深度學(xué)習(xí)數(shù)據(jù)科學(xué)神經(jīng)網(wǎng)絡(luò)

2019-11-19 09:58:16

機(jī)器學(xué)習(xí)人工智能框架

2019-12-17 09:05:47

深度學(xué)習(xí)編程人工智能

2019-04-25 16:03:00

深度學(xué)習(xí)編程人工智能

2022-05-31 10:50:40

Linux監(jiān)控工具

2022-09-28 14:13:03

Linux工具

2021-03-08 11:28:59

人工智能深度學(xué)習(xí)Python

2009-09-08 18:14:12

CCNA學(xué)習(xí)筆記

2016-12-06 10:39:54

剖析建模開源工具

2019-08-02 09:26:24

深度學(xué)習(xí)框架排行榜

2017-09-01 10:11:04

深度學(xué)習(xí)可視化工具

2020-06-18 15:45:54

AWS機(jī)器學(xué)習(xí)人工智能

2017-03-06 16:56:37

深度學(xué)習(xí)本質(zhì)現(xiàn)狀

2021-04-16 11:31:24

人工智能深度學(xué)習(xí)

2017-06-27 14:49:20

深度學(xué)習(xí)機(jī)器學(xué)習(xí)

2011-04-02 10:29:20

Linux工具

2017-07-18 18:06:00

JavaScript框架類庫

2019-06-11 09:06:22

網(wǎng)絡(luò)爬蟲工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成人久久久久久久久 | 日韩免费视频 | 国产亚洲精品精品国产亚洲综合 | 综合色站导航 | 欧美午夜精品久久久久久浪潮 | 超碰在线人人 | 日日干干 | 黄色免费在线网址 | 午夜在线精品 | 久久久黄色| 亚洲综合色丁香婷婷六月图片 | 特黄一级| 精品国产成人 | 美女国内精品自产拍在线播放 | 午夜精品久久久 | 精品伦精品一区二区三区视频 | 精品久久香蕉国产线看观看亚洲 | 久久久久久免费毛片精品 | 日韩喷潮 | 久久四虎 | 久热9 | www.黄网| 有码一区| 日韩字幕一区 | 伦理午夜电影免费观看 | 婷婷久久精品一区二区 | 在线国产一区 | 日韩综合在线视频 | 日韩在线中文字幕 | 免费久久精品视频 | 欧美一区二区三区在线免费观看 | 欧美freesex黑人又粗又大 | 国产91久久久久蜜臀青青天草二 | 日韩欧美视频在线 | 欧美一区二区三区在线观看 | 国产精品久久国产愉拍 | 国产成人免费视频网站高清观看视频 | 黄色三级毛片 | 久久久成人精品 | 欧美一级视频 | 久久三区 |