TensorFlow学习笔记二:矩阵和Tensor的一些常用操作

1.Tensor的变形

          在TensorFlow中经常要用到Tensor的变形,尤其是当一个tensor作为全连接的输入的时候,要先将其拉成一个向量,这个时候就要用的tf.reshape函数,因为我们在训练的时候往往有多个数据同时进行训练,所以输入的Tensor一般都是有batch这个维度作为我们Tensor的第一维。举个例子,加入我们输入的tensor是4维的第一个维度是batch,然后后面是w,h和c(宽、高、通道数)要将其拉成一个向量就是:

reshape=tf.reshape(X,[-1,X.shape[1]*X.shape[2]*X.shape[3]])

这里-1就是先不管后面的维度确定后根据原始的X自动对齐,从我们的例子来看就是得到了batch,有些同学可能发现这么写不行,可以试下下面的写法

reshape=tf.reshape(X, [-1, X.get_shape().as_list()[1] *X.get_shape().as_list()[2] *X.get_shape().as_list()[3]])

其他类似的变形都可以这样处理 

2.array转化成tensor

转化成tensor:tf.convert_to_tensor(arr)

import tensorflow as tf
import numpy as np
A=np.ones([3,4])
tensor_A = tf.convert_to_tensor(arr,name='A')
sess=tf.Session()
print(sess.run(tensor_A))
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值