TensorFlow 是目前最流行的深度學(xué)習(xí)庫(kù),它是 Google 開(kāi)源的一款人工智能學(xué)習(xí)系統(tǒng)。Tensor 的意思是張量,代表 N 維數(shù)組;Flow 的意思是流,代表基于數(shù)據(jù)流圖的計(jì)算。把 N 維數(shù)字從流圖的一端流動(dòng)到另一端的過(guò)程,就是人工智能神經(jīng)網(wǎng)絡(luò)進(jìn)行分析和處理的過(guò)程。
最近,twitter 上有一位 Google AI 工程師總結(jié)了 TensorFlow 的 30 個(gè)主要功能,雷鋒網(wǎng) AI 科技評(píng)論整理如下。
在過(guò)去幾年,有關(guān) TensorFlow 的知識(shí)系統(tǒng)占據(jù)了我的大腦。與其它一些更新的框架相比,TensorFlow 的功能并不是很多。
我對(duì)這個(gè)產(chǎn)品投入全心的思考并寫(xiě)下了我的想法,下面是一條接一條不斷擴(kuò)展的清單。對(duì)此,你準(zhǔn)備好了嗎?
1)TensorFlow 擴(kuò)展(TFX)
大家都知道我特別喜歡用 TFX 以及它的全套工具來(lái)把機(jī)器學(xué)習(xí)模型部署到生產(chǎn)環(huán)境中。如果你關(guān)心如何使模型保持最新并監(jiān)控它們,那么你可以了解一下這個(gè)產(chǎn)品、看看它的論文。
地址是:tensorflow.org/tfx/?hl=zh-cn
2)TensorFlow hub
如果你想在小型數(shù)據(jù)集上訓(xùn)練你的模型,或者提高泛化能力,你會(huì)需要使用遷移學(xué)習(xí)。TFHub 模塊使它變得容易,并且可以在 https://tfhub.dev/ 這個(gè)開(kāi)源軟件商店中使用。TF Hub 的地址是:tensorflow.org/hub/
3)TFX 數(shù)據(jù)驗(yàn)證
如何自動(dòng)確保用于重新訓(xùn)練模型的數(shù)據(jù)與最初用于訓(xùn)練模型的數(shù)據(jù)具有相同的格式、源、命名約定等。
對(duì)于線上訓(xùn)練來(lái)說(shuō),這是一個(gè)量很大的工作!
https://www.tensorflow.org/tfx/data_validation/?hl=zh-cn
4)TFX -TensorFlow 變換
同樣地,你可能希望用于重新訓(xùn)練的數(shù)據(jù)也能被自動(dòng)進(jìn)行預(yù)處理:對(duì)特定特性進(jìn)行歸一化、將字符串轉(zhuǎn)換為數(shù)值等。Transform 不僅可以對(duì)單個(gè)樣本進(jìn)行這些操作,還能批處理數(shù)據(jù)。
網(wǎng)址是:https://www.tensorflow.org/tfx/transform/?hl=zh-cn
5)TFX 模型分析
我最喜歡用 TensorFlow 模型分析功能去檢查模型的輸入數(shù)據(jù)或者模型推理過(guò)程中可能發(fā)生在某一小部分?jǐn)?shù)據(jù)上的問(wèn)題。我可以用它來(lái)仔細(xì)檢查數(shù)據(jù),以確保所有類別的數(shù)據(jù)都沒(méi)有受到負(fù)面影響
網(wǎng)址是:https://www.tensorflow.org/tfx/model_analysis/?hl=zh-cn
6)TFX-服務(wù)
服務(wù)使得部署新算法+實(shí)驗(yàn)變得容易,但是仍然能保持相同的服務(wù)器架構(gòu)+API。它不僅可以直接支持 TensorFlow 上的模型,也可以支持其它模型。
網(wǎng)址是:https://www.tensorflow.org/serving/?hl=zh-cn
7)TensorBoard
TensorBoard 是 TensorFlow 框架上一個(gè)非常酷炫的可視化工具,它也是 TensorFlow 直接自帶的。它可以可視化展現(xiàn)模型運(yùn)行過(guò)程中的日志,而且對(duì)于標(biāo)量、直方圖、分布、圖、圖像、音頻等都有各自的展示面板。
網(wǎng)址是:https://t.co/CEVbcJTHLP?amp=1
8)TensorFlow Lite (#TFLite)
用 #TFLite 可以在手機(jī)和嵌入式設(shè)備上部署模型。如果你看到安卓手機(jī)上有檢測(cè)植物葉子是否有疾病的 APP,或者小型的、具備 AI 技能的機(jī)器人,那么它們很有可能使用了 #TFLite。
網(wǎng)址是:https://t.co/suCsBIeQz4?amp=1
9)TensorFlowJS
這是一個(gè) JavaScript 庫(kù),用于在瀏覽器和 Node.js 上訓(xùn)練和部署 ML 模型。如果你已經(jīng)習(xí)慣了使用 TensorFlow Playground 和 GAN Playground,TFJS 就是它們背后的支撐技術(shù)。TensorFlowJS 的團(tuán)隊(duì)也棒極了!
網(wǎng)址:https://js.tensorflow.org/
10)TensorFlow 上的 Swift
Swift 可以在運(yùn)行代碼前,捕獲類型錯(cuò)誤和形狀不匹配的錯(cuò)誤,并內(nèi)置了自動(dòng)微分功能。它帶來(lái)了 eager execution 功能,而且讓 TF 的可用性提高了非常多。我還需要多用用這個(gè)
網(wǎng)址:https://www.tensorflow.org/swift/
11)Keras
Keras 如今直接集成在 TF 中,也就是 tf.keras。這意味著,如果不想使用低階的模型,那仍然可以用高階 API 的用戶友好性來(lái)實(shí)現(xiàn)圖形+模型的構(gòu)建。2.0 版本將會(huì)有更多的功能!網(wǎng)址:https://www.tensorflow.org/guide/keras
12)Tensor2Tensor
Tensor2Tensor 是一個(gè)深度學(xué)習(xí)模型和數(shù)據(jù)集的開(kāi)源軟件庫(kù),它可以讓深度學(xué)習(xí)變得更容易上手,促進(jìn)機(jī)器學(xué)習(xí)的研究。它同時(shí)也提供了何時(shí)以及為什么要部署這些模型的高級(jí)指南。
網(wǎng)址:https://github.com/tensorflow/tensor2tensor
13)XLA(線性代數(shù)計(jì)算加速)
XLA 是線性代數(shù)領(lǐng)域特定的編譯器,它優(yōu)化了 TensorFlow 的計(jì)算方式。結(jié)果是在計(jì)算速度、內(nèi)存使用和移動(dòng)平臺(tái)的可移植性上都有改進(jìn)。不過(guò)你先要有一個(gè)硬件加速器?。?/p>
網(wǎng)址:https://www.tensorflow.org/xla/
14)邊緣 TPU
為低功耗 IO 設(shè)備提供高性能機(jī)器學(xué)習(xí)推理的小型專用集成電路。例如:邊緣 TPU 可以執(zhí)行最先進(jìn)的移動(dòng)視覺(jué)模型,如以 100+fps 的速度執(zhí)行 MobileNet V2 模型,同時(shí)還非常地省電。
網(wǎng)址:https://cloud.google.com/edge-tpu/
15)Magenta(這里把英文原文留下吧,中文翻譯不知所以……)
作為一個(gè)音樂(lè)家,Magenta 讓我高興得不得了。
可以將 8 鍵輸入映射到一架 88 鍵鋼琴上、自動(dòng)創(chuàng)建旋律伴奏、使用機(jī)器學(xué)習(xí)來(lái)顯示音樂(lè)的視覺(jué)效果、轉(zhuǎn)錄曲調(diào)、產(chǎn)生新的聲音等等。
網(wǎng)址:https://magenta.tensorflow.org/
16)種子庫(kù)
這個(gè)功能也很少看到有人討論
種子庫(kù)是一個(gè)不斷擴(kuò)展的交互式機(jī)器學(xué)習(xí)示例集合,您可以使用、修改、實(shí)驗(yàn)和補(bǔ)充這些示例來(lái)滿足您的需求+用例研究。在種子庫(kù)的機(jī)器學(xué)習(xí)項(xiàng)目里面,甚至有關(guān)注公平和偏見(jiàn)的實(shí)例!
種子庫(kù)的地址是:https://research.google.com/seedbank/
17)GoogleColab 分析工具
這不是 TensorFlow 特有的工具,但是是一個(gè)非常好的工具,我不得不提到它!它是一個(gè)交互式的 Python 筆記本,能免費(fèi)使用,可以在 CPU/GPU/TPU 或本地/遠(yuǎn)程后端之間切換!
18)Probability 庫(kù)
深度學(xué)習(xí)是很好的,但是,作為一個(gè)數(shù)據(jù)科學(xué)家,你可能想告訴你的模型一些特定領(lǐng)域的知識(shí):蒙特卡洛,變分推理,貝葉斯技術(shù),矢量量化自動(dòng)編碼器等等。
網(wǎng)址是:https://www.tensorflow.org/probability/
19)模型園
這是一個(gè)收藏了大量 GoogleAI 和 TensorFlow 社區(qū)開(kāi)源模型的大集合,包括了樣本和代碼片段。從樹(shù)到神經(jīng)元程序的合成都有。
網(wǎng)址是:https://github.com/tensorflow/models
20)Dopamine
這是一個(gè)用于原型化強(qiáng)化學(xué)習(xí)算法的、易于訪問(wèn)的框架。專注于:實(shí)驗(yàn)的簡(jiǎn)單性、靈活性、可靠性和重現(xiàn)性。
備注:谷歌官方還沒(méi)有正式發(fā)布這個(gè)產(chǎn)品!
網(wǎng)址:https://github.com/google/dopamine
Dopamine 團(tuán)隊(duì)甚至開(kāi)發(fā)了一系列的 GoogleColab 筆記本來(lái)展示如何使用這個(gè)產(chǎn)品!這種用戶友好的做法也讓框架更加地多變。
網(wǎng)址:https://github.com/google/dopamine/blob/master/dopamine/colab/README.md
21)Nucleus 模塊
Nype 是一個(gè) Python 和 C++代碼庫(kù),旨在使對(duì)于常見(jiàn)的基因組學(xué)的數(shù)據(jù)如 SAM 或 VCF 更容易被讀取、寫(xiě)入和分析。它能與 TensorFlow 完美的集合在一起。
網(wǎng)址:https://github.com/google/nucleus
關(guān)于 2018 TensorFlow 開(kāi)發(fā)者峰會(huì),請(qǐng)查看 You Tube 視頻:
https://www.youtube.com/watch?v=vdG7uKQ2eKk
22)TensorFlow 研究云(TFRC)
這是 1000 個(gè)谷歌云 TPU 的集群,為機(jī)器學(xué)習(xí)研究社區(qū)提供了總計(jì) 180 兆帕的計(jì)算能力——而且絕對(duì)免費(fèi),為機(jī)器學(xué)習(xí)的下一次突破做出自己的貢獻(xiàn)。網(wǎng)址:https://www.tensorflow.org/tfrc/
23)TensorFlow 社區(qū)
這不是一個(gè)特定的產(chǎn)品,但是它對(duì) TensorFlow 的生態(tài)系統(tǒng)來(lái)說(shuō)至關(guān)重要。谷歌 AI 對(duì)社區(qū)的新關(guān)注點(diǎn)是:以 Edd 為首的功能郵件列表、社交媒體、特殊興趣小組以及 TensorFlow 直接輸入新的/變化的功能。
24)TensorFlow 文檔
你知道我們所有的文件都放在 @ GITHUB 上嗎?歡迎社會(huì)各界的貢獻(xiàn)和建議!馬上去問(wèn)問(wèn) @billylamberta 學(xué)習(xí)如何開(kāi)始吧!
風(fēng)格指南:https://www.tensorflow.org/community/documentation
反饋問(wèn)題:https://github.com/tensorflow/tensorflow/issues?q=is%3Aopen+is%3Aissue+label%3Atype%3Adocs
25)Rstats
fly_upside_down、rstudio 和 fchollet 為開(kāi)發(fā)者創(chuàng)建了一個(gè) R 接口,它使用高級(jí) #Keras+Estimator API,并在需要在較低級(jí)別調(diào)整網(wǎng)絡(luò)時(shí)提供更多的控制。
甚至有一本書(shū)是關(guān)于這個(gè)的:https://tensorflow.rstudio.com/
26)AdaNet
用于自適應(yīng)學(xué)習(xí)深層神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)/優(yōu)化權(quán)值的算法。如果您想了解更多關(guān)于自適應(yīng)機(jī)器學(xué)習(xí)內(nèi)核的知識(shí),AdaNet 的教程是一個(gè)很好的起點(diǎn)!
相關(guān)地址:https://github.com/tensorflow/adanet
關(guān)于 AdaNet 的論文:https://arxiv.org/abs/1607.01097
27)Lucid
可解釋性,也就是深層神經(jīng)網(wǎng)絡(luò)是怎么做出決策的,這對(duì)于道德機(jī)器學(xué)習(xí)和將深度學(xué)習(xí)用于會(huì)有顯著影響的場(chǎng)景中是至關(guān)重要的。
https://github.com/tensorflow/lucid這里有 GoogleColab 的教程、代碼以及 distillpub 的文章
28)概念激活向量測(cè)試
類似的道理:大多數(shù)可解釋性方法顯示每個(gè)輸入特征(例如,像素)中的重要權(quán)重。相反,TCAV 顯示了高層次概念(例如,顏色、性別、種族)的重要性,即人類如何交流。
網(wǎng)址:https://github.com/tensorflow/tcav
29)Cleverhans
如果你的模型的表現(xiàn)高度取決于輸入數(shù)據(jù),那么可以通過(guò)操縱或污染數(shù)據(jù)來(lái)破壞這些模型。在 @goodfellow_ian 的博客上可以看到如何使用 cleverhans 為對(duì)抗攻擊的脆弱性評(píng)估提供基準(zhǔn)庫(kù)!
網(wǎng)址是:https://github.com/tensorflow/cleverhans
30)Rust + Haskell 和 C API 的結(jié)合
我在前面提到過(guò) rstats 支持,并且希望確保也能提到其它社區(qū)項(xiàng)目(TensorFlowSharp 是由 MiguelDigias 創(chuàng)造的)。
可以查看網(wǎng)址:
https://github.com/tensorflow/rusthttps://github.com/tensorflow/haskellhttps://github.com/migueldeicaza/TensorFlowSharp
via DynamicWebPaige's Twitter
-
人工智能
+關(guān)注
關(guān)注
1789文章
46660瀏覽量
237094 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5465瀏覽量
120891 -
tensorflow
+關(guān)注
關(guān)注
13文章
328瀏覽量
60474
原文標(biāo)題:玩轉(zhuǎn)TensorFlow?你需要知道這30功能
文章出處:【微信號(hào):worldofai,微信公眾號(hào):worldofai】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論