tf.placeholder相似函數中的形參

tf.placeholder(dtype, shape=None, name=None)

此函數能夠理解爲形參,用於定義過程,在執行的時候再賦具體的值


參數:

    dtype:數據類型。經常使用的是tf.float32,tf.float64等數值類型
    shape:數據形狀。默認是None,就是一維值,也能夠是多維,好比[2,3], [None, 3]表示列是3,行不定
    name:名稱。html

#coding: utf-8

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}))  # Will succeed.  

 

官方的話在feed裏:TensorFlow 還提供了 feed 機制, 該機制 能夠臨時替代圖中的任意操做中的 tensor 能夠對圖中任何操做提交補丁, 直接插入一個 tensor.python

feed 使用一個 tensor 值臨時替換一個操做的輸出結果. 你能夠提供 feed 數據做爲 run() 調用的參數. feed 只在調用它的方法內有效, 方法結束, feed 就會消失. 最多見的用例是將某些特殊的操做指定爲 "feed" 操做, 標記的方法是使用 tf.placeholder() 爲這些操做建立佔位符.dom

input1 = tf.placeholder(tf.types.float32)
input2 = tf.placeholder(tf.types.float32)
output = tf.mul(input1, input2)

with tf.Session() as sess: print sess.run([output], feed_dict={input1:[7.], input2:[2.]}) # 輸出: # [array([ 14.], dtype=float32)]參考:http://www.tensorfly.cn/tfdoc/get_started/basic_usage.html 
相關文章
相關標籤/搜索