tensorflow softmax输出只有0或1
2017-12-07 11:21
211 查看
softmax层输出理应是0~1的小数, 一旦只输出0或1, 那表明模型对自己的判断相当“自信”
可供参考的改善措施如下:
1、避免使用非线性的激活函数, 比如 relu或者tanh
2、wights 和 bias 初始化是否过大
3、学习速率是否过大
4、神经元是否过多
楼主搭建CNN做图像识别遇到此问题时, 是因为权重weights初始化过大
修改前:
![](https://img-blog.csdn.net/20171207111644141?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvQXZhZGFfNTMz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
修改后:
![](https://img-blog.csdn.net/20171207111733040?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvQXZhZGFfNTMz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
根据楼主最近使用tensorflow的经验,补充tips:
1、学习速率一般设为 1e-4 ~ 1e-7
2、bias初始化一般设为0.1
参考:https://stackoverflow.com/questions/42225143/tensorflow-why-softmax-outputs-1-0-0-0
可供参考的改善措施如下:
1、避免使用非线性的激活函数, 比如 relu或者tanh
2、wights 和 bias 初始化是否过大
3、学习速率是否过大
4、神经元是否过多
楼主搭建CNN做图像识别遇到此问题时, 是因为权重weights初始化过大
修改前:
修改后:
根据楼主最近使用tensorflow的经验,补充tips:
1、学习速率一般设为 1e-4 ~ 1e-7
2、bias初始化一般设为0.1
参考:https://stackoverflow.com/questions/42225143/tensorflow-why-softmax-outputs-1-0-0-0
相关文章推荐
- CS224n (Spring 2017) assignment 2-----1. Tensorflow Softmax
- Kaggle入门 (Titanic TensorFlow Softmax)
- Softmax on Digits Data with TensorFlow
- 深度学习基础 - MNIST实验(tensorflow+Softmax)
- TensorFlow softmax VS sparse softmax
- 解决 tensorflow softmax_cross_entropy_with_logits() 报错 Only call `softmax_cross_entropy_with_logits`
- TensorFlow Softmax
- 池化操作 tensorflow tf.nn.max_pool
- Hinton Neural Networks课程笔记4c:softmax输出神经元
- tensorflow 学习专栏(一):输出Hello tensorflow!
- TensorFlow Saver方法 深度学习 输出模型
- 清新脱俗的TensorFlow CIFAR10例程的代码重构——更简明更快的数据读取、loss accuracy实时输出
- 神经网络测试之softmax输出
- 六、改进神经网络的学习方法(2):Softmax输出层
- TensorflowOnSpark 介绍与搭建
- ufldl学习笔记与编程作业:Softmax Regression(Softmax 回归)
- 基于win10,GPU的Tensorflow Object Detection API部署及USB摄像头目标检测
- tensorflow second
- 一张图说明softmax layer是什么
- tensorflow Shapes and Shaping