keras和tensorflow版本對(duì)應(yīng) Keras還是TensorFlow,程序員該如何選擇深度學(xué)習(xí)框架?
Keras還是TensorFlow,程序員該如何選擇深度學(xué)習(xí)框架?如果您想用少量的代碼盡快地構(gòu)建和測(cè)試神經(jīng)網(wǎng)絡(luò),keras是最快的,而且sequential API和model非常強(qiáng)大。而且keras
Keras還是TensorFlow,程序員該如何選擇深度學(xué)習(xí)框架?
如果您想用少量的代碼盡快地構(gòu)建和測(cè)試神經(jīng)網(wǎng)絡(luò),keras是最快的,而且sequential API和model非常強(qiáng)大。而且keras的設(shè)計(jì)非常人性化。以數(shù)據(jù)輸入和輸出為例,與keras的簡(jiǎn)單操作相比,tensorflow編譯碼的構(gòu)造過程非常復(fù)雜(尤其對(duì)于初學(xué)者來說,大量的記憶過程非常痛苦)。此外,keras將模塊化作為設(shè)計(jì)原則之一,用戶可以根據(jù)自己的需求進(jìn)行組合。如果你只是想快速建立通用模型來實(shí)現(xiàn)你的想法,keras可以是第一選擇。
但是,包裝后,keras將變得非常不靈活,其速度相對(duì)較慢。如果高度包裝,上述缺點(diǎn)將更加明顯。除了一些對(duì)速度要求較低的工業(yè)應(yīng)用外,由于tensorflow的速度較高,因此會(huì)選擇tensorflow
如果您在驗(yàn)證您的想法時(shí),想定義損失函數(shù)而不是使用現(xiàn)有的設(shè)置,與keras相比,tensorflow提供了更大的個(gè)性空間。此外,對(duì)神經(jīng)網(wǎng)絡(luò)的控制程度將在很大程度上決定對(duì)網(wǎng)絡(luò)的理解和優(yōu)化,而keras提供的權(quán)限很少。相反,tensorflow提供了更多的控制權(quán),比如是否訓(xùn)練其中一個(gè)變量、操作梯度(以獲得訓(xùn)練進(jìn)度)等等。
盡管它們都提供了深度學(xué)習(xí)模型通常需要的功能,但如果用戶仍然追求一些高階功能選擇,例如研究特殊類型的模型,則需要tensorflow。例如,如果您想加快計(jì)算速度,可以使用tensorflow的thread函數(shù)來實(shí)現(xiàn)與多個(gè)線程的相同會(huì)話。此外,它還提供了調(diào)試器功能,有助于推斷錯(cuò)誤和加快操作速度。
有人說Keras在TensorFlow中的分量越來越重,對(duì)此你怎么看?
其實(shí)keras不僅在tensorflow的系統(tǒng)中越來越重要,而且因?yàn)樗荊oogle為tensorflow開發(fā)的一套API,所以父母撫養(yǎng)的孩子自然很容易長(zhǎng)大。
另外,如果我們將keras視為一種web前端技術(shù),那么tensorflow在后臺(tái)就像Java或PHP。也就是說,keras是一套類似于標(biāo)準(zhǔn)的“UI”,它是為開發(fā)人員設(shè)計(jì)的,也就是為“操作員”設(shè)計(jì)的一個(gè)深度學(xué)習(xí)框架,它便于學(xué)習(xí)和使用,提高了開發(fā)人員的效率。
Keras在2018年擁有25000個(gè)人用戶。它的易用性和親和力都非常好。
Keras還支持其他深度學(xué)習(xí)框架。當(dāng)然,它不是為其他深度學(xué)習(xí)框架設(shè)計(jì)的,但是它太熱了,而且設(shè)計(jì)得很好,所以其他深度學(xué)習(xí)框架的開發(fā)公司都愿意讓自己的框架支持keras。
深度學(xué)習(xí)框架已經(jīng)開發(fā)了相當(dāng)長(zhǎng)的時(shí)間。到目前為止,許多工程師還不能使用它,或者他們可能缺少像keras這樣的“前端”
有學(xué)習(xí)python和tensorflow的書籍推薦嗎?謝謝?
Python作為一種編程語言,值得學(xué)習(xí)。由于其簡(jiǎn)單的介紹和易懂的特點(diǎn),受到越來越多開發(fā)人員的歡迎。就連房地產(chǎn)大亨潘石屹也在學(xué)蟒蛇,可見蟒蛇的流行。由于去年工作的需要,我自學(xué)了一些Python知識(shí),并用tensorflow框架推薦了一些書籍和學(xué)習(xí)經(jīng)驗(yàn)。
Python非常容易入門。你可以通過參考一些書籍或在線課程來學(xué)習(xí)。MOOCS、網(wǎng)易云課堂,甚至BiliBili都有教程。大部分的基礎(chǔ)知識(shí)都可以涵蓋。如果您想學(xué)習(xí)tensorflow,可以學(xué)習(xí)一些數(shù)據(jù)處理,了解和使用常用的第三方庫(kù)。您可以參考Python數(shù)據(jù)分析、Python數(shù)據(jù)可視化等
1。X
版本太復(fù)雜了,普通用戶無法理解,而2.0簡(jiǎn)化了很多東西,更像Python語言,更容易上手。目前,書不多。你可以參考tensorflow 2.0深度學(xué)習(xí)算法的實(shí)用教材,或者直接去一些東方搜索。如果你想了解更多,你可以閱讀《深度學(xué)習(xí)》、《機(jī)器學(xué)習(xí)》等相關(guān)書籍。