如何在keras tensorflow中合并两个模型以生成一个模型

2024-01-20

我有两个预训练的模型,一个用于年龄分类,另一个用于性别分类。我想制作年龄性别分类器网络,所以我想合并两个网络并从同一网络预测年龄和性别。

我尝试的是

from keras.models import load_model

model_age = load_model(model_age_path)
model_gender = load_model(model_gender_path)

我如何合并两个模型并训练同时执行这两个任务的网络


这取决于“合并”对您意味着什么。
如果您想从单个输入中输出年龄和性别,那么您需要多个“头”:

from keras import Input
from keras.models import load_model

model_age = load_model('age.hdf5')
model_gender = load_model('gender.hdf5')

x = Input(shape=[299, 299, 3])
y_age = model_age(x)
y_gen = model_gender(x)

model = Model(inputs=x, outputs=[y_age, y_gen])

data, target = load_data()
p_age, p_gender = model.predict(data)

print(p_age)
# [[ 0.57398415,  0.42601582],
#  [ 0.5397228 ,  0.46027723],
#  [ 0.6648131 ,  0.33518684],
#  [ 0.5917415 ,  0.4082585 ]]

print(p_gender)
# [[ 0.13119246],
#  [ 0.        ],
#  [ 0.1875571 ],
#  [ 0.        ]]

但现在考虑一下:这两项任务(年龄回归、性别分类)在某种程度上都有一定程度的相似性,对吧?例如,如果您的数据由图像组成,则两者都需要检测线条、补丁和简单的几何形式才能做出决定。换句话说,两个网络都可以重用许多卷积层的权重,从而使整个过程更加高效。 您可以通过训练一个同时完成这两件事的新模型来实现此目的:

from keras.applications import VGG19

base_model = VGG19(weights='imagenet')  # or any model, really.
y = base_model.output
y_age = Dense(1, activation='relu')(y)

y = base_model.output
y = Dense(128, activation='relu')(y)
y = Dense(128, activation='relu')(y)
y_gender = Dense(2, activation='softmax')(y)

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

如何在keras tensorflow中合并两个模型以生成一个模型 的相关文章

随机推荐

  • Git 主目录

    我不小心把我的主目录设为了主目录 我该如何撤消这个操作 注意 每次我打开终端时 它都会声明我的主目录是 master 我不希望我的主目录位于 github 中 只需要几个子文件夹 Thanks 您可以删除隐藏在主目录中的 git 目录 在终
  • Python NSFW 检测模块 Nudenet 不再工作?

    我一直在使用 python 模块nudenet我的最终学位项目 我正在使用 google colab 来运行它 在过去的几个月里它工作正常 没有任何问题 直到昨天 当我尝试导入它时 发生了这个错误 pip install upgrade n
  • 当我第二次导航到嵌套片段时应用程序崩溃

    我正在使用嵌套片段 片段加载得很好 但是当我在此框架布局中加载另一个片段并想要再次加载嵌套片段时 我的应用程序崩溃了 07 14 16 58 21 272 E AndroidRuntime 1813 java lang IllegalSta
  • Spring批处理输入资源必须存在(阅读器处于“严格”模式)错误

    我使用 Spring Batch 来解析 csv 文件 当文件位于资源目 录中时 它工作得很好 但在其他地方则不起作用 我收到错误 Caused by java lang IllegalStateException Input resour
  • .NET HttpClient。如何POST字符串值?

    How can I create using C and HttpClient the following POST request 我的 WEB API 服务需要这样的请求 ActionName exist HttpPost public
  • 在重新发布到 JBoss 之前如何运行方法?

    我正在开发一个 J2EE Web 应用程序 我希望能够运行一个方法 或函数 类 等等 某物 在 重新发布 过程中 如果我能控制就好了when在重新发布期间 我的函数被调用 之前 期间 之后等 但良好的第一步是自动调用某些内容 作为临时黑客
  • 创建和/或写入文件

    我觉得这应该很容易 但谷歌目前完全让我失望 我想打开一个文件 或者如果它不存在则创建它 然后写入它 下列 AssignFile logFile Test txt Append logFile 当文件尚不存在时 在第二行抛出错误 我认为这是预
  • Eclipse 类路径和 NoClassDefFoundError

    我将尝试在这里提供尽可能多的细节 如果有些不相关 请原谅我 我在 eclipse 中有两个项目 项目1 com myworkplace parent 代码位于同名包中 项目 2 com myworkplace child 代码位于同名包中
  • Windows 7 64 位上的 Python 子进程 - 当 stdout=PIPE 时无输出

    对于有关 Python 子进程的另一个问题 我深表歉意 但我找不到这个问题的答案 我在使用某些在 Windows 7 64 位上调用子进程的 Python 代码时遇到问题 当子进程的标准输出发送到管道时 不会产生任何输出 子进程似乎运行和终
  • PHP中获取需要认证的页面内容

    我想获取需要身份验证的页面内容 用户名和密码 我只能使用有效的用户名和密码访问此页面 我想使用php库访问此页面 您能否建议我可以访问此页面的方法或库 谢谢 尝试这个 CHANGE THIS username YOUR USERNAME p
  • ASP.net core web api:使用 Facebook/Google OAuth 访问令牌进行身份验证

    几天来 我一直在尝试通过 Google 和 Facebook 进行 OAuth 身份验证 以便在我的 ASP net core Web api 项目中工作 我目前的状态是 我有一个 ASP net core Web Api 项目 其中需要对
  • 将 MySQL 数据库从一台服务器导入到另一台服务器

    我有两台具有 root 访问权限的专用服务器 两者都运行 Linux 我想将数据库从Server1导入到Server2 我已经在 Server2 上创建了一个空数据库 我想知道Linux下有什么命令可以直接导入数据库 有这样的功能吗 我可以
  • 如何使用触发器使文本框可见性=隐藏

    我今天好像过得很艰难 我想做的就是做一个TextBox基于绑定到其托管窗口的布尔值数据隐藏或可见 我所拥有的无法编译 我不明白为什么 请帮忙
  • 是否可以在同一个项目中同时拥有 iOS 应用程序和 Mac 应用程序?

    正如标题所说 我想知道在同一个项目中同时拥有 iOS 应用程序和 Mac 应用程序是否可能且合理 即 具有 Mac 应用程序目标和 iOS 目标的 Xcode 项目 如果是这样 我应该注意什么 这是一个好主意吗 一些背景信息 我正在开发一个
  • JavaFX 有角度的 TableView 标头

    有没有办法在 JavaFX TableView 上调整列标题的角度 当你有大量列时 Excel 有这样的功能 基本上我的列数已经超过了我的最佳数量 笑 我喜欢有角度的标题 这就是我要说的 我意识到 通过一些技巧 你可以有带有垂直文本的标题
  • React Nextjs:模块解析失败:您可能需要适当的加载器来处理此文件类型,当前没有配置加载器来处理此文件

    我正在尝试加载 pdf 文件 import placeholder from assets pdf placeholder pdf 每次服务器重新加载时我都会收到此错误 错误 assets pdf placeholder pdf 模块解析失
  • 在 Python 文档字符串中引用参数

    我使用 Sphinx 和自动文档功能来确保我们的项目中有良好的文档 所以我很熟悉信息字段列表 http sphinx doc org domains html info field lists我熟悉使用交叉引用 http sphinx do
  • 如何正确清理 Python 对象?

    class Package def init self self files def del self for file in self files os unlink file del self 上面失败并出现 AttributeErro
  • 具有两个主键的 Laravel 模型更新 [重复]

    这个问题在这里已经有答案了 我正在尝试更新有两个主键的模型 模型 namespace App use Illuminate Database Eloquent Model class Inventory extends Model The
  • 如何在keras tensorflow中合并两个模型以生成一个模型

    我有两个预训练的模型 一个用于年龄分类 另一个用于性别分类 我想制作年龄性别分类器网络 所以我想合并两个网络并从同一网络预测年龄和性别 我尝试的是 from keras models import load model model age