前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tensorflow|Tensor, 与Numpy比较,Constant

Tensorflow|Tensor, 与Numpy比较,Constant

作者头像
double
发布2018-04-02 16:56:57
1.3K0
发布2018-04-02 16:56:57
举报
文章被收录于专栏:算法channel

本教程参考stanford.edu-cs20si

01

Operations分类预览

02

Tensor

1 0-d tensor, or "scalar"

t_0 = 19

tf.zeros_like(t_0) # ==> 0

tf.ones_like(t_0) # ==> 1

2 1-d tensor, or "vector"

t_1 = ['apple', 'peach', 'banana'] #==>['' '' '']

3 2x2 tensor, or "matrix"

t_2 = [[True, False, False], [False, False, True], [False, True, False]]

tf.zeros_like(t_2) # ==> 2x2 tensor, all elements are False

tf.ones_like(t_2) # ==> 2x2 tensor, all elements are True

03

TensorFlow和Numpy

TensorFlow 和 Numpy能做到无缝衔接,例如:

tf.int32 == np.int32 # True

但是,将来tensorflow和numpy可能兼容性没有现在这么好。

可以传递Numpy对象给TensorFlow ops

tf.ones([2, 2], np.float32) # ⇒ [[1.0 1.0], [1.0 1.0]]

不要传递python的原生对象给Tensorflow,因为Tensorflow必须推断python的类型。

04

Constant

tf.constant(value, dtype=None, shape=None, name='Const', verify_shape=False)

b = tf.constant([[0, 1], [2, 3]], name="b")

tf.ones(shape, dtype=tf.float32, name=None)

tf.linspace(10.0, 13.0, 4) #==> [10.0 11.0 12.0 13.0]

tf.random_normal(shape, mean=0.0, stddev=1.0, dtype= tf.float32, seed=None, name=None)

tf.set_random_seed(seed)

a = tf.constant([3, 6])

b = tf.constant([2, 2])

tf.add(a, b) # >> [5 8]

05

What's wrong with constant?

Constants 存储在 graph definition中,当 constants很大时,加载图就会变得非常昂贵。

什么场合下用constant?

仅仅用primitive types为constant,用variables or readers 来缓存占用内存更大的数据。

明天推送tf.Variable等,为什么是tf.Variable? tf.constant,为什么不写为 tf.Constant? 关于这个问题,接下来回答。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员郭震zhenguo 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档