【发布时间】:2020-08-25 21:04:02
【问题描述】:
处理预测分数的机器学习模型回归问题。
通常,当使用缩放器进行标准化时,例如MinMaxScaler,您会获得对缩放器的引用,以便稍后您可以将数据反转回其原始值。
当使用tf.keras.utils.normalize 时,(据我所知)是以下数据的 L2 规范化:
val target
0 1 10
1 2 20
2 3 30
3 4 40
4 5 50
你得到这个输出:
val target
0 0.13484 0.13484
1 0.26968 0.26968
2 0.40452 0.40452
3 0.53936 0.53936
4 0.67420 0.67420
所以我认为没有办法回到10,20,30,40,50的原始系列
问:如果我想将预测目标反转回原来的尺度,我应该使用 MinMaxScalar 分别对分数进行归一化吗?
【问题讨论】:
-
您需要标准化您的输入,而不是输出。所以,
target不应该被规范化 -
有吗?但后来我不能使用,让我们在最后一层使用 sigmoid 函数。此外,我想将我所有的核心范围在 0 -1 之间。
-
sigmoid函数用于0或1的分类问题。但在回归问题中,你需要处理一个连续范围的数字。
-
但是Sigmoid范围是0-1,如果分数范围是0-1,我不能在最后一层使用它吗?
-
好的,这是我的看法。 sigmoid 是为全实值定义的,其中输出定义在 [0, 1] 上。它对于输出为
0或1的二进制分类非常有用。在回归中,这真的很伤人..为什么?因为sigmoid(10)=0.9999、sigmoid(20)=0.9999、sigmoid(30)=0.9999...这就是为什么
标签: python tensorflow keras normalization