paddle是百度開(kāi)發(fā),國(guó)內(nèi)第一款深度學(xué)習(xí)框架;tensorflow是谷歌開(kāi)發(fā),全球范圍內(nèi)廣泛使用的開(kāi)發(fā)框架,tf在兩三年前用戶占比很高,但近來(lái)由于pytorch的易入手和便捷性得到更多用戶的喜愛(ài)。
TensorFlow?是一個(gè)采用數(shù)據(jù)流圖(dataflowgraphs),用于數(shù)值計(jì)算的開(kāi)源軟件庫(kù)。節(jié)點(diǎn)(Nodes)在圖中表示數(shù)學(xué)操作,圖中的線(edges)則表示在節(jié)點(diǎn)間相互聯(lián)系的多維數(shù)據(jù)數(shù)組,即張量(tensor)。它靈活的架構(gòu)讓你可以在多種平臺(tái)上展開(kāi)計(jì)算,例如臺(tái)式計(jì)算機(jī)中的一個(gè)或多個(gè)CPU(或GPU),服務(wù)器,移動(dòng)設(shè)備等等。TensorFlow最初由Google大腦小組(隸屬于Google機(jī)器智能研究機(jī)構(gòu))的研究員和工程師們開(kāi)發(fā)出來(lái),用于機(jī)器學(xué)習(xí)和深度神經(jīng)網(wǎng)絡(luò)方面的研究,但這個(gè)系統(tǒng)的通用性使其也可廣泛用于其他計(jì)算領(lǐng)域。
PaddlePaddle(中文名:飛槳,PArallelDistributedDeepLEarning并行分布式深度學(xué)習(xí))是一個(gè)深度學(xué)習(xí)平臺(tái),具有易用、高效、靈活和可伸縮等特點(diǎn),為百度內(nèi)部多項(xiàng)產(chǎn)品提供深度學(xué)習(xí)算法支持。
PaddlePaddle的優(yōu)勢(shì):
同時(shí)支持動(dòng)態(tài)圖和靜態(tài)圖,兼顧靈活性和效率
動(dòng)態(tài)圖具有方便調(diào)試、高效驗(yàn)證業(yè)務(wù)、快速實(shí)現(xiàn)想法等特點(diǎn),靜態(tài)圖具有方便部署、運(yùn)行速度快,適合進(jìn)行業(yè)務(wù)應(yīng)用等特點(diǎn),助您靈活、高效地進(jìn)行訓(xùn)練和預(yù)測(cè)
精選應(yīng)用效果最佳的算法模型并提供官方支持
飛槳提供70+官方模型,全部經(jīng)過(guò)真實(shí)應(yīng)用場(chǎng)景的有效驗(yàn)證?;诎俣榷嗄曛形臉I(yè)務(wù)實(shí)踐,提供更懂中文的NLP模型;同時(shí)開(kāi)源多個(gè)百度獨(dú)有的優(yōu)勢(shì)業(yè)務(wù)模型以及國(guó)際競(jìng)賽冠軍算法
真正源于產(chǎn)業(yè)實(shí)踐,提供業(yè)界最強(qiáng)的超大規(guī)模并行深度學(xué)習(xí)能力
飛槳是業(yè)內(nèi)唯一全面支持大規(guī)模稀疏參數(shù)訓(xùn)練場(chǎng)景的開(kāi)源框架,支持千億規(guī)模參數(shù)、數(shù)百個(gè)節(jié)點(diǎn)的高效并行訓(xùn)練
支持的特性
易用性:為用戶提供了直觀且靈活的數(shù)據(jù)接口和模型定義接口
靈活性:PaddlePaddle支持多種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和優(yōu)化算法。簡(jiǎn)單書(shū)寫(xiě)配置文件即可實(shí)現(xiàn)復(fù)雜模型,如帶注意力機(jī)制或復(fù)雜記憶連接的神經(jīng)機(jī)器翻譯模型
高效性:為充分發(fā)揮多種計(jì)算資源的效力,PaddlePaddle在計(jì)算、存儲(chǔ)、架構(gòu)、通信等多方面都做了細(xì)致優(yōu)化,性能優(yōu)異
可伸縮性:PaddlePaddle全面支持多核、多GPU、多機(jī)環(huán)境,優(yōu)化的通信實(shí)現(xiàn)使高吞吐與高性能成為可能,輕松應(yīng)對(duì)大規(guī)模數(shù)據(jù)訓(xùn)練需求
兩個(gè)框架的對(duì)比:
社區(qū)活躍量不一樣,github,paddle9k,而TensorFlow90k。我剛開(kāi)始還以為paddle中文好理解,其實(shí)發(fā)現(xiàn)并不然。如果你在學(xué)習(xí)的過(guò)程中遇見(jiàn)哪個(gè)aip不知道,你發(fā)現(xiàn),你在paddle官網(wǎng)上查也全是英文,而TensorFlow直接在百度上查,就有很多資源解釋。而paddlepaddle百度上查api幾乎沒(méi)有。所以就學(xué)習(xí)上,TensorFlow還是資源比較豐富的。但是你在Github上提問(wèn),paddle官方人員會(huì)給你解答,這點(diǎn)paddle還是比較好的。TensorFlow偏向于研究,paddlepaddle偏向于應(yīng)用。如果你只是運(yùn)用深度學(xué)習(xí)模型,其實(shí)paddle就可以了,通常TensorFlow的幾行代碼,paddle一行就解決了。但是你要搞研究還是建議你用TensorFlow。比如你要編寫(xiě)自己的激活函數(shù),TensorFlow直接就可以寫(xiě),而paddle你還要去底層用去編寫(xiě)。(底層兩個(gè)都是用的c++)因?yàn)閜addle把所有的激活函數(shù)都封裝成api了。