P48 会话的run()方法
import tensorflow as tf #创建一张图包含了一组op和tensor,上下文环境 #g=tf.Graph() #print(g) #当创建了新的图后,又分配了新的内存 #with g.as_default(): # c=tf.constant(12.0) # print(c.graph) #当创建了新的图后,又分配了新的内存 #实现一个加法运算 a=tf.constant(5.0) b=tf.constant(6.0) sum1=tf.add(a,b) #图的定义,默认的这张图,相当于是给程序分配一段内存 graph=tf.get_default_graph() #图的打印 #print(graph) with tf.Session() as sess: print(sess.run([a,b,sum1])) #print(a.graph) #print(sum1.graph) #print(sess.graph)
运行结果:
[5.0, 6.0, 11.0]
注解:
- 可以运行多个变量(张量)
import tensorflow as tf #实现一个加法运算 a=tf.constant(5.0) b=tf.constant(6.0) sum1=tf.add(a,b) #图的定义,默认的这张图,相当于是给程序分配一段内存 graph=tf.get_default_graph() var1=7.8 var2=9.3 sum2=var1+var2 with tf.Session() as sess: print(sess.run(sum2))
运行结果:
TypeError: Fetch argument 17.1 has invalid type <class 'float'>, must be a string or Tensor. (Can not convert a float into a Tensor or Operation.)
注解:
- python变量是不能运行的。
import tensorflow as tf #实现一个加法运算 a=tf.constant(5.0) b=tf.constant(6.0) sum1=tf.add(a,b) #图的定义,默认的这张图,相当于是给程序分配一段内存 graph=tf.get_default_graph() var1=7.8 var2=9.3 sum2=a+var2 with tf.Session() as sess: print(sess.run(sum2))
运行结果:
14.3
注解:
- 一个Python变量和一个tensor张量相加是可以的,此时"+"号被tensorflow重载了。
import tensorflow as tf #实现一个加法运算 a=tf.constant(5.0) b=tf.constant(6.0) sum1=tf.add(a,b) #图的定义,默认的这张图,相当于是给程序分配一段内存 graph=tf.get_default_graph() #训练一个网络模型的时候, #实时的提供数据进行训练 #placeholder是一个占位符,在程序运行时提供数据 plt=tf.placeholder(tf.float32,[2,3]) #也是一个op(操作、运算),只是占位,没有具体的数据,在sess.run()运行的时候提供数据 #[2,3]代表将填充一个2行3列的数据 with tf.Session() as sess: print(sess.run(plt,feed_dict={plt:[[1,2,3],[4,5,6]]}))
运行结果:
注解:
feed_dict={}并不是每次都用得到,一般实时训练的时候能用到。
import tensorflow as tf
#实现一个加法运算
a=tf.constant(5.0)
b=tf.constant(6.0)
sum1=tf.add(a,b)
#图的定义,默认的这张图,相当于是给程序分配一段内存
graph=tf.get_default_graph()
#训练一个网络模型的时候,
#实时的提供数据进行训练
#placeholder是一个占位符,在程序运行时提供数据
plt=tf.placeholder(tf.float32,[None,3]) #也是一个op(操作、运算),只是占位,没有具体的数据,在sess.run()运行的时候提供数据
#[2,3]代表将填充一个2行3列的数据
#[None,3]代表训练的时候,样本数可能不固定
print(plt)
with tf.Session() as sess:
print(sess.run(plt,feed_dict={plt:[[1,2,3],[4,5,6],[7,8,9],[9,11,88]]}))
运行结果:
Tensor("Placeholder:0", shape=(?, 3), dtype=float32)
[[ 1. 2. 3.]
[ 4. 5. 6.]
[ 7. 8. 9.]
[ 9. 11. 88.]]
注解:
- 当样本数量写None,(此处特征数量写的是3,手写数字识别特征数是784)的时候,feed_dict={}中的样本数量就可以是任意的了,可以随意输入多少个样本数都是行的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
2019-12-20 num2str(A, format)
2019-12-20 内存条DDR3与DDR3L的区别