函数形式:
tf.placeholder(
    dtype,
    shape=None,
    name=None
)
参数:
dtype:数据类型。常用的是tf.float32,tf.float64等数值类型
shape:数据形状。默认是None,就是一维值,也可以是多维(比如[2,3], [None, 3]表示列是3,行不定)
name:名称
为什么要用placeholder?
       Tensorflow的设计理念称之为计算流图,在编写程序时,首先构筑整个系统的graph,代码并不会直接生效,这一点和python的其他数值计算库(如Numpy等)不同,graph为静态的,类似于docker中的镜像。然后,在实际的运行时,启动一个session,程序才会真正的运行。这样做的好处就是:避免反复地切换底层程序实际运行的上下文,tensorflow帮你优化整个系统的代码。我们知道,很多python程序的底层为C语言或者其他语言,执行一行脚本,就要切换一次,是有成本的,tensorflow通过计算流图的方式,帮你优化整个session需要执行的代码,还是很有优势的。

所以placeholder()函数是在神经网络构建graph的时候在模型中的占位,此时并没有把要输入的数据传入模型,它只会分配必要的内存。等建立session,在会话中,运行模型的时候通过feed_dict()函数向占位符喂入数据。

代码示例:
import tensorflow as tf
import numpy as np

input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)

output = tf.multiply(input1, input2)

with tf.Session() as sess:
print sess.run(output, feed_dict = {input1:[3.], input2: [4.]})

import tensorflow as tf
import numpy as np

x = tf.placeholder(tf.float32, shape=(1024, 1024))
y = tf.matmul(x, x)

with tf.Session() as sess:
#print(sess.run(y)) # ERROR:此处x还没有赋值
rand_array = np.random.rand(1024, 1024)
print(sess.run(y, feed_dict={x: rand_array}))

参考资料:https://www.jianshu.com/p/ec261a65e3c9
---------------------
作者:清晨的光明
来源:CSDN
原文:https://blog.csdn.net/kdongyi/article/details/82343712
版权声明:本文为博主原创文章,转载请附上博文链接!

tf.placeholder函数说明相关推荐

  1. Tensorflow tf.placeholder函数

    tf.placeholder(dtype, shape=None, name=None) 此函数可以理解为形参,用于定义过程,在执行的时候再赋具体的值 参数: dtype:数据类型.常用的是tf.fl ...

  2. tf.placeholder函数的用法

    Tensorflow中的palceholder,中文翻译为占位符 在代码层面,每一个tensor值在graph上都是一个op,当我们将train数据分成一个个minibatch然后传入网络进行训练时, ...

  3. 记录 之 tf.placeholder() 函数的意义及用法

    函数原型: tf.placeholder(dtype, shape=None, name=None) 参数释义:1.dtype:数据类型.常用的是tf.float32,tf.float64等数值类型 ...

  4. tensorflow tf.placeholder()(相当于创建变量分配内存空间,但不赋值)

    为什么要用placeholder? Tensorflow的设计理念称之为计算流图,在编写程序时,首先构筑整个系统的graph,代码并不会直接生效,这一点和python的其他数值计算库(如Numpy等) ...

  5. 【TensorFlow】占位符:tf.placeholder,与feed_dict

    Tensorflow中的placeholder和feed_dict的使用_python_ https://www.jb51.net/article/143407.htm TensorFlow 支持占位 ...

  6. tf.Graph()函数

    TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理.Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,Tensor ...

  7. tf.placeholder类似函数中的形参

    tf.placeholder(dtype, shape=None, name=None) 此函数可以理解为形参,用于定义过程,在执行的时候再赋具体的值 参数: dtype:数据类型.常用的是tf.fl ...

  8. tensorflow使用tf.placeholder会报错

    tensorflow版本安装问题 原因是1版本的很多函数到2版本中没有了 比如使用tf.placeholder都会报错,显示不存在该函数 很多地方建议使用下面的方法,我试了之后发现也没法解决,原因是t ...

  9. 【转载】使用tf.py_func函数增加Tensorflow程序的灵活性

    转自:https://blog.csdn.net/jiongnima/article/details/80555387 目录 tf.py_func函数接口 tf.py_func在Faster R-CN ...

最新文章

  1. 临时对象与NRV技术
  2. docker下的mysql my.ini_Docker + MySQL 主从环境搭建
  3. python中如何打开csv文件_在Python中从CSV文件读取数据
  4. 基于小波变换的图像压缩解压缩仿真
  5. uml 工具_UML建模工具更新202008(1)Rhapsody名字不再有Rational
  6. python 指定端口读取网站_Python实现局域网指定端口扫描
  7. UVAlive 6131 dp+斜率优化
  8. Qt文档阅读笔记-Object Model初步解析
  9. ubuntu安装python_与你分享Ubuntu修改源和安装pycharm
  10. 华为 5G 遭受致命一击!
  11. 五种主流的linux操作系统,五款常用的Linux操作系统
  12. ARM 与 STM32 的关系
  13. 【计组】5.4 控制器设计
  14. Java集成华为云对象存储
  15. 【小白向】简单随意DIY你的U盘图标
  16. Clustering coefficient的计算
  17. 【DFT】DFT入门介绍
  18. 乘法器——booth编码
  19. iOS 下载开始的时候获取将要下载完成的文件的大小
  20. 了解多线程并通过Python程序实现多线程解决资源竞争、死锁等问题【非常详细】

热门文章

  1. spring IOC创建对象方式
  2. 认清自己,就能活出更好的自己
  3. jquery过滤HTML标签方法
  4. 先验概率,后验概率,条件概率,贝叶斯
  5. pytorch nn.Embedding
  6. LeetCode中等题之删除链表的中间节点
  7. ARM CPU自动调度神经网络
  8. MinkowskiBroadcast广播
  9. 2021年大数据常用语言Scala(十二):基础语法学习 方法调用方式
  10. Python的Xpath介绍和语法详解