精品国产亚洲一区二区三区|亚洲国产精彩中文乱码AV|久久久久亚洲AV综合波多野结衣|漂亮少妇各种调教玩弄在线

<blockquote id="ixlwe"><option id="ixlwe"></option></blockquote>
  • <span id="ixlwe"></span>

  • <abbr id="ixlwe"></abbr>

    一分鐘整明白Tensorflow Extended

    大數(shù)據(jù)

    作者:張相於

    本文介紹了基于tf搭建一套通用機(jī)器學(xué)習(xí)平臺(tái)的關(guān)鍵部分和大體流程,但沒(méi)有給出更詳細(xì)的介紹。

    是KDD 2017 Applied Data Science Paper,作者是谷歌的一大票人,這么多作者,按照經(jīng)驗(yàn)來(lái)看應(yīng)該是這個(gè)平臺(tái)的主要開(kāi)發(fā)人員。本文介紹的平臺(tái)取名Tensorflow Extended,也就是說(shuō)其核心組件都是使用tensorflow來(lái)完成的,可以理解為是基于tensorflow的一次二次開(kāi)發(fā)。那么這個(gè)tfx和tf有什么區(qū)別呢?我的理解,區(qū)別主要在于tf提供的是一套功能,可以用來(lái)執(zhí)行模型訓(xùn)練相關(guān)的一系列工作,而tfx是構(gòu)建在tf基礎(chǔ)之上的一個(gè)包含了機(jī)器學(xué)習(xí)整個(gè)生命周期的完整系統(tǒng),這個(gè)系統(tǒng)不只包含了tf所提供的模型訓(xùn)練等機(jī)器學(xué)習(xí)相關(guān)功能,還提供了如數(shù)據(jù)校驗(yàn)和驗(yàn)證、模型熱啟動(dòng)、線上服務(wù)、模型發(fā)布等重要功能。

    這篇文章的意義并不在于手把手教你如何搭建一套tfx,而是闡釋了搭建一套tfx系統(tǒng)所需要包含的主要組件,以及這些組件在實(shí)現(xiàn)時(shí)需要考慮哪些關(guān)鍵點(diǎn),還有作者團(tuán)隊(duì)在這其中積累的經(jīng)驗(yàn)教訓(xùn)。換句話說(shuō),更多的是一篇“授人以漁”的文章。對(duì)于希望動(dòng)手實(shí)現(xiàn)一套類似tfx這樣通用機(jī)器學(xué)習(xí)平臺(tái)的人來(lái)說(shuō),具有著重要的指導(dǎo)意義。下面將我認(rèn)為比較有價(jià)值的部分做一摘錄和解讀。

    整體設(shè)計(jì)原則

    tfx的核心設(shè)計(jì)原則包括以下幾點(diǎn):

    構(gòu)建可服務(wù)于多個(gè)學(xué)習(xí)任務(wù)的統(tǒng)一平臺(tái)。這要求系統(tǒng)具有足夠的通用性和可擴(kuò)展性。支持持續(xù)訓(xùn)練和服務(wù)。這兩個(gè)事情看起來(lái)簡(jiǎn)單,但是如果考慮到其中的風(fēng)險(xiǎn)控制和自動(dòng)化問(wèn)題發(fā)現(xiàn)等細(xì)節(jié)的話,也并不簡(jiǎn)單。人工干預(yù)。如何優(yōu)雅地讓人參與整個(gè)流程,解決機(jī)器不好解決的問(wèn)題,也是一個(gè)挑戰(zhàn)。可靠性和穩(wěn)定性。這里的可靠性和穩(wěn)定性不只指的是服務(wù)不崩潰這個(gè)級(jí)別,還包括在數(shù)據(jù)層面發(fā)生問(wèn)題的時(shí)候服務(wù)的效果依然可以保持穩(wěn)定可靠。

    數(shù)據(jù)分析、轉(zhuǎn)換和驗(yàn)證

    數(shù)據(jù)是機(jī)器學(xué)習(xí)系統(tǒng)的核心,如何處理數(shù)據(jù)決定了整個(gè)模型的質(zhì)量,這部分作者介紹了數(shù)據(jù)分析、轉(zhuǎn)換和驗(yàn)證方面的實(shí)現(xiàn)要點(diǎn)。

    數(shù)據(jù)分析

    數(shù)據(jù)分析指的是系統(tǒng)會(huì)對(duì)進(jìn)入到系統(tǒng)的數(shù)據(jù)進(jìn)行自動(dòng)地統(tǒng)計(jì)分析,例如數(shù)據(jù)值的分布,特征在樣本上的分布,每個(gè)樣本上特征的分布等等。同時(shí)還支持對(duì)數(shù)據(jù)做分片統(tǒng)計(jì),例如分別對(duì)正負(fù)樣本的統(tǒng)計(jì),對(duì)來(lái)自不同國(guó)家數(shù)據(jù)的統(tǒng)計(jì),等等。這里的難點(diǎn)之一在于,在大數(shù)據(jù)和時(shí)效性要求下,很多數(shù)據(jù)統(tǒng)計(jì)的精確值是不好計(jì)算的,所以很多時(shí)候 需要使用流式近似算法來(lái)計(jì)算足夠好的近似值。

    數(shù)據(jù)轉(zhuǎn)換

    所謂數(shù)據(jù)轉(zhuǎn)換,指的是從原始數(shù)據(jù)到可訓(xùn)練特征之間的種種數(shù)據(jù)變換,例如離散化、特征映射等等。里面還提到一些對(duì)稀疏特征的處理細(xì)節(jié)。

    這部分比較重要的一點(diǎn)是保證訓(xùn)練和服務(wù)時(shí)數(shù)據(jù)轉(zhuǎn)換的一致性,這兩者不一致往往會(huì)導(dǎo)致模型效果變差。tfx的做法是將數(shù)據(jù)轉(zhuǎn)換也作為模型的一部分輸出,從而避免這種不一致的發(fā)生。換句話說(shuō),是通過(guò)在訓(xùn)練階段和服務(wù)階段復(fù)用同樣的代碼邏輯來(lái)保證一致性,而不是兩個(gè)地方分別實(shí)現(xiàn)不同代碼,這是很重要的一點(diǎn)。從我的經(jīng)驗(yàn)來(lái)看,做不到這一點(diǎn)的話,不僅可能會(huì)出現(xiàn)特征轉(zhuǎn)換不一致的問(wèn)題,還會(huì)使得開(kāi)發(fā)工作量增大,并且增加正確性驗(yàn)證的工作量。

    數(shù)據(jù)驗(yàn)證

    所謂數(shù)據(jù)驗(yàn)證,指的是進(jìn)入系統(tǒng)的數(shù)據(jù)是否符合預(yù)期,是否存在異常。tfx的做法是引入一個(gè)數(shù)據(jù)schema的結(jié)構(gòu),用來(lái)指定對(duì)一份數(shù)據(jù)的約束,例如數(shù)據(jù)的類型、是否必填、最大最小值等等。這么做的目的是防止不符合預(yù)期的數(shù)據(jù)進(jìn)入到模型訓(xùn)練階段,影響模型的質(zhì)量。有了這個(gè)schema,就可以對(duì)進(jìn)入系統(tǒng)的數(shù)據(jù)做驗(yàn)證,進(jìn)一步,還可以給出建議,尤其是在數(shù)據(jù)本身發(fā)生了變化,原有的約束應(yīng)該發(fā)生改變的情況下,系統(tǒng)可以自動(dòng)發(fā)現(xiàn)可能的變化,反饋給開(kāi)發(fā)者,讓開(kāi)發(fā)者決定是否接納系統(tǒng)提出的改進(jìn)建議。下圖是一個(gè)使用schema進(jìn)行數(shù)據(jù)驗(yàn)證的例子,圖中紅色內(nèi)容是驗(yàn)證后給出的建議。

    上面提到的約束條件可以進(jìn)行擴(kuò)展,但是作者給出的建議是,過(guò)于復(fù)雜的約束常常難以給出適合的約束條件,而且如果數(shù)據(jù)發(fā)生變化會(huì)難以維護(hù)。出于是的數(shù)據(jù)驗(yàn)證更好地服務(wù)于系統(tǒng),并且方便用戶使用,下面是一些核心的設(shè)計(jì)原則:

    用戶應(yīng)該一眼就能看明白什么出了問(wèn)題,以及問(wèn)題的影響面。異常應(yīng)該簡(jiǎn)單明了,并且用戶明白如何處理。例如,你可以說(shuō)某個(gè)特征值超出了某個(gè)范圍,但不要說(shuō)某兩個(gè)特征的KL散度超過(guò)了閾值。根據(jù)數(shù)據(jù)的自然變化提示給出新的schema建議。很多數(shù)據(jù)會(huì)隨著時(shí)間發(fā)生變化,所以需要考慮這一點(diǎn)。希望用戶能夠像對(duì)待bug一樣對(duì)待數(shù)據(jù)異常。所以,tfx允許數(shù)據(jù)異常像bug一樣被記錄、追蹤和解決。

    用戶還可以通過(guò)追蹤異常的變化情況來(lái)發(fā)現(xiàn)特征工程方面的改進(jìn)空間。

    模型訓(xùn)練

    模型訓(xùn)練這部分沒(méi)有太多值得一提的,主要就是在用tensorflow做訓(xùn)練。值得一提的是模型的熱啟動(dòng)(warm start)問(wèn)題。熱啟動(dòng)解決的是模型需要長(zhǎng)時(shí)間訓(xùn)練才能收斂的問(wèn)題,這個(gè)時(shí)候可以用一個(gè)已經(jīng)訓(xùn)練好的模型,從中選取一些共同的特征權(quán)重,作為模型的初始狀態(tài),這樣可以使得模型更快收斂,從而加快訓(xùn)練速度。為了使得這部分邏輯通用化,tfx將其進(jìn)行了抽象開(kāi)發(fā),并進(jìn)行了開(kāi)源(可能是開(kāi)源在了tf里,這部分沒(méi)有驗(yàn)證)。

    模型評(píng)估和驗(yàn)證

    機(jī)器學(xué)習(xí)系統(tǒng)是個(gè)多組件復(fù)雜系統(tǒng),這使得 bug有很多地方可能發(fā)生,而這些bug很多時(shí)候都不會(huì)導(dǎo)致系統(tǒng)崩潰,而且人又難以發(fā)現(xiàn),所以需要對(duì)模型進(jìn)行評(píng)估和驗(yàn)證。

    定義“好”模型

    作者將好的模型定義為可以安全提供服務(wù)(safe to serve)并且具有預(yù)期的預(yù)測(cè)質(zhì)量(desired prediction quality)。其中安全提供服務(wù)指的是模型在服務(wù)時(shí)不會(huì)因?yàn)楦鞣N原因崩潰掉,例如占用太多資源或數(shù)據(jù)格式錯(cuò)誤。而預(yù)測(cè)質(zhì)量指的就是模型預(yù)測(cè)的準(zhǔn)確率,這與業(yè)務(wù)的效果息息相關(guān)。

    驗(yàn)證的敏感度

    模型驗(yàn)證面臨的一個(gè)挑戰(zhàn)在于確定驗(yàn)證的敏感度。如果過(guò)于敏感,數(shù)據(jù)稍有波動(dòng)就報(bào)警,會(huì)導(dǎo)致頻繁報(bào)警,最終人們會(huì)忽略報(bào)警;而如果過(guò)于不敏感,則會(huì)漏掉問(wèn)題。作者的經(jīng)驗(yàn)是,模型一旦出問(wèn)題一般會(huì)導(dǎo)致各種指標(biāo)的重大變化,所以敏感度可以設(shè)的粗一些。當(dāng)然這個(gè)比較業(yè)務(wù)相關(guān),還是要根據(jù)自己 的業(yè)務(wù)來(lái)決定。

    分片驗(yàn)證

    除了對(duì)模型做整體驗(yàn)證,有時(shí)可能還需要對(duì)數(shù)據(jù)的某個(gè)分片做驗(yàn)證。例如針對(duì)男性用戶的驗(yàn)證等等。這對(duì)于模型的針對(duì)性細(xì)致評(píng)估和優(yōu)化很有意義。

    極客網(wǎng)企業(yè)會(huì)員

    免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。

    2017-11-15
    一分鐘整明白Tensorflow Extended
    作者:張相於 本文介紹了基于tf搭建一套通用機(jī)器學(xué)習(xí)平臺(tái)的關(guān)鍵部分和大體流程,但沒(méi)有給出更詳細(xì)的介紹。 是KDD 2017 Applied Data Sc

    長(zhǎng)按掃碼 閱讀全文