【AlphaFold3】网络架构篇(5)|Template embedding & Pairformer stack

一、Template Embedding-模板嵌入

翻译:

模板嵌入(算法16)将所有原始模板特征整合为成对表示,并与给定的成对表示zijz_{ij}z

Embedding+MLP 主要由 Embedding 部分和 MLP 部分组成。使用 Embedding 层的目的是将类别型特征转换成 Embedding 向量,MLP 部分则通过多层神经网络拟合优化目标,常用于广告推荐领域 [^1]。 从原理上看,对于类别特征,先利用 Embedding 层进行特征稠密化,再利用 Stacking 层连接其他特征,输入 MLP 的多层结构,最后用 Scoring 层预估结果 [^2]。 以微软 2016 年提出的深度学习模型 Deep Crossing 为例,它是经典的 Embedding+MLP 模型结构,用于广告推荐业务场景。该模型从下到上分为 5 层,分别是 Feature 层、Embedding 层、Stacking 层、MLP 层和 Scoring 层 [^4]。 在实现的 Embedding+MLP 模型中,存在用户 Embedding 层和物品 Embedding 层。不过关于从这两个 Embedding 层中抽取出来的用户和物品 Embedding 能否直接用来计算用户和物品之间的相似度,原引用未给出明确答案 [^3]。 ### 代码示例 以下是一个简单的使用 PyTorch 实现的 Embedding+MLP 模型示例: ```python import torch import torch.nn as nn class EmbeddingMLP(nn.Module): def __init__(self, num_embeddings, embedding_dim, hidden_dim, output_dim): super(EmbeddingMLP, self).__init__() self.embedding = nn.Embedding(num_embeddings, embedding_dim) self.mlp = nn.Sequential( nn.Linear(embedding_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, output_dim) ) def forward(self, x): embedded = self.embedding(x) output = self.mlp(embedded) return output # 示例使用 num_embeddings = 10 embedding_dim = 5 hidden_dim = 10 output_dim = 1 model = EmbeddingMLP(num_embeddings, embedding_dim, hidden_dim, output_dim) input_tensor = torch.randint(0, num_embeddings, (1,)) output = model(input_tensor) print(output) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是瑶瑶子啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值