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

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

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

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)建、模型訓練的過程中不會用到,下面介紹的函數(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)用,具有一定的學習借鑒價值,需要的朋友可以參考下
    2014-11-11
  • python機器學習之貝葉斯分類

    python機器學習之貝葉斯分類

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

最新評論

漳浦县| 二连浩特市| 潜江市| 鹤山市| 石城县| 马关县| 来凤县| 青海省| 锡林郭勒盟| 浮梁县| 佛山市| 恭城| 定结县| 马鞍山市| 图木舒克市| 牟定县| 手游| 保定市| 太保市| 阜南县| 房产| 凤翔县| 永丰县| 安义县| 奉化市| 乃东县| 邳州市| 阳朔县| 乌苏市| 旌德县| 乳源| 咸丰县| 富宁县| 万盛区| 五原县| 上蔡县| 应城市| 甘德县| 新郑市| 德格县| 友谊县|