tensorflow中求交叉熵的一些理解

博客探讨了在TensorFlow中计算交叉熵的过程,详细解释了通常一行代码所涵盖的步骤,包括对预测概率进行softmax操作,计算哈达玛积(y×ln(y1)),降维以及对结果取均值。提供了相应的代码示例和运行结果。
摘要由CSDN通过智能技术生成

很多代码里面求交叉熵的时候就直接一行代码展示,其中的细节没有详细展示出来。tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(logits=y_, labels=y))

其实这句代码应该是拆分成几个部分的:

  1. 对y_求softmax,这里命名为y1。
  2. y × l n ( y 1 ) y{\times ln(y1)} y×ln(y1) (哈达玛积)
  3. 降维。从(batch_size, n_class) − − > --> > (batch_size, ),也就是从向量矩阵 − − > --> >数组
    这一步是由函数tf.nn.softmax_cross_entropy_with_logits_v2完成。
  4. tf.reduce_mean,对上一步中得到的数组求均值,并降维,即(batch_size, ) − − > --> > (1, )

代码如下:

import tensorflow as tf

# calculate cross_entropy
y = tf.constant
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值