首页 > 其他分享 >什么是大模型的“温度”?

什么是大模型的“温度”?

时间:2024-12-25 14:58:17浏览次数:4  
标签:概率分布 模型 生成 参数 文本 什么 温度

大白话知识,什么是大模型的“温度”?

原创 iBear Bear探索AI 2024年10月22日 18:06 广东

使用各种大语言模型时,基本都会有一个可以调整的参数 温度(Temperature),温度参数在大语言模型中起着关键的调节作用,对生成文本的特性有着重要的影响。本文尝试简单直白的方式重新认识一下 温度(Temperature)这个参数的原理和使用场景。

简化的语言描述方式,对于技术细节来说肯定是不严谨的,但是大部分情况下,对于应用开发或者产品设计已经足够,我们并不需要了解所有的细节,只需要知道基本的原来,能帮助我们做决策就好。

在大语言模型中,温度参数对模型生成文本时的概率分布起着关键的调整作用。大型语言模型(如 GPT 系列)在预测下一个词时,实际上是在计算一个概率分布,这个分布覆盖了词汇表中的每一个词。

图片

温度参数的工作原理

温度参数通常通过添加一个标量乘以 softmax 函数的输出来实现,对这个概率分布进行调整。

温度低,让概率分布更加尖锐,增加高概率事件的概率,同时降低低概率事件的概率。这会使模型在生成文本时倾向于选择更确定、更常见的词汇,从而生成的文本看起来更加流畅和合理,但可能牺牲一些创意和多样性。例如,在进行数据分析报告的撰写时,低温度可以确保生成的文本准确地描述数据趋势和结论,避免出现不恰当或不准确的词汇。

温度高,让概率分布更加平坦,减少高概率事件的概率,同时提高低概率事件的概率。这种调整让模型在生成文本时更愿意冒险,尝试新颖或不常见的词汇组合,从而增加文本的多样性和创新性,但同时也可能降低文本的连贯性和合理性。比如在创意写作中,高温度可以激发模型创造出独特的情节和表达方式。

图片

举个例子

你期望这句话的完成方式是什么—— The cat sat on the _____

我想我们大多数人会想到垫子,其次是其他可以坐的地方,比如porch、floor等,而不是sky。

假设我们将其输入到文本生成模型,softmax 概率分布如下 :

tokenprob
mat0.6
floor0.2
porch0.1
car0.05
bus0.03
sky0.02

如果将温度设置为 0,那么模型最有可能返回的句子完成情况将是 The cat sat on the mat

但是当我们将温度设置为一个较高的数字时,我们可能会让模型给出的输出为 The cat sat on the sky 原因,然后 softmax 输出的概率分布会被人为地扭曲,从而生成可能性较小的标记。根据问题的背景,这可能是好事也可能是坏事。

发散一下

想象你正在和朋友玩一个猜词游戏,你需要根据已有的提示猜下一个词。如果游戏的 “温度” 设置得低,那就好比你非常谨慎,总是选择最安全、最明显的答案。这样玩游戏虽然稳妥,但有时候可能会显得有点无聊,因为你总是走老路。例如,在低温度下,大语言模型就像一个保守的猜词者,总是选择最常见、最可能的词汇来生成文本,虽然准确但缺乏新意。

相反,如果游戏的 “温度” 调得高,那就意味着你在游戏中愿意大胆猜测,即便是一些看起来不太可能的词也敢于尝试。这样的游戏充满了惊喜和创新,虽然有时候会猜错,但过程绝对刺激有趣。对应到大语言模型中,高温度让模型大胆尝试不常见的词汇组合,为文本带来更多的创意和多样性,但也可能导致文本不够连贯或合理。

而将 “温度” 设为中间的数字,就好比是保持了一种中庸之道,既不会太保守也不会太冒险,试图找到既合理又有趣的平衡点。在大型语言模型中,调整 “温度” 参数实际上就是在调节模型生成文本时的 “猜词策略”。较低的温度使得模型更加保守,倾向于生成大家都能想到的、平滑流畅的内容。而较高的温度则让模型变得大胆,愿意尝试新奇的表达,给我们带来意想不到的创意。

参数设置

不同的大语言模型,使用的深度学习框架可能不一样,参数的调整方式也会不一样。大多数设置的范围是0到1,比如百度的文心系列

图片

OpenAI的设置方式则是0到2

图片

在调整大语言模型的温度参数时,一般建议改变温度和其他参数(如 Top_p、Frequency Penalty、Presence Penalty)其中一个即可,不用同时调整多个。这是因为这些参数都对模型的输出产生影响,同时调整多个参数可能会导致结果难以预测和控制。

例如,Top_p 参数动态设置 tokens 候选列表的大小,将可能性之和不超过特定值的 top tokens 列入候选名单。如果同时调整温度和 Top_p 参数,可能会使模型的输出变得过于随机或过于保守。

使用场景

不同的任务需求对温度参数的要求也不同。在质量保障任务中,需要生成准确、可靠的文本,因此可以选择较低的温度参数。例如,在软件测试报告、法律文件的生成、科学研究报告的生成中,低温度可以确保内容的描述准确无误,避免出现错误或模糊的表述。

而在诗歌生成等需要创造性的任务中,可以适当提高温度参数,以增加文本的多样性和创新性。高温度可以使模型尝试一些不常见的词汇组合和表达方式,创造出独特的诗歌作品。此外,还可以根据任务的具体要求和用户的反馈,逐步调整温度参数。例如,在广告文案的生成中,可以先尝试不同的温度参数,观察生成的文案效果,然后根据用户的反馈和目标受众的喜好,选择最合适的温度参数。

总之,根据不同的任务需求调整温度参数,可以获得最佳的结果。在调整过程中,需要结合其他参数和实际情况,进行不断的尝试和优化。

标签:概率分布,模型,生成,参数,文本,什么,温度
From: https://blog.csdn.net/sinat_37574187/article/details/144662816

相关文章

  • DALL·E 3模型及其论文详解
    详细介绍DALL·E3的模型架构和训练过程,详细解读其论文《ImprovingImageGenerationwithBetterCaptions》。......
  • 【转载】通俗易懂!带你了解什么是场景化设计
    编辑导语:在进行产品设计时,常常都会说到“场景”一词,但是又和我们对于“场景”的理解不太一样。场景到底指什么?基于场景化的设计又该如何做呢?一起来看一下吧。在产品设计中,我们经常会听到这些声音,“这个设计没有考虑用户的使用场景”“用户行为和场景不匹配”……每个人都有说......
  • AGI 大模型进阶技术路线
    “AGI大模型进阶技术路线图V5.0”的思维导图。整个图的背景为白色,内容以橙色和黑色字体为主,部分重要节点用红色字体标注。 L1阶段:基础入门与概念了解大模型应用开发极简入门2024适合初学者,包括大模型应用开发的基本概念。例如,介绍常见的开发框架(如Flask、Djang......
  • 想自己做大模型备案的企业看过来【评估测试题+备案源文件】
    文章目录(一)适用主体(二)语料安全(三)模型安全(四)安全措施要求(五)词库要求(六)安全评估要求(七)附录大模型备案材料源文件2024年3月1日,我国通过了《生成式人工智能服务安全基本要求》(以下简称《AIGC安全要求》),这是目前我国第一部有关AIGC服务安全性方面的技术性指导文件,对语料安全、......
  • 4G太阳能供电无线视频监控方案的运作机制是什么?
    太阳能供电无线视频监控方案是一种集成了太阳能发电技术和无线通信技术的先进监控解决方案。它通过将太阳能转换为电能,以供监控设备使用,并通过无线网络实现远程视频数据的实时传输。这种方案特别适用于无电无网的偏远地区,能够实现远程不间断监控。那么太阳能无线视频监控方案的......
  • 备忘<大模型>--gpt4all本地可部署
    1.下载安装包https://www.nomic.ai/gpt4all2.下载模型https://docs.gpt4all.io/gpt4all_desktop/models.html#example-modelshttps://blog.csdn.net/mc_dudu233/article/details/140988148(参考该博客成功)https://www.freedidi.com/11195.html(可直接下载的以gguf结尾的模型)https://......
  • 详述大模型备案
    大模型备案安全评估流程详细说明,见下图:大模型安全评估流程图算法备案安全评估流程详细说明,见下图:算法安全评估流程图**大模型备案,大模型算法备案**一、大模型算法备案的强制性二、生成式人工智能(大语言模型)安全评估要点三、大模型备案必备材料+重点说明四、大模型备......
  • 案例集 |中企通信入榜信通院《2024大模型典型示范应用案例集》精选99个,纵览最新最全产
    导读2024年是大模型深入赋能千行百业,融入实体经济,助力科技创新的一年。截至今年5月,我国国产大模型的数量已经超过300个,预示着大模型在各行业场景的创新应用和深度拓展,对培育新质生产力、高水平赋能新型工业化、推动高质量发展发挥了重要作用。今年,国务院政府工作报告......
  • 如果你的大模型很差,请狂背这些……
    2024最新常考大模型面试八股大模型(LLMS)基础面1.目前主流的开源模型体系有哪些?2.prefixDecoder和causalDecoder和Encoder-Decoder区别是什么?3.大模型LLM的训练目标是什么?4.涌现能力是啥原因?5.为何现在的大模型大部分是Decoderonly结构?6.简单介绍一下大模型......
  • java~重写hashcode时为什么要乘以31
    在Java中,重写hashCode()方法时常常会使用31作为乘数,这是因为31具有一些独特的数学性质,使其成为一个优秀的选择。以下是几个原因:1.奇质数的特性31是一个奇数和质数,这意味着它能有效地减少哈希冲突的概率。使用质数作为乘数可以帮助分散哈希值,从而提高哈希表的性能。2.位运算效......