ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Tensorflow2.0张量生成

2022-02-25 12:03:25  阅读:213  来源: 互联网

标签:random constant print 张量 生成 Tensorflow2.0 维度 tf


 

Tensorflow

1、tensor就是张量,多维数组,多维列表,阶表示张量的维数(dimension)

维数

名字

例子

0-D

0

标量scalar

s=1 2 3

1-D

1

向量vector

V=[1,2,3]

2-D

2

矩阵matrix

m=[[1,2,3],[4,5,6],[7,8,9]]

n-D

n

张量tensor

t=[[[

2、数据类型

tf.int,tf.float……

tf.int32 tf.float32 tf.float64

tf.bool

tf.constant([True,False])

tf.string

tf.constant(“Hello,world!”)

3、创建一个张量

tf.constant(张量内容,dtype=数据类型(可选))

 

import tensorflow as tf

a = tf.constant([1,5],dtype=tf.int64)

print(a)

print(a.shape)

print(a.dtype)

运行结果:

 

 

 

创建全为0的张量

tf.zeros(维度)

创建全为1的张量

tf.ones(维度)

创建全为指定值的张量

tf.fill(维度,指定值)

 

a = tf.zeros([2,3])

b = tf.ones(4)

c = tf.fill([2,2],9)

print(a)

print(b)

print(c)

运行结果:

 

 

 

创建一个Tensor

生成正态分布的随机数,默认均值为0,标准差1

tf.random.normal(维度,mean=均值,stddev=标准差)

生成截断式正态分布的随机数

tf.random.truncated_normal(维度,mean=均值,stddev=标准差)

 

在tf.truncated_normal中如果生成了随机生成数据的取值在()之间

d = tf.random. normal([2,2],mean = 0.5,stddev=1)

 

e = tf.random.truncated_normal([2,2],mean=0.5,stdde

 

 

生成指定维度的均匀分布随机数[minval,maxval]

tf.random.uniform(维度,minval=最小值,maxval=最大值)

tf.random,uniform([2,2],minval=0,maxval=1)

print(f)

 

4、常用函数

强制tensor转换为该数据类型

tf.cast(张量名,dtype=数据类型)

计算张量维度上元素的最小值

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))

 

切分传入张量的第一维度,生成输入特征/标签对,构建数据集

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))

print(dataset)

for element in dataset:

   print(element)

 

 

标签:random,constant,print,张量,生成,Tensorflow2.0,维度,tf
来源: https://www.cnblogs.com/yuchenking/p/15935408.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有