需要在`model.evaluate()`之前编译Keras模型

2023-12-19

我加载一个Keras模型来自.json and .hdf5文件。当我打电话时model.evaluate(),它返回一个错误:

您必须在训练/测试之前编译模型。使用`model.compile(优化器,损失)

为什么需要编译才能运行evaluate()?

要添加的话,可以通过modelpredict()没有问题。


Because evaluate https://keras.io/models/model/#evaluate将计算损失函数和指标.

在编译模型之前,您不会拥有其中任何一个。它们是编译方法的参数:

model.compile(optimizer=..., loss=..., metrics=...) 

另一方面,predict https://keras.io/models/model/#predict不评估任何指标或损失,它只是将输入数据传递给模型并获取其输出。

你也需要“损失”来进行训练,所以你不能在不编译的情况下进行训练。您可以根据需要多次编译模型,甚至更改参数。


输出和损失函数:

模型的输出取决于它的权重定义。这是自动的,您可以predict来自任何模型,即使没有任何训练。 Keras 中的每个模型都已经带有权重(由您初始化或随机初始化)

你输入一些东西,模型就会计算输出。归根结底,这才是最重要的。一个好的模型具有适当的权重并正确输出。

但在实现这一目标之前,您的模型需要经过训练。

现在,损失函数获取当前输出并将其与预期/真实结果进行比较。这是一个应该最小化的函数。损失越少,结果就越接近预期。这是从中获取导数的函数,以便反向传播算法可以更新权重。

损失函数对于模型的最终目的没有用处,但对于训练来说是必要的。这可能就是为什么您可以拥有没有损失函数的模型(因此,无法评估它们)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

需要在`model.evaluate()`之前编译Keras模型 的相关文章

  • 如何使用 lstm 执行多类多输出分类

    I have multiclass multioutput classification see https scikit learn org stable modules multiclass html https scikit lear
  • 在NN中指定连接(在keras中)

    我正在使用 keras 和tensorflow 1 4 我想明确指定哪些神经元在两层之间连接 因此 每当第一层中的神经元 i 连接到第二层中的神经元 j 且其他地方为零时 我就有一个矩阵 A 其中包含 1 我的第一次尝试是创建一个带有内核的
  • 如何在 keras 模型中使用张量流度量函数?

    使用Python 3 5 2张量流RC 1 1 我正在尝试在 keras 中使用张量流度量函数 所需的功能接口似乎是相同的 但调用 import pandas import numpy import tensorflow contrib k
  • 如何在Keras模型中替换(或插入)中间层?

    我有一个训练有素的 Keras 模型 我想要 1 用相同但没有偏差的Con2D层替换Con2D层 2 在第一次激活之前添加 BatchNormalization 层 我怎样才能做到这一点 def keras simple model fro
  • 张量流如何处理复杂的梯度?

    Let z是一个复变量 C z 是它的共轭 在复分析理论中 导数C z w r t z不存在 但在张量流中 我们可以计算dC z dz结果就是1 这是一个例子 x tf placeholder complex64 2 2 y tf redu
  • 张量流中有哪些资产?

    我正在阅读有关保存和恢复模型的张量流教程 并遇到以下声明 If assets need to be saved and written or copied to disk they can be provided when the firs
  • 如何正确将 tflite_graph.pb 转换为 detector.tflite

    我正在使用tensorflow对象检测API使用tensorflow中的ssdlite mobilenet v2 coco 2018 05 09来训练自定义模型模型动物园 https github com tensorflow models
  • keras LSTM 以正确的形状提供输入

    我从具有以下形状的 pandas 数据框中获取一些数据 df head gt gt gt Value USD Drop 7 Up 7 Mean Change 7 Change Predict 0 06480 2 0 4 0 0 000429
  • 如何清除 tf.flags?

    如果我运行此代码两次 tf flags DEFINE integer batch size 2 batch size for training 我会得到这个错误 DuplicateFlagError The flag batch size
  • 调用 tf.linalg.inv 时,TensorFlow 崩溃并显示无法创建 cuSolverDN 实例

    我正在运行tensorflow tensoflow latest gpu码头集装箱 我可以运行简单的向量运算 例如 矩阵乘法没有问题 但是 当我运行以下最小示例时 import tensorflow as tf tf linalg inv
  • 如何访问 tf.layers.conv2d 中的内核变量?

    我想可视化卷积层中的权重以观察它们如何变化 但我找不到一种方法来访问卷积层中的权重tf layers conv2d 谢谢 您可以通过名称访问该变量 weights sess run
  • 尝试在 Keras 中创建 BLSTM 网络时出现类型错误

    我对 Keras 和深度学习有点陌生 我目前正在尝试复制这个paper https pdfs semanticscholar org 4afe f0c6039a5d8b647518b6fe05f47a8bd3aeee pdf但是当我编译第二
  • 支持 Nvidia CUDA 工具包 9.2

    Tensorflow gpu 绑定到 Nvidia CUDA Toolkit 的特定版本的原因是什么 当前版本似乎专门寻找 9 0 并且不适用于任何更高版本 例如 我安装了最新的 Toolkit 9 2 并将其添加到路径中 但 Tensor
  • 从 [tensorflow 1.00] 中的 softmax 层提取概率

    使用张量流 我有一个 LSTM 分类模型 以 softmax 作为最终节点 这是我的 softmax 层 with tf name scope Softmax as scope with tf variable scope Softmax
  • 具有高级计算功能的 Keras 自定义层

    我想写一些自定义的Keras分层并在层中进行一些高级计算 例如使用 Numpy Scikit OpenCV 我知道有一些数学函数keras backend可以对张量进行操作 但我需要一些更高级的功能 但是 我不知道如何正确实现这一点 我收到
  • 使用输入管道时如何替换 feed_dict?

    假设您有一个已与feed dict到目前为止将数据注入到图表中 每隔几个时期 我就会通过将任一数据集的一批数据输入到我的图表中来评估训练和测试损失 现在 出于性能原因 我决定使用输入管道 看看这个虚拟示例 import tensorflow
  • Tensorflow GPU 设置:PyCharm 上的 CUDA 错误

    我在 Python3 MacOSX El Capitan 上安装了 TF 0 8 当为 TF 运行简单的测试代码时 我收到以下消息 ImportError dlopen Library Frameworks Python framework
  • Tensorflow图像读取空

    这个问题是基于 Tensorflow图像读取与显示 https stackoverflow com questions 33648322 tensorflow image reading display 根据他们的代码 我们得到以下内容 s
  • tf.gfile 在 TensorFlow 中起什么作用?

    我见过人们使用以下几个函数tf gfile例如tf gfile GFile or tf gfile Exists 我有一个想法tf gfile处理文件 但是 我无法找到官方文档来了解它还提供了什么 如果你能帮我的话那就太好了 对于登陆这里的
  • AttributeError:模块“keras.engine”没有属性“Layer”

    当我试图运行时Parking Slot mask rcnn py文件我收到如下错误mrcnn model py文件我该如何解决 gt 2021 06 17 08 25 18 585897 W tensorflow stream execut

随机推荐