当前位置: 首页 > news >正文

transformers库里model.generate和model.forward的区别 generate函数里不同的解码方式

  • 简单来说,generate就是封装好的自回归生成函数,其会调用指定次的forward,用来以自回归的方式生成输出;但是注意,generate只能用于推理,不能用于训练,在训练过程中应该使用forward
  • generate和forward的区别
  • 怎么利用forward函数模仿实现generate函数的功能
  • 详细介绍generate函数的参数设置,如解码方式里的greedy search、beam search、top-k sample、top-p sample等的详细介绍
    • greedy search 贪心搜索
      • 每次选择概率最大的vacab id作为当前token的值
    • beam search 波束搜索
      • 每次储存beam个概率最大的vacab id,并在结束生成时选择所有路径中累积概率最大的路径作为最终生成
    • top-k sample
      • 把greedy search和beam search的确定性选取输出的操作转变为基于概率分布的采样操作,选出概率最高的k个vocab id,然后把它们的概率重新归一化,之后在这个概率分布中随机采样
      • 这样模型输出的随机性和创造性会更好,能够产生一些让人感觉富有insight的输出
    • top-p sample
      • 把top-k里固定取k个概率最高的vocab id的操作变成从概率最高的vocab id开始取,直到取到当前vocab id时,累积概率超过预设值p
      • 相比于top-k sample,top-p sample可以保证采样分布里的vocab id数量动态调整,只采样那些概率较大的vocab id
  • generate函数手册

相关文章:

  • NVIDIA DRIVE AGX平台:引领智能驾驶安全新时代
  • 【阿里云大模型高级工程师ACP学习笔记】2.7 通过微调增强模型能力 (下篇)(⭐️⭐️⭐️ 重点章节!!!)
  • Linux企业级分区设置
  • 呼叫中心座席管理系统:智能升级,高效服务
  • Learning vtkjs之ImageMarchingCubes
  • Qt/C++面试【速通笔记六】—Qt 中的线程同步
  • 代码随想录算法训练营Day39
  • 运用ESS(弹性伸缩)技术实现服务能力的纵向扩展
  • DeepSeek-Prover-V2-671B
  • 数据编码(Encoding)
  • 01_K近邻
  • 网络基础-----C语言经典题目(12)
  • kivy android打包buildozer.spec GUI配置
  • LeetCode 1295.统计位数为偶数的数字:模拟
  • 4:机器人目标识别无序抓取程序二次开发
  • 4.30阅读
  • 变量char2、*char2、pChar3、*pChar3的存储位置
  • Qwen3-32B的幻觉问题
  • uv安装及使用
  • C++初阶-string类2
  • 国际著名学者Charles M. Lieber全职受聘清华深圳国际研究生院
  • 魔都眼|买买买,老铺黄金新店开业被挤爆:有人排队5小时
  • “网约摩托”在部分县城上线:起步价五六元,专家建议纳入监管
  • 大学2025丨对话深大人工智能学院负责人李坚强:产学研生态比“造天才”更重要
  • 莫名的硝烟|“我们最好记住1931年9月18日这个日子”
  • 智能终端出海服务创新联合体成立