首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在keras损失函数中拆分数据类型(等价于损失函数中的if语句?)

在keras损失函数中拆分数据类型(等价于损失函数中的if语句?)
EN

Stack Overflow用户
提问于 2020-06-16 03:12:34
回答 1查看 49关注 0票数 0

是否可以在keras中编写一个自定义损失函数,这样写道:“对于数据集A的所有数据:像这样计算损失……对于数据集B的所有数据:像这样计算损失。”

我目前的实现有两个独立的模型,它们有自己的损失函数,然后在单独的train_on_batch调用中给出两个数据提要。

对于上下文,我的系统是一个GAN,它的任务是在两个数据集之间创建域不可区分的表示,同时还执行分类。然而,使用我目前的方法,感觉好像“领域不可区分”任务是优先的,我的分类准确率并没有上升到随机以上。(然而,如果我关闭域任务,分类准确率将上升到大约80%)。我想要排除的一个问题是,每个训练循环都会有多个非混洗数据的train_on_batch调用。

EN

回答 1

Stack Overflow用户

发布于 2020-07-14 03:03:05

对于后来可能会遇到这个问题的任何人,我现在意识到,关于实际答案是什么,我的问题表达得很糟糕。这个问题实际上是通过“如何计算梯度并在keras中将它们作为单独的操作来应用”来回答的。

我的解决方案是覆盖Model类,创建一个接受多个dataset的新train_on_batch方法。然后,在gradientTape中应用任意数量的计算和损失函数。最后,使用optimizer.apply_gradient()将渐变实际应用于模型

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62395291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档