最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

tensorflow2.0的函數(shù)簽名與圖結(jié)構(gòu)(推薦)

 更新時間:2020年04月28日 11:48:16   作者:蘭鈞  
這篇文章主要介紹了tensorflow2.0的函數(shù)簽名與圖結(jié)構(gòu),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

input_signature的好處:

1.可以限定函數(shù)的輸入類型,以防止調(diào)用函數(shù)時調(diào)錯,

2.一個函數(shù)有了input_signature之后,在tensorflow里邊才可以保存成savedmodel。在保存成savedmodel的過程中,需要使用get_concrete_function函數(shù)把一個tf.function標注的普通的python函數(shù)變成帶有圖定義的函數(shù)。

下面的代碼具體體現(xiàn)了input_signature可以限定函數(shù)的輸入類型這一作用。

@tf.function(input_signature=[tf.TensorSpec([None], tf.int32, name='x')])
def cube(z): #實現(xiàn)輸入的立方
 return tf.pow(z, 3)
try:
 print(cube(tf.constant([1., 2., 3.])))
except ValueError as ex:
 print(ex)
print(cube(tf.constant([1, 2, 3])))

輸出:

Python inputs incompatible with input_signature:
  inputs: (
    tf.Tensor([1. 2. 3.], shape=(3,), dtype=float32))
  input_signature: (
    TensorSpec(shape=(None,), dtype=tf.int32, name='x'))
tf.Tensor([ 1  8 27], shape=(3,), dtype=int32)

get_concrete_function的使用

note:首先說明,下面介紹的函數(shù)在模型構(gòu)建、模型訓(xùn)練的過程中不會用到,下面介紹的函數(shù)主要用在兩個地方:1、如何保存模型 2、保存好模型后,如何載入進來。

可以給 由@tf.function標注的普通的python函數(shù),給它加上input_signature, 從而讓這個python函數(shù)變成一個可以保存的tensorflow圖結(jié)構(gòu)(SavedModel)

舉例說明函數(shù)的用法:

@tf.function(input_signature=[tf.TensorSpec([None], tf.int32, name='x')])
def cube(z):
 return tf.pow(z, 3)
 
try:
 print(cube(tf.constant([1., 2., 3.])))
except ValueError as ex:
 print(ex)
 
print(cube(tf.constant([1, 2, 3])))
 
# @tf.function py func -> tf graph
# get_concrete_function -> add input signature -> SavedModel
 
cube_func_int32 = cube.get_concrete_function(
 tf.TensorSpec([None], tf.int32)) #tensorflow的類型
print(cube_func_int32)

輸出:

<tensorflow.python.eager.function.ConcreteFunction object at 0x00000240E29695C0>

從輸出結(jié)果可以看到:調(diào)用get_concrete_function函數(shù)后,輸出的是一個ConcreteFunction對象

#看用新參數(shù)獲得的對象與原來的對象是否一樣
print(cube_func_int32 is cube.get_concrete_function(
 tf.TensorSpec([5], tf.int32))) #輸入大小為5
print(cube_func_int32 is cube.get_concrete_function(
 tf.constant([1, 2, 3]))) #傳具體數(shù)據(jù)

輸出:

True
True

cube_func_int32.graph #圖定義

輸出:

[<tf.Operation 'x' type=Placeholder>,
 <tf.Operation 'Pow/y' type=Const>,
 <tf.Operation 'Pow' type=Pow>,
 <tf.Operation 'Identity' type=Identity>]
pow_op = cube_func_int32.graph.get_operations()[2]
print(pow_op)

輸出:

name: "Pow"
op: "Pow"
input: "x"
input: "Pow/y"
attr {
  key: "T"
  value {
    type: DT_INT32
  }
}

print(list(pow_op.inputs))
print(list(pow_op.outputs))

輸出:

[<tf.Tensor 'x:0' shape=(None,) dtype=int32>, <tf.Tensor 'Pow/y:0' shape=() dtype=int32>]
[<tf.Tensor 'Pow:0' shape=(None,) dtype=int32>]

cube_func_int32.graph.get_operation_by_name("x")

輸出:

<tf.Operation 'x' type=Placeholder>

cube_func_int32.graph.get_tensor_by_name("x:0")  #默認加“:0”

<tf.Tensor 'x:0' shape=(None,) dtype=int32>

cube_func_int32.graph.as_graph_def() #總名字,針對上面兩個

node {
 name: "x"
 op: "Placeholder"
 attr {
 key: "_user_specified_name"
 value {
 s: "x"
 }
 }
 attr {
 key: "dtype"
 value {
 type: DT_INT32
 }
 }
 attr {
 key: "shape"
 value {
 shape {
 dim {
  size: -1
 }
 }
 }
 }
}
node {
 name: "Pow/y"
 op: "Const"
 attr {
 key: "dtype"
 value {
 type: DT_INT32
 }
 }
 attr {
 key: "value"
 value {
 tensor {
 dtype: DT_INT32
 tensor_shape {
 }
 int_val: 3
 }
 }
 }
}
node {
 name: "Pow"
 op: "Pow"
 input: "x"
 input: "Pow/y"
 attr {
 key: "T"
 value {
 type: DT_INT32
 }
 }
}
node {
 name: "Identity"
 op: "Identity"
 input: "Pow"
 attr {
 key: "T"
 value {
 type: DT_INT32
 }
 }
}
versions {
 producer: 119
}

 到此這篇關(guān)于tensorflow2.0的函數(shù)簽名與圖結(jié)構(gòu)的文章就介紹到這了,更多相關(guān)tensorflow函數(shù)簽名與圖結(jié)構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python爬蟲之Scrapy環(huán)境搭建案例教程

    Python爬蟲之Scrapy環(huán)境搭建案例教程

    這篇文章主要介紹了Python爬蟲之Scrapy環(huán)境搭建案例教程,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Python 類的魔法屬性用法實例分析

    Python 類的魔法屬性用法實例分析

    這篇文章主要介紹了Python 類的魔法屬性用法,結(jié)合實例形式分析了Python類的魔法屬性功能與相關(guān)使用技巧,需要的朋友可以參考下
    2019-11-11
  • python Graham求凸包問題并畫圖操作

    python Graham求凸包問題并畫圖操作

    這篇文章主要介紹了python Graham求凸包問題并畫圖操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • python讀取浮點數(shù)和讀取文本文件示例

    python讀取浮點數(shù)和讀取文本文件示例

    這篇文章主要介紹了python讀取浮點數(shù)和讀取文本文件示例,需要的朋友可以參考下
    2014-05-05
  • python中property和setter裝飾器用法

    python中property和setter裝飾器用法

    今天小編就為大家分享一篇python中property和setter裝飾器用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python sklearn庫實現(xiàn)PCA教程(以鳶尾花分類為例)

    Python sklearn庫實現(xiàn)PCA教程(以鳶尾花分類為例)

    今天小編就為大家分享一篇Python sklearn庫實現(xiàn)PCA教程(以鳶尾花分類為例),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Pytest運行及其控制臺輸出信息

    Pytest運行及其控制臺輸出信息

    這篇文章主要介紹了Pytest運行及其控制臺輸出信息,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Flask應(yīng)用部署與多端口管理實踐全指南

    Flask應(yīng)用部署與多端口管理實踐全指南

    在開發(fā)和部署Web應(yīng)用時,開發(fā)者常常需要處理多端口服務(wù),防火墻配置以及生產(chǎn)環(huán)境優(yōu)化等問題,下面小編就來和大家簡單講講Flask應(yīng)用部署與多端口管理實踐的相關(guān)知識吧
    2025-04-04
  • 用python讀寫excel的方法

    用python讀寫excel的方法

    這篇文章主要介紹了用python讀寫excel的方法,涉及xlrd模塊與xlwt模塊的應(yīng)用,具有一定的學(xué)習(xí)借鑒價值,需要的朋友可以參考下
    2014-11-11
  • python機器學(xué)習(xí)之貝葉斯分類

    python機器學(xué)習(xí)之貝葉斯分類

    這篇文章主要為大家詳細介紹了python機器學(xué)習(xí)之貝葉斯分類的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03

最新評論

西城区| 东方市| 永安市| 安丘市| 波密县| 吴忠市| 安康市| 吴江市| 修水县| 临洮县| 林口县| 沂水县| 五指山市| 布尔津县| 驻马店市| 利川市| 抚顺市| 武穴市| 大名县| 斗六市| 循化| 枣强县| 明星| 武隆县| 奉节县| 顺义区| 大余县| 盐池县| 板桥市| 科技| 山阳县| 平安县| 黄大仙区| 涞源县| 平山县| 通化市| 资兴市| 平果县| 万年县| 西青区| 樟树市|