久久亚洲人成国产精品_国产免费一级精品视频_视频一区在线观看_www.久久精品

當前位置:首頁 > 工程資源 > 正文

架構(gòu)圖還是構(gòu)架圖?架構(gòu)圖

  中生代技術(shù)第52期分享

  分享嘉賓:劉光聰

  中生小編預告:中生代技術(shù)年度大會上海站將在2017年3月11號舉行,請掃描下面二維碼關注中生代技術(shù)公眾號了解詳細信息。

中生代技術(shù)公眾號

  

  祝大家在2017年有新的收獲。非常感謝大家在春節(jié)前夕依然還堅持參加中生代技術(shù)的分享活動,也感謝中生代提供的強大的分享平臺。 我是劉光聰,來自于中興通訊技術(shù)規(guī)劃部,關注敏捷軟件開發(fā),從事機器學習算法研究,目前負責AI平臺架構(gòu)與設計。 今天我給大家分享的題目是:剖析TensorFlow架構(gòu)與設計之編程模型。其目標是對深度學習有一個初步的了解,了解TensorFlow的基本編程模型,及其掌握TensorFlow的幾個重要概念。

  

  今天我的分享主要包括3個部分,簡單介紹TensorFlow的架構(gòu);理解計算圖的工作原理;通過Mnist實戰(zhàn),了解TensorFlow編程模型。

  

  

  TensorFlow在跨平臺,通用性,分布式, 可擴展性,可視化等方面優(yōu)勢非常明顯。

  

  TensorFlow是一種典型的基于符號編程的數(shù)值計算框架,從總架構(gòu)上分為兩層:

1. 前端:負責計算圖的構(gòu)造,支持多語言,其中Python提供的 API最為成熟;

2. 后端:負責計算圖的執(zhí)行,使用C++實現(xiàn),直接操作分布式的CPU/GPU環(huán)境。

  

  

  計算圖是TensorFlow最重要的領域概念,OP代表節(jié)點,Tensor代表邊; 數(shù)據(jù)從節(jié)點流入,通過OP運算,從節(jié)點流出,并做為下一節(jié)點的輸入,TensorFlow的命名由此而來。

  

  OP用于表示計算圖的一個節(jié)點,完成某種抽象的計算。

  

  TensorFlow支持豐富的OP集合,并且支持OP的擴展。

  

  OP通過OP構(gòu)造器(OP Constructor)生成OP實例,該工廠具有副作用,它將該OP實例注冊到計算圖中。 此時用戶對圖實例無感知,因為其上下文存在一個默認的圖實例。

  

  OP的輸入和輸出以Tensor的形式傳遞,支持三種基本類型。

  

  描述OP可以通過三個維度描述:

1. 類型

2. Tensor的Shape:維度,及其每一維度的大小

3. 約束:例如默認值,允許的值列表

  

  以placeholder的OP為例,該OP是一個特殊的OP,它沒有輸入,只有輸出。而且,他的類型為確定,待用戶在構(gòu)造OP是確定,可以看成一個「泛型編程」的過程。

  

  這是placeholder OP的構(gòu)造器(constructor),或稱為工廠。調(diào)用OP時,指定OP的屬性,從而確定OP的基本規(guī)格。該過程類似于C++模板實例化,但還未生成對象實例(直至執(zhí)行計算圖階段)。

  

  Operation描述了OP的接口(類型,約束,屬性,設備等),Kernel是針對具體設備類型,或者數(shù)據(jù)類型,Tensor的維度及大小的某種具體實現(xiàn)。典型地,OP會有GPU實現(xiàn)的Kernel,及其CPU實現(xiàn)的Kernel 。 這是一種典型的多態(tài)設計(區(qū)別于編程語言的多態(tài))。

  

  Tensor表示計算圖的邊實例,表示OP之間的數(shù)據(jù)流方向。

  

  Tensor可以通過三元組描述:(Type, Rank, Shape)。

  

  查看源代碼(簡化之后),其Protobuf是如此描述Tensor的,其很好地形式化描述了Tensor的本質(zhì)。

  

  在計算圖中,存在兩種類型的邊:

1. 正常的邊:用于傳遞Tensor;

2. 特殊的邊:用于控制依賴。

  

  控制依賴是一種構(gòu)建復雜網(wǎng)絡模型的重要工具,它表示OP之間執(zhí)行的依賴關系。

  

  當前上下文,維護了一個指向default graph的指針;也就是說,在任何一個時刻,在上下文中都存在一個默認的圖實例。 圖實例包括兩類:

1. 隱式的圖實例

2. 顯式的圖實例

  

  前者的OP注冊到隱式的圖實例,后者的OP注冊到顯式的圖實例中。

  

  OP命名的層次化是一種搭建復雜網(wǎng)絡的重要工具。例如,將OP看成西安市,那么如何從地球中找到它呢? 首先,通過世界地圖,先找到亞洲,然后找到中國,然后再找到陜西,最后才找到西安。 當搭建復雜的網(wǎng)絡模型時,OP命名的層次化,對于OP定位是非常有用的。

  

  可以指定OP的設備類型,當執(zhí)行計算圖時,該OP會被分配到指定的設備上執(zhí)行運算。

  

  默認圖實例(Default Graph),OP命名的層次化(Name Scope),指派設備(device)等機制,實際是由Context Manager管理,保證在某一個時刻,存在唯一的默認圖實例,及其當前的Scope,及其當前的Device等等。

  

  總結(jié)一下,TensorFlow是一種基于符號的編程模式,前端完成計算圖的構(gòu)造,后端完成計算圖的執(zhí)行。

  

  這里舉一個簡單的例子,x表示模型的輸入,y_表示模型的輸出(Labels);定義了W, b兩個訓練參數(shù),然后使用matmul的OP,及其add的OP完成權(quán)重的線性求和,最后使用ReLU的激活函數(shù),搭建了第一層網(wǎng)絡模型。 其中C代表后續(xù)的網(wǎng)絡層次。

  

  上述代碼實現(xiàn),構(gòu)造了如上圖所示的計算圖實例。

  

  通過建立一個Session,使用Mini-Batch算法實現(xiàn)該模型的訓練。很顯然,計算圖被構(gòu)造依次,但被執(zhí)行了多次(一次一個Batch)。

  

  這是使用Protobuf描述計算圖的領域模型。

  

  這是前端(Python)的領域模型。

  

  這是后端的領域模型。

  

  Session是Client與計算服務的橋梁,是一種資源,使用完成后保證被關閉;session.run建立了一個瞬時的閉包,該閉包針對于該次Batch,依次傳遞Tensor,完成整個計算的過程,然后再將梯度反傳,最后完成參數(shù)的更新。 每個子圖只會構(gòu)造依次,但可能被執(zhí)行多次。Tensor在OP之間傳遞,其生命周期僅對當前批次有效,對下一個Mini-Batch無效。

  

  其中,F(xiàn)eed代表模型的輸入,F(xiàn)etch代表模型的輸出。

  

  變量是一種特殊的OP,它維持一個Tensor的句柄,變相地延長了該Tensor的生命周期。

  

  變量在使用之前,都需要使用初始化的OP進行初始化。例如,W使用tf.zeros的初始化OP進行初始化為0值。

  

  存在一些語法糖,可以方便地對變量進行初始化(組合模式)。

  

  猶如C++全局變量初始化的依賴關系,TensorFlow變量之間的初始化依賴關系需要特殊的處理。

  

  可以使用Stateful的OP操作變量,完成變量狀態(tài)的變更。

  

  通過變量分組,可以方便對變量進行分組管理。例如,可以快速獲取出所有訓練參數(shù)的集合。

  

  接下來,通過Mnist的實戰(zhàn),加深 理解TensorFlow的編程模型。實戰(zhàn)包括兩種網(wǎng)絡模型的實踐:

1. 單層網(wǎng)絡(Softmax)

2. 多層網(wǎng)絡(2層網(wǎng)絡)

  

  特征提取,因為只是Demo示例,這里簡單地按照像素進行特征的提取。

  

  訓練樣本集的示意圖,它是一個二維的Tensor。

  

  這是訓練樣本的標簽集合(Labels),采用One-hot形式的特征描述 。

  

  首先描述模型的輸入和輸出,其中None表示batch_size,待seesion.run的Feed提供。

  

  然后定義模型的訓練參數(shù)集合,并定義變量初始化OP,用于在執(zhí)行階段完成變量的初始化。

  

  這里定義了Mnist的Softmax單層網(wǎng)絡模型。

  

  然后定義交叉熵的損失函數(shù),并使用隨機梯度下降算法優(yōu)化該損失函數(shù),使得損失函數(shù)最小化。

  

  然后建立一個會話,使用Mini-Batch算法,完成模型的訓練。 」

  

  當完成模型的馴良后,可以使用測試數(shù)據(jù)集對模型進行測試,輸出模型的精度。

  

  接下來,通過搭建兩層網(wǎng)絡模型實現(xiàn)Mnist。其中,通過計算圖的4個基本子圖,顯式地增強模型設計的可理解性。

- Inference:僅完成推理,僅僅包括前向計算過程;

- Loss:構(gòu)建損失函數(shù),計算損失;

- Training:根據(jù)損失,反向傳遞梯度,然后更新權(quán)重,直到模型收斂;

- Evaluation:評估模型的精度

  

架構(gòu)圖還是構(gòu)架圖?架構(gòu)圖  第1張

  這里搭建了兩層的網(wǎng)絡模型: 第一層:ReLU 第二層:Softmax

  

  這是推理的主要邏輯,定義了兩層網(wǎng)絡。

  

  使用交叉熵定義損失函數(shù)。

  

  使用隨機梯度下降算法最小化損失函數(shù) 。

  

  使用evaluation評估網(wǎng)絡模型的精度。

  感謝大家的耐心閱讀,如果您對TensorFlow的架構(gòu)與設計感興趣,請持續(xù)關注我后續(xù)關于TensorFlow源代碼的剖析,謝謝。

  

  參考資料,網(wǎng)絡上已經(jīng)很豐富了,在此不在重述了。當然,閱讀源代碼,是獲取最權(quán)威的知識的最佳途徑。

  

  最后,歡迎大家關注我的「簡書」,直接搜索「劉光聰」,我主要關注敏捷軟件開發(fā),機器學習算法,也歡迎大家給我更多的指點,謝謝。

問答環(huán)節(jié)

  Q1. 對TensorFlow的集群化搭建有何建議?

  A1. TensorFlow的分布式架構(gòu)已經(jīng)超過本次分享的內(nèi)容,希望爭取下次機會再組織一次關于分布式架構(gòu)與工作機制,實踐應用的分享。

  其中,在講義的最后一節(jié),有一個關于TensorFlow分布式的簡單介紹,請查閱:

  http://www.jianshu.com/p/a857743c7095

  TensorFlow分布式的簡單介紹

  識別二維碼直達光聰?shù)暮啎刂?/p>

  Q2. 我可以理解為TensorFlow是一個張量為具體參數(shù)的數(shù)值計算框架嗎?有沒有張量為閉包的數(shù)值計算框架?我對TensorFlow感興趣主要是因為它底層是C++實現(xiàn),我認為可能會比較高效。

  A2. TensorFlow是一個通用的,分布式的數(shù)值計算框架,是業(yè)界關注最為廣泛的深度學習框架;其中,Tensor是TensorFlow的一個重要數(shù)據(jù)結(jié)構(gòu),它是一個特定類型,任意維度,且每個維度任意大小的高維數(shù)組。

  TensorFlow的前端支持多語言編程,而后端使用C++實現(xiàn),直接操作CPU/GPU硬件,性能是其考慮的重要因素。

  Q3. 請問機器學習是不是必須是數(shù)學專業(yè)?

  A3. 機器學習是一個多學科交叉的領域,它是人工智能的一個重要分支。當然,機器學習的確需要一定的數(shù)學基礎,例如線性代數(shù),微積分,概率論與數(shù)理統(tǒng)計。

  推薦https://github.com/exacity/deeplearningbook-chinese第一部分關于數(shù)學基礎的概括性介紹。

  Github上鏈接,第一部分關于數(shù)學基礎的概括性介紹。

  識別二維碼直達

  Q4. 請問中興通訊在機器學習在哪些領域上應用?

  A4. 智能運維,終端,IoT,智能家居等方面都要相關應用。

  Q5. 訓練過程能否將狀態(tài)持久化到硬盤…

  A5. TensorFlow支持Checkpoint的特性,請參閱https://www.tensorflow.org/versions/master/how_tos/variables/#checkpoint_files

  Checkpoint官網(wǎng)介紹

  識別二維碼直達

致謝為知識贊賞的朋友

  —

  —

  

  

  鳴謝

  致謝為知識打賞的以上群友,祝雞年大吉,更上層樓

  —

  —

  為慶祝中生代成立一周年,也為了答謝長期支持的朋友們,中生代技術(shù)聯(lián)合iTechPlus在上海舉行年度大會

  

  

  戳原文,查看光聰簡書!

發(fā)表評論

久久亚洲人成国产精品_国产免费一级精品视频_视频一区在线观看_www.久久精品
欧美亚洲视频在线看网址| 久久综合色一综合色88| 亚洲欧美日韩中文在线制服| 久久久天天操| 国产精品你懂的在线欣赏| 中日韩美女免费视频网址在线观看| 欧美一区二区高清| 欧美日本在线| 亚洲一级电影| 欧美性事在线| 久久久国产精品一区二区三区| 欧美巨乳在线观看| 亚洲视频自拍偷拍| 欧美日韩1区2区3区| 一区二区在线视频| 欧美成在线视频| 精品二区视频| 免费欧美日韩国产三级电影| 国产综合久久久久久鬼色| 麻豆精品在线视频| 狠狠色综合一区二区| 免费在线观看精品| 韩国女主播一区二区三区| 免费视频亚洲| 在线精品视频免费观看| 欧美精品日本| 亚洲欧美日本视频在线观看| 欧美日本亚洲韩国国产| 午夜在线精品偷拍| 国产精品视频在线观看| 久久天天狠狠| 伊人精品成人久久综合软件| 欧美精品v日韩精品v国产精品| 在线看片第一页欧美| 欧美人与禽猛交乱配视频| 亚洲欧美中文另类| 国产女同一区二区| 久久综合伊人77777麻豆| 中国av一区| 国产日本欧美在线观看| 噜噜噜噜噜久久久久久91| 在线不卡中文字幕| 国产精品国产三级国产普通话99| 欧美专区亚洲专区| 国产一区二区三区四区三区四| 欧美成人在线免费观看| 亚洲欧美国产制服动漫| 国产伦精品一区二区三区高清版 | 国产精品国产三级国产普通话蜜臀 | 国产日韩欧美日韩大片| 免费成人在线观看视频| 亚洲欧美国产精品专区久久| 国产美女精品免费电影| 欧美黄色成人网| 久久成人久久爱| 永久免费精品影视网站| 亚洲一区在线观看免费观看电影高清 | 亚洲天堂免费观看| 国产精品国产三级国产专播精品人| 欧美中文字幕在线观看| 国内欧美视频一区二区| 国产精品啊v在线| 欧美成人r级一区二区三区| 欧美一级夜夜爽| 激情av一区| 国产精品日韩精品欧美在线| 欧美福利网址| 久久久久久久久久码影片| 亚洲色在线视频| 国产日韩欧美a| 欧美新色视频| 欧美高清在线精品一区| 久久久91精品国产| 亚洲欧美另类在线观看| 精品1区2区3区4区| 国产免费观看久久黄| 欧美日韩爆操| 狂野欧美激情性xxxx| 午夜精品久久久久99热蜜桃导演| 狠狠综合久久av一区二区小说 | 久久精品国产清自在天天线 | 亚洲一区二区三区激情| 国产视频在线一区二区| 国产精品久久久久久模特| 欧美精品亚洲二区| 欧美成人官网二区| 久久久久久91香蕉国产| 性欧美办公室18xxxxhd| 在线观看久久av| 国产亚洲精品久久久| 国产精品毛片a∨一区二区三区|国 | 欧美人成在线视频| 久久综合久久88| 久久国产精品网站| 西西裸体人体做爰大胆久久久| 精品成人国产| 国产一区999| 国产欧美日韩综合精品二区| 国产精品v欧美精品v日本精品动漫| 欧美精品一区二区三区在线看午夜 | 男女视频一区二区| 久久高清免费观看| 亚洲欧美综合网| 国产精品99久久久久久人| 在线观看三级视频欧美| 娇妻被交换粗又大又硬视频欧美| 国产一区二区高清视频| 国产日本欧美一区二区三区在线 | 久久国产精品亚洲va麻豆| 先锋影音网一区二区| 亚洲影视在线播放| 亚洲一区二区三区精品在线观看| 伊人色综合久久天天| 在线综合+亚洲+欧美中文字幕| 国产原创一区二区| 国产在线观看一区| 禁断一区二区三区在线| 伊人久久亚洲美女图片| 亚洲香蕉伊综合在人在线视看| 亚洲一区二区三区四区中文 | 午夜精品一区二区三区四区| 亚洲欧美在线观看| 欧美诱惑福利视频| 久久成人免费| 久久综合99re88久久爱| 欧美高清在线视频| 欧美日韩免费高清一区色橹橹| 一区二区在线观看av| 国产视频一区在线观看一区免费| 国产精品久久久久aaaa| 国产精品伊人日日| 国产一区二区三区网站 | 国模一区二区三区| 狠狠色综合一区二区| 亚洲一区二区在| 欧美亚洲在线播放| 久久综合一区二区三区| 欧美精品免费在线观看| 国产精品久久久久久亚洲调教| 国产女精品视频网站免费| 韩国三级在线一区| 亚洲一区二区三区在线看| 欧美诱惑福利视频| 免费黄网站欧美| 欧美日韩专区| 国产日韩欧美一区二区三区四区| 伊人男人综合视频网| 欧美有码在线视频| 欧美+日本+国产+在线a∨观看| 欧美日本高清视频| 欧美成年人视频| 欧美日韩一区二区三区在线视频| 国产精品萝li| 狠狠色丁香婷婷综合久久片| 亚洲永久免费视频| 久久免费精品日本久久中文字幕| 欧美另类极品videosbest最新版本| 国产精品久久久久9999| 影音先锋成人资源站| 欧美中文字幕不卡| 欧美精品在线观看播放| 国产日韩精品一区二区浪潮av| 亚洲图片在线观看| 久久人人超碰| 欧美日韩在线播| 国内揄拍国内精品久久| 校园春色国产精品| 欧美v国产在线一区二区三区| 国产精品v亚洲精品v日韩精品| 国产在线精品自拍| 亚欧成人在线| 欧美高清视频| 国产日韩欧美成人| 欧美一区二区三区免费在线看| 欧美大片一区| 国产美女精品免费电影| 午夜国产欧美理论在线播放| 蘑菇福利视频一区播放| 国产精品亚洲综合色区韩国| 亚洲一区二区成人| 麻豆国产va免费精品高清在线| 国产精品二区在线| 亚洲自拍啪啪| 欧美精品免费视频| 伊人伊人伊人久久| 久久全国免费视频| 国产精品一区二区三区久久久 | 欧美日韩在线第一页| 好看的日韩av电影| 久久综合国产精品| 国产美女精品人人做人人爽| 欧美一进一出视频| 欧美肉体xxxx裸体137大胆| 亚洲五月婷婷| 欧美激情视频在线播放 | 久久精品国产第一区二区三区| 欧美与欧洲交xxxx免费观看| 欧美日韩一二三四五区| 中文一区二区| 欧美激情一区二区三区成人|