第三章 Tensorflow入门(二)

本文介绍了TensorFlow中的会话管理,包括session的创建、关闭及默认会话的设置,探讨了不同类型的初始化方法和优化器。同时,文章还讲解了如何使用TensorFlow实现神经网络,并提供了游乐场地址供读者实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#续接前文:https://blog.csdn.net/lxiao428/article/details/86033823
'''
3.3 TensorFlow运行模型---会话
会话session拥有并管理TensorFlow程序运行的所有资源,当所有计算完成之后需要关闭会话来帮助系统回收资源,否则会出现资源泄露的问题。
'''
sess = tf.Session() #创建会话
sess.close()  #关闭会话
#with tf.Session() as sess  #通过上下文管理器管理会话
'''TensorFlow不会自动生成默认的会话,需要手动指定。'''
#tf.Tensor.eval()  #计算一个张量的取值,如:result.eval()
'''TensorFlow提供了一种交互式环境下直接构建默认会话的函数。这个函数就是tf.InteractiveSession。使用这个函数会自动将生成的会话注册为默认会话。'''
#with tf.InteractiveSession() as sess2:  #这么写会报错AttributeError: __enter__
sess2 = tf.InteractiveSession()
print(result.eval(), end = "") #输出:[4. 6.]
sess2.close()
'''tf.InteractiveSession()默认自己就是用户要操作的session,而tf.Session()没有这个默认,因此用eval()启动计算时需要指明session。
tf.InteractiveSession()是一种交互式的session方式,它让自己成为了默认的session,也就是说用户在不需要指明用哪个session运行的情况下,就可以运行起来,这就是默认的好处。
这样的话就是run()和eval()函数可以不指明session。tf.Session()使用时tf.eval()需要指定会话。
'''

'''
3.4 TensorFlow实现神经网络
3.4.1 TensorFlow游乐场地址:http://playground.tensorflow.org
在机器学习中,所有用于描述实体的数字的组合就是一个实体的特征向量(feature vector)。
通过特征提取,就可以将实际问题中的实体转化为空间中的点。
'''
weights = tf.Variable(tf.random_normal([2,3], stddev=2)) #正态分布初始化,均值为0,标准差为2
weights1 = tf.truncated_normal([2,3]) #正态分布,但是如果所随机出来的值偏离平均值2个标准差,则会重新随机这个数
weights2 = tf.random_uniform([2,3])#均匀分布
#weights3 = tf.random_gamma([2,3]) #Gamma分布,需要指定形状参数alpha
a1 = tf.zeros([2,3], tf.int32)  #全0
a2 = tf.ones([3,2])   #全1·················
a3 = tf.fill([2,3],8)  #全部初始化为8
a4 = tf.constant([1,2]) #初始化为[1,2]
#a = tf.matmul(a1, a2) #实现矩阵乘法
#tf.initialize_all_variables函数实现初始化所有变量的过程
#init_op = tf.initialize_all_variables()
#sess.run(init_op)

#在TensorFlow中使用常量的开销比较大,可以使用变量,placeholder中的数据类型也是不可以改变的,维度信息可以根据提供的数据推到得出,所以不一定要给出。
x = tf.placeholder(tf.float32, shape = (1,2), name = "input")
y = tf.abs(x)
with tf.Session() as sess4:
    print(sess4.run(y, feed_dict = {x: [[-0.7,-0.9]]})) #输出:[[0.7 0.9]]
'''
TensorFlow目前支持其中不同的优化器,常用的有三种:
tf.train.GradientDescentOptimizer
tf.train.AdamOptimizer
tf.train.MomentumOptimizer
#后续抽时间研究一下这些算法
'''

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程大师兄

客官,,打赏是什么意思?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值