Tensorflow——关于loss
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tensorflow——关于loss相关的知识,希望对你有一定的参考价值。
参考技术A结果:你会发现第一个输出与第三个一致,第二个输出和第四个一致
reduce_sum 是 tensor 内部求和的工具。其参数中:
其实在reduce_sum()中,是从维度上去考虑的(感觉这个Matlab中数据的概念比较像)
调用 reduce_sum(arg1, arg2) 时,参数 arg1 即为要求和的数据, arg2 有两个取值分别为 0 和 1 ,通常用 reduction_indices=[0] 或 reduction_indices=[1] 来传递参数。从上图可以看出,当 arg2 = 0 时,是纵向对矩阵求和,原来矩阵有几列就得到几个值;相似地,当 arg2 = 1 时,是横向对矩阵求和;当省略 arg2 参数时,默认对矩阵所有元素进行求和。
在 reduce_sum() 中就是按照求和的方式对矩阵降维。
计算张量的各个维度上的元素的平均值。
l2_loss一般用于优化目标函数中的正则项,防止参数太多复杂容易过拟合(所谓的过拟合问题是指当一个模型很复杂时,它可以很好的“记忆”每一个训练数据中的随机噪声的部分而忘记了要去“学习”训练数据中通用的趋势)
结果输出:
7.0
计算的过程:
题外话
正则化的基本思想是向损失函数添加一个惩罚项用于惩罚大的权重,隐式地减少自由参数的数量,所以可以达到弹性地适用不同数据量训练的要求而不产生过拟合的问题。
正则化方法是将惩罚因子加入到各层的参数或激活函数中。其实现位置通常是在模型的optimization里,在计算损失函数时将该惩罚因子加进去。
( http://www.cnblogs.com/guqiangjs/p/7805098.html )
tf.trainable_variables 返回所有 当前计算图中 在获取变量时未标记 trainable=False 的变量集合.
输出
以上是关于Tensorflow——关于loss的主要内容,如果未能解决你的问题,请参考以下文章
Ubuntu 14.04 关于 TensorFlow 环境的配置
TensorFlow开发者出道计划关于TensorFlow入坑那些事儿