0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

tensorflow的構(gòu)建流程

姚小熊27 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2020-12-04 15:01 ? 次閱讀

tensorflow的構(gòu)建流程

tf.Graph() 表示實(shí)例化了一個(gè)類,一個(gè)用于 tensorflow 計(jì)算和表示用的數(shù)據(jù)流圖,通俗來講就是:在代碼中添加的操作(畫中的結(jié)點(diǎn))和數(shù)據(jù)(畫中的線條)都是畫在紙上的“畫”,而圖就是呈現(xiàn)這些畫的紙,你可以利用很多線程生成很多張圖,但是默認(rèn)圖就只有一張。

例如有如下代碼:

import tensorflow as tf

g = tf.Graph()

## add nodes to the graph

with g.as_default():

a = tf.constant(1, name=‘a(chǎn)’)

b = tf.constant(2, name=‘b’)

c = tf.constant(3, name=‘c’)

z = 2 * (a - b) + c

## launch the graph

with tf.Session(graph=g) as sess:

writer = tf.summary.FileWriter(“E://PycharmProjects//Graph”, g)

print(‘2*(a-b)+c =》 ’, sess.run(z))

打開cmd命令行,輸入tensorboard --logdir=E:\PycharmProjects\Graph

回車后,打開google瀏覽器,輸入得的的網(wǎng)址即可看到 我們生成的流程圖了:

TensorFlow執(zhí)行流程

TensorFlow的基礎(chǔ)運(yùn)算

在搞神經(jīng)網(wǎng)絡(luò)之前,先讓我們把TensorFlow的基本運(yùn)算,也就是加減乘除搞清楚。

首先,TensorFlow有幾個(gè)概念需要進(jìn)行明確:

1 圖(Graph):用來表示計(jì)算任務(wù),也就我們要做的一些操作。

2 會(huì)話(Session):建立會(huì)話,此時(shí)會(huì)生成一張空?qǐng)D;在會(huì)話中添加節(jié)點(diǎn)和邊,形成一張圖,一個(gè)會(huì)話可以有多個(gè)圖,通過執(zhí)行這些圖得到結(jié)果。如果把每個(gè)圖看做一個(gè)車床,那會(huì)話就是一個(gè)車間,里面有若干個(gè)車床,用來把數(shù)據(jù)生產(chǎn)成結(jié)果。

3 Tensor:用來表示數(shù)據(jù),是我們的原料。

4 變量(Variable):用來記錄一些數(shù)據(jù)和狀態(tài),是我們的容器。

5 feed和fetch:可以為任意的操作(arbitrary operation) 賦值或者從其中獲取數(shù)據(jù)。相當(dāng)于一些鏟子,可以操作數(shù)據(jù)。

形象的比喻是:把會(huì)話看做車間,圖看做車床,里面用Tensor做原料,變量做容器,feed和fetch做鏟子,把數(shù)據(jù)加工成我們的結(jié)果。

2.1 創(chuàng)建圖和運(yùn)行圖:

下面我們創(chuàng)建一個(gè)圖,并在Session中執(zhí)行它,不用擔(dān)心看不懂,每句代碼都會(huì)注釋,只有有編程基礎(chǔ),都能OK:

上面就是用TensorFlow進(jìn)行了一個(gè)最簡(jiǎn)單的矩陣乘法。

2.2 創(chuàng)建一個(gè)變量,并用for循環(huán)對(duì)變量進(jìn)行賦值操作

可以看到,除了變量創(chuàng)建稍微麻煩一些和必須建立session來運(yùn)行,其他的操作基本和普通Python一樣。

2.3 通過feed設(shè)置placeholder的值

有的時(shí)候,我們會(huì)在聲明變量的時(shí)候不賦值,計(jì)算的時(shí)候才進(jìn)行賦值,這個(gè)時(shí)候feed就派上用場(chǎng)了。


責(zé)任編輯:YYX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • tensorflow
    +關(guān)注

    關(guān)注

    13

    文章

    329

    瀏覽量

    60560
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何使用Python構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)模型

    : NumPy:用于數(shù)學(xué)運(yùn)算。 TensorFlow:一個(gè)開源機(jī)器學(xué)習(xí)庫,Keras是其高級(jí)API。 Keras:用于構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型。 你可以使用pip來安裝這些庫: pip install
    的頭像 發(fā)表于 11-13 10:10 ?481次閱讀

    基于系統(tǒng)設(shè)備樹的構(gòu)建流程

    用于構(gòu)建 AMD embeddedsw 組件的舊方法將 .xsa 用作來自硬件人員的交接文件,并將 mdd、mld 和 mss 文件用于不同的軟件配置。這使得舊方法依賴于 AMD 專屬工具,如軟件
    的頭像 發(fā)表于 11-01 13:38 ?236次閱讀

    第四章:在 PC 交叉編譯 aarch64 的 tensorflow 開發(fā)環(huán)境并測(cè)試

    本文介紹了在 PC 端交叉編譯 aarch64 平臺(tái)的 tensorflow 庫而非 tensorflow lite 的心酸過程。
    的頭像 發(fā)表于 08-25 11:38 ?1274次閱讀
    第四章:在 PC 交叉編譯 aarch64 的 <b class='flag-5'>tensorflow</b> 開發(fā)環(huán)境并測(cè)試

    如何在Tensorflow中實(shí)現(xiàn)反卷積

    TensorFlow中實(shí)現(xiàn)反卷積(也稱為轉(zhuǎn)置卷積或分?jǐn)?shù)步長(zhǎng)卷積)是一個(gè)涉及多個(gè)概念和步驟的過程。反卷積在深度學(xué)習(xí)領(lǐng)域,特別是在圖像分割、圖像超分辨率、以及生成模型(如生成對(duì)抗網(wǎng)絡(luò)GANs)等任務(wù)中
    的頭像 發(fā)表于 07-14 10:46 ?673次閱讀

    TensorFlow是什么?TensorFlow怎么用?

    TensorFlow是由Google開發(fā)的一個(gè)開源深度學(xué)習(xí)框架,它允許開發(fā)者方便地構(gòu)建、訓(xùn)練和部署各種復(fù)雜的機(jī)器學(xué)習(xí)模型。TensorFlow憑借其高效的計(jì)算性能、靈活的架構(gòu)以及豐富的工具和庫,在學(xué)
    的頭像 發(fā)表于 07-12 16:38 ?755次閱讀

    使用TensorFlow進(jìn)行神經(jīng)網(wǎng)絡(luò)模型更新

    使用TensorFlow進(jìn)行神經(jīng)網(wǎng)絡(luò)模型的更新是一個(gè)涉及多個(gè)步驟的過程,包括模型定義、訓(xùn)練、評(píng)估以及根據(jù)新數(shù)據(jù)或需求進(jìn)行模型微調(diào)(Fine-tuning)或重新訓(xùn)練。下面我將詳細(xì)闡述這個(gè)過程,并附上相應(yīng)的TensorFlow代碼示例。
    的頭像 發(fā)表于 07-12 11:51 ?450次閱讀

    請(qǐng)問ESP32如何運(yùn)行TensorFlow模型?

    請(qǐng)問ESP32如何運(yùn)行TensorFlow模型?
    發(fā)表于 07-09 07:30

    tensorflow和pytorch哪個(gè)更簡(jiǎn)單?

    PyTorch更簡(jiǎn)單。選擇TensorFlow還是PyTorch取決于您的具體需求和偏好。如果您需要一個(gè)易于使用、靈活且具有強(qiáng)大社區(qū)支持的框架,PyTorch可能是一個(gè)更好的選擇。如果您需要一個(gè)在
    的頭像 發(fā)表于 07-05 09:45 ?920次閱讀

    tensorflow和pytorch哪個(gè)好

    tensorflow和pytorch都是非常不錯(cuò)的強(qiáng)大的框架,TensorFlow還是PyTorch哪個(gè)更好取決于您的具體需求,以下是關(guān)于這兩個(gè)框架的一些關(guān)鍵點(diǎn): TensorFlow : 發(fā)布時(shí)間
    的頭像 發(fā)表于 07-05 09:42 ?733次閱讀

    tensorflow簡(jiǎn)單的模型訓(xùn)練

    TensorFlow開始,然后介紹如何構(gòu)建和訓(xùn)練一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)模型。 1. 安裝TensorFlow 首先,我們需要安裝TensorFlow。T
    的頭像 發(fā)表于 07-05 09:38 ?732次閱讀

    keras模型轉(zhuǎn)tensorflow session

    在這篇文章中,我們將討論如何將Keras模型轉(zhuǎn)換為TensorFlow session。 Keras和TensorFlow簡(jiǎn)介 Keras是一個(gè)高級(jí)神經(jīng)網(wǎng)絡(luò)API,它提供了一種簡(jiǎn)單、快速的方式來構(gòu)建
    的頭像 發(fā)表于 07-05 09:36 ?570次閱讀

    如何使用Tensorflow保存或加載模型

    TensorFlow是一個(gè)廣泛使用的開源機(jī)器學(xué)習(xí)庫,它提供了豐富的API來構(gòu)建和訓(xùn)練各種深度學(xué)習(xí)模型。在模型訓(xùn)練完成后,保存模型以便將來使用或部署是一項(xiàng)常見的需求。同樣,加載已保存的模型進(jìn)行預(yù)測(cè)或
    的頭像 發(fā)表于 07-04 13:07 ?1638次閱讀

    如何在TensorFlow構(gòu)建并訓(xùn)練CNN模型

    TensorFlow構(gòu)建并訓(xùn)練一個(gè)卷積神經(jīng)網(wǎng)絡(luò)(CNN)模型是一個(gè)涉及多個(gè)步驟的過程,包括數(shù)據(jù)預(yù)處理、模型設(shè)計(jì)、編譯、訓(xùn)練以及評(píng)估。下面,我將詳細(xì)闡述這些步驟,并附上一個(gè)完整的代碼示例。
    的頭像 發(fā)表于 07-04 11:47 ?1014次閱讀

    TensorFlow的定義和使用方法

    數(shù)據(jù)流圖,從而簡(jiǎn)化機(jī)器學(xué)習(xí)模型的構(gòu)建、訓(xùn)練和部署。自2015年11月開源以來,TensorFlow迅速成為數(shù)據(jù)科學(xué)家、軟件開發(fā)者以及教育工作者廣泛使用的工具,廣泛應(yīng)用于圖像識(shí)別、自然語言處理、推薦系統(tǒng)等多個(gè)領(lǐng)域。本文將深入解讀Tenso
    的頭像 發(fā)表于 07-02 14:14 ?840次閱讀

    TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇

    深度學(xué)習(xí)作為人工智能領(lǐng)域的一個(gè)重要分支,在過去十年中取得了顯著的進(jìn)展。在構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型的過程中,深度學(xué)習(xí)框架扮演著至關(guān)重要的角色。TensorFlow和PyTorch是目前最受歡迎的兩大深度
    的頭像 發(fā)表于 07-02 14:04 ?1010次閱讀