刷课过程中思考到Variable和Tensor之间的区别,尝试发现在如下代码中:

a = tf.Variable(tf.ones(1))
b = tf.add(a,tf.ones(1))

1
2

a是Variable,而b是Tensor。发现自己对Variable和Tensor之间的区分了解不多,所以搜索了一下,记录自己的思考,欢迎指教。

Variable是可更改的(mutable),而Tensor是不可更改的。一个直接的例子就是Tensor不具有assign函数,而Variable含有。
python和其他语言的API以及实现方式存在差异,本文只探讨general以及python方面的内容。
Variable用于存储网络中的权重矩阵等变量,而Tensor更多的是中间结果等。
Variable是会显示分配内存空间的(既可以是内存,也可以是显存),需要初始化操作(assign一个tensor),由Session管理,可以进行存储、读取、更改等操作。相反地,诸如Const, Zeros等操作创造的Tensor,是记录在Graph中,所以没有单独的内存空间;而其他未知的由其他Tensor操作得来的Tensor则是只会在程序运行中间出现。
Tensor可以使用的地方,几乎都可以使用Variable。

参考资料:
https://stackoverflow.com/questions/37849322/how-to-understand-the-term-tensor-in-tensorflow
https://stackoverflow.com/questions/40866675/implementation-difference-between-tensorflow-variable-and-tensorflow-tensor
https://stackoverflow.com/questions/38556078/in-tensorflow-what-is-the-difference-between-a-variable-and-a-tensor
https://www.tensorflow.org/programmers_guide/variables
https://www.tensorflow.org/api_docs/python/tf/Variable
---------------------
作者:silent56_th
来源:CSDN
原文:https://blog.csdn.net/silent56_th/article/details/75577974?utm_source=copy
版权声明:本文为博主原创文章,转载请附上博文链接!

最新文章

  1. HANA学习笔记1-搭建HANA学习环境
  2. Google Android 6.0 权限完全解析
  3. Windows下配置Git
  4. Redis - sort set类型操作
  5. UVa 1349 (二分图最小权完美匹配) Optimal Bus Route Design
  6. AutoCAD.NET二次开发:创建自定义菜单(COM)
  7. css实现垂直居中6种方法
  8. 201521123092《java程序设计》第十周学习总结
  9. JAVA对象克隆可能会出现的问题
  10. IDEA设置热部署
  11. 【转】Android Hook框架Xposed详解
  12. C#作为客户端调用gsoap生成的C++服务端
  13. Java类的5个加载步骤
  14. PC Access的使用
  15. Android 建立Menu选单&&onOptionsItemSelected (转)
  16. 解决win10 CPU占用高的问题
  17. 九、IntelliJ IDEA 编译方式介绍及编译器的设置和选择
  18. 时间倒计时 JS
  19. SpringSecurity02 表单登录、SpringSecurity配置类
  20. Unable to create Debug Bridge:Unable to start adb server:error:cannot parse version

热门文章

  1. 接口详解例子代码(附Java1.8的接口新特性)
  2. [Unity动画]06.子状态机
  3. 【转载】Putty出现 Network error:Software caused connection abort
  4. python中的format
  5. JAVA项目常用异常处理情况
  6. Linux中的Wheel组的作用
  7. Django之视图层介绍
  8. 关于 Level 和 Promotion,其实就那么简单
  9. eclipse 代码检查插件使用
  10. Java读写avro例子