Tensorflow基础学习

原理

Tensorflow将计算过程分为两步,首先是创建计算图,然后数据(张量Tensor:n维数组)从计算图中流通最终的得到计算图也即神经网络的计算结果。

#调用方法
import tensorflow as tf

重要函数

tf.cast()保证计算图中数据类型一致性

确保传入计算图的数据的数据类型在整个计算图中匹配是很重要的,如果在执行计算过程中出现两个不匹配的数据类型的数据执行操作将会导致异常,使用tf.cast()可更改张量的数据类型设置,其第一个参数是张量,第二个参数是需要更新的数据类型

x=tf.constant([1,2,3],name='x',dtype=tf.float32)
print(x.dtype)
x=tf.cast(x,tf.int64)
print(x.dtype)

tf.matmul(A,B)矩阵A和B相乘

在矩阵相乘时,首先要保证两个代相乘的矩阵维度匹配,即第一个矩阵的行的维度等于第二个矩阵的列的维度

tf.expand_dims()

将单维向量转化为二维矩阵,tf.expand_dims()第一个参数是要转化的向量,第二个参数是要加的维度。

A=tf.constant([[1,2,3],[4,5,6]])
x=tf.constant([1,0,1])
print(x.get_shape())#get_shape()获取矩阵的维度
x=tf.expand_dims(x,1)
print(x.get_shape())
b=tf.matmul(A,x)
sess=tf.InteractiveSession()
print(b.eval())#这里的eval()可以返回b张量的值

tf.transpose()转置

A=tf.constant([[1,2,3],[4,5,6]])
print(A.eval())
print(tf.transpose(A).eval())

命名空间

每个张量对象有一个识别名称,与dtype一样,可以使用.name属性来查看对象的名称,在同一个图中的对象不可以有相同的名称,所以他会自动加入一个下划线和数字来区分两个对象

with tf.Graph().as_default():
    c1=tf.constant(4,dtype=tf.float64,name='c')
    c2=tf.constant(4,dtype=tf.int32,name='c')
print(c1.name)
print(c2.name)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值