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)文章!
相關(guān)文章
使用PyInstaller將python轉(zhuǎn)成可執(zhí)行文件exe筆記
這篇文章主要介紹了使用PyInstaller將python轉(zhuǎn)成可執(zhí)行文件exe筆記,需要的朋友可以參考下2018-05-05
Python并發(fā)concurrent.futures和asyncio實(shí)例
這篇文章主要介紹了Python并發(fā)concurrent.futures和asyncio實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
python中循環(huán)語(yǔ)句while用法實(shí)例
這篇文章主要介紹了python中循環(huán)語(yǔ)句while用法,實(shí)例分析了while語(yǔ)句的使用方法,需要的朋友可以參考下2015-05-05
Python如何通過(guò)內(nèi)存管理提升程序執(zhí)行效率
Python提供了自動(dòng)內(nèi)存管理的功能,但是如果不小心使用,可能會(huì)導(dǎo)致內(nèi)存泄漏和性能問(wèn)題,所以巧妙使用內(nèi)存管理是提高Python執(zhí)行效率的關(guān)鍵,下面就來(lái)和大家仔細(xì)講講Python的內(nèi)存管理技巧吧2023-06-06
pytorch 利用lstm做mnist手寫(xiě)數(shù)字識(shí)別分類(lèi)的實(shí)例
今天小編就為大家分享一篇pytorch 利用lstm做mnist手寫(xiě)數(shù)字識(shí)別分類(lèi)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01
Python 中使用 argparse 解析命令行參數(shù)
這篇文章主要介紹了Python 中使用 argparse 解析命令行參數(shù),argparse 模塊是一個(gè)強(qiáng)大的命令行參數(shù)解析器,還有很多功能沒(méi)能在這里介紹。下面文化在哪個(gè)詳細(xì)介紹該內(nèi)容,需要的朋友可以參考一下2021-11-11
python爬蟲(chóng)scrapy基于CrawlSpider類(lèi)的全站數(shù)據(jù)爬取示例解析
這篇文章主要介紹了python爬蟲(chóng)scrapy基于CrawlSpider類(lèi)的全站數(shù)據(jù)爬取示例解析,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02

