知识点
Feed:中文翻译“喂食”。在TensorFlow中用于表示,将数据喂到(输入到)计算图中进行计算的操作。
Fetch:中文翻译“拿得”。在TensorFlow中用于表示,从计算图中取数字的操作。
tf.multiply(x, y)是乘法操作,返回x与y的乘积。即x*y。该乘法为数值之间相乘,并不是矩阵相乘。
tf.placeholder()表示占位符,可以理解为计算图中喂数据的入口,利用Feed操作将数据输入到占位符,从而进行数据的训练。
import numpy as np
import pandas as pd
import tensorflow as tf
Fetch
Fetch是获取计算图中的数据的操作
input1 = tf.constant(1.0)
input2 = tf.constant(2.0)
input3 = tf.constant(3.0)
input1,input2,input3
(<tf.Tensor 'Const:0' shape=() dtype=float32>,
<tf.Tensor 'Const_1:0' shape=() dtype=float32>,
<tf.Tensor 'Const_2:0' shape=() dtype=float32>)
创建加法和乘法操作
add = tf.add(input1,input3)
add
<tf.Tensor 'Add:0' shape=() dtype=float32>
mul = tf.multiply(input2,add)
mul
<tf.Tensor 'Mul:0' shape=() dtype=float32>
创建会话Session
with tf.Session() as sess:
multiply_res = sess.run(mul)
add_res = sess.run(add)
multiply_res,add_res
(8.0, 4.0)
Feed
Feed 是赋值操作,是将数据赋值到占位符的操作
创建两个占位符placeholder
num1 = tf.placeholder(tf.float32)
num2 = tf.placeholder(tf.float32)
num1
<tf.Tensor 'Placeholder:0' shape=<unknown> dtype=float32>
创建乘法操作
output = tf.multiply(num1,num2)
output
<tf.Tensor 'Mul_1:0' shape=<unknown> dtype=float32>
创建会话
with tf.Session() as sess:
res = sess.run(output,feed_dict = {num1: 0.2, num2: 8.0})
res
1.6
with tf.Session() as sess:
res = sess.run(output,feed_dict={num1:[0.2],num2:[8.0]})
res
array([1.6], dtype=float32)