我的模型权重(我将它们输出到weights_before.txt
和weights_after.txt
)在训练前后都是精确的相同的,也就是说训练不会改变任何东西,不会发生拟合。在
我的数据是这样的(我基本上希望模型预测特征的符号,如果特征为负,结果为0,如果特征为正,则为1):
,feature,zerosColumn,result
0,-5,0,0
1,5,0,1
2,-3,0,0
3,5,0,1
4,3,0,1
5,3,0,1
6,-3,0,0
...
我的方法简介:
x
(feature)和y
(result),将这两个行拆分为test
和{TimeseriesGenerators
(在这个场景中不是必需的,但是我想让这个设置工作起来,我不认为有任何理由不应该这样做)。在Sequential
模型,在其输出层上具有很少的Dense
层和softmax
激活,使用binary_crossentropy
作为损失函数。在完整代码如下:
^{pr2}$你有什么想法吗?在
问题是您使用
softmax
作为最后一层的激活函数。本质上,softmax规范化其输入,使元素之和为一。因此,如果在只有一个单元的层上使用它(即Dense(1,...)
),那么它总是输出1。要解决这个问题,将最后一层的激活函数改为sigmoid
,它输出一个范围为(0,1)
的值。在相关问题 更多 >
编程相关推荐