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

松江醉白池网站建设竖排导航网站

松江醉白池网站建设,竖排导航网站,网络推广公司 深圳,网站这么设置微信支付宝在自然语言生成任务中#xff0c;如何选择下一步的单词或者词语对生成的文本质量影响巨大。Huggingface 提供了多种解码策略#xff0c;可以在不同的场景下平衡流畅度、创造力以及生成效率。在这篇文章中#xff0c;我们将逐步介绍 Huggingface 中的几种常见解码策略#x… 在自然语言生成任务中如何选择下一步的单词或者词语对生成的文本质量影响巨大。Huggingface 提供了多种解码策略可以在不同的场景下平衡流畅度、创造力以及生成效率。在这篇文章中我们将逐步介绍 Huggingface 中的几种常见解码策略包括贪婪搜索、Beam Search束搜索、采样、Top-K 采样以及 Top-p核采样。通过具体代码示例我们将对比这些策略的效果并讨论它们在实际应用中的利弊。 加载GPT-2模型 我们首先加载 GPT-2 模型和对应的分词器。为了避免警告信息我们将 EOSEnd of Sequence序列结束符设置为 PAD填充符。 from transformers import GPT2LMHeadModel, GPT2Tokenizertokenizer GPT2Tokenizer.from_pretrained(gpt2)# 将 EOS token 设置为 PAD token model GPT2LMHeadModel.from_pretrained(gpt2, pad_token_idtokenizer.eos_token_id)贪婪搜索Greedy Search 贪婪搜索是一种最简单的解码方法。在每一步贪婪搜索直接选择具有最高概率的下一个词语直到达到设定的最大长度。这种策略虽然简单高效但往往会导致模型重复生成相同的词组。 让我们通过 GPT-2 模型来生成一段文本给定的上下文是 I enjoy walking with my cute dog。 # 编码输入 input_ids tokenizer.encode(I enjoy walking with my cute dog, return_tensorspt)# 使用贪婪搜索生成文本最大长度设为50 greedy_output model.generate(input_ids, max_length50)print(输出:\n 100 * -) print(tokenizer.decode(greedy_output[0], skip_special_tokensTrue))虽然生成的文本看似合理但贪婪搜索容易出现重复生成的情况。这个问题在对话生成、故事生成等开放式任务中尤为突出。 Beam Search束搜索 Beam Search 能够缓解贪婪搜索的局限性通过在每个时间步跟踪 num_beams 个最有可能的候选词序列直到所有序列都到达 EOS 标记为止。这种方法比贪婪搜索更有可能找到更优的词序列。         # 激活束搜索设定 beam 数量为 5 beam_output model.generate(input_ids, max_length50, num_beams5, early_stoppingTrue )print(输出:\n 100 * -) print(tokenizer.decode(beam_output[0], skip_special_tokensTrue))尽管 Beam Search 生成的文本更连贯但它仍然可能出现重复现象。为了进一步提升生成质量我们可以通过引入 n-gram 惩罚机制来减少重复的出现。 # 设置 no_repeat_ngram_size 参数为 2避免重复生成二元组 beam_output model.generate(input_ids, max_length50, num_beams5, no_repeat_ngram_size2, early_stoppingTrue )print(输出:\n 100 * -) print(tokenizer.decode(beam_output[0], skip_special_tokensTrue))我们还可以通过设置 num_return_sequences 参数生成多个不同的候选序列。 # 生成多个候选序列 beam_outputs model.generate(input_ids, max_length50, num_beams5, no_repeat_ngram_size2, num_return_sequences3, early_stoppingTrue )print(输出:\n 100 * -) for i, beam_output in enumerate(beam_outputs):print(f{i}: {tokenizer.decode(beam_output, skip_special_tokensTrue)})虽然 Beam Search 能够生成更连贯的文本但在开放式生成任务中它的表现往往不如其他解码方法。 采样Sampling 采样策略不再像贪婪搜索或束搜索那样总是选择概率最高的词语而是从词汇表中根据每个词的概率随机选取下一个词。采样的多样性较高但可能会生成不连贯的句子。 import torchtorch.manual_seed(0)# 激活采样关闭 Top-K 采样 sample_output model.generate(input_ids, do_sampleTrue, max_length50, top_k0 )print(输出:\n 100 * -) print(tokenizer.decode(sample_output[0], skip_special_tokensTrue))由于采样的随机性生成的文本可能会包含一些不连贯或不自然的句子。我们可以通过调整 temperature 参数来让生成更加连贯。 # 使用 temperature 减少不合理单词的生成 sample_output model.generate(input_ids, do_sampleTrue, max_length50, top_k0, temperature0.7 )print(输出:\n 100 * -) print(tokenizer.decode(sample_output[0], skip_special_tokensTrue))Top-K 采样 Top-K 采样是采样的改进版它限制每次采样只从 K 个概率最高的单词中选择能够有效避免生成一些低概率的单词。 # 设置 top_k 为 50 sample_output model.generate(input_ids, do_sampleTrue, max_length50, top_k50 )print(输出:\n 100 * -) print(tokenizer.decode(sample_output[0], skip_special_tokensTrue))Top-p 采样核采样 Top-p 采样根据概率阈值 p 选择最小数量的词汇使其累积概率超过 p然后在这些词中进行采样。这种动态的选择方法更具弹性能够适应不同的词汇分布。 # 设置 top_p 为 0.92 sample_output model.generate(input_ids, do_sampleTrue, max_length50, top_p0.92, top_k0 )print(输出:\n 100 * -) print(tokenizer.decode(sample_output[0], skip_special_tokensTrue))最后我们还可以结合 Top-K 和 Top-p 采样生成多个候选序列。 # 结合 top_k 和 top_p 并生成多个候选序列 sample_outputs model.generate(input_ids,do_sampleTrue, max_length50, top_k50, top_p0.95, num_return_sequences3 )print(输出:\n 100 * -) for i, sample_output in enumerate(sample_outputs):print(f{i}: {tokenizer.decode(sample_output, skip_special_tokensTrue)})结语         通过这篇文章我们深入了解了 Huggingface 提供的各种解码策略。从最简单的贪婪搜索到更为复杂的 Top-K 和 Top-p 采样每种方法在不同的场景下都有其独特的优势。贪婪搜索和束搜索在生成固定长度输出的任务中表现较好而 Top-p 和 Top-K 采样在开放式生成任务如对话和故事生成中更具表现力。根据具体应用场景选择合适的解码策略能够显著提升文本生成的质量。 如果你觉得这篇博文对你有帮助请点赞、收藏、关注我并且可以打赏支持我 欢迎关注我的后续博文我将分享更多关于人工智能、自然语言处理和计算机视觉的精彩内容。 谢谢大家的支持
http://www.tj-hxxt.cn/news/135421.html

相关文章:

  • 企业网站规划方案图片在线制作二维码
  • 做环保的网站有哪些icp网站备案流程
  • 有什么比较好的画册设计网站西宁制作网站多少钱
  • wordpress 导购站模板面包网站seo
  • 连锁销售网站制作取公司名大全 最新版
  • 让网站排名下降网站如何运营维护
  • 张家口网站建设公司建设网站明细报价表
  • 重庆永川微网站建设制作百度移动网站模板
  • 兰州网站移动端优化手机版的网站开发
  • 沈阳seo整站优化新乡搜索引擎优化
  • 网站中留言板怎么做第五届中国国际进口博览会召开时间
  • 网站开发年度总结wap网站 微信登录
  • 一级a做爰片免费网站下载封面新闻是国家级媒体
  • 如何设计一个网站全国企业系统网站建设
  • 一个网站源代码概多大dw友情链接怎么设置
  • 亚马逊如何做折扣网站的营销wordpress 嵌入 php代码
  • 做爰片免费网站视频移动互联网开发实验报告
  • 杭州哪里找网站建设的兼职网站建设的困难
  • 购物网站建设咨询龙岩优化公司
  • 网站建设栏目管理济宁网站建设培训学校
  • 网站开发语言和数据库有几种定制网站对公司有什么好处
  • 多语言企业网站开发宁夏网站建设报价
  • 初二信息课网站怎么做外贸的整个详细流程
  • 南昌网站优化公司运行怎么打开wordpress
  • 湛江建站公司模板网站开发的客户群体
  • 网站的栏目和板块深圳工业设计师
  • 站长之家whois关键词seo是什么
  • 电影网站做多大会有风险青岛网站建设青岛新思维
  • 重庆在百度做个网站多少钱建站之星 discuz
  • 网站个别页面做seo优惠的网站建设