2.TensorFlow的一些具体操作

1.为模型的参数命名,以及参数在不同的命名空间下

    with  tf.name_scope('str')  as scope: .......   再次范围下的所有模型的参数名都会带有该str前缀

    TensorFlow中的每一个op操作都成为一个节点,同样,主要op都会有一个名字,这个节点里面的tensor就可以通过这个名字进行取出来,所以对于在计算途中定义的每一个主要op所得到的tensor都是可以取出来的。

2.大致的更新过程

    首先是通过loss()函数得到损失值,然后交给tf.scalar_summary,然后再与summarywriter配合使用,向事件文件生产汇总值,然后在写入汇总值,写入的时候会释放当前的Tensor值,相当于更新了tensor的值

3.状态可视化

    可以利用tensorboard查看当前数据的运行情况,但是要使用

tf.merge_all_summaries()

把所有的即时数据都融进一个操作当中,然后要每次往事件文件中写入最新的即时数据,然后可以打开tensorboard进行查看

4.模型的保存

    为了评估或者进一步的训练,可以可以对当前模型的参数进行保存,利用tf.train.Saver

5.变量的创建、初始化、保存、恢复

    创建利用的是tf.Variables()

    tensorflow在进行运行前,都需要将所有的变量进行初始化操作,但是很多其他的数据类型,类似于numpy数组中的数据类型在tensorflow也不算是一种变量,在tf中变量主要指的是模型的参数。

    保存利用tf.train.saver() ,同样在对变量进行保存时,可以进行部分保存变量,即可以保存变量的子集,但是在恢复变量的时候,要对没有保存的变量进行初始化,因为在图中,只有保存了的变量在恢复的图中才有初始值,而其他的变量则需要初始化。

Q:要保存的变量用字典表示,但是变量的名字如何让确定,在不同的范围内,变量的名字可以一样,但是前缀名不一样,而且在tf中,许多变量都有自己的名字,好多的weight都是可以在不同的变量范围内存在。所以我觉得要保存的变量名是加了范围前缀在里面的变量名。而前面的代号仅表示这个op而已,或者这个变量而已。比如人有一个小名,但是还有一个官方的名字。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值