tensorflow中張量 常量 變數 佔位符

2021-08-27 18:01:29 字數 1502 閱讀 9930

從例項出發

#先導入tensorflow

import tensorflow as tf

# create tensorflow object called hello_constant

hello_constant = tf.constant('hello world!')

with tf.session() as sess:

# run the tf.constant operation in the session

output = sess.run(hello_constant)

print(output)

有人會奇怪為什麼不直接輸出「hello world」,其實在tensorflow裡面有它自己的 一套。

在tensorflow中,資料是被封裝在tensor物件中的。tensor是張量的意思,即包含從0到任意維度的張量。常數是0維度的張量,向量是1維度的張量,矩陣是二維度的張量,以及還有多維度的張量。

# tensor1 是乙個0維的 int32 tensor

tensor1 = tf.constant(1234)

# tensor2 是乙個1維的 int32 tensor

tensor2 = tf.constant([123,456,789])

# tensor3 是乙個二維的 int32 tensor

tensor3 = tf.constant([ [123,456,789], [222,333,444] ])

constant函式提供在tensorflow中定義常量(不可更改的張量)的方法

如:

tensor_constant = tf.constant([1,2,3,4)
tensorflow中的變數是通過variable類來實現的。tensorflow中需要定義為變數的包括訓練過程中的輸入資料,輸出資料,以及控制從輸入到輸出的學習機制,即網路引數。輸入輸出資料在tf中是用placeholder佔位符來定義的,網路引數是用tf.variable來定義的。

用於宣告乙個張量的資料格式,告訴系統這裡會有乙個這種格式的張量,但是還沒有傳入具體的值。

如:x = tf.placeholder("float", shape=[none, 100])

上面宣告了乙個張量x,資料型別是float,100列,行數不確定。

5.tf.session

以上部分都是搭建乙個計算圖的**,在tf中,先搭建好計算圖,然後再啟動session,執行定義好的圖。

import tensorflow as tf

x = tf.placeholder("string")

with tf.session() as sess:

output = sess.run(x, feed_dict=)

print(output)

通過上面的例子我們明白了如何使用佔位符,首先定義x為佔位符,然後執行的時候將想要傳入的值傳給x。

tensorflow中張量的理解

自己通過網上查詢的有關張量的解釋,稍作整理。tensorflow用張量這種資料結構來表示所有的資料.你可以把乙個張量想象成乙個n維的陣列或列表.乙個張量有乙個靜態型別和動態型別的維數.張量可以在圖中的節點之間流通.在tensorflow系統中,張量的維數來被描述為階.但是張量的階和矩陣的階並不是同乙...

tensorflow中張量的理解

自己通過網上查詢的有關張量的解釋,稍作整理。tensorflow用張量這種資料結構來表示所有的資料.你可以把乙個張量想象成乙個n維的陣列或列表.乙個張量有乙個靜態型別和動態型別的維數.張量可以在圖中的節點之間流通.在tensorflow系統中,張量的維數來被描述為階.但是張量的階和矩陣的階並不是同乙...

tensorflow中張量的理解

自己通過網上查詢的有關張量的解釋,稍作整理。tensorflow用張量這種資料結構來表示所有的資料.你可以把乙個張量想象成乙個n維的陣列或列表.乙個張量有乙個靜態型別和動態型別的維數.張量可以在圖中的節點之間流通.階在tensorflow系統中,張量的維數來被描述為階.但是張量的階和矩陣的階並不是同...