【持续更新】tensorflow学习中的一些笔记

本文介绍了TensorFlow中的指数衰减学习率函数`tf.train.exponential_decay()`及其计算方式,以及在多类场景下`onehot=True`的含义。同时详细对比了`sparse_softmax_cross_entropy_with_logits`和`softmax_cross_entropy_with_logits`两个交叉熵函数的差异,强调了它们在标签形状和类型上的区别,并提到了-1标签在`sparse_softmax_cross_entropy_with_logits`中的特殊意义。
摘要由CSDN通过智能技术生成

1.指数衰减函数的参数和计算方程:

tensorflow提供了一个灵活的学习率设置方法,指数衰减函数tf.train.exponential_decay(),它的计算实现如下: decayed_learning_rate = learning_rate * decay_rate ^ (global_step / decay_steps)

 其中decay_rate是衰减系数(取值小于1,比如0.1), global_steps是当前迭代次数,decay_steps是总的迭代次数,learning_rate是初始学习率。

2. onehot=True

在多类场景下,onehot=true表示,只有一个元素的值是1,其他元素的值是0, 一个长度为n的数组,只有一个元素是1.0,其他元素是0.0。

onehot=False则没有这样的限制。

3. Tensorflow交叉熵函数:cross_entropy

以下交叉熵计算函数输入中的 logits 都不是softmax或sigmoid的输出,因为它在函数内部进行了sigmoid或softmax操作
tf.nn.sigmoid_cross_entropy_with_logits(_sentinel=None, labels=None, logits=None, name=None)
_sentinel:本质上是不用的参数,不用填
labels:一个和logits具有相同的数据类型(type)和尺寸形状(shape)的张量(tensor)
shape:[batch_size,num_classes],单样本是[num_classes]
logits:一个数据类型(type)是float32或float64的张量
name:操作的名字,可填
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值