Keras - 使用 y_preds 和 y_true 而不是 X_train 训练模型

Posted

技术标签:

【中文标题】Keras - 使用 y_preds 和 y_true 而不是 X_train 训练模型【英文标题】:Keras- training the model using y_preds and y_true and not X_train 【发布时间】:2018-09-09 09:21:48 【问题描述】:

我想使用 model.fit 方法在 Keras 中训练我的模型。

据我了解,首先它获取输入 X_train,进行预测,然后将其与 y_train 进行比较以计算损失和反向传播。有没有办法只通过输入真实标签(y_true)和预测标签(y_pred)而不是X_train来开始训练?

【问题讨论】:

你打算通过从训练过程中删除输入来实现什么?您希望模型如何在没有任何输入的情况下学习做出预测? 输入是间接给出的,这些是网络之前所做的预测y_pred(我需要在训练之前首先对网络进行预测)。然后我得到 y_true 并且我希望 keras 最小化 y_pred 和 y_true 之间的损失,而不是隐式使用 X_train。 但如果没有训练数据,就无法计算优化步骤所需的梯度。这些机器学习模型试图找到一个给定输入(X_train)产生特定输出(y_train)的函数。如果你没有输入,那是行不通的。 【参考方案1】:

没有。

为了适应,您的模型需要输入,因为在反向传播过程中考虑了输入在每一层中的值。您可能会发现机器学习的基础知识很有用:http://neuralnetworksanddeeplearning.com/index.html

【讨论】:

以上是关于Keras - 使用 y_preds 和 y_true 而不是 X_train 训练模型的主要内容,如果未能解决你的问题,请参考以下文章

y_pred 的自定义损失函数 Keras 仅高于某个阈值

以 y_true 依赖于 y_pred 的方式自定义 Keras 的损失函数

Keras - 损失和度量的计算方式不同?

皮尔逊线性系数 keras

Tensorflow 2 + Keras 的知识蒸馏损失

keras_API汇总积累(熟读手册)三损失函数