孙子算经-秦王暗点兵问题

"""
今有一数,三三数之,剩二;五五数之,剩三;七七数之,剩二。问这个数是几?

"""
i=0
while i<= 1000:
    if i%3 == 2 and i%5==3 and i%7==2:
        print(i)
        break
    else:
        i+=1
#运行结果
23
### P-Tuning 的类别与分类方法 P-Tuning 及其后续版本主要分为两类:P-Tuning 和 P-Tuning v2。 #### P-Tuning 这是一种针对 Prompt Tuning 进行改进的方法。Prompt Tuning 是一种通过调整输入提示来优化模型性能的技术,而 P-Tuning 则进一步增强了这一过程,在不改变预训练权重的情况下仅更新特定的连续向量表示[^1]。 #### P-Tuning v2 此版本不仅继承和发展了 P-Tuning 对于 Prompt 调整的优势,还融合了 prefix-tuning 思想。Prefix tuning 方法允许在保持原有网络结构不变的前提下,只对附加到输入序列前缀部分的新参进行学习和优化。因此,P-Tuning v2 实现了一个更高效的参微调框架,它能够更好地适应不同的下游任务需求并提高计资源利用率[^2]。 对于这两种类型的实现方式而言: - **P-Tuning**: 主要集中在如何设计有效的离散型或连续型 prompt 来引导大模型完成指定的任务上; - **P-Tuning v2**: 更加注重构建可训练的前缀模块,并将其无缝集成至现有的 Transformer 架构之中,从而使得整个系统的灵活性得到极大提升的同时也降低了过拟合的风险。 ```python # 示例代码展示 P-Tuning V2 中可能涉及的部分操作 (伪代码) class PTuningV2Model(nn.Module): def __init__(self, model_name_or_path, config): super().__init__() self.transformer = AutoModel.from_pretrained(model_name_or_path) # 初始化前缀嵌入层 self.prefix_embeddings = nn.Embedding(config.num_prefixes, config.hidden_size) def forward(self, input_ids, attention_mask=None, token_type_ids=None): batch_size = input_ids.shape[0] # 获取前缀token ids 并扩展成batch维度 prefixes = torch.arange(0, self.config.num_prefixes).unsqueeze(0).expand(batch_size, -1).to(input_ids.device) prefix_embs = self.prefix_embeddings(prefixes) # 将前缀拼接到原始input embeddings之前 inputs_embeds = self.transformer.get_input_embeddings()(input_ids) full_inputs = torch.cat([prefix_embs, inputs_embeds], dim=1) outputs = self.transformer(inputs_embeds=full_inputs, attention_mask=torch.cat( [torch.ones((batch_size, self.config.num_prefixes), device=input_ids.device), attention_mask], dim=-1)) ) return outputs.logits[:, :input_ids.size(-1)] ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值