Tensorflow數(shù)據(jù)流圖

0x01 數(shù)據(jù)流圖


數(shù)據(jù)流圖:用節(jié)點(diǎn)和有向邊描述數(shù)學(xué)運(yùn)算的有向無環(huán)圖
節(jié)點(diǎn):代表各類操作(operation),具體包括數(shù)學(xué)運(yùn)算竟贯、數(shù)據(jù)填充益眉、結(jié)果輸出和變量讀寫等
有向邊:描述節(jié)點(diǎn)間的輸入、輸出關(guān)系娱颊,而張量(Tensor)則在邊上流動(dòng)

基于梯度下降的機(jī)器學(xué)習(xí)問題傲诵,在TensorFlow的數(shù)據(jù)流圖中通常可分為兩個(gè)階段:

  1. 前向圖求值:用戶編寫箱硕,主要包括定義模型的目標(biāo)和損失函數(shù)拴竹,輸入輸出的形狀和類型
  2. 后向圖計(jì)算梯度:TensorFlow的優(yōu)化器生成,主要用來計(jì)算模型的梯度以及梯度的更新

0x02 節(jié)點(diǎn)


前向圖中剧罩,節(jié)點(diǎn)稱為操作(operation)主要包括三類:

  1. 數(shù)學(xué)函數(shù)或表達(dá)式:如加減乘除等
  2. 儲(chǔ)存模型參數(shù)的變量(Variable):比如卷積中的卷積核和偏置
  3. 占位符(Placeholder):用來描述輸入輸出的形狀栓拜,便于用戶利用其抽象結(jié)構(gòu)來定義模型,執(zhí)行時(shí)需要填充對(duì)應(yīng)的數(shù)據(jù)

后向圖中惠昔,節(jié)點(diǎn)也會(huì)分為三類:

  1. 梯度值:經(jīng)過前向圖計(jì)算出的模型參數(shù)的梯度
  2. 更新模型參數(shù)的操作:定義如何將梯度值更新到對(duì)應(yīng)的模型參數(shù)
  3. 更新后的模型參數(shù):優(yōu)化器中的參數(shù)與前向圖中的參數(shù)一一對(duì)應(yīng)幕与,但是參數(shù)進(jìn)行了更新,用戶下一輪訓(xùn)練

0x03 有向邊


有向邊定義操作之間的關(guān)系镇防,主要包括兩類:

  1. 傳輸數(shù)據(jù)啦鸣,絕大的有向邊都是此類,用來流動(dòng)張量
  2. 定義控制依賴来氧,泰國(guó)設(shè)定節(jié)點(diǎn)的前置依賴決定相關(guān)節(jié)點(diǎn)的執(zhí)行順序诫给,又被稱為控制邊

所有的節(jié)點(diǎn)都通過數(shù)據(jù)邊和控制邊相連,入度為0的節(jié)點(diǎn)啦扬,即沒有前置依賴的節(jié)點(diǎn)可直接執(zhí)行中狂,其他節(jié)點(diǎn)必須等所有依賴節(jié)點(diǎn)執(zhí)行完才可執(zhí)行

0x04 執(zhí)行原理


從宏觀的角度可分為四個(gè)步驟:

  • 以節(jié)點(diǎn)的名稱做關(guān)鍵字、入度作為值扑毡,構(gòu)建散列表胃榕,并將此數(shù)據(jù)流圖上的所有節(jié)點(diǎn)都放入散列表中
  • 為此數(shù)據(jù)流圖創(chuàng)建一個(gè)可執(zhí)行節(jié)點(diǎn)隊(duì)列,將散列表中入度為0的節(jié)點(diǎn)加入到隊(duì)列中僚楞,并從散列表中刪除這些節(jié)點(diǎn)
  • 依次執(zhí)行隊(duì)列中的每一個(gè)節(jié)點(diǎn)勤晚,執(zhí)行成功后將此節(jié)點(diǎn)輸出指向的節(jié)點(diǎn)的入度減1枉层,更新散列表中對(duì)應(yīng)節(jié)點(diǎn)的入度值泉褐。
  • 重復(fù)上面兩個(gè)步驟直到執(zhí)行隊(duì)列為空。

注意:TensorFlow的編程模式(聲明式編程)決定了其執(zhí)行的順序并不完全依賴于與代碼中定義的順序鸟蜡,而與節(jié)點(diǎn)之間的邏輯關(guān)系以及運(yùn)行時(shí)庫的實(shí)現(xiàn)機(jī)制相關(guān)膜赃。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市揉忘,隨后出現(xiàn)的幾起案子跳座,更是在濱河造成了極大的恐慌端铛,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疲眷,死亡現(xiàn)場(chǎng)離奇詭異禾蚕,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)狂丝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門换淆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人几颜,你說我怎么就攤上這事倍试。” “怎么了蛋哭?”我有些...
    開封第一講書人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵县习,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我谆趾,道長(zhǎng)躁愿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任沪蓬,我火速辦了婚禮攘已,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘怜跑。我一直安慰自己样勃,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開白布性芬。 她就那樣靜靜地躺著峡眶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪植锉。 梳的紋絲不亂的頭發(fā)上辫樱,一...
    開封第一講書人閱讀 49,950評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音俊庇,去河邊找鬼狮暑。 笑死,一個(gè)胖子當(dāng)著我的面吹牛辉饱,可吹牛的內(nèi)容都是我干的搬男。 我是一名探鬼主播,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼彭沼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼缔逛!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤褐奴,失蹤者是張志新(化名)和其女友劉穎按脚,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體敦冬,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡辅搬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了脖旱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片伞辛。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖夯缺,靈堂內(nèi)的尸體忽然破棺而出蚤氏,到底是詐尸還是另有隱情,我是刑警寧澤踊兜,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布竿滨,位于F島的核電站,受9級(jí)特大地震影響捏境,放射性物質(zhì)發(fā)生泄漏于游。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一垫言、第九天 我趴在偏房一處隱蔽的房頂上張望贰剥。 院中可真熱鬧,春花似錦筷频、人聲如沸蚌成。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽担忧。三九已至,卻和暖如春坯癣,著一層夾襖步出監(jiān)牢的瞬間瓶盛,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工示罗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留惩猫,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓蚜点,卻偏偏與公主長(zhǎng)得像轧房,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子禽额,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • 數(shù)據(jù)流 數(shù)據(jù)流是一種用于并行計(jì)算的常用編程模型锯厢。數(shù)據(jù)流圖中,節(jié)點(diǎn)(Node)表示計(jì)算單元(OP)脯倒,邊(Edge)表...
    游阿游閱讀 878評(píng)論 0 0
  • Neil Zhu实辑,簡(jiǎn)書ID Not_GOD,University AI 創(chuàng)始人 & Chief Scientist...
    朱小虎XiaohuZhu閱讀 54,886評(píng)論 24 103
  • 關(guān)于Mongodb的全面總結(jié) MongoDB的內(nèi)部構(gòu)造《MongoDB The Definitive Guide》...
    中v中閱讀 31,914評(píng)論 2 89
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,093評(píng)論 1 32
  • 我們現(xiàn)代人活的是那么的焦慮,我們渴望詩與遠(yuǎn)方悠反,但或許暫時(shí)沒有足夠的錢也沒有時(shí)間残黑,遠(yuǎn)方是暫時(shí)去不了,那么先來...
    仿佛若有光kin17閱讀 412評(píng)論 0 0