activation-function相关内容

Pytorch 自定义激活函数?

我在 Pytorch 中实现自定义激活函数时遇到问题,例如 Swish.我应该如何在 Pytorch 中实现和使用自定义激活函数? 解决方案 有四种可能性,具体取决于您要查找的内容.你需要问自己两个问题: Q1) 你的激活函数有可学习的参数吗? 如果是,您别无选择,只能将激活函数创建为 nn.Module 类,因为您需要存储这些权重. 如果否,您可以随意创建一个普通函数或 ..

为什么只在输出层使用 softmax 而不是在隐藏层?

我见过的大多数分类任务的神经网络示例都使用 softmax 层作为输出激活函数.通常,其他隐藏单元使用 sigmoid、tanh 或 ReLu 函数作为激活函数.在这里使用 softmax 函数 - 据我所知 - 也可以在数学上解决. 不使用 softmax 函数作为隐藏层激活函数的理论依据是什么? 是否有关于此的任何出版物,可以引用的内容? 解决方案 我还没有找到任何关于为什么在 ..

在 LSTM 中使用 tanh 的直觉是什么?

在 LSTM 网络中(了解 LSTM),为什么输入门和输出门使用tanh? 这背后的直觉是什么? 这只是非线性变换吗?如果是,我可以将两者都更改为另一个激活函数(例如 ReLU)吗? 解决方案 Sigmoid 具体来说,用作LSTM,因为它输出一个介于 0 和 1 之间的值,它可以不让流或完全流整个大门的信息. 另一方面,为了克服梯度消失的问题,我们需要一个函数,其二阶导 ..

如何在 Tensorflow 中仅使用 Python 制作自定义激活函数?

假设您需要制作一个仅使用预定义的 tensorflow 构建块无法实现的激活函数,您能做什么? 所以在 Tensorflow 中可以制作自己的激活函数.但它相当复杂,你必须用C++编写并重新编译整个tensorflow [1] [2]. 有没有更简单的方法? 解决方案 有! 信用:很难找到信息并让它工作,但这里有一个例子,从发现的原理和代码中复制出来 在这里和这里. ..

如何在python中实现Leaky Relu的导数?

如何在不使用 Tensorflow 的情况下在 Python 中实现 Leaky ReLU 的导数? 还有比这更好的方法吗?我希望函数返回一个 numpy 数组 def dlrelu(x, alpha=.01):# 如果 x = 0 else alpha for i in x]) 预先感谢您的帮助 解决方案 您使用的方法有效,但严格来说,您正在计算关于损失或下层的导数,因此也通过 ..
发布时间:2021-06-07 19:57:26 Python

由多个激活函数组成的神经网络

我正在使用 sknn 包来构建神经网络.为了优化我正在使用的数据集的神经网络参数,我使用了进化算法.由于该包允许我构建一个神经网络,其中每一层都有不同的激活函数,我想知道这是否是一个实用的选择,或者我是否应该每个网络只使用一个激活函数?在神经网络中具有多个激活函数对神经网络有害、没有损害还是有益? 此外,我应该拥有的每层神经元的最大数量是多少,每个网络应该拥有的最大层数是多少? 解决方 ..
发布时间:2021-06-07 19:56:37 Python

在 tensorflow 的推理过程中,如何获得神经元的激活?

我想具体知道如何让神经网络中的神经元被激活(激活函数后每个神经元的输出) 当我在 Tensorflow 2 中的模型推理期间提供输入时,如何获得序列模型的所有神经元的激活? 解决方案 试试这个: intermediate_output = tf.keras.Model(model.input,model.get_layer('conv2_block1_3_conv').output ..
发布时间:2021-06-07 19:56:00 其他开发

限制Keras层中参数的总和

我想在图层的参数上添加自定义约束.我编写了一个具有两个可训练参数a和b s.t的自定义激活层: activation_fct = a * fct()+ b * fct().我需要使参数的总和(a + b)等于1,但是我不知道如何编写这样的约束.你能给我一些建议吗? 先谢谢了. 解决方案 您可以使用一个权重而不是两个权重,并使用以下自定义约束: 将keras.backend导入为K介 ..
发布时间:2021-05-28 19:16:54 其他开发

在Keras中使用自定义步骤激活功能会导致“操作具有“无"梯度.错误.如何解决呢?

我正在构建自动编码器,我想将我的值编码为逻辑矩阵.但是,当我在一个中间层(所有其他层都使用"relu")中使用自定义步骤激活功能时,keras会引发此错误: 一个操作的渐变没有"None". 我尝试使用硬Sigmoid 函数,但它不适合我的问题,因为当我只需要二进制文件时,它仍然会产生中间值.我知道,我的函数在大多数时候都没有梯度,但是是否可以使用其他函数进行梯度计算,而仍然使用阶跃函数进行 ..
发布时间:2021-05-13 18:43:44 Python

pytorch自定义激活功能?

我在Pytorch中实现自定义激活功能时遇到问题,例如Swish.我应该如何在Pytorch中实现和使用自定义激活功能? 解决方案 根据您要寻找的内容,有四种可能性.您将需要问自己两个问题: 问题1)您的激活功能是否具有可学习的参数? 如果是,则没有选择将激活函数创建为 nn.Module 类,因为您需要存储这些权重. 如果否,则可以根据自己的方便随意创建普通函数或类. ..

在LSTM中使用tanh有什么直觉?

在LSTM网络(了解LSTM )中,为什么输入门和输出门使用tanh? 这背后的直觉是什么? 这只是一个非线性变换吗?如果是,我可以同时将其更改为另一个激活功能(例如ReLU)吗? 解决方案 Sigmoid 专门用作 LSTM ,因为它输出的值介于0到1之间,所以它可以让无流量或完整流量信息遍布整个大门. 另一方面,要克服消失的梯度问题,我们需要一个函数,该函数的二阶导数 ..

您如何在python中为Keras编写自定义激活功能?

我正在尝试编写一个可与​​Keras一起使用的自定义激活功能.我不能用张量流原语编写它,因为它可以正确计算导数.我遵循了如何进行自定义激活在Tensorflow中仅使用Python实现功能?,并且在创建tensorflow函数时非常有用.但是,当我尝试将其作为经典MNIST演示的激活功能放入Keras中时.我有错误.我还尝试了上述参考文献中的tf_spiky函数. 这是示例代码 tf. ..

激活功能获取星期几

我正在编写一个程序来预测什么时候会发生。我不知道星期几(1-7)会获得哪个激活功能。 我尝试了S型函数,但是我需要输入预测的日期并输出它的概率,我不希望这样。 我希望激活函数将0返回到无穷大,ReLU是此任务的最佳激活函数吗? 编辑: 此外,如果我想输出7天以上的时间,例如,x将在今天的第9天或今天的第15天出现阴影,依此类推?我正在寻找实现此目的的动态方法 解决方案 ..

在python中实现sigmoid函数

我正在尝试为XOR函数实现一个简单的神经网络。 我使用的激活函数是Sigmoid函数。 sigmoid函数的代码为: def ActivationFunction(a) e = 2.671#Sigmoid函数 expo = e ** a val = expo /(1 + expo) return val 我的问题是此函数始终返回介于0.7和0.8之间的值。这个 ..
发布时间:2020-06-04 18:55:01 Python

Tensorflow自定义激活功能

我使用TensorFlow实现了一个网络,并在代码中创建了以下模型: def transparent_perceptron(x,weights ,biass): layer_1 = tf.add(tf.matmul(x,weights [“ h1”]),biass [“ b1”]) layer_1 = tf.nn.relu(layer_1) out_layer = tf.add(tf ..
发布时间:2020-06-04 18:54:57 其他开发

如何在输出层上使用softmax激活功能,但在TensorFlow中使用中间层?

我有一个由3个隐藏层组成的神经网络(所以我总共有5个层).我想在每个隐藏层使用 Rectified Linear Units ,但是在最外层,我想在Logit上应用 Softmax .我想使用 DNNClassifier .我已经阅读了TensorFlow的官方文档的设置位置他们说的参数activation_fn的值: activation_fn:应用于每个层的激活功能.如果为None,将使 ..
发布时间:2020-05-17 19:35:25 Python

为什么在隐藏层中不使用softmax

我已阅读 变量独立性:进行了大量的正则化和工作量来保持变量独立,不相关且相当稀疏.如果将softmax层用作隐藏层,则将使所有节点(隐藏变量)保持线性依赖关系,这可能会导致许多问题和较差的泛化性. 放弃隐藏层中的变量独立性会产生哪些并发症?请提供至少一个示例.我知道隐藏变量独立性在编纂反向传播方面有很大帮助,但是反向传播也可以在softmax中进行编码(请验证我在此声明中是否正确.我似乎已经 ..
发布时间:2020-05-17 19:35:10 其他开发