Keras 不平衡数据集的多重损失

2023-12-02

My Model:

我建立了一个暹罗网络,它有两个输入和三个输出。所以我的损失函数是:

total loss = alpha( loss1) + alpah( loss2) + (1_alpah) ( loss3)

loss1 and loss2 is categorical cross entropy损失函数,从总共 8 个类别中对类别进行分类。loss3 is similarity loss函数(欧氏距离损失),验证两个输入是否来自同一类或不同类。

我的问题如下:

  1. 如果我有不同的损失,并且我想使用变量对它们进行加权alpha它的值取决于纪元号。所以我必须设置值pfalpha通过回调。我的问题是可以通过这个 alpha 变量传递它的值随纪元数(即不是标量)而变化的loss_weights in model.complie。文档说:

loss_weights:指定标量的可选列表或字典 系数(Python浮点数)来加权损失贡献 不同模型的输出。将通过以下方式最小化损失值 那么模型将是所有个体损失的加权和,加权 通过loss_weights系数。如果有一个列表,预计会有一个 1:1 映射到模型的输出。如果是张量,则预计映射 输出名称(字符串)到标量系数。

Example

alpha = K.variable(0., dtype=tf.float32)

def changeAlpha(epoch,logs):
    new_alpha = some_function(epoch)
    K.set_value(alpha, new_alpha)
    return

alphaChanger = LambdaCallback(on_epoch_end=changeAlpha) 

model.compile(loss= [loss1, loss2, loss3], loss_weights = [alpha, alpha, (1-alpha)])
  1. 我的数据集不平衡,所以我想使用class_wights in model.fit()。因此,对于三个损失的同一模型,我想应用class weights仅适用于分类交叉熵损失(损失 1 和损失 2),因此,如果我将其传递给,它对这两个损失都适用,但第三个损失除外model.fit?知道第三个损失是custom损失函数。

  2. 如果我想对暹罗网络进行分类,我的指标是model.compile(metrics= ['out1':'accuracy', 'out2':accuracy']])?但最终的准确率需要是两者的平均值,我可以通过构建自己的自定义指标来解决它。但是无论如何都可以对这两个指标进行加权求和。


None

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

Keras 不平衡数据集的多重损失 的相关文章

随机推荐

  • 使用 Javascript 操作 FontAwesome

    我正在做一个小项目来学习更多关于 Javascript 的知识 这样我将来就可以研究 svg 动画了 现在我正在开发一个按钮 当你点击它时 它会改变他的输入 circle document getElementById circle rem
  • ggplot2 可视化绘制在彼此之上的点的计数:stat_bin2d 或 geom_tile 或点大小?

    我的问题很简单 我有一些带有 x y 坐标的点 它们位于由 1x1 正方形组成的矩形网格内 这些点具有平均坐标 因此多个点被赋予相同的坐标 它们完全重叠 可重现的例子 generate fake data y lt seq from 0 5
  • 如何使用 selenium 选择搜索建议?该网站阻止我点击提交,需要进行选择

    我试图让自己更轻松地搜索临时公寓 但包含这些公寓列表的网站要求我从下拉列表中选择一个建议 然后才能单击 提交 无论搜索框中的条目有多完整 这里的最终希望是我可以转到搜索结果 然后从每个列表中提取联系信息 我能够使用 Beautiful so
  • 如何在vanilla javascript中动态添加选项到现有选择

    我想使用纯 JavaScript 动态添加选项 我能找到的所有内容都涉及 JQuery 或尝试动态创建选择 我能找到的最接近的东西是使用 Javascript 中的选项动态添加输入类型选择它执行后者 并且是我发现的唯一不涉及 JQuery
  • Django Haystack:搜索带或不带重音符号的术语

    我正在使用 django haystack 在我的 django 项目上实现一个搜索系统 问题是我的模型中的某些字段有一些法语口音 我想找到包含带或不带口音的查询内容的条目 我认为最好的想法是创建一个 SearchIndex 其中包含带重音
  • Java Arrays.hashcode() 的 hashcode 实现是否均匀分布

    我查看了源代码Arrays hashCode char c 我不太确定它所应用的算法在所有情况下都能很好地工作 public static int hashCode int a if a null return 0 int result 1
  • 程序忽略 if 语句,并在 False 时打印 True

    我正在为家庭作业问题编写一个简单的程序 它似乎跳过了我的 if 语句 我看了其他提出的问题 那里的问题似乎不是我的问题 所以我希望你能帮忙 def isWordGuessed secretWord lettersGuessed if let
  • 在模态窗口中打开 Highcharts

    我正在一个网站上工作 我在该网站上大量使用 Highcharts 来以图表形式呈现数据 我希望用户能够将每个图表 缩放 到模式窗口中 以获得更好的可读性 我知道如何使用 API 来操作图表 但我不太确定如何克隆图表并使用变量引用新图表 我已
  • 两个日期之间的月份

    是否可以得到month names两个日期之间SQl ie 2011 05 01 And 2011 08 01是输入 我只想输出为 Month May June July August 如果有人知道该查询 请分享 DECLARE Start
  • signature.verify() 总是返回 False

    public static void main String args try String mod q0AwozeUj0VVkoksDQSCTj3QEgODomq4sAr02xMyIrWldZrNHhWfZAIcWt2MuAY3X6S3Z
  • 未声明“TestString”。由于其保护级别,它可能无法访问。 (BC30451)[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 我正在尝试使用一些即时代码编译VBCodeProvid
  • 对 geom_line 和 x 轴之间的区域进行着色

    我有两张图显示供给和需求 在一张图中我从供给中减去了需求以显示由此产生的不对称性 我想对 x 轴和不对称负值部分之间的区域进行阴影处理 以显示缺陷的程度 我目前使用以下代码 plot asymmetry lt ggplot data df
  • 如何获取高DPI系统下的真实屏幕分辨率?

    因此 Delphi 程序不支持 DPI 直到最近我需要真实的屏幕分辨率时 这才让我感到困扰 当 更容易阅读屏幕上的内容 为 150 时 Screen Width 报告错误的分辨率 在具有高 DPI 的计算机中 一些建议是使应用程序具有高 D
  • 为什么在检查 textView 文本是否以预期字符串结尾(省略时)时 android espresso 测试失败

    我有一个 android 测试 检查应用 android ellipsize end 时外部文本消息是否被截断并以三个点结尾 我不知道为什么测试失败 尽管活动中呈现的文本格式正确 Test fun when errorMessage is
  • 为什么 Java 中有数组和数组

    我遇到过这两个文档 该类的 Java 文档Array 该类的 Java 文档Arrays 我想知道这两个类之间有什么区别 它们都提供了一组不同的静态方法 但为什么它们是分开的呢 更深层次的区别是什么 它们之间的关系与普通数组实例之间的关系是
  • stage 关键字是否在 YAML 文件中的 Azure DevOps 中定义构建或部署管道

    我想知道我们是否考虑这个 YAML 代码块 如果它已经被视为构建和发布管道 或者我们需要定义阶段来表征它 下面的代码可以工作 但运行时看不到各个阶段 然而 在这种情况下 它会构建并部署到 Azure 所以这就是我问的原因 我正在寻找正确的术
  • 限制线程数

    我有一个包含我要下载的项目的列表 我使用 for 循环来迭代列表 对于此列表中的每个项目 我启动一个引用该项目的新线程 我的问题是我想同时限制 maxDownload for int i downloadList Count 1 i gt
  • 在 XMPPFramework 和 Swift 2 中未调用 didReceiveInvitation()

    我正在创建聊天应用程序 例如Whatsapp 我已经成功编写了文本聊天 图像 音频 视频传输的功能 现在我正在创建多用户聊天 经过长时间的研发 我问这个问题 请告诉我我的代码中做错了什么 我已经遵循了所有这些教程 但运气不佳 https g
  • 在 Java Graphics2D 中,文本如何在矩形上居中对齐?

    在这段代码中 我有一个窗口 其中一个角落有一个蓝色框 我需要在此框上对齐文本中心 public class drawComponent extends JComponent public void paintComponent Graphi
  • Keras 不平衡数据集的多重损失

    My Model 我建立了一个暹罗网络 它有两个输入和三个输出 所以我的损失函数是 total loss alpha loss1 alpah loss2 1 alpah loss3 loss1 and loss2 is categorica