python - 神经网络中的预测极限或区间
问题描述
我在 TensorFlow/python 中有一个简单的图神经网络,用于回归。
我的数据集 y 值始终在 [0,1] 的区间内作为浮点数。
但是很多预测小于0或者大于1。这个问题大大降低了性能。
有什么方法可以在 tf 中设置一个限制(或间隔)来限制算法预测范围之外的东西?
我正在考虑在训练期间施加一些惩罚。
注意:我认为这与正则化不同,因为我没有过拟合问题。
注意:我有一个相当小的数据集,大约有 400 个数据点。
解决方案
我不确定你的神经网络的架构。但是,sigmoid 激活函数应该将输出值限制在 [0, 1] 之间。
您可以在此处找到更多信息 - https://www.tensorflow.org/api_docs/python/tf/keras/activations/sigmoid
推荐阅读
- r - 当差异很小时比较 2 个向量
- unity3d - 在 Unity 2D 中创建跷跷板,我应该以某种方式旋转铰链吗?
- c# - MVC 如何在 ASP.NET MVC 中将业务逻辑与 UI 分离?
- excel - 使用数据透视表比较值
- orm - 使用 update-database -script 生成脚本时,它还会为 _MigrationHistory 创建创建脚本?
- xml - 如何构建样式表以与 xsltproc 一起使用以将 xml 转换为 csv
- regex - 正则表达式匹配字符串中与字母相等的数字计数
- python - 计算每个熊猫行中从一个值到另一个值的变化次数并将所有计数相加
- vb.net - 值未传递给 Visual Basic 中的函数
- c++ - 通过分而治之查找子串