深度学习编程笔记:tensorflow2.1基础知识---张量

张量(Tensor):多维数组(列表) 阶:张量的维数

张量可以表示0阶到n阶数组(列表)

基本的数据类型

tf.int,tf.float
tf.bool
tf.string

生成一个张量

  1. 如何创建一个张量
    用法:tf.constant(张量内容,dtype=数据类型(可选))
    例子:
 import tensorflow as tf
 #创建一个张量
 a = tf.constant([1,5],dtype = tf.int64)
 print(a)
 print(a.dtype)
 print(a.shape)
 
 输出结果:
 tf.Tensor([1 5], shape=(2,), dtype=int64)  #有几个逗号说明是几维张量  这个是一个一维张量,里面有两个值1和5
 <dtype: 'int64'>
  1. 将numpy的数据类型转换为Tensor数据类型
    用法:tf.convert_to_tensor(数据名,dtype=数据类型(可选))
    例子:
 import tensorflow as tf
 import numpy as np
 
 a = np.arange(0,5)
 b = tf.convert_to_tensor(a,dtype=tf.int64)
 print(a)
 print(b)
 
 输出结果:
 [0 1 2 3 4]
 tf.Tensor([0 1 2 3 4], shape=(5,), dtype=int64)
  1. 创建特殊的张量
    a. 创建全为0的张量:tf.zeros(维度)
    b. 创建全为1的张量:tf.ones(维度)
    c. 创建全为指定值的张量:tf.fill(维度,指定值)
    维度:一维:直接写个数
    二维:用[行,列]
    多维:用[n,m,j.k……]
    例子:
 import tensorflow as tf
 
 a = tf.zeros([2,3])
 b = tf.ones(4)
 c = tf.fill([2,2],9)
 print(a)
 print(b)
 print(c)
 
 输出结果:
 tf.Tensor([[0. 0. 0.][0. 0. 0.]], shape=(2, 3), dtype=float32)
 tf.Tensor([1. 1. 1. 1.], shape=(4,), dtype=float32)
 tf.Tensor([[9 9][9 9]], shape=(2, 2), dtype=int32)
  1. 生成随机数
    a. 生成正态分布的随机数,默认均值为0,标准差为1。 用法:tf.random.normal(维度,mean=均值,stddev = 标准差)
    b. 生成截断式正态分布的随机数。 用法: tf.random.truncated_normal(维度,mean=均值,stddev = 标准差)
    c. 生成均匀分布随机数。 用法: tf.random.uniform(维度,minval = 最小值,maxval = 最大值)
    在这里插入图片描述
    在这里插入图片描述
    例子:
import tensorflow as tf
 
 d = tf.random.normal([2,2],mean = 0.5, stddev = 1)
 e = tf.random.truncated_normal([2,2],mean = 0.5, stddev = 1)
 f = tf.random.uniform([2,2],minval = 0.5, maxval = 1)
 print(d)
 print(e)
 print(f)
 
 输出结果:
 tf.Tensor([[-1.3744324   0.2684363 ][-0.14133292  1.949162  ]], shape=(2, 2), dtype=float32)
 tf.Tensor([[1.1253768  0.18428034][1.5979812  0.20128158]], shape=(2, 2), dtype=float32)
 tf.Tensor([[0.5172171  0.7131886 ][0.6884367  0.50856155]], shape=(2, 2), dtype=float32)
发布了34 篇原创文章 · 获赞 2 · 访问量 834

猜你喜欢

转载自blog.csdn.net/weixin_42503072/article/details/105364173