0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

TensorFlow 2.0馬上要來(lái)了,還不速來(lái)了解下新架構(gòu)?

DPVg_AI_era ? 來(lái)源:lq ? 2019-01-16 08:45 ? 次閱讀

TensorFlow 2.0馬上要來(lái)了,還不速來(lái)了解下新架構(gòu)?

作為全球最受歡迎的機(jī)器學(xué)習(xí)開源框架,在TensorFlow 發(fā)展的3年里,見(jiàn)證了機(jī)器學(xué)習(xí)和人工智能領(lǐng)域的快速發(fā)展和變化;與人類的孩子一樣,不斷學(xué)習(xí),遭到批評(píng),遇到對(duì)手,走向更大、更廣闊的環(huán)境。

而TensorFlow 2.0作為一個(gè)重要的里程碑,將更加關(guān)注其“易用性”,更注重使用的低門檻,旨在讓每個(gè)人都能應(yīng)用機(jī)器學(xué)習(xí)技術(shù)。

那么在架構(gòu)方面,又會(huì)有何不同呢?話不多說(shuō),來(lái)看下新架構(gòu)圖:

在過(guò)去的幾年中,開發(fā)團(tuán)隊(duì)為TensorFlow添加了許多組件,而在2.0版本中,這些組件將被打包成一個(gè)綜合平臺(tái),可支持機(jī)器學(xué)習(xí)的工作流程(從訓(xùn)練到部署)。正如上圖所示。

盡管新架構(gòu)中的訓(xùn)練部分主要關(guān)注Python API,但是TensorFlow.js還支持訓(xùn)練模型。其他語(yǔ)言綁定(language binding)也有不同程度的支持,包括Swift、R和Julia等。

最近,官方宣布Keras作為一個(gè)用戶友好的機(jī)器學(xué)習(xí)API標(biāo)準(zhǔn),將成為用于構(gòu)建和訓(xùn)練模型的高級(jí)API。 Keras API讓用戶可以輕松開始使用TensorFlow。尤其重要的是,Keras提供了幾個(gè)模型構(gòu)建API(順序,功能和子類),因此您可以為項(xiàng)目選擇正確的抽象級(jí)別。

Keras API使得上手TensorFlow非常容易。重要的是,Keras提供了幾個(gè)模型構(gòu)建API(Sequential、Functional以及Subclassing),因此用戶可以選擇正確的抽象化(abstraction)級(jí)別,TensorFlow的實(shí)現(xiàn)包含增強(qiáng)功能,包括eager execution、立即迭代(immediate iteration)和直觀調(diào)試(intuitive debugging),以及tf.data,用于構(gòu)建可擴(kuò)展的輸入pipeline。

TensorFlow的實(shí)現(xiàn)包含增強(qiáng)功能,包括急切執(zhí)行,立即迭代和直觀調(diào)試,以及tf.data,用于構(gòu)建可擴(kuò)展的輸入管道。

以下是一個(gè)工作流程示例:

1、使用tf.data加載數(shù)據(jù)。使用輸入管道讀取訓(xùn)練數(shù)據(jù),輸入管道使用tf.data創(chuàng)建。利用tf.feature_column描述特征,如分段和特征交叉。此外還支持內(nèi)存數(shù)據(jù)的便捷輸入(如NumPy)。

2、使用tf.keras構(gòu)建、訓(xùn)練并驗(yàn)證模型,或者使用Premade Estimators。Keras與TensorFlow的其余部分緊密集成,因此用戶可以隨時(shí)訪問(wèn)TensorFlow的函數(shù)。如線性或邏輯回歸、梯度上升樹、隨機(jī)森林等也可以直接使用(使用tf.estimatorAPI實(shí)現(xiàn))。如果不想從頭開始訓(xùn)練模型,用戶也可以很快利用遷移學(xué)習(xí)來(lái)訓(xùn)練使用TensorFlow Hub模塊的Keras或Estimator模型。

3、快速執(zhí)行運(yùn)行和調(diào)試過(guò)程,然后使用tf.function充分利用圖形的優(yōu)勢(shì)。在默認(rèn)情況下,TensorFlow 2.0按快速執(zhí)行方式運(yùn)行,以便于順利調(diào)試。此外,tf.function注釋可以方便地將Python程序轉(zhuǎn)換為TensorFlow圖形。此過(guò)程保留了1.x TensorFlow基于圖形的執(zhí)行的所有優(yōu)點(diǎn):性能優(yōu)化,遠(yuǎn)程執(zhí)行以及方便序列化、導(dǎo)出和部署的能力,同時(shí)實(shí)現(xiàn)了在Python中表達(dá)程序的靈活性和易用性。

4、使用分布式策略進(jìn)行分布式訓(xùn)練。對(duì)于大型機(jī)器學(xué)習(xí)訓(xùn)練任務(wù),分布式策略API可以輕松地在不同硬件配置上分配和訓(xùn)練模型,無(wú)需更改模型的定義。由于TensorFlow支持各種硬件加速器,如CPUGPU和TPU,因此用戶可以將訓(xùn)練負(fù)載分配到單節(jié)點(diǎn)/多加速器以及多節(jié)點(diǎn)/多加速器配置上(包括TPU Pod)。這個(gè)API支持多種群集化配置,也提供了在本地或云環(huán)境中部署Kubernetes群集訓(xùn)練的模板。

5、導(dǎo)出到Saved Model。TensorFlow將對(duì)Saved Model進(jìn)行標(biāo)準(zhǔn)化,作為TensorFlow服務(wù)的一部分,他將成為TensorFlow Lite、TensorFlow.js、TensorFlow Hub等格式的可互換格式。

構(gòu)建模型,如此簡(jiǎn)單!

TensorFlow始終為生產(chǎn)提供了直接部署方式。無(wú)論是部署在服務(wù)器、邊緣設(shè)備還是Web上,TensorFlow都可以讓用戶對(duì)模型實(shí)現(xiàn)輕松訓(xùn)練和部署。無(wú)論用戶使用何種語(yǔ)言或平臺(tái)。在TensorFlow 2.0中,我們通過(guò)標(biāo)準(zhǔn)化互換格式和API對(duì)齊來(lái)提高跨平臺(tái)和組件的兼容性。

訓(xùn)練并保存模型后,可以直接在應(yīng)用程序中執(zhí)行,也可以使用其中一個(gè)部署庫(kù)為其提供服務(wù):

TensorFlow服務(wù):TensorFlow庫(kù),允許通過(guò)HTTP / REST或gRPC /協(xié)議緩沖區(qū)提供模型。

TensorFlow Lite:TensorFlow針對(duì)移動(dòng)和嵌入式設(shè)備的輕量級(jí)解決方案提供了在AndroidiOS嵌入式系統(tǒng)(如Raspberry Pi和Edge TPU)上部署模型的功能。

TensorFlow.js:允許在JavaScript環(huán)境下部署模型,如在Web瀏覽器或服務(wù)器端通過(guò)Node.js實(shí)現(xiàn)部署。TensorFlow.js還支持使用類似Keras的API在JavaScript中定義模型并直接在Web瀏覽器中進(jìn)行訓(xùn)練。

TensorFlow還支持其他語(yǔ)言,包括C,Java,Go,C#,Rust,Julia,R等。

功能強(qiáng)大的面向研究的實(shí)驗(yàn)環(huán)境

TensorFlow 2.0集成了許多功能,可以在不損失速度和性能的情況下定義和訓(xùn)練最先進(jìn)的模型:

Keras Functional API和Model Subclassing API:可以創(chuàng)建復(fù)雜的拓?fù)?,包括使用殘差層,自定義多輸入/輸出模型以及強(qiáng)制寫入的前向傳遞。

自定義訓(xùn)練邏輯:使用tf.GradientTape和tf.custom_gradient對(duì)梯度計(jì)算進(jìn)行細(xì)粒度控制。

為了獲得更大的靈活性和可控性,低級(jí)的TensorFlowAPI是始終可用的,并可與更高級(jí)的抽象概念工具結(jié)合使用,以實(shí)現(xiàn)完全可定制的邏輯。

TensorFlow 2.0帶來(lái)了一些新增功能,允許研究人員和高級(jí)用戶進(jìn)行實(shí)驗(yàn),使用豐富的擴(kuò)展,如Ragged Tensors,TensorFlow Probability,Tensor2Tensor等。

除了這些功能外,TensorFlow還提供了易于執(zhí)行的簡(jiǎn)單原型設(shè)計(jì)和調(diào)試,分布式策略API和AutoGraph,可以進(jìn)行大規(guī)模訓(xùn)練,并支持TPU,這些都使TensorFlow 2.0成為一個(gè)易于使用、可定制且高度可擴(kuò)展的平臺(tái),可用于實(shí)現(xiàn)最先進(jìn)的技術(shù),進(jìn)行機(jī)器學(xué)習(xí)研究,并將研究轉(zhuǎn)化為生產(chǎn)流程。

TensorFlow 1.x和2.0之間的差異

自從首次開源TensorFlow以來(lái),我們已經(jīng)發(fā)布了多個(gè)版本的API迭代。隨著機(jī)器學(xué)習(xí)的快速發(fā)展,現(xiàn)在TensorFlow已經(jīng)發(fā)展壯大,支持多樣化的用戶組合,可以滿足各種需求。使用TensorFlow 2.0,用戶有機(jī)會(huì)根據(jù)語(yǔ)義版本控制來(lái)實(shí)現(xiàn)平臺(tái)的清理和模塊化。

以下是一些較大的變化:

移除了隊(duì)列運(yùn)行器以支持tf.data。

移除了圖表集合。

變量處理方式的變化。

可對(duì)API符號(hào)進(jìn)行移動(dòng)和重命名

更高的兼容性和連續(xù)性

為了讓用戶向TensorFlow 2.0的遷移更加容易,我們將發(fā)布一個(gè)轉(zhuǎn)換工具,它可以對(duì)TensorFlow 1.x Python代碼進(jìn)行更新,以使用TensorFlow2.0兼容的API,或者對(duì)無(wú)法自動(dòng)轉(zhuǎn)換的代碼予以標(biāo)記。

當(dāng)然,并非所有的更改都可以完全自動(dòng)完成。比如,某些已被棄用的API沒(méi)有直接的可替代對(duì)象。所以我們引入了tensorflow.compat.v1兼容性模塊,該模塊保留了對(duì)完整TensorFlow 1.x API(不包括tf.contrib)的支持。該模塊將在整個(gè)TensorFlow 2.x的生命周期內(nèi)保持維護(hù),并允許使用TensorFlow 1.x編寫的代碼維護(hù)功能。

此外,Saved Model或保存的GraphDefs將向后兼容。使用1.x版本保存的SavedModels將繼續(xù)能夠在2.x中加載和執(zhí)行。但是,2.0中的原始檢查點(diǎn)中的變量名稱可能會(huì)發(fā)生更改,因此,使用已轉(zhuǎn)換為2.0版本代碼中的2.0之前版本的檢查點(diǎn)可能無(wú)法正常工作。

我們相信,TensorFlow 2.0將為開發(fā)者社區(qū)帶來(lái)巨大利益,為了讓這次版本轉(zhuǎn)換變得盡量簡(jiǎn)單方便,我們投入了大量精力。

但是,我們也認(rèn)識(shí)到,版本遷移需要時(shí)間,我們非常關(guān)心社區(qū)成員目前對(duì)學(xué)習(xí)和使用TensorFlow的投入。我們將在最后的1.x版本中提供12個(gè)月的安全補(bǔ)丁,以便為現(xiàn)有用戶提供充足的時(shí)間進(jìn)行過(guò)渡,并順利獲得TensorFlow2.0的所有優(yōu)勢(shì)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 加速器
    +關(guān)注

    關(guān)注

    2

    文章

    790

    瀏覽量

    37675
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8349

    瀏覽量

    132315
  • tensorflow
    +關(guān)注

    關(guān)注

    13

    文章

    328

    瀏覽量

    60473

原文標(biāo)題:【官方發(fā)布】一圖看懂TensorFlow 2.0新架構(gòu)

文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TensorFlow是什么?TensorFlow怎么用?

    TensorFlow是由Google開發(fā)的一個(gè)開源深度學(xué)習(xí)框架,它允許開發(fā)者方便地構(gòu)建、訓(xùn)練和部署各種復(fù)雜的機(jī)器學(xué)習(xí)模型。TensorFlow憑借其高效的計(jì)算性能、靈活的架構(gòu)以及豐富的工具和庫(kù),在學(xué)
    的頭像 發(fā)表于 07-12 16:38 ?535次閱讀

    keras模型轉(zhuǎn)tensorflow session

    和訓(xùn)練深度學(xué)習(xí)模型。Keras是基于TensorFlow、Theano或CNTK等底層計(jì)算框架構(gòu)建的。TensorFlow是一個(gè)開源的機(jī)器學(xué)習(xí)框架,由Google Brain團(tuán)隊(duì)開發(fā)。它提供了一種靈活
    的頭像 發(fā)表于 07-05 09:36 ?437次閱讀

    FHT4644國(guó)產(chǎn)替代必然性崛起你還不來(lái)了解一下芯片這些事嗎

    FHT4644國(guó)產(chǎn)替代必然性崛起你還不來(lái)了解一下芯片這些事嗎 國(guó)產(chǎn)芯片崛起,讓國(guó)內(nèi)發(fā)展環(huán)境變得更加穩(wěn)定,國(guó)產(chǎn)芯片F(xiàn)HT4644通過(guò)性能實(shí)驗(yàn)測(cè)試,更高效。實(shí)驗(yàn)室常溫條件下,實(shí)測(cè)數(shù)據(jù),輸出電流Iout
    發(fā)表于 06-24 17:38

    車路云協(xié)同,這次它真的來(lái)了嗎?

    隨著科技的快速發(fā)展,“車路云協(xié)同”正在悄然發(fā)生變化。我們離科幻電影《機(jī)械公敵》中威爾?史密斯駕駛的汽車能準(zhǔn)確甄別交通狀況并調(diào)整行駛狀態(tài)的時(shí)代就要來(lái)了嗎?背景說(shuō)明“車路協(xié)同”已經(jīng)不是什么新鮮名詞
    的頭像 發(fā)表于 06-13 08:25 ?452次閱讀
    車路云協(xié)同,這次它真的<b class='flag-5'>來(lái)了</b>嗎?

    OpenAI的AI搜索也要來(lái)了,但我們需要這么多AI搜索么

    OpenAI要做AI搜索挑戰(zhàn)谷歌這件事已經(jīng)傳了很久,傳說(shuō)中的SearchGPT似乎真的要來(lái)了。據(jù)軟件開發(fā)者TiborBlaho爆料,OpenAI的AI搜索產(chǎn)品Sonic-SNC(SearchGPT
    的頭像 發(fā)表于 05-10 08:05 ?348次閱讀
    OpenAI的AI搜索也<b class='flag-5'>要來(lái)了</b>,但我們需要這么多AI搜索么

    騰訊突然宣布,微信鴻蒙版要來(lái)了!

    應(yīng)用,僅支持鴻蒙內(nèi)核和系統(tǒng)的應(yīng)用,被稱為 “純血鴻蒙”而備受關(guān)注, 這意味著, 真正的國(guó)產(chǎn)手機(jī)操作系統(tǒng)要來(lái)了 ,而且影響力驚人, 一上線就是僅次于 Android 和 iOS 之后的全球第三大手機(jī)操作系統(tǒng)
    發(fā)表于 04-30 19:34

    蘋果折疊屏iPhone新專利獲批 蘋果折疊屏手機(jī)要來(lái)了嗎?

    蘋果折疊屏iPhone新專利獲批 蘋果折疊屏手機(jī)要來(lái)了嗎? 我們看到蘋果公司折疊屏iPhone專利已經(jīng)獲批;果粉都在期待的蘋果折疊屏手機(jī)要來(lái)了嗎?新專利也顯示蘋果已經(jīng)找到了提升折疊屏耐用耐摔性的方法
    的頭像 發(fā)表于 04-17 17:05 ?1252次閱讀

    陶瓷電容為什么會(huì)老化?戳進(jìn)來(lái)了解下

    電器老化是普遍現(xiàn)象,受環(huán)境因素影響,如溫度、濕度、電壓和電流等。陶瓷電容作為電路重要部分,其老化會(huì)影響電路穩(wěn)定性和可靠性。要及時(shí)更換快到使用期限的陶瓷電容,避免影響整個(gè)電路性能。
    的頭像 發(fā)表于 03-26 09:28 ?302次閱讀
    陶瓷電容為什么會(huì)老化?戳進(jìn)<b class='flag-5'>來(lái)了解下</b>

    陶瓷電容為什么會(huì)老化?戳進(jìn)來(lái)了解下

    電器老化是普遍現(xiàn)象,受環(huán)境因素影響,如溫度、濕度、電壓和電流等。陶瓷電容作為電路重要部分,其老化會(huì)影響電路穩(wěn)定性和可靠性。要及時(shí)更換快到使用期限的陶瓷電容,避免影響整個(gè)電路性能。
    的頭像 發(fā)表于 03-26 09:28 ?456次閱讀
    陶瓷電容為什么會(huì)老化?戳進(jìn)<b class='flag-5'>來(lái)了解下</b>

    基于TensorFlow和Keras的圖像識(shí)別

    ,讓我們先花點(diǎn)時(shí)間來(lái)了解一些術(shù)語(yǔ)。TensorFlow/KerasTensorFlow是GoogleBrain團(tuán)隊(duì)創(chuàng)建的一個(gè)Python開源庫(kù),它包含許多算法和模型
    的頭像 發(fā)表于 01-13 08:27 ?754次閱讀
    基于<b class='flag-5'>TensorFlow</b>和Keras的圖像識(shí)別

    華為黑科技充電車要來(lái)了

    ”期待的外觀。在這款充電車上,你將看到配備有直流和交流充電槍,它們巧妙地隱藏在電子交互屏幕下方的收納箱兩側(cè)。 據(jù)百能云芯電.子元器.件商.城了解,這輛充電車身上布滿了各種超聲波雷達(dá),令人矚目的是車頂?shù)臉?gòu)造,有望搭
    的頭像 發(fā)表于 12-18 16:11 ?548次閱讀

    GNSS技術(shù)為自動(dòng)駕駛帶來(lái)了什么?

    GNSS技術(shù)為自動(dòng)駕駛帶來(lái)了什么?
    的頭像 發(fā)表于 12-04 17:44 ?484次閱讀

    無(wú)需電流采樣電阻的智能電機(jī)驅(qū)動(dòng)IC,不來(lái)了解一下么?

    無(wú)需電流采樣電阻的智能電機(jī)驅(qū)動(dòng)IC,不來(lái)了解一下么?
    的頭像 發(fā)表于 11-30 17:43 ?424次閱讀
    無(wú)需電流采樣電阻的智能電機(jī)驅(qū)動(dòng)IC,不<b class='flag-5'>來(lái)了解</b>一下么?

    一文認(rèn)識(shí)ARM匯編指令和體系架構(gòu)

    STM32作為ARM核芯片廣為人知,分享本文來(lái)了解下與之相關(guān)的ARM。
    的頭像 發(fā)表于 11-20 10:53 ?2603次閱讀
    一文認(rèn)識(shí)ARM匯編指令和體系<b class='flag-5'>架構(gòu)</b>

    小米汽車要來(lái)了?你會(huì)買嗎?淺談小米汽車的核心技術(shù)之汽車PCB線路板

    小米汽車要來(lái)了?這是近期引發(fā)了無(wú)數(shù)網(wǎng)友熱議的話題。小米作為一家以手機(jī)為主的科技公司,為什么要涉足汽車領(lǐng)域呢?小米汽車有什么特點(diǎn)和優(yōu)勢(shì)呢?今天,捷多邦小編就來(lái)聊聊小米汽車的核心技術(shù)之一——汽車PCB
    的頭像 發(fā)表于 11-20 10:30 ?3663次閱讀