一、常見的OP
1、舉例
類型 | 實(shí)例 |
標(biāo)量運(yùn)算 | add,sub,mul,div,exp,log,greater,less,equal |
向量運(yùn)算 | concat,slice,splot,canstant,rank,shape,shuffle |
矩陣運(yùn)算 | matmul,matrixinverse,matrixdateminant |
帶狀態(tài)的運(yùn)算 | variable,assgin,assginadd |
神經(jīng)網(wǎng)絡(luò)組件 | softmax,sigmoid,relu,convolution,max_pool |
存儲(chǔ)、恢復(fù) | save,restore |
隊(duì)列及同步運(yùn)算 | enqueue,dequeue,mutexAcquire,mutexRelease |
控制流 | merge,switch,enter,leave,nextIteration |
二、什么是操作函數(shù)和操作對(duì)象
1、說(shuō)明
(1)一個(gè)操作對(duì)象(Operation)是TensorFlow圖中的一個(gè)節(jié)點(diǎn),可以接收0個(gè)或者多個(gè)輸入Tensor,并且可以輸出0個(gè)或者多個(gè)Tensor,Operation對(duì)象是通過(guò)op構(gòu)造函數(shù)(如tf.matmul())創(chuàng)建的
(2)例如c = tf.matmul(a, b)創(chuàng)建了一個(gè)Operation對(duì)象,類型為MatMul類型,它將張量a、b作為輸入,c作為輸出
(3)其中tf.matmul()是函數(shù),在執(zhí)行matmul函數(shù)的過(guò)程中會(huì)通過(guò)MatMul類型創(chuàng)建一個(gè)與之對(duì)應(yīng)的對(duì)象
2、前一篇圖例中有Const和Const_1就是tf.constant()生成的操作對(duì)象
這個(gè)操作對(duì)象輸入的是Tensor對(duì)象,輸出的也是Tensor對(duì)象
相當(dāng)于前面機(jī)器學(xué)習(xí)的實(shí)例化一個(gè)預(yù)估器對(duì)象,操作函數(shù)實(shí)例化了一個(gè)操作對(duì)象,然后操作對(duì)象輸入對(duì)象轉(zhuǎn)變?yōu)檩敵鰧?duì)象
3、可以理解為操作函數(shù)都會(huì)產(chǎn)生一個(gè)操作對(duì)象,通過(guò)對(duì)象對(duì)參數(shù)進(jìn)行處理
三、打印語(yǔ)句
1、語(yǔ)句類似于
Tensor("Const:0", shape=(), dtype=int32)
Tensor("Const_1:0", shape=(), dtype=int32)
打印返回的都是Tensor對(duì)象,而不是看到操作
2、指令名稱
Tensor分成三個(gè)部分,其中“Const:0”、“Const_1:0”告訴我們這個(gè)Tensor對(duì)象是由哪一個(gè)操作產(chǎn)生的,稱為指令名稱!
3、打印出來(lái)的是張量值,可以理解成Operation中包含了這個(gè)值
4、每一個(gè)Operation指令都對(duì)應(yīng)一個(gè)唯一的名稱,如Count:0
5、tf.Tensor輸出該張量的名稱的形式為<OP_NAME>:<i>,其中
<OP_NAME>:是生成該張量的指令的名稱
<i>:是一個(gè)整數(shù),它表示該張量在指令的輸出中的索引
四、指令名稱
1、tf.Graph對(duì)象為其包含的tf.Operation對(duì)象定義了一個(gè)命名空間
一張圖一個(gè)命名空間
2、TensorFlow會(huì)自動(dòng)為圖中的每個(gè)指令選擇一個(gè)唯一名稱,用戶也可以指定描述性名稱,是程序閱讀起來(lái)更輕松
3、改寫指令名稱
每個(gè)創(chuàng)建新的tf.Operation或返回新的tf.Tensor的API函數(shù)可以接受可選的name參數(shù)文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-828445.html
4、例子
tf.constant(42, name="answer")
創(chuàng)建了一個(gè)名稱為answer的新tf.Operation并返回一個(gè)名為answer:0的tf.Tensor。如果默認(rèn)圖已包含名為answer的指令,則TensorFlow會(huì)在名稱上附加1、2等字符,以便讓名稱具有唯一性
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-828445.html
到了這里,關(guān)于深度學(xué)習(xí)基礎(chǔ)之《TensorFlow框架(4)—Operation》的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!