为什么在张量流中的 tf.nn.dropout 中对输入进行缩放?

2024-02-02

I can't understand why dropout works like this in tensorflow. The blog of CS231n http://cs231n.github.io/neural-networks-2/ says that, "dropout is implemented by only keeping a neuron active with some probability p (a hyperparameter), or setting it to zero otherwise." Also you can see this from picture(Taken from the same site) enter image description here

来自张量流网站,With probability keep_prob, outputs the input element scaled up by 1 / keep_prob, otherwise outputs 0.

现在,为什么输入元素按比例放大1/keep_prob?为什么不按概率保持输入元素原样,而不用1/keep_prob?


这种扩展使得相同的网络能够用于训练(使用keep_prob < 1.0)和评估(与keep_prob == 1.0)。来自辍学纸 http://www.cs.toronto.edu/~rsalakhu/papers/srivastava14a.pdf:

这个想法是在测试时使用单个神经网络而不丢失。该网络的权重是训练权重的缩小版本。如果一个单位以概率被保留p在训练期间,该单元的输出权重乘以p测试时如图2所示。

而不是添加操作来缩小权重keep_prob在测试时,TensorFlow 实现添加了一个操作来扩大权重1. / keep_prob在训练时。对性能的影响可以忽略不计,并且代码更简单(因为我们使用相同的图并对待keep_prob as a tf.placeholder() https://www.tensorflow.org/versions/master/api_docs/python/io_ops.html#placeholder根据我们是在训练还是评估网络,它会被赋予不同的值)。

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

为什么在张量流中的 tf.nn.dropout 中对输入进行缩放? 的相关文章

  • scikit-learn 适合大数据任务吗?

    我正在研究一项涉及使用机器学习技术的 TREC 任务 其中数据集由超过 5 TB 的 Web 文档组成 计划从中提取词袋向量 scikit learn有一组不错的功能似乎可以满足我的需求 但我不知道它是否能够很好地扩展以处理大数据 例如 是
  • Tensorflow Eager Execution 不适用于学习率衰减

    在这里尝试让一个热切的执行模型与 LR 衰减一起工作 但没有成功 这似乎是一个错误 因为学习率衰减张量似乎没有更新 如果我遗漏了什么 你可以帮我一下吗 谢谢 下面的代码正在学习一些词嵌入 但是 那学习率衰减部分根本不起作用 class Wo
  • 如何处理分类中的低频样本?

    我面临一个文本分类问题 我需要将示例分类为 34 组 问题是 34组的训练数据大小不平衡 对于某些组 我有 2000 多个示例 而对于某些组 我只有 100 多个示例 对于一些小群体 分类准确率相当高 我想这些群体可能有特定的关键词来识别和
  • Tensorflow:ValueError:形状必须具有相同的等级,但为 0 和 2

    我在乘以 x1 Wo1 时遇到形状错误 但我找不到原因 错误 ValueError 形状必须具有相同的等级 但为 0 和 2将形状 0 与其他形状合并 对于 add 2 x 操作 Pack 输入形状 20 1 import tensorfl
  • 安装了tensorflow,但pycharm忽略它

    我安装了tensorflow 约书亚的回答 如何在anaconda python 3 6上安装tensorflow https stackoverflow com questions 43419795 how to install tens
  • Tensorflow 检查点模型被删除

    我使用以下代码每 10 个时期后使用张量流检查点 checkpoint dir os path abspath os path join out dir checkpoints checkpoint prefix os path join
  • tensorflow ValueError:特征应该是“张量”的字典。给定类型:

    这是我的代码 我的tensorflow版本是1 6 0 python版本是3 6 4 如果我直接使用数据集读取csv文件 我可以训练并且没有错误 但我将 csv 文件转换为 tfrecords 文件 这是错误的 我在互联网上谷歌了一下 几乎
  • TensorFlow 中的 FCN 缺少裁剪层

    我目前正在尝试实施用于语义分割的 FCN http www cs berkeley edu jonlong long shelhamer fcn pdf在 TensorFlow 中 就像之前在 Caffe 中一样here https git
  • 模型返回错误 - ValueError:logits 和标签必须具有相同的形状 ((None, 18) vs (None, 1))

    我正在使用基于 keras 的多标签分类器 我创建了一个加载训练和测试数据的函数 然后在函数本身内处理 拆分 X Y 我在运行模型时遇到错误 但不太确定其含义 这是我的代码 def KerasClassifer df train df te
  • Keras 中 Adam 优化器的衰减参数

    我认为 Adam 优化器的设计可以自动调整学习率 但是 Keras 中有一个选项可以明确提及 Adam 参数选项中的衰减 我想澄清衰减对 Keras 中 Adam 优化器的影响 如果我们在 lr 0 001 上使用衰减 例如 0 01 编译
  • Tensorflow 保存子类模型,该模型具有 call() 方法的多个参数

    我正在关注张量流神经机器翻译教程 https www tensorflow org tutorials text nmt with attention https www tensorflow org tutorials text nmt
  • 了解 scikit-learn GridSearchCV - 参数调整和平均性能指标

    我试图了解 scikit learn 中的 GridSearchCV 究竟如何实现机器学习中的训练 验证 测试原理 正如您在下面的代码中看到的 我理解它的作用如下 将 数据集 分为 75 和 25 其中 75 用于参数调整 25 是保留的测
  • Keras 均方误差损失层

    我目前正在实现一个自定义损失层 在此过程中 我偶然发现了 Objectives py 文件 1 中均方误差的实现 我知道我对这种损失计算的理解遗漏了一些东西 因为我一直认为平均值是在每个小批量 张量的轴 0 中的每个输出的样本之间单独完成的
  • 为什么我的 GradientDescentOptimizer 会产生 NaN?

    我目前正在修改 Andrew Ng 教授在 Coursera 上的 机器学习 课程作业 但我陷入了逻辑回归部分 filename data ex2data1 txt data np loadtxt filename delimiter un
  • R 中 Tomek 链接的快速计算

    我想实现 tomek 的链接来处理不平衡数据 此代码用于二分类问题 其中 1 类是多数类 0 类是少数类 X 为输入 Y 为输出 我已经编写了以下代码 但我正在寻找一种加快计算速度的方法 我该如何改进我的代码 remove overlapp
  • 针对测试数据集使用 cross_val_predict

    我对在测试数据集中使用 cross val predict 感到困惑 我创建了一个简单的随机森林模型并使用 cross val predict 进行预测 from sklearn ensemble import RandomForestCl
  • 张量流范围名称有哪些限制?

    我正在运行张量流模型并收到以下错误 ValueError Cement component 1 kg in a m 3 mixture is not a valid scope name 我知道张量流可能不喜欢其范围名称中的特殊字符和空格
  • 在机器学习中使用 Scikit 对邮政编码进行特征哈希

    我正在研究一个机器学习问题 我的数据集中有很多邮政编码 8k 唯一值 因此 我决定将这些值散列到更小的特征空间中 而不是使用 OHE 之类的东西 我遇到的问题是我的哈希中唯一行的比例非常小 20 这基本上意味着根据我的理解 我有很多重复 冲
  • TensorFlow 的 Print 或 K.print_tensor 不会在损失函数中打印中间张量

    我为 Keras 模型编写了一个相当复杂的损失函数 并且它不断返回nan训练时 因此 我需要在训练时打印中间张量 我知道你不能在损失函数中执行 K eval 因为张量未初始化 不过 我都尝试过K print tensor and tf Pr
  • MATLAB 中的神经网络

    我在 MATLAB 中训练了异或神经网络并得到了这些权重 iw 2 162 2 1706 2 1565 2 1688 lw 3 9174 3 9183 b 1 2 001 2 0033 b 2 3 8093 出于好奇 我尝试编写 MATLA

随机推荐