成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

Google開(kāi)發(fā)者大會(huì):你不得不知的Tensorflow小技巧

wwq0327 / 789人閱讀

摘要:近日在中國(guó)召開(kāi)了。軟件工程師馮亦菲為我們帶來(lái)了題為用高層來(lái)進(jìn)行模型原型設(shè)計(jì)訓(xùn)練和生產(chǎn)投入的精彩報(bào)告。馮亦菲姐姐給我們講了一些的新的的變動(dòng),最重要的是提出了一些使用的建議。但是如果沒(méi)有,就會(huì)報(bào)對(duì)象不能解釋為的錯(cuò)誤。

Google Development Days China 2018近日在中國(guó)召開(kāi)了。非常遺憾,小編因?yàn)椴豢煽剐砸蛩販粼诤戏?,沒(méi)辦法去參加。但是小編的朋友有幸參加了會(huì)議,帶來(lái)了關(guān)于tensorlfow的一手資料。這里跟隨小編來(lái)關(guān)注tensorflow在生產(chǎn)環(huán)境下的最佳應(yīng)用情況。

Google Brain軟件工程師馮亦菲為我們帶來(lái)了題為“用Tensorflow高層API來(lái)進(jìn)行模型原型設(shè)計(jì)、訓(xùn)練和生產(chǎn)投入”的精彩報(bào)告。

馮亦菲姐姐給我們講了一些tensorflwo的新的API的變動(dòng),最重要的是提出了一些使用tensorflow的建議。

總結(jié)出來(lái)有六個(gè)方面,分別是:

用Eager模式搭建原型

用Datasets處理數(shù)據(jù)

用Feature Columns提取特征

用Keras搭建模型

借用Canned Estimators

用SavedModel打包模型

下面我們依次來(lái)了解下這六個(gè)方面。

用Eager模式搭建原型

作為計(jì)算機(jī)界的一份子,我們知道靜態(tài)圖的效率自然是快快的,但是動(dòng)態(tài)圖的使用為我們的使用帶來(lái)的很多方便。17年的時(shí)候,各大框架動(dòng)態(tài)圖大行其道,于是Google提出了tf.contrib.eager應(yīng)對(duì)挑戰(zhàn)。

使用Eager有什么好處呢?回想之前我們?cè)谡{(diào)試tensorflow的程序時(shí),不得不使用sess.run(),麻煩的要死,而使用Eager就可以直接的將變量打印出來(lái),大大方便了我們的調(diào)試;好處不止這么多,在進(jìn)行模型搭建的時(shí)候,以前我們需要仔細(xì)考慮下Tensor的shape,一旦出錯(cuò)要定位也很不容易。而使用Eager可以一邊搭建網(wǎng)絡(luò)結(jié)構(gòu),一邊將shape打印出來(lái)確認(rèn)下是否正確。這就使我們?cè)诖罱ňW(wǎng)絡(luò)時(shí)更加方面快捷了;此外,使用Eager后,自定義Operation和Gradient也會(huì)方便很多。

下面舉個(gè)簡(jiǎn)單的小例子。首先使用pip install tf-nightly(或GPU版本pip install tf-nightly-gpu)來(lái)安裝Eager。

import tensorflow?as?tfimport tensorflow.contrib.eager?as?tfetfe.enable_eager_execution() #開(kāi)啟Eager模式a?=?tf.constant([5], dtype=tf.int32)for?i in?range(a):? ?print?(i)

使用Eager后我們可以很順利的執(zhí)行上述代碼。但是如果沒(méi)有Eager,就會(huì)報(bào)Tensor對(duì)象不能解釋為integer的錯(cuò)誤。從缺點(diǎn)上來(lái)講,Eager的引入也勢(shì)必造成額外的成本。

用Datasets處理數(shù)據(jù)

tensorflow的數(shù)據(jù)讀入有三種方式:通過(guò)feeding的方式;通過(guò)管道(pipeline)的方式;直接讀取變量或常量中保存的數(shù)據(jù)。Datasets屬于上面提出的第二種方式,可以簡(jiǎn)化數(shù)據(jù)輸入過(guò)程,而且能夠提高數(shù)據(jù)的讀入效率。

Datasets的組成如上如所示。其中:

Dataset:創(chuàng)建和轉(zhuǎn)換數(shù)據(jù)集的基本;

TextLineDataset:從文本文件中讀取行;

TFRecordDataset:讀取TFRecord文件;

FixedLengthRecordDataset:從二進(jìn)制文件讀取固定大小的記錄;

Iterator:提供一種一次訪(fǎng)問(wèn)一個(gè)數(shù)據(jù)集元素的方法。

對(duì)于Datasets的使用,我們可以使用Dataset的子類(lèi)提供的方法,也可以直接使用基類(lèi)的方法:tf.data.Dataset.from_tensors()或者tf.data.Dataset.from_tensor_slices()。

用Feature Columns提取特征

Feature Columns實(shí)際上是一個(gè)數(shù)據(jù)結(jié)構(gòu),一個(gè)用于描述特征的數(shù)據(jù)結(jié)構(gòu)。利用Feature Columns可以很方便的對(duì)輸入訓(xùn)練模型前的特征進(jìn)行處理。比如鳶尾花的識(shí)別,對(duì)于輸入數(shù)據(jù),每列表示不同的特征,如花瓣的長(zhǎng)度,花萼的長(zhǎng)度等等,我們想要對(duì)不同的列分別進(jìn)行處理(或者對(duì)所有的列進(jìn)行處理),使用Feature Columns就可以輕松的實(shí)現(xiàn)。

如上圖所示,F(xiàn)eature Columns形成了對(duì)輸入數(shù)據(jù)集的結(jié)構(gòu)性描述??梢苑奖阄覀儗?duì)每列數(shù)據(jù)進(jìn)行處理,而且使得代碼的可讀性更強(qiáng)。

用Keras搭建模型

想必大家對(duì)Keras已經(jīng)比較了解了,使用Keras來(lái)構(gòu)建一個(gè)神經(jīng)網(wǎng)絡(luò),簡(jiǎn)直是飛一般地速度,而且完美的兼容tensorflow。

simple_model=Sequential()simple_model.add(Dense(3,input_shape=(x.shape[1],),activation="relu",name="layer1"))simple_model.add(Dense(5,activation="relu",name="layer2"))simple_model.add(Dense(1,activation="sigmoid",name="layer3"))

構(gòu)建一個(gè)模型就是如上面這么簡(jiǎn)單,而且調(diào)用API中定義好的模型更是只需要一句話(huà),極其的方便。

借用Canned Estimators

Estimators API提供了模型選擇、評(píng)估、訓(xùn)練等一些列功能。在1.3版本后,Google又增加了一層,稱(chēng)之為Canned Estimators。只需要一行代碼就能夠創(chuàng)建深度模型。Estimators可以結(jié)合上面提到的Feature Columns一起使用。

tf.estimator.Estimator是基類(lèi);Pre-made Estimators是基類(lèi)的子類(lèi),是已經(jīng)定義好的模型,我們可以直接拿來(lái)使用;Custom Estimators是基類(lèi)的實(shí)列,并不是定義好的,需要我們自己實(shí)現(xiàn)模型的定義。

對(duì)于這里的模型,由三部分組成:

Input function:輸入函數(shù),即我們前面所說(shuō)的Datasets,對(duì)于數(shù)據(jù)進(jìn)行表示;

Model function: 實(shí)驗(yàn)?zāi)P偷挠?xùn)練、驗(yàn)證、測(cè)試以及監(jiān)控模型的參數(shù);

Estimators: 控制數(shù)據(jù)流以及模型的各種運(yùn)算。

用SavedModel打包模型

相比于tensorflow原版的tf.train.Saver保存模型的方式,SavedModel提供了更好的將模型部署到生成環(huán)境的手段,更適用于商業(yè)目的。

如上圖右下方部分,在使用SavedModel打包模型時(shí),可以產(chǎn)生兩種模型:

對(duì)應(yīng)于第一種模型,Tensorflow Model Analysis可以方便我們對(duì)模型進(jìn)行分析,是不是存在參數(shù)的問(wèn)題,抑或是模型哪里設(shè)計(jì)的不合適等等;通過(guò)分析后,感覺(jué)模型不錯(cuò),我們就可以通過(guò)Tensorflow Serving進(jìn)行部署。

此外,相比于Saver的方式,我們?cè)趇nference時(shí)不需要再重新定義Graph(模型),如果使用Saver的話(huà),在使用該模型時(shí)就需要再定義該模型,如果是一個(gè)程序猿設(shè)計(jì)并使用的還好,如果換成另一個(gè)猿去用這個(gè)模型,他又不知道模型的tensor的情況,那就尷尬了。所以使用SavedModel可以讓我們更輕松地去使用模型。

總結(jié)

Google Developer Days給我們提供了一場(chǎng)盛宴,希望和大家一起學(xué)習(xí)其中的知識(shí)。如果可以,請(qǐng)為這篇文章點(diǎn)個(gè)贊吧。據(jù)說(shuō)點(diǎn)贊的都能進(jìn)Google。

閱讀更多

react-native技術(shù)的優(yōu)劣

?一招教你讀懂JVM和Dalvik之間的區(qū)別

NDK項(xiàng)目實(shí)戰(zhàn)—高仿360手機(jī)助手之卸載監(jiān)聽(tīng)

(Android)面試題級(jí)答案(精選版)

非科班出身程序員:如何獲取職業(yè)資源、進(jìn)入好公司?

相信自己,沒(méi)有做不到的,只有想不到的

在這里獲得的不僅僅是技術(shù)!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/97967.html

相關(guān)文章

  • Google開(kāi)發(fā)者大會(huì)不得不知Tensorflow技巧

    摘要:近日在中國(guó)召開(kāi)了。軟件工程師馮亦菲為我們帶來(lái)了題為用高層來(lái)進(jìn)行模型原型設(shè)計(jì)訓(xùn)練和生產(chǎn)投入的精彩報(bào)告。馮亦菲姐姐給我們講了一些的新的的變動(dòng),最重要的是提出了一些使用的建議。但是如果沒(méi)有,就會(huì)報(bào)對(duì)象不能解釋為的錯(cuò)誤。 showImg(https://segmentfault.com/img/remote/1460000016518243); Google Development Days ...

    王巖威 評(píng)論0 收藏0
  • 30個(gè)不可不知容器技術(shù)工具和資源

    摘要:容器包的大小和完整性使得團(tuán)隊(duì)成員能夠在幾秒鐘內(nèi)部署完整的環(huán)境。由的前安全主管美國(guó)總統(tǒng)執(zhí)行辦公室網(wǎng)絡(luò)安全高級(jí)總監(jiān)聯(lián)合創(chuàng)立的,目前正在準(zhǔn)備類(lèi)似的容器安全產(chǎn)品。在年,在美國(guó)召開(kāi)了兩個(gè)大型會(huì)議和個(gè)小型會(huì)議。 軟件容器技術(shù)影響著從開(kāi)發(fā)人員、測(cè)試人員、運(yùn)維人員到分析人員的IT團(tuán)隊(duì)中的每一個(gè)人,它不像虛擬化一樣只是系統(tǒng)管理員的工具。容器包的大小和完整性使得團(tuán)隊(duì)成員能夠在幾秒鐘內(nèi)部署完整的環(huán)境。 容器...

    crelaber 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.22 - 進(jìn)擊 Google I/O 2017

    摘要:谷歌表示,與搜索并列,是谷歌機(jī)器學(xué)習(xí)技術(shù)最重要的產(chǎn)品服務(wù)載體。谷歌宣布了基于機(jī)器學(xué)習(xí)技術(shù)的全面升級(jí),很可能是其誕生以來(lái)的最大升級(jí)。在去年的大會(huì)上,谷歌宣布了其第一代。 showImg(https://segmentfault.com/img/bVNTKT?w=900&h=385); Google I/O Google I/O 是由 Google 舉行的網(wǎng)絡(luò)開(kāi)發(fā)者年會(huì),討論的焦點(diǎn)是用 G...

    darkbaby123 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<