如何使用 TensorFlow 后端计算 Keras 中的 KL 散度?

2024-04-16

使用tensorflow作为后端时如何计算keras中的kl散度?我计算 L1 损失如下:

def l1_loss(y_true, y_pred):
    return K.sum(K.abs(y_pred - y_true), axis=-1)

可以看出,Keras 已经实现了 KL 散度here https://github.com/fchollet/keras/blob/master/keras/losses.py#L48,代码就是:

def kullback_leibler_divergence(y_true, y_pred):
    y_true = K.clip(y_true, K.epsilon(), 1)
    y_pred = K.clip(y_pred, K.epsilon(), 1)
    return K.sum(y_true * K.log(y_true / y_pred), axis=-1)

因此只需使用 kld、KLD 或 kullback_leibler_divergence 作为损失即可。

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

如何使用 TensorFlow 后端计算 Keras 中的 KL 散度? 的相关文章

  • 随机梯度下降可以与 TensorFlow 一起使用吗?

    我设计了一个全连接 MLP 具有 2 个隐藏层和 1 个输出层 如果我使用批量或小批量梯度下降 我会得到一个很好的学习曲线 But a straight line while performing Stochastic Gradient D
  • 在 TensorFlow 中对伯努利随机变量进行采样

    给定一个包含伯努利分布均值的一维张量 如何使用给定的均值对相应的一维张量进行采样 TensorFlow 似乎只有random normal and random uniform实现的功能 我可以使用一些复杂的东西 例如 tf ceil tf
  • 验证准确性非常好,但预测很差

    我正在构建一个 keras 模型来对猫和狗进行分类 我使用具有瓶颈特征的迁移学习和 vgg 模型的微调 现在我得到了非常好的验证准确率 例如 97 但是当我进行预测时 我得到了关于分类报告和混淆矩阵的非常糟糕的结果 可能是什么问题呢 这是微
  • 无效参数:indices[0,0] = -4 不在 [0, 40405) 中

    我有一个模型可以处理一些数据 我在数据集中添加了一些标记化的单词数据 为简洁起见有些被截断 vocab size len tokenizer word index 1 comment texts df comment text values
  • 应定义密集层输入的最后一个维度。没有找到。收到完整的输入形状:<未知>

    我在将模型从一些本地虚拟数据切换到使用 TF 数据集时遇到问题 抱歉模型代码太长 我已尝试尽可能缩短它 以下工作正常 import tensorflow as tf import tensorflow recommenders as tfr
  • 使用 Keras 的 ImageDataGenerator 预测单个图像

    我对深度学习很陌生 所以请原谅我这个可能很简单的问题 我训练了一个网络来分类positive and negative 为了简化图像生成和拟合过程 我使用了ImageDataGenerator和fit generator函数 如下图 imp
  • 使用 theano 进行多处理

    我正在尝试将 theano 与 cpu 多处理和神经网络库 Keras 结合使用 I use device gpu标记并加载 keras 模型 然后 为了提取超过一百万张图像的特征 我使用多处理池 该函数看起来像这样 from keras
  • Keras LSTM 密集层多维输入

    我正在尝试创建一个 keras LSTM 来预测时间序列 我的 x train 形状像 3000 15 10 示例 时间步长 特征 y train 形状像 3000 15 1 我正在尝试构建一个多对多模型 每个序列 10 个输入特征产生 1
  • 在 keras 中使用自定义张量流操作

    我在张量流中有一个脚本 其中包含自定义张量流操作 我想将代码移植到 keras 但我不确定如何在 keras 代码中调用自定义操作 我想在 keras 中使用tensorflow 所以到目前为止我发现的教程描述了与我想要的相反的内容 htt
  • 在tensorflow .ckpt文件中使用预训练模型

    我有一个 ckpt 文件 我只想得到 cnn 的权重 我已经从 ckpt 检查点文件中进行了训练 inception resnet v2 2016 08 30 import tensorflow as tf saver tf train S
  • 如何创建 Keras 层来执行 4D 卷积 (Conv4D)?

    看起来tf nn convolution应该能够进行 4D 卷积 但我无法成功创建 Keras 层来使用此函数 我尝试过使用 KerasLambda层来包裹tf nn convolution功能 但也许其他人有更好的主意 我想利用数据的高维
  • 带有 s3 路径的张量板 logdir

    我看到tensorflow支持AWS s3文件系统 https github com tensorflow tensorflow tree master tensorflow core platform s3 https github co
  • 使用 TensorFlow 2.1 的 Cloud TPU v3 Pod 的 TPUClusterResolver 出现错误

    我正在尝试在带有 TensorFlow 2 1 的 Google Cloud Compute Engine VM 上使用我的 抢占式 Cloud TPU v3 256 但它似乎无法正常工作TPUClusterResolver抛出一个Coul
  • keras 层教程和示例

    我正在尝试编码和学习不同的神经网络模型 我对输入维度有很多复杂性 我正在寻找一些教程 显示层的差异以及如何设置每个层的输入和输出 Keras 文档 https keras io layers core 向您展示所有input shape每层
  • ValueError:维度 (-1) 必须在 [0, 2) 范围内

    我的python版本是3 5 2 我已经安装了keras和tensorflow 并尝试了官方的一些示例 示例链接 示例标题 用于多类 softmax 分类的多层感知器 MLP https keras io getting started s
  • TensorFlow:在输入处获取梯度时性能缓慢

    我正在使用 TensorFlow 构建一个简单的多层感知器 并且我还需要获取神经网络输入损失的梯度 或误差信号 这是我的代码 它有效 cost tf reduce mean tf nn softmax cross entropy with
  • 无法将大小为 1665179 的数组重塑为形状 (512,512,3,3)

    该脚本用于进行检测 权重文件是 yolov4 coco 预训练模型 可以在这里找到 https drive google com file d 1cewMfusmPjYWbrnuJRuKhPMwRe b9PaT view https dri
  • Keras 通过设置种子获得不同的结果[重复]

    这个问题在这里已经有答案了 在keras中 每次运行都有很高的方差和不稳定的性能 为了解决这个问题 根据https keras io getting started faq how can i obtain reproducible res
  • 在 TensorFlow 中,tf.identity 有何用途?

    我见过tf identity在一些地方使用过 例如官方 CIFAR 10 教程和 stackoverflow 上的批量规范化实现 但我不明白为什么有必要 它是用来做什么的 谁能给出一两个用例吗 一种建议的答案是它可以用于 CPU 和 GPU
  • 如何在google colab中降级到tensorflow-gpu版本1.12

    我正在运行一个仅与旧版本的tensorflow GPU兼容的GAN 因此我需要将google colab中的tensorflow gpu从1 15降级到1 12 我尝试使用本中建议的以下命令thread https stackoverflo

随机推荐

  • Node Express 中的 res.sendfile 并传递数据

    有没有办法从 Node JS 应用程序重定向到 HTML 文件 例如 res sendFile http expressjs com api html res sendFileExpress 并将 JSON 数据传递到 html 文件 我知
  • Bash 子 shell:括号:() VS 美元括号:$()

    在 bash 中 两者 and 创建一个子shell 彼此之间有什么区别 它们的典型用途是什么 只是创建一个复合命令 运行括号内的命令 做同样的事情 但也替换输出 来自文档 list list在子shell环境中执行 变量赋值和内置 影响
  • Docker Swarm如何实现卷共享?

    Docker Swarm 可以管理两种类型的存储 volume and bind While bindDocker 文档不建议这样做 因为它在本地目录 在每个 swarm 节点上 与任务之间创建了绑定 volume没有提到实现 所以我不明白
  • apache centos 上的多个 php

    如何在 Centos 6 5 上同时运行多个 php 版本 就是这样 要求Centos 6 5 可能适用于 6 6 和 7 Apache Apache 2 2 15 可能与其他版本一起使用 本指南安装和使用FASTCGI 请参阅替代安装的注
  • 获取 JavaScript 数组中的下一个和上一个元素

    我有一个很大的数组 带有非连续的 ID 看起来像这样 PhotoList 89725 new Array PhotoList 89725 ImageID 89725 PhotoList 89725 ImageSize 123 PhotoLi
  • 如何创建ear文件,并在其中包含war和jar文件

    我正在尝试从命令提示符创建 EAR 文件 我用过 jar cvf myServletWAR ear 但我的问题是 如何让这个 EAR 文件中包含 WAR 文件和 JAR 文件 我需要单独创建war文件并包含在ear文件中吗 我无法为此使用
  • 使用prepareForReuse的正确方法是什么?

    需要帮助了解如何在 UIKit 中使用prepareForReuse 这文档 https developer apple com reference uikit uitableviewcell 1623223 prepareforreuse
  • Django:为索引列指定 HASH 而不是 BTREE

    Django 模型中有没有好的方法来指定特定的索引存储类型 例如 MySQL 的默认存储类型是 BTREE 而对于我的特定列 使用 HASH 哈希表 作为存储类型可能会更有效 如果不创建自定义字段或修改 django 核心 我找不到一个好方
  • 黑莓中的队列线程

    我查看了 BB API 5 0 但找不到任何串行执行一批线程的方法 我知道 BB 对启动的线程数量有限制 所以如果用户点击速度足够快但我找不到像线程池这样的东西 我不想启动 7 是否有一个简单的解决方案 或者我是否必须创建一个数据结构 如果
  • Swift 2 错误处理和 while

    例如下面的代码 while let data Provider getData 使用 Swift 2 你会遇到两个错误 条件绑定的初始化程序必须具有可选类型 而不是 字符串 调用可以抛出 但它没有标记为 try 并且错误不会被处理 在这里进
  • 小样式自定义评级栏(只读自定义评级栏)

    我尝试创建一个自定义评级栏 我不使用style因为我只用过一次 所以 我创建了一个layer list in the drawable文件夹 其名称是custom rating bar xml
  • 在 UIWebView 中打开的 HTML 页面中自动填充用户名和密码

    使用 UIWebView 自动填充数据时如何使用 RegsEx 查找登录表单 我使用以下代码来获取所有表单数据 int NoOfForms self browser stringByEvaluatingJavaScriptFromStrin
  • RenderStrategy.ONE_PASS_RENDER 是摆脱 Wicket 应用程序中的 ?1 等页面版本参数的合理方法吗?

    我们已经使用 Wicket 1 3 7 几年了 目前正在将我们的项目升级到 wicket 6 x 我对页面版本参数做了很多研究 例如 1 附加到每个 URL 以及如何删除它们 不幸的是 在官方文档中找不到这方面的详细信息 在这样做的同时 我
  • Python/Windows,防止子进程(外部程序)显示弹出窗口

    Python 2 7 操作系统 Windows 程序始终在 Windows 上运行 因此交叉兼容性不是问题 我被迫使用外部应用程序作为验证过程的一部分 并且在隐藏作为该外部程序的输出的弹出窗口时遇到了麻烦 基本上我这样做 args A pa
  • 该算法的大 O 复杂度是多少?

    我有一个在下面编写的函数 这个函数本质上是一个归并排序 public static long nlgn double nums if nums length gt 1 int elementsInA1 nums length 2 int e
  • 如何使用 Python 创建嵌套 JSON 对象?

    我有以下代码 data data agentid john data eventType view json data json dumps data print json date eventType view agentid john
  • 如何在没有推荐信息的情况下在 jQuery 中打开链接

    我需要从 jQuery 中打开一个链接 但我需要避免发送推荐信息 简而言之 我需要模拟rel noreferrer 可行吗 打开无引用链接的快速解决方案 function open link url instance window open
  • spring 重试 setRetryableExceptions、setFatalExceptions 不可用

    根据春季批次 重试文档 http docs spring io spring batch reference html retry html http docs spring io spring batch reference html r
  • 没有这样的列 sqlite 异常

    我试图从用户配置文件中获取一些数据 但找不到该列 我已经检查了每个查询之间的空间 看起来没有什么问题 到目前为止我还看不出问题所在 有什么想法吗 之前谢谢 这是我的代码和错误消息 表名 private static final String
  • 如何使用 TensorFlow 后端计算 Keras 中的 KL 散度?

    使用tensorflow作为后端时如何计算keras中的kl散度 我计算 L1 损失如下 def l1 loss y true y pred return K sum K abs y pred y true axis 1 可以看出 Kera