tensorflow常用函式

2021-10-23 19:05:13 字數 2474 閱讀 7314

1.強制tensor轉換為該資料型別tf.cast(張量名,dtpye=資料型別)。計算張量維度上元素的最小tf.reduce_min(張量名),計算張量維度上元素的最大值tf.reduce_max(張量名)。

例如:

x1=tf.constant([1

.,2.

,3.]

,dtype=tf.float64)

print

(x1)

x2=tf.cast(x1,tf.int32)

print

(x2)

print

(tf.reduce_min(x2)

,tf.reduce_max(x2)

)

執行結果

2.計算張量沿著指定維度的平均值tf.reduce_mean(張量名,axis=操作軸),計算張量沿著指定維度的和tf.reduce_sum(張量名,axis=操作軸)

例如

x = tf.constant([[

1,2,

3],[

2,2,

3]])

print

("x:"

, x)

print

("mean of x:"

, tf.reduce_mean(x)

)# 求x中所有數的均值

print

("sum of x:"

, tf.reduce_sum(x, axis=1)

)# 求每一行的和

操作結果

3.tf.variable()將變數標記為可訓練,被標記的變數會在反向傳播中記錄梯度資訊。神經網路訓練中常用該函式標記待訓練引數。

4.常用函式對應的四則運算

實現兩個張量的對應元素相加tf.add(張量1,張量2)

實現兩個張量的對應元素相減

tf,sutract(張量1,張量2)

實現兩個張量的對應元素相乘tf,multiply(張量1,張量2)

實現兩個張量的對應元素相除

tf,divide(張量1,張量2)

例如

a = tf.ones([1

,3])

b = tf.fill([1

,3],

3.)print

("a:"

, a)

print

("b:"

, b)

print

("a+b:"

, tf.add(a, b)

)print

("a-b:"

, tf.subtract(a, b)

)print

("a*b:"

, tf.multiply(a, b)

)print

("b/a:"

, tf.divide(b, a)

)

操作結果

5.實現兩個矩陣相乘

tf.matmul(矩陣1,矩陣2)

例如

a = tf.ones([3

,2])

b = tf.fill([2

,3],

3.)print

("a:"

, a)

print

("b:"

, b)

print

("a*b:"

, tf.matmul(a, b)

)

操作結果

6.切分傳入張量的第一維度,生成輸入特徵/標籤對,構建資料集data=tf.data.dataset.from_tensor_slices((輸入特徵,標籤))

例如

features = tf.constant([12

,23,10

,17])

labels = tf.constant([0

,1,1

,0])

dataset = tf.data.dataset.from_tensor_slices(

(features, labels)

)for element in dataset:

print

(element)

操作結果

tensorflow常用函式

1.variable 主要在於一些可訓練變數 trainable variables 比如模型的權重 weights 或者偏執值 bias 1 宣告時,必須提供初始值 2 在真實訓練時,其值是會改變的,自然事先需要指定初始值 weights tf.variable tf.random normal ...

TensorFlow常用函式

使用tensorflow計算流程 1 prepare train data 2 define model and graph 3 choose optimizer 4 create a session to run import tensorflow as tf 1.tf.reduce mean i...

Tensorflow常用函式

w1 tf.variable tf.random normal 2,3 sttdev 1,seed 1 生成矩陣的均值為0,方差為2。使用seed 1指定隨機種子,可以保證每次執行得到的結果相同。sess.run w1.initializer 初始化w1 sess.run tf.initiable ...