Is Temperature the Creativity Parameter of Large Language Models?阅读笔记

最近有小伙伴来问LLM的参数该如何设计,废话不多说来看看paper吧。首先,常见的可以进行调参的几个值有temperature,top-p和top-k。今天这篇文章是关于temperature的。

原文链接:https://arxiv.org/abs/2405.00492

temperature如果用简单的一句话来说,就是:Controls randomness, higher values increase diversity。数值越高,输出的结果多样性越大。大家其实直接用这个标准拿去参考调整参数就行。其实大部分的人都是这么做的,我们先来看一下openai commutiy上讨论的帖子:Cheat Sheet: Mastering Temperature and Top_p in ChatGPT API - API - OpenAI Developer Forum。这个回答者,还给出了一个不同use case情况下的参数设置参考,当然具体情况还是要看实验结果的哈。

然后2024年五月出的这篇文章,研究工作比较新了,我们先来看一下文章的摘要部分给出的结论:

Here, we investigate this claim using a narrative generation task with a predetermined fixed context, model and prompt. Specifically, we present an empirical analysis of the LLM output for different temperature values using four necessary conditions for creativity in narrative generation: novelty, typicality, cohesion, and coherence. We find that temperature is weakly correlated with novelty, and unsurprisingly, moderately correlated with incoherence, but there is no relationship with either cohesion or typicality. However, the influence of temperature on creativity is far more nuanced and weak than suggested by the “creativity parameter” claim; overall results suggest that the LLM generates slightly more novel outputs as temperatures get higher. Finally, we discuss ideas to allow more controlled LLM creativity, rather than relying on chance via changing the temperature parameter.

文章测试的实验是用固定的上下文、大语言基座模型、提示词来进行文本生成任务(叙事生成,即生成连贯有意义的故事)。作者从novelty新颖性、typicality典型性、cohesion凝聚性和coherence连贯性,这四个方面来看这个creativity的情况。结果,他们发现temperature这个参数和novelty弱相关,与不连贯性中等相关,与凝聚性和典型性无关。虽然temperature被视为creativity parameter,但是看起来并不是所谓意义上的那个creative。

首先,如果我们要去改变一个大语言模型的效果,有三个方式可以去调整,分别是训练数据(从最开始就构建或者后面进行微调),in-context learning(few-shot learning,简而言之,在prompt中添加示例),以及不同的超参数设置。Temperature是模型中的一个超参数,用于调节采样过程中的随机性,即下面这个softmax公式里的t,softmax大家都知道,是深度学习里非常常见的一个函数了,会在分类场景里,把数值给他映射到0-1的空间,如果是多分类,概率的和就是1啦。

然后,咱们放到GPT模型的尾端,当我要预测下一个词的时候,我需要计算每个单词成为下一个单词的概率,然后找到最大概率的那个词,作为我的下一个单词(所有词的概率加在一起是1)。咱们回到公式,你看分母就是词所有的和,分子是当前词。这个时候咱们的temperature,t成了一个分母,温度 t>1 时,高概率的值会降低,低概率的值会增加,导致概率分布更加平坦。温度 t<1 时,高概率的值会增加,低概率的值会降低,使得分布更加陡峭。分布陡峭,指的是我很明确就知道我要选那个概率最大的词,但是如果大家都姿色平平,那我可能就需要雨露均沾,哪个都可以试试。

如果你想看Temperature变化时候的可视化,可以看看这个网站(What is Temperature in NLP?🐭 :: Luke Salamone's Blog),作者举个🌰,大家都知道GPT模型主要是从前往后,预测下一个词。如果句子是:

老鼠爱吃_____

那么下一个词,可以是蛋糕、糖果、芝士、饼干等等等。

作者展现了随着temperature变化,不同词语对应概率分布的变化。

从:鼠鼠🐭就爱🧀

到:鼠鼠🐭我呀,雨露均沾。

看完了temperature的公式和变化时候的情况,我们再次回到文章,作者找到两种理论来解释t变化时候实际带来的改变:

The method for evaluation we propose in this paper is inspired by two theories of cognitive categorisation, namely prototype theory (Rosch 1973) and exemplar theory (Medin and Schaffer 1978). These two theories are often contrasted, but have much overlap. The key difference is that in exemplar theory, categorisation of new stimuli is not compared against a single prototype object, but against multiple exemplars of the category. A prototype is considered something that is derived from presented stimuli, where an exemplar is one of the previous stimuli.

。。。

Conceptual spaces also play an important role in Boden’s framework of creativity (Boden 1992). She uses a metaphor, a map of the mind, to describe exploratory creativ- ity and that novelty and value can be found venturing into unknown regions. To be more precise, the typicality of an object relates to how well it fits with the exemplars or the prototype, while novelty could be viewed as how much the category changes or expands as a new stimulus is presented. This implies similarly that if temperature is indeed the cre- ativity parameter, then it should allow access to different slices of the probability distribution or other regions in the embedding space.

大致意思,我觉得就是temperature改变的时候,虽然说是变得更加creative,出现的词更多样化,但是出现的这些词依旧属于某个类别。以大家熟悉的思维地图为例,新颖性可以看作是当新的刺激出现,地图类别变化或扩展的程度,如果temperature是创造性参数,改变了以后应该可以允许访问,概率分布不同或者embedding空间里的其他区域。这里的embedding space,我们可以把它想成是LLM在学习了大量的文本以后,大量参数组成的高纬🧀空间。有了这样的一个大致理论方向后,作者开始做实验。

任务非常简单,写故事,作者的prompt是

作者测试了7个不同temperature参数,写了100个故事:

OK,然后就是重要的测评环节!!!!

作者分别用故事的困惑度、生成的故事和典范故事之间的cosine相似度以及标准化的编辑距离,这三个指标来进行分析。作者还做PCA,用主成分分析,将生成的故事投射到二维空间。

除了指标和相关的可视化,必不能少的human evaluation。测评实验参与者会将每个故事与样本进行比较,然后评判新颖性、典型性、故事的凝聚和连贯性。

具体实验分析部分,大家去看文章哈,anyway,最后作者的结论就是,这个temperature参数看起来不太能就直接拿来调整以改变creative的程度。当然,作者最后给出的如何更creative的建议,看起来更像是🤌🤌🤌建设性的那种,比如咱们可以搞点benchmark for creativity,咱们可以整一些为特定目的来设计的解码策略,就是在decoding的时候直接为了creative而creative。通过prompt设计来最大程度调整LLM的表现。

最后的最后,hmmm,难道这就是在发现屡次调参失败后,dis参数的一篇文章🤣。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/802592.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Google如何构建AlphaFold 3来预测所有生命分子的结构和相互作用

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

硕博电子智能控制器、触摸显示屏在集装箱跨运车上的应用

港口跨运车&#xff0c;又称跨运车或轮胎式龙门吊(RTG)&#xff0c;专门用于集装箱码头的装卸和搬运作业&#xff0c;能够迅速完成集装箱在码头前沿、堆场区域以及仓库之间的运输和堆垛&#xff0c;大幅度缩短了装卸周期&#xff0c;提高了港口物流周转效率。 现代跨运车往往配…

泛微e-cology WorkflowServiceXml SQL注入漏洞(POC)

漏洞描述&#xff1a; 泛微 e-cology 是泛微公司开发的协同管理应用平台。泛微 e-cology v10.64.1的/services/接口默认对内网暴露&#xff0c;用于服务调用&#xff0c;未经身份认证的攻击者可向 /services/WorkflowServiceXml 接口发送恶意的SOAP请求进行SQL注入&#xff0c;…

xiuno兔兔超级SEO插件(精简版)

xiuno论坛是一个一款轻论坛产品的论坛&#xff0c;但是对于这个论坛基本上都是用插件实现&#xff0c;一个论坛怎么能离开网站seo&#xff0c;本篇分享一个超级seo插件&#xff0c;自动sitemap、主动提交、自动Ping提交。 插件下载:tt_seo.zip

【Linux】线程——线程互斥的概念、锁的概念、互斥锁的使用、死锁、可重入和线程安全、线程同步、条件变量的概念和使用

文章目录 Linux线程4. 线程互斥4.1 线程互斥的概念4.2 锁的概念4.2.1 互斥锁的概念4.2.2 互斥锁的使用4.2.3 死锁4.2.4 可重入和线程安全 5. 线程同步5.1 条件变量的概念5.2 条件变量的使用 Linux线程 4. 线程互斥 我们之前使用了线程函数实现了多线程的简单计算模拟器。 可以…

python 循环优化

python循环是非常耗时的&#xff0c;所以遇到比较大的数组就要对循环做优化&#xff0c;代码&#xff1a; for i in range(pred_density_up.shape[0]):for j in range(pred_density_up.shape[1]):if pred_density_up[i][j] > 0.1:points.append([j , i ])上面的循环是最长见…

【 香橙派 AIpro评测】烧系统运行部署LLMS大模型跑开源yolov5物体检测并体验Jupyter Lab AI 应用样例(新手入门)

文章目录 一、引言⭐1.1下载镜像烧系统⭐1.2开发板初始化系统配置远程登陆&#x1f496; 远程ssh&#x1f496;查看ubuntu桌面&#x1f496; 远程向日葵 二、部署LLMS大模型&yolov5物体检测⭐2.1 快速启动LLMS大模型&#x1f496;拉取代码&#x1f496;下载mode数据&#x…

nginx代理缓存

在服务器架构中&#xff0c;反向代理服务器除了能够起到反向代理的作用之外&#xff0c;还可以缓存一些资源&#xff0c;加速客户端访问&#xff0c;nginx的ngx_http_proxy_module模块不仅包含了反向代理的功能还包含了缓存功能。 1、定义代理缓存规则 参数详解&#xff1a; p…

esplice老项目(非maven)导入idea问题

解决导入idea显示不正常 老项目导入idea后&#xff0c;显示为如下所示&#xff1a; 显示的不太正常&#xff0c;正常显示为下面这个样子&#xff1a; 解决 非老项目 idea的项目中所有的文件全部变成了.java(已解决) 老项目 以下内容参考&#xff1a;idea导入项目后java文…

Word创建多级列表的样式

Word创建多级列表的样式 要求结果方法创建样式修改样式设置段落创建快捷键 关联多级列表 要求 创建自定义的三级列表样式&#xff0c;要求标题均为黑体&#xff0c;小四字号&#xff0c;1.5倍行距&#xff0c;有快捷键。 结果 方法 在样式中创建三个样式。 创建样式 录入名…

【入门级】docker

开头处生动的描述一下”码头工人”吧&#xff1a;小鲸鱼&#xff08;登记处Registry&#xff1a;比如docker hub官方&#xff09;背着好多集装箱&#xff08;仓库repository&#xff1a;存放各种各样的镜像&#xff0c;一般存放的是一类镜像&#xff0c;这一类镜像中通过tag 版…

kubernetes k8s Deployment 控制器配置管理 k8s 红蓝部署 金丝雀发布

目录 1、Deployment控制器&#xff1a;概念、原理解读 1.1 Deployment概述 1.2 Deployment工作原理&#xff1a;如何管理rs和Pod&#xff1f; 2、Deployment资源清单文件编写技巧 3、Deployment使用案例&#xff1a;创建一个web站点 4、Deployment管理pod&#xff1a;扩…

邮箱验证码功能开发

该文章用于记录怎么进行邮箱验证码开发。 总所周知&#xff0c;我们在某些网站进行注册的适合总是会遇到什么填写邮箱&#xff0c;邮箱接收验证码&#xff0c;验证通过后才可以继续注册&#xff0c;那么这个功能是怎么实现的呢&#xff1f; 一&#xff0c;准备工作 1.1 邮箱…

贪心算法(2024/7/16)

1合并区间 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组&#xff0c;该数组需恰好覆盖输入中的所有区间 。 示例 1&#xff1a; 输入&#xff1a;inter…

朴素模式匹配算法与KMP算法(非重点)

目录 一. 朴素模式匹配算法1.1 什么是字符串的匹配模式1.2 朴素模式匹配算法1.3 通过数组下标实现朴素模式匹配算法 二. KMP算法2.1 算法分析2.2 用代码实现&#xff08;只会出现在选择题&#xff0c;考察代码的概率不大&#xff09; 三. 手算next数组四. KMP算法的进一步优化4…

3D可视化赋能智慧园区安防管理,开启园区管理新篇章!

3D可视化&#xff0c;主要是研究大规模非数值型信息资源的视觉呈现&#xff0c;以及利用图形方面的技术与方法&#xff0c;帮助人们理解和分析数据。 传统园区的信息化往往数据不互通&#xff0c;业务难融合&#xff0c;长期面临着服务体验差、综合安防弱、运营效率低、管理成本…

MySQL执行状态查看与分析

当mysql出现性能问题时&#xff0c;一般会查看mysql的执行状态&#xff0c;执行命令&#xff1a; show processlist 各列的含义 列名含义id一个标识&#xff0c;你要kill一个语句的时候使用&#xff0c;例如 mysql> kill 207user显示当前用户&#xff0c;如果不是root&…

烟雾监测与太阳能源:实验装置在其中的作用

太阳光在烟雾中的散射效应研究实验装置是一款模拟阳光透过烟雾环境的设备。此装置能帮助探究阳光在烟雾中的传播特性、散射特性及其对阳光的影响。 该装置主要包括光源单元、烟雾发生装置、光学组件、以及系统。光源单元负责产生类似于太阳光的光线&#xff0c;通常选用高亮度的…

2024牛客暑期多校训练营1 A题(A Bit Common )解题思路

前言&#xff1a; 今年和队友报了牛客暑期多校比赛&#xff0c;写了一下午结果除了签到题之外只写出了一道题&#xff08;A&#xff09;&#xff0c;签到题没什么好说的&#xff0c;其他题我也没什么好说的&#xff08;太菜了&#xff0c;根本写不出来&#xff09;&#xff0c;…

django-ckeditor富文本编辑器

一.安装django-ckeditor 1.安装 pip install django-ckeditor2.注册应用 INSTALLED_APPS [...ckeditor&#xff0c; ]3.配置model from ckeditor.fields import RichTextFieldcontent RichTextField()4.在项目中manage.py文件下重新执行迁移&#xff0c;生成迁移文件 py…