TensorFlow神经网络学习之张量与变量概念
发布日期:2021-12-24 16:50 | 文章来源:源码中国
一、张量定义
张量:TensorFlow的张量是n维数组,类型为tf.Tensor。
标量:一个数字 (0阶张量)
向量:一维数组 (1阶张量)
矩阵:二维数组 (2阶张量)
二、张量属性
1、张量的类型

#创建常数张量 a = tf.constant(3.0) print(a)

2、张量的阶

三、张量的指令
1、常数张量(普通)
#创建常数张量 a = tf.constant(3.0) print(a)


2、张量数组
1、固定张量数组(0)
#创建张量数组 #0: array_0 = tf.zeros(shape=[3,3]) #3*3数组(0)

2、固定张量数组(1)
#1: array_1 = tf.ones(shape=[3,3]) #3*3数组(1)
3、随机张量数组
#随机: array_random = tf.random_normal(shape=[2,3], mean=1.75, stddev=0.12) # 2*3数组均值(1.75) 标准差

3、查看张量值
查看张量值:张量.eval()
#会话(查看张量) with tf.Session() as sess: print(a.eval()) print(array_0.eval()) print(array_1.eval()) print(array_random.eval())

4、张量类型改变
#修改张量类型 array_0 = tf.cast(array_0, tf.int32)


5、张量形状改变
注:属于动态改变张量,需要张量元素个数固定。
#修改张量形状 array_random = tf.reshape(array_random, shape=[3,2])
修改前:

修改后:

代码
# 张量(创建与修改)
import tensorflow as tf
# 创建张量
def Create_Tensor():
# 创建常数张量
a = tf.constant(3.0)
print(a)
# 创建张量数组
# 0:
array_0 = tf.zeros(shape=[3, 3]) # 3*3数组(0)
# 1:
array_1 = tf.ones(shape=[3, 3]) # 3*3数组(1)
# 随机:
array_random = tf.random_normal(shape=[2, 3], mean=1.75, stddev=0.12)
# 2*3数组均值(1.75) 标准差
# 会话(查看张量)
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('修改后的:')
# 修改张量类型
array_0 = tf.cast(array_0, tf.int32)
# 修改张量形状
array_random = tf.reshape(array_random, shape=[3, 2])
# 会话(查看张量)
with tf.Session() as sess:
print(array_0.eval())
print(array_random.eval())
# 创建张量
Create_Tensor()
# 修改张量
Modify_Tensor()
四、变量
1、定义变量
# 定义变量 a = tf.Variable(initial_value=2) b = tf.Variable(initial_value=4) c = tf.add(a,b)
2、初始化变量
TensorFlow的变量必须初始化,否则会报错。
# 初始化变量 init = tf.global_variables_initializer()
3、开启会话(执行)
# 开启会话 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() # 开启会话 with tf.Session() as sess: sess.run(init) print(sess.run(c))
以上就是TensorFlow神经网络学习之张量与变量概念的详细内容,更多关于TensorFlow的资料请关注本站其它相关文章!
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。
相关文章
关注官方微信