Tensorflow 基礎概念

2021-08-13 20:35:50 字數 2131 閱讀 9037

g=(v,e)

v -> operation 圖的節點

e -> tensor 圖的邊

g -> graph 圖

tensorflow = tensor (多維陣列) + flow (graph 圖 op) session回話上下文管理

variable == tensor(多維資料變數)

placeholder == 外部傳入的引數變數

seesion 計算graph,得到結果。定義乙個graph類,在graph上定義了f和b兩個變數,輸出是對兩個變數求和操作。接下來,定義session,實現真正的初始化,求出res。

>>> 

import tensorflow as tf

>>>

with graph.as_default():

... f = tf.variable(3, name='f')

... b = tf.variable(2, name='b')

... r = f + b

... initialize = tf.global_variables_initializer()

>>>

with tf.session(graph=graph) as sess:

... sess.run(initialize)

... res = sess.run(r)

>>>

print res

5

變數

初始化所有變數tf.global_variables_initializer()

初始化部分變數tf.variables_initializer()

要表示乙個常量k = tf.constant(3.0)

佔位符當我們定義一張graph時,有時候並不知道需要計算的值,可以使用tf.placeholder(dtype,shape=none,name=none)函式。

foo = tf.placeholder(tf.int32,shape=[1],name='foo')  

bar = tf.constant(2,name='bar')

result = foo + bar

with tf.session() as sess:

print sess.run(result,)

最簡單的小例子:

# -*- coding:utf-8 -*-

import tensorflow as tf

import numpy as np

# numpy生成資料

x_data = np.float32(np.random.rand(2, 100))

y_data = np.dot([0.100, 0.200], x_data) + 0.300

# 初始化線性模型引數

b = tf.variable(tf.zeros([1]))

w = tf.variable(tf.random_uniform([1, 2], -1.0, 1.0))

y = tf.matmul(w, x_data) + b

# 最小化方差

loss = tf.reduce_mean(tf.square(y - y_data))

optimizer = tf.train.gradientdescentoptimizer(0.5)

train = optimizer.minimize(loss)

# 初始化變數

init = tf.global_variables_initializer()

# 啟動graph

sess = tf.session()

sess.run(init)

# 擬合平面

for step in xrange(0, 401):

sess.run(train)

if step % 20 == 0:

print step, '/', sess.run(w), sess.run(b)

ref:

TensorFlow 程式設計概念

學習目標 構建乙個簡單的 tensorflow 程式,使用該程式繪製乙個預設圖並建立乙個執行該圖的會話 注意 請仔細閱讀本教程。tensorflow 程式設計模型很可能與您遇到的其他模型不同,因此可能不如您期望的那樣直觀。tensorflow 的名稱源自張量,張量是任意維度的陣列。tensorflo...

TensorFlow 基本概念

tensorflow使用圖來表示計算任務,圖中的節點被稱之為op operation的縮寫 乙個op獲得n個tensor,執行計算,產生n個tensor。每個tensor是乙個型別化的多維陣列。例如,可以將一小 像集表示為乙個四維浮點數陣列,這個四個維度分別是 batch,height,width,...

tensorflow語法基礎

變數型別 variable 變數 constant 常量 指定引數 name 變數在tensorflow中的名字 dtype 變數的資料型別 可以是tf.float32,tf.int32之類的 e.g.import tensorflow as tf a tf.variable 0,dtype int...