ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

门控多层感知器 (gMLP):它是什么以及如何在 Tensorflow 和 Keras 的实践中使用它?

2022-09-11 08:34:47  阅读:212  来源: 互联网

标签:__ 感知器 Keras 投影 空间 https gMLP 门控


门控多层感知器 (gMLP):它是什么以及如何在 Tensorflow 和 Keras 的实践中使用它?

gMLP 是一种基于 MLP 的无自注意力的 Transformers 替代方案,它仅由通道投影和具有静态参数化的空间投影组成。它在 NLP 和计算机视觉任务上展示了近乎最先进的结果,但使用的可训练参数比相应的 Transformer 模型少得多。

gMLP 的工作原理以及与 Transformer 相比如何?

最先进的最重要的组成部分 变压器 架构是注意力机制。它用于查找数据项之间的哪些关系对神经网络很重要。在 NLP 的情况下,注意力的良好可视化将是:

要发现 gMLP 的创新之处,我们首先要了解已经提到的术语是什么 静态参数化空间投影 意思是。

如上所述,注意力机制根据输入动态变化。另一方面,在传统的 MLP 中学习了一个固定的权重矩阵——它们是 静态参数化 .因此,来自 Google Brain 的研究人员试图找出这种 MLP(理论上应该是通用函数逼近器)是否可以模仿 Transformer 的注意力能力。

来了 空间相互作用 — 只是具有位置形式的信息(例如单词及其在文本中的位置)之间的任何交互的参考。 gMLP 应用一个简单的线性门控程序来转换形状的输入 [ n × d ] — n 嵌入维度为 d— 成一个类似注意力的矩阵,形状为 [ n × n ] 表示沿“空间轴”的令牌关系。然后,来自该过滤器矩阵的信息在用于最终 logit 预测之前重新合并到输入数据中。

gMLP block. It is repeated L times in the architecture. The “channel projections” depicted before the Spatial Gating Unit (SGU) are manipulating the inputs along the dimension of the embeddings. Together with activation operations (e.g. ReLU, GELU), they act as feedforward layers.

空间投影 定义为:

If the input Z has shape [n × d ] and W is a matrix of learnable parameters with shape […, n] the output of the SGU will represent a filter matrix of shape [n × n ].

阅读更多关于 gMLP 背后的直觉的信息 这篇有用的博文 .

如何实施 gMLP?

让我们首先使用 Keras 创建一个 gMLP 类。

现在我们将初始化归一化层和第一个前馈步骤 __在里面__ 方法。

分别,我们将首先调用归一化操作(经验证明,它可以提高大型模型的稳定性。)和模型中的通道投影层 称呼 方法。

现在,让我们构建空间门控单元 .研究人员建议我们将输入数据分成两个矩阵——一个用于门控函数,另一个用于乘法旁路。

空间投影可以定义如下 __在里面__

对于训练稳定性,研究人员发现初始化权重矩阵至关重要 W 作为接近零的值和偏置向量 b 作为一个,意思是 fW,b(Z) ≈ 1 和 s(Z)Z 在训练开始时。

这种初始化确保每个 gMLP 块在训练的早期阶段表现得像一个常规的 FFN,其中每个令牌都是独立处理的,并且在学习过程中只会逐渐注入跨令牌的空间信息。

然后我们可以使用 空间投影 部分数据拆分为 空间门控单元

因此 u * v_projected 从空间门控单元返回。
最终通道投影定义为 self.channel_projection2 = layers.Dense(units=embedding_dim) 应用于SGU的输出 称呼

最后我们返回 x + x_projected 作为逻辑。
完整的实现可能如下所示:

我们可以用多个 gMLP 块构建一个分类器 keras.顺序 如下:

进一步阅读:

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/27010/06281108

标签:__,感知器,Keras,投影,空间,https,gMLP,门控
来源: https://www.cnblogs.com/amboke/p/16683435.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有