TensorFlow神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)之張量與變量概念
一、張量定義
張量:TensorFlow的張量是n維數(shù)組,類(lèi)型為tf.Tensor。
標(biāo)量:一個(gè)數(shù)字 (0階張量)
向量:一維數(shù)組 (1階張量)
矩陣:二維數(shù)組 (2階張量)
二、張量屬性
1、張量的類(lèi)型

#創(chuàng)建常數(shù)張量 a = tf.constant(3.0) print(a)

2、張量的階

三、張量的指令
1、常數(shù)張量(普通)
#創(chuàng)建常數(shù)張量 a = tf.constant(3.0) print(a)


2、張量數(shù)組
1、固定張量數(shù)組(0)
#創(chuàng)建張量數(shù)組 #0: array_0 = tf.zeros(shape=[3,3]) #3*3數(shù)組(0)

2、固定張量數(shù)組(1)
#1: array_1 = tf.ones(shape=[3,3]) #3*3數(shù)組(1)
3、隨機(jī)張量數(shù)組
#隨機(jī): array_random = tf.random_normal(shape=[2,3], mean=1.75, stddev=0.12) # 2*3數(shù)組均值(1.75) 標(biāo)準(zhǔn)差

3、查看張量值
查看張量值:張量.eval()
#會(huì)話(huà)(查看張量) with tf.Session() as sess: print(a.eval()) print(array_0.eval()) print(array_1.eval()) print(array_random.eval())

4、張量類(lèi)型改變
#修改張量類(lèi)型 array_0 = tf.cast(array_0, tf.int32)


5、張量形狀改變
注:屬于動(dòng)態(tài)改變張量,需要張量元素個(gè)數(shù)固定。
#修改張量形狀 array_random = tf.reshape(array_random, shape=[3,2])
修改前:

修改后:

代碼
# 張量(創(chuàng)建與修改)
import tensorflow as tf
# 創(chuàng)建張量
def Create_Tensor():
# 創(chuàng)建常數(shù)張量
a = tf.constant(3.0)
print(a)
# 創(chuàng)建張量數(shù)組
# 0:
array_0 = tf.zeros(shape=[3, 3]) # 3*3數(shù)組(0)
# 1:
array_1 = tf.ones(shape=[3, 3]) # 3*3數(shù)組(1)
# 隨機(jī):
array_random = tf.random_normal(shape=[2, 3], mean=1.75, stddev=0.12)
# 2*3數(shù)組均值(1.75) 標(biāo)準(zhǔn)差
# 會(huì)話(huà)(查看張量)
with tf.Session() as sess:
print(a.eval())
print(array_0.eval())
print(array_1.eval())
print(array_random.eval())
# 修改張量
def Modify_Tensor():
global array_0, array_random
print('修改后的:')
# 修改張量類(lèi)型
array_0 = tf.cast(array_0, tf.int32)
# 修改張量形狀
array_random = tf.reshape(array_random, shape=[3, 2])
# 會(huì)話(huà)(查看張量)
with tf.Session() as sess:
print(array_0.eval())
print(array_random.eval())
# 創(chuàng)建張量
Create_Tensor()
# 修改張量
Modify_Tensor()
四、變量
1、定義變量
# 定義變量 a = tf.Variable(initial_value=2) b = tf.Variable(initial_value=4) c = tf.add(a,b)
2、初始化變量
TensorFlow的變量必須初始化,否則會(huì)報(bào)錯(cuò)。
# 初始化變量 init = tf.global_variables_initializer()
3、開(kāi)啟會(huì)話(huà)(執(zhí)行)
# 開(kāi)啟會(huì)話(huà) with tf.Session() as sess: sess.run(init) print(sess.run(c))

代碼
# 變量 import tensorflow as tf # 定義變量 a = tf.Variable(initial_value=2) b = tf.Variable(initial_value=4) c = tf.add(a,b) # 初始化變量 init = tf.global_variables_initializer() # 開(kāi)啟會(huì)話(huà) with tf.Session() as sess: sess.run(init) print(sess.run(c))
以上就是TensorFlow神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)之張量與變量概念的詳細(xì)內(nèi)容,更多關(guān)于TensorFlow的資料請(qǐng)關(guān)注本站其它相關(guān)文章!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信