Python keras模型预测产量是什么?
我已经建立了一个LSTM模型(见下文)并对其进行了培训。当我做二元分类时,我的损失函数是二元交叉熵。训练y数据是一组0和1 当我运行Python keras模型预测产量是什么?,python,tensorflow,keras,sequential,Python,Tensorflow,Keras,Sequential,我已经建立了一个LSTM模型(见下文)并对其进行了培训。当我做二元分类时,我的损失函数是二元交叉熵。训练y数据是一组0和1 当我运行model.predict(x\u test\u scaled)时,我得到一组值在0到1之间的单个序列。我猜这是一个概率,但它是输出=0还是输出=1的概率 model = Sequential() model.add(LSTM(units=512, input_shape = (X_train.shape[1],X_train.shape[2]), return_
model.predict(x\u test\u scaled)
时,我得到一组值在0到1之间的单个序列。我猜这是一个概率,但它是输出=0还是输出=1的概率
model = Sequential()
model.add(LSTM(units=512, input_shape = (X_train.shape[1],X_train.shape[2]), return_sequences=True))
model.add(Dropout(0.3))
model.add(LSTM(units=512, return_sequences=False))
model.add(Dropout(0.3))
model.add(Dense(264), activation = 'tanh')
model.add(Dense(1))
它最有可能输出AI的准确度,AI的准确度越高越好,你可以使用它在训练过程中调整一些设置以获得更高的准确度
如果我错了,请纠正我 我对ANN很生疏,但也许我能帮上忙
Model.predict
通过模型传递输入向量,并返回每个数据点的输出张量。
由于模型中的最后一层是单个密集神经元,因此任何数据点的输出都是单个值。由于您没有为最后一层指定激活,它将默认为线性激活
因为您要解决一个分类问题,所以可能需要激活sigmoid
。如果记忆没有背叛我,我相信你可以把它作为一个有两个类的多类分类来解决(基本上是两个输出神经元,激活softmax)。本质上,行激活不适合分类问题
更多注意事项:了解您的模型
如果你想理解你得到的输出,你必须理解你训练模型去解决的任务
对于每个数据点,您告诉模型此项的输出为1
或此项的输出为0
。但它不是将输出视为输入的类,而是将其视为范围[0,1]中的值。它被训练成在这个范围内发射值
查看训练y
张量。假设0
的输出与第一类匹配,而1
的输出与第二类匹配
在这种情况下,模型对输入的确定程度越高,其输出距离0.5越远
因此,值0.1
表示您的模型在某种程度上属于类别1
(接近输出值0
)。
如果输出为0.9999
,则认为输入属于类2
非常高的确定性(输出非常接近1)。
另一方面,如果输出类似于0.45
(非常接近0.5
),那么模型认为“可能输入属于类1,但我完全不确定
希望这有点帮助,我也会对任何更准确的答案进行投票。请重复并从中删除。堆栈溢出不是为了取代现有的教程和文档。有关Keras和建模的各种文档通常描述了如何解释输出。我们希望您已经阅读了足够的内容,以获得特定的qu我已经阅读了这个网站上的文档。它实际上没有涉及如何解释输出。它说的是“为输入样本生成输出预测”。“,但这并没有真正的帮助。这就是为什么我让您参阅多个文档的原因。您需要阅读您所培训的特定型号的产品。我很乐意阅读相关文档,如果您知道这些信息,请提供相关文档的链接。。。。这也是堆栈溢出的主题。我无法知道哪些文档与您的阅读水平、学习风格等相匹配。请参阅和模型。评估输出的准确性和损失。model.predict用于预测您的测试集或验证,无论您想预测什么。然而,准确度并不是一个好的衡量标准。哦,好的,谢谢你纠正我。