欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

TensorFlow使用Graph的基本操作的實(shí)現(xiàn)

 更新時(shí)間:2020年04月22日 14:23:23   作者:Baby-Lily  
這篇文章主要介紹了TensorFlow使用Graph的基本操作的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1.創(chuàng)建圖

在tensorflow中,一個(gè)程序默認(rèn)是建立一個(gè)圖的,除了系統(tǒng)自動(dòng)建立圖以外,我們還可以手動(dòng)建立圖,并做一些其他的操作。

下面我們使用tf.Graph函數(shù)建立圖,使用tf.get_default_graph函數(shù)來(lái)獲取圖,使用reset_default_graph對(duì)圖進(jìn)行重置。

import tensorflow as tf
import numpy as np


c = tf.constant(1.5)
g = tf.Graph()

with g.as_default():

  c1 = tf.constant(2.0)
  print(c1.graph)
  print(g)
  print(c.graph)

g2 = tf.get_default_graph()
print(g2)

tf.reset_default_graph()
g3 = tf.get_default_graph()
print(g3)

上述的代碼運(yùn)行結(jié)果如下所示:

根據(jù)上述的運(yùn)行結(jié)果,c是在剛開(kāi)始的默認(rèn)圖中建立的,所以打印的結(jié)果就是13376A1FE10,和g2獲取的默認(rèn)圖的值是一樣的,然后使用tf.Graph建立了一個(gè)新的圖,并添加了變量c1,最后又對(duì)圖進(jìn)行了重置,替代了原來(lái)的默認(rèn)圖。

在使用reset_default_graph()函數(shù)的時(shí)候,要保證當(dāng)前圖中資源都已經(jīng)全部進(jìn)行了釋放,否則將會(huì)報(bào)錯(cuò)。

2.獲取張量

我們可以在圖中通過(guò)名字得到其對(duì)應(yīng)的元素,比如獲取圖中的變量和OP等元素。

import tensorflow as tf
import numpy as np

g = tf.Graph()

with g.as_default():
  c1 = tf.constant(2.5, name='c1_constant')
  c2 = tf.Variable(1.5, dtype=tf.float32, name='c2_constant')
  add = tf.multiply(c1, c2, name='op_add')

  c_1 = g.get_tensor_by_name(name='c1_constant:0')
  c_2 = g.get_tensor_by_name(name='c2_constant:0')
  c_3 = g.get_tensor_by_name(name='op_add:0')


  print(c_1)
  print(c_2)
  print(c_3)

在進(jìn)行測(cè)試時(shí),我們?yōu)樵靥砑恿俗兞棵谠O(shè)置變量名的時(shí)候,設(shè)置好的名字會(huì)自動(dòng)添加后面的:0字符。一般我們可以將名字打印出來(lái),在將打印好的名字進(jìn)行回填。

3.獲取節(jié)點(diǎn)操作

獲取節(jié)點(diǎn)操作OP的方法和獲取張量的方法非常類似,使用get_operation_by_name.下面是運(yùn)行實(shí)例:

import tensorflow as tf
import numpy as np

a = tf.constant([[1.0, 2.0]])
b = tf.constant([[1.0], [3.0]])

tensor_1 = tf.matmul(a, b, name='matmul_1')

with tf.Session() as sess:
  sess.run(tf.global_variables_initializer())
  t1 = tf.get_default_graph().get_operation_by_name(name='matmul_1')
  t2 = tf.get_default_graph().get_tensor_by_name(name='matmul_1:0')
  print(t1)
  print('t1: ', sess.run(t1))
  print('t2: ', sess.run(t2))

在上述的代碼中,定義了一個(gè)OP操作,命名為matmul_1,在運(yùn)行時(shí)我們將op打印出來(lái),在使用名字后面加上:0我們就能得到OP運(yùn)算的結(jié)果的tensor,注意這兩者的區(qū)別。

我們還可以通過(guò)get_opreations函數(shù)獲取圖中的所有信息。此外,我們還可以使用tf.Grapg.as_graph_element函數(shù)將傳入的對(duì)象返回為張量或者op。該函數(shù)具有驗(yàn)證和轉(zhuǎn)換功能。

到此這篇關(guān)于TensorFlow使用Graph的基本操作的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)TensorFlow Graph操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python?GUI多行輸入文本Text的實(shí)現(xiàn)

    python?GUI多行輸入文本Text的實(shí)現(xiàn)

    這篇文章主要介紹了python?GUI多行輸入文本Text的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 抵御代碼復(fù)雜性使python函數(shù)更加Pythonic技巧示例詳解

    抵御代碼復(fù)雜性使python函數(shù)更加Pythonic技巧示例詳解

    這篇文章主要介紹了抵御代碼復(fù)雜性使python函數(shù)更加Pythonic技巧示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python單元測(cè)試工具doctest和unittest使用解析

    Python單元測(cè)試工具doctest和unittest使用解析

    這篇文章主要介紹了Python單元測(cè)試工具doctest和unittest使用解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Python進(jìn)階多線程爬取網(wǎng)頁(yè)項(xiàng)目實(shí)戰(zhàn)

    Python進(jìn)階多線程爬取網(wǎng)頁(yè)項(xiàng)目實(shí)戰(zhàn)

    這篇文章主要為大家介紹了Python進(jìn)階,Python多線程爬取網(wǎng)頁(yè)項(xiàng)目實(shí)戰(zhàn)的示例呈現(xiàn)步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-10-10
  • 使用AJAX和Django獲取數(shù)據(jù)的方法實(shí)例

    使用AJAX和Django獲取數(shù)據(jù)的方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于使用AJAX和Django獲取數(shù)據(jù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Python編解碼問(wèn)題及文本文件處理方法詳解

    Python編解碼問(wèn)題及文本文件處理方法詳解

    最近在做一個(gè)項(xiàng)目,因?yàn)槲谋咎幚淼膬?nèi)容是中文,所以不得不面對(duì)python中文處理所帶來(lái)的種種困惑,這篇文章主要給大家介紹了關(guān)于Python編解碼問(wèn)題及文本文件處理方法的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • Python Matplotlib 實(shí)現(xiàn)3D繪圖詳解

    Python Matplotlib 實(shí)現(xiàn)3D繪圖詳解

    Matplotlib在二維繪圖的基礎(chǔ)上,構(gòu)建了一部分較為實(shí)用的3D繪圖程序包。本文將為大家詳細(xì)介紹通過(guò)調(diào)用該程序包接口繪制 3D散點(diǎn)圖、3D曲面圖、3D線框圖。感興趣的同學(xué)可以了解一下
    2021-11-11
  • Python中不同數(shù)據(jù)對(duì)象的空值校驗(yàn)的方法小結(jié)

    Python中不同數(shù)據(jù)對(duì)象的空值校驗(yàn)的方法小結(jié)

    Python中有多種數(shù)據(jù)對(duì)象,每種都有其特定的空值表示方法和校驗(yàn)方式,本文將深入探討這些空值校驗(yàn)的方法,有需要的小伙伴可以參考一下
    2024-04-04
  • pycharm 解除默認(rèn)unittest模式的方法

    pycharm 解除默認(rèn)unittest模式的方法

    今天小編就為大家分享一篇pycharm 解除默認(rèn)unittest模式的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • 超詳細(xì)OpenMV與STM32單片機(jī)通信 附完整源碼

    超詳細(xì)OpenMV與STM32單片機(jī)通信 附完整源碼

    這篇文章主要介紹了OpenMV與STM32單片機(jī)通信的相關(guān)知識(shí),在文章結(jié)尾給大家提供了項(xiàng)目源碼,需要的朋友可以參考下
    2021-11-11

最新評(píng)論