大模型动手实现(一)

import torch  
import torch.nn as nn  
import math  
# 定义模型参数  
vocab_size = 16000  # 词汇表大小  
seq_len = 128  # 序列长度  
d_model = 128  # 隐藏层大小(这里可能是指Embedding层的输出维度,但通常用于Transformer的术语)  
n_layer = 4  # 编码器/解码器层数(在简单的模型中可能未使用)  
n_head = 4  # 注意力机制的头数(通常用于多头注意力)  
# 注意:n_len 在这个上下文中可能不需要或是一个误解,这里暂时不包括在模型定义中  

n_len = 4  # 假设这是你想要的序列长度  
torch.arange(n_len, dtype=torch.float).unsqueeze(1)





 
  
class SinusoidPE(nn.Module):  
    def __init__(self):  
        
        super().__init__()  
        pe = torch.zeros(seq_len, d_model)  
        pos = torch.arange(0, seq_len, dtype=torch.float).unsqueeze(1)  
        emb = torch.exp(torch.arange(0, d_mod
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

萧木易

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

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

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

打赏作者

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

抵扣说明:

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

余额充值