TensorFlow学习笔记(1)

这篇博客介绍了TensorFlow的基本概念,包括张量的定义、属性、形状和类型。详细阐述了如何创建常量、随机量和序列张量,并通过示例展示了张量的属性如shape、size和rank。还探讨了变量的定义和操作,以及一些实用的张量函数,如tf.square()和梯度计算。
摘要由CSDN通过智能技术生成

TensorFlow学习笔记(1):

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。

TensorFlow可被用于语音识别或图像识别等多项机器学习和深度学习领域,对2011年开发的深度学习基础架构DistBelief进行了各方面的改进,它可在小到一部智能手机、大到数千台数据中心服务器的各种设备上运行。TensorFlow将完全开源,任何人都可以用。

张量

张量:是一种表示物理的方式,这个方式就是基于向量分组表示
标量:0个基向量:0-mode tensor
向量:1个基向量:1-mode tensor
矩阵:2个基向量:2-mode tensor

张量可以表示为多维

张量的属性

张量并没有真正的保存数字,它保存的是计算过程
属性:
名字(name):节点名称,来自节点的第几个输出
形状(shape):张量的维度信息
类型(type):唯一的类型

张量的形状

三个术语描述张量的维度
阶(rank)
形状(shape)
维数(dimension number)
在这里插入图片描述
在这里插入图片描述

|阶|形状|维数|示例|

张量的阶

张量的阶:张量的维度
在这里插入图片描述

张量的类型:

支持多种不同的类型
在这里插入图片描述
对参与运算的所有张量进行类型的检查
发现类型不匹配时会报错

创建张量-常量:

张量由Tensor类实现,每个张量都是一个Tensor对象;使用tf.constant()函数来创建张量,即:tf.constant(value,dtype,shape)
在这里插入图片描述
例:使用python列表作为参数,创建一个张量。

t1=tf.constant([[1,2],[3,4]])
print(t1)

结果:

tf.Tensor(
[[1 2]
 [3 4]], shape=(2, 2), dtype=int32)

例:使用数字作为参数,创建一个张量

t1=tf.constant(1.0)
print(t1)

结果:

tf.Tensor(1.0, shape=(), dtype=float32)

例:改变dtype

t1=tf.constant(1.0,dtype=tf.float64)
print(t1)

结果:

tf.Tensor(1.0, shape=(), dtype=float64)

例:使用numpy数组作为参数,创建一个张量

t1=tf.constant(np.array([1,2.]))
print(t1)

结果:

tf.Tensor([1. 2.], shape=(2,), dtype=float64)

例:使用布尔型作为参数,创建一个张量
tf.cast强制转换为某类型

t_1=tf.constant([True,False])
print(t_1)
t_2=tf.cast(t_1,tf.int32)
print(t_2)
t_3=tf.constant([-1,1,2,0])
print(t_3)
t_4=tf.cast(t_3,tf.bool)
print(t_4)

结果:

tf.Tensor([ True False], shape=(2,), dtype=bool)
tf.Tensor([1 0], shape=(2,), dtype=int32)
tf.Tensor([-1  1  2  0], shape=(4,), dtype=int32)
tf.Tensor([ True  True  True False], shape=(4,), dtype=bool)

例:使用字符串作为参数,创建一个张量

t_1=tf.constant("hello world")
print(t_1)
t_2=tf.ones(shape=(2,1))
print(t_2)
t_3=tf.zeros(shape=(2,3))
print(t_3)

结果:

tf.Tensor(b'hello world', shape=(), dtype=string)
tf.Tensor(
[[1.]
 [1.]], shape=(2, 1), dtype=float32)
tf.Tensor(
[[0. 0. 0.]
 [0. 0. 0.]], shape=(2, 3), dtype=float32)

例:下面的区别吗?

t_1=tf.ones([4,3])
print(t_1)
t_2=tf.ones((4,3))
print(t_2)
t_1=tf.zeros([4,3])
print(t_1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值