Keras 中的 load_model 和 Lambda 层

2024-06-30

如何加载具有 lambda 层的模型?

这是重现行为的代码:

MEAN_LANDMARKS = np.load('data/mean_shape_68.npy')

def add_mean_landmarks(x):
    mean_landmarks = np.array(MEAN_LANDMARKS, np.float32)
    mean_landmarks = mean_landmarks.flatten()
    mean_landmarks_tf = tf.convert_to_tensor(mean_landmarks)
    x = x + mean_landmarks_tf
    return x

def get_model():
    inputs = Input(shape=(8, 128, 128, 3))
    cnn = VGG16(include_top=False, weights='imagenet', input_shape=(128, 128, 3))
    x = TimeDistributed(cnn)(inputs)
    x = TimeDistributed(Flatten())(x)
    x = LSTM(256)(x)
    x = Dense(68 * 2, activation='linear')(x)

    x = Lambda(add_mean_landmarks)(x)

    model = Model(inputs=inputs, outputs=x)
    optimizer = Adadelta()
    model.compile(optimizer=optimizer, loss='mae')

    return model

模型编译后我可以保存它,但是当我尝试使用以下命令加载它时load_model函数我收到错误:

in add_mean_landmarks
    mean_landmarks = np.array(MEAN_LANDMARKS, np.float32)
NameError: name 'MEAN_LANDMARKS' is not defined

据我了解MEAN_LANDMARKS不作为常数张量并入图中。这也与这个问题有关:如何在 Keras 中添加常量张量? https://stackoverflow.com/questions/52831235/how-to-add-constant-tensor-in-keras/52831446#comment92584381_52831446


你需要通过custom_objects论证load_model功能:

model = load_model('model_file_name.h5', custom_objects={'MEAN_LANDMARKS': MEAN_LANDMARKS})

在 Keras 文档中查找更多信息:处理保存模型中的自定义图层(或其他自定义对象) https://keras.io/getting-started/faq/#handling-custom-layers-or-other-custom-objects-in-saved-models.

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

Keras 中的 load_model 和 Lambda 层 的相关文章

  • 设置ntlk代理

    我正在关注第一章NLTK书 http www nltk org book ch01 html frequency distributions 它要求我们通过运行来安装图书语料库nltk dowwnload 我正进入 状态getattrinf
  • 如何在 pywebview 中使无框窗口可拖动?

    我最近一直在使用 pywebview 和 Flask 来开发桌面应用程序 我想使用无框窗口功能并创建自己的标题栏 但问题是我不知道如何使该无框窗口可拖动 文档说它可以通过拖动任何点来移动 但对我来说情况并非如此 有任何想法吗 拖动区域 ht
  • 如何在Windows上安装PyGI(Python Gobject Introspection)?

    安装Python解释器 http python org ftp python 2 7 2 python 2 7 2 msi http python org ftp python 2 7 2 python 2 7 2 msi and http
  • 在Python中根据等级和花色对一手牌进行排序

    我正打算制作一款纸牌游戏 目前我正在着手开发它 我感到困惑的是 按牌的等级对手中的牌进行排序 然后按花色排序 以及如何减少重复 目前 我可能可以创建一个 for 循环来组织卡片 然后为每种可能性设置 52 个不同的 if 但我想知道它们是否
  • pandas.algos._return_false 在 CentOS 上使用 dill.dump_session 导致 PicklingError

    我有一个代码框架 其中涉及使用 dill 转储会话 这曾经工作得很好 直到我开始使用 pandas 以下代码在 CentOS 6 5 版本上引发 PicklingError import pandas import dill dill du
  • 使用脚本取消设置 PDF 字体

    我正在使用 xhtml2pdf 库自动创建 PDF 几个月前我有过这个问题 https stackoverflow com questions 25203219 xhtml2pdf doesnt embed helvetica 库嵌入了我没
  • 如何使用判别函数绘制 3 个类别之间的决策边界

    我有 3 个判别函数 将 2D 空间划分为 3 个区域 我想绘制这些区域之间的决策边界 我不知道如何在 python 中使用 matplotlib meshgrid 来做到这一点 对于2个判别函数 过程很简单 我计算值为 0 的函数和等高线
  • Pytorch不支持one-hot向量?

    我对 Pytorch 如何处理 one hot 向量感到非常困惑 在这个tutorial https pytorch org tutorials beginner blitz cifar10 tutorial html 神经网络将生成一个
  • 如何在pytorch中使用多个GPU?

    我使用此命令来使用 GPU device torch device cuda 0 if torch cuda is available else cpu 但是 我想使用两个 GPUjupyter 像这样 device torch devic
  • 加速使用 Pyinstaller 创建的 .exe

    我已经使用 Pyinstaller 将我的程序 用 Python 3 6 1 编写 使用 Python 3 5 3 转换 从 py 转换为 exe 然而 它是加载速度极其缓慢 与在空闲状态下运行时我优化了我想什么问题是 导入大量模块 所以我
  • 如何在多个 GPU 上运行具有数据并行性的 Tensorflow Estimator

    我有一个带有某些模型的标准张量流估算器 并且希望在多个 GPU 而不是一个 上运行它 如何使用数据并行性来实现这一点 我搜索了 Tensorflow Docs 但没有找到示例 只有几句话说使用 Estimator 会很容易 有人有使用 tf
  • 如何在不破坏 DataFrame.append() 的情况下子类化或以其他方式扩展 pandas DataFrame?

    我有一个复杂的对象 我想围绕 pandas DataFrame 构建 我尝试使用子类执行此操作 但是即使在使用时 附加到 DataFrame 也会重新初始化新实例中的所有属性 metadata 按照推荐here https pandas p
  • scikit learn中partial_fit遇到的错误

    在 scikit learn 中使用partial fit 函数进行训练时 即使训练后的模型行为正确并给出正确的输出 我也会在程序未终止的情况下收到以下错误 这怎么可能 以及这样做的后果是什么 这是值得担心的事情吗 usr lib pyth
  • 从周数获取日期

    请问我的代码有什么问题 import datetime d 2013 W26 r datetime datetime strptime d Y W W print r 显示 2013 01 01 00 00 00 谢谢 周数不足以生成日期
  • 如何 setup.py 我依赖 PyTorch 的包

    我正在创建一个依赖于 PyTorch 的 Python 包 PyTorch的安装命令如下 来自https pytorch org https pytorch org pip3 install torch 1 8 2 cu102 torchv
  • DataFrame.stack() 之后的新索引级别名称

    注意这个问题 https stackoverflow com questions 26002474 pandas name of the column after a group by function 28303765 28303765看
  • 如何在python中查找文件的mime类型?

    假设您想要将一堆文件保存在某个地方 例如保存在 BLOB 中 假设您想通过网页分发这些文件 并让客户端自动打开正确的应用程序 查看器 假设 浏览器通过 HTTP 响应中的 mime type 内容类型 标头确定要使用哪个应用程序 查看器 基
  • Python 程序员资源 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使 Selenium WebDriver 不等待整个页面加载

    我正在使用 python 2 7 和 Selenium webdriver for Firefox 我有一个无法解决或在互联网上找到解决方案的问题 我的任务是打开大约 10k 个网页 adsl 路由器 Web 界面 通过 IP 地址 并上传
  • 为什么 a.insert(0,0) 比 a[0:0]=[0] 慢很多?

    使用列表的insert函数比使用切片分配实现相同效果要慢得多 gt python m timeit n 100000 s a a insert 0 0 100000 loops best of 5 19 2 usec per loop gt

随机推荐

  • Skobbler 地图无法使用 ZoomToRouteWithInsets 进行缩放

    在skobbler地图上 我计算了一条路线 如果我拖动地图中的某个位置 然后在按钮中单击 我想查看我的路线 在文档中给出了这些方法 将地图缩放到当前计算的路线 SKRoutingService sharedInstance zoomToRo
  • 如何考虑不同的实施需求?

    假设我有一个包含两个具体类的接口 一 具体需要落实IDisposable 是否需要修改接口来实现IDisposable为了一个类的利益 还是接口的使用者必须执行运行时检查以确保可处置性 我认为应该修改接口 因为它是一个简单的更改 特别是如果
  • 更改默认的 docker0 网桥 IP 地址

    在 Ubuntu Server 16 04 上启动 docker ce 18 06 1 ce 构建 e68fc7a 后 将创建以下内容 ifconfig docker0 Link encap Ethernet HWaddr 02 42 fe
  • 我收到“缺少 using 指令或程序集引用”的消息,并且不知道出了什么问题

    我试图允许用户将数据输入到将添加到 web config 文件中的文本框中 我已将相关行添加到 web config 文件中 但是当我创建此类时 一切都会出错 每当我尝试运行我的应用程序时 我总是收到是否缺少 using 指令或程序集引用错
  • 如何在WPF ListView中显示时间日志的内容?

    我一直在寻找答案 但我还没有真正找到答案 我知道逻辑 但我只是不知道如何实现它 这是我的时间日志 No Mchn EnNo Name Mode IOMd DateTime 00001 1 00001234 1 0 2004 01 01 01
  • 我可以根据提交消息过滤 GitHub 操作步骤吗?

    我最近在 GitHub 操作中添加了静态分析步骤 然而 它有点昂贵 所以我试图减少此步骤运行的次数 我已经添加了一个适当的过滤器 以便它仅在一个操作系统上运行 并且仅在我的 功能 分支上运行 但是 我还想过滤掉提交消息中包含 WIP 的任何
  • Perl 中的内联正则表达式替换

    有没有办法用内联正则表达式替换文本 而不是从变量中获取文本并将其存储在变量中 我是一个 Perl 初学者 我经常发现自己在写作 my foo bar foo s regex replacement doStuff foo 我真正想写的地方
  • 编程实践:将 ExecuteNonQuery 与 SqlDataAdapter 结合使用

    public DataTable UserUpdateTempSettings int install id int install map id string Setting value string LogFile SqlConnect
  • 确定预保存回调中的记录是否“是新的”

    有没有办法在猫鼬模型模式的预保存回调中找出记录是否 是新的 尚未保存 是的 有一个isNew http mongoosejs com docs api html document Document isNew模型实例上指示这一点的布尔属性
  • 设置面积图 openpyxl 的透明度(alpha)

    我想使用 openpyxl 设置面积图背景的透明度 我的图表代码是 from openpyxl drawing fill import PatternFillProperties ColorChoice c2 AreaChart c2 gr
  • 强制 XML 序列化以序列化只读属性

    在 C 中 我有一个类 该类具有应通过 XML 序列化的派生属性 但是 XML 序列化 默认情况下 不会序列化只读属性 我可以通过定义一个空的 setter 来解决这个问题 如下所示 public virtual string IdStri
  • 为什么我们需要创建类变量来获取和设置属性?

    非常简单的问题 但我发现理解我们为什么这样做非常重要 我可以在类中创建一个属性 如下所示 第一种方法 public class MyClass public string MyProperty get set 第二种方法 public cl
  • PHP 的 Checkstyle 作为 Eclipse 插件

    有这样的插件可用吗 是的 有一个 PHP 工具集成 http www phpsrc org 与 Checkstyle 等效的是 PHP CodeSniffer 一个 pear 包 您可以在这里找到更多信息PHP CodeSniffer ht
  • jqgrid 仅当有数据时才打开子网格

    这是我的子网格的声明 subGrid true subgridtype json subGridUrl manuf subgr php subGridModel name Package Sticker Manufacturer width
  • ARM反汇编一段被TBB搞糊涂了

    作为学习 Arm 汇编的介绍 我尝试用高级语言重新创建反汇编函数 然而 我对以下汇编感到困惑 0000315e 2101 movs r1 1 00003160 e8dff000 tbb pc r0 00003164 030e lsls r6
  • 我可以在mockito参数中混合使用1个匹配器和1个精确值吗

    如果我创建一个这样的模拟 when servicesTestEnv mockUserProfileAndPortfolioTransactionRepository get servicesTestEnv mockDistributedTr
  • 提交搜索或选择搜索建议时隐藏键盘

    我有一个操作栏搜索小部件 也提供搜索建议 当用户输入查询并提交或选择搜索建议时 键盘不会消失 我该如何解决这个问题 我无法弄清楚如何在搜索提交或建议选择时隐藏键盘 谢谢 要隐藏输入法编辑器 请使用InputMethodManager Inp
  • Bash:进程替换的范围是什么?

    据我所知 进程替换 创建 fd 并将括号中命令的输出存储到生成的 fd 中 因此 这两个命令是等价的 ls al cat lt ls al 在这里 我的问题是 生成的文件描述符保留多长时间 我读过这个 但似乎我的理解是错误的 如果进程替换被
  • 比赛结束后如何使用流找到物品?

    使用 Java 流 可以轻松找到与给定属性匹配的元素 例如 String b Stream of a1 b2 c3 filter s gt s matches b findFirst get System out println b b 生
  • Keras 中的 load_model 和 Lambda 层

    如何加载具有 lambda 层的模型 这是重现行为的代码 MEAN LANDMARKS np load data mean shape 68 npy def add mean landmarks x mean landmarks np ar