大模型训练与微调(3)——温度值参数T(Tempreture)对模型效果的影响


温度值(Temperature)是控制语言模型生成结果随机性的重要参数,主要通过对概率分布进行缩放来影响输出多样性。以下从数学原理和实际示例两个角度分析其作用机制:


一、数学原理分析

设模型输出的原始logits为 z = [ z 1 , z 2 , . . . , z n ] z = [z_1, z_2, ..., z_n] z=[z1,z2,...,zn],温度参数为 T T T,则经过温度调整后的概率分布为:
P i = e z i / T ∑ j = 1 n e z j / T P_i = \frac{e^{z_i / T}}{\sum_{j=1}^n e^{z_j / T}} Pi=j=1nezj/Tezi/T

温度对概率分布的影响:

  1. T → 0 T \to 0 T0(低温)

    • 放大最大logit值的权重,概率分布趋向于尖锐化(Peaky)。
    • 模型倾向于选择概率最高的token,输出确定性高但多样性低。
  2. T = 1 T = 1 T=1(默认)

    • 保持原始logits的概率分布。
  3. T > 1 T > 1 T>1(高温)

    • 缩小不同logit值的差异,概率分布趋向于平滑化(Smooth)。
    • 模型更可能选择低概率的token,输出多样性高但可能不连贯。

二、实例分析

假设模型对下一个token的logits为 z = [ 2.0 , 1.0 , 0.1 ] z = [2.0, 1.0, 0.1] z=[2.0,1.0,0.1],对应词汇为 [“蓝色”, “灰色”, “红色”]。

1. 低温( T = 0.5 T = 0.5 T=0.5

调整后概率:
P = [ e 2.0 / 0.5 e 4 + e 2 + e 0.2 , e 1.0 / 0.5 e 4 + e 2 + e 0.2 , e 0.1 / 0.5 e 4 + e 2 + e 0.2 ] ≈ [ 0.88 , 0.12 , 0.00 ] P = \left[ \frac{e^{2.0/0.5}}{e^{4} + e^{2} + e^{0.2}}, \frac{e^{1.0/0.5}}{e^{4} + e^{2} + e^{0.2}}, \frac{e^{0.1/0.5}}{e^{4} + e^{2} + e^{0.2}} \right] \approx [0.88, 0.12, 0.00] P=[e4+e2+e0.2e2.0/0.5,e4+e2+e0.2e1.0/0.5,e4+e2+e0.2e0.1/0.5][0.88,0.12,0.00]
输出结果:几乎必然选择"蓝色"(如:“天空是蓝色”)。

2. 默认温度( T = 1 T = 1 T=1

概率分布:
P = [ e 2.0 e 2 + e 1 + e 0.1 , e 1.0 e 2 + e 1 + e 0.1 , e 0.1 e 2 + e 1 + e 0.1 ] ≈ [ 0.65 , 0.24 , 0.11 ] P = \left[ \frac{e^{2.0}}{e^{2} + e^{1} + e^{0.1}} , \frac{e^{1.0}}{e^{2} + e^{1} + e^{0.1}}, \frac{e^{0.1}}{e^{2} + e^{1} + e^{0.1}} \right] \approx [0.65, 0.24, 0.11] P=[e2+e1+e0.1e2.0,e2+e1+e0.1e1.0,e2+e1+e0.1e0.1][0.65,0.24,0.11]
输出结果:较大概率选择"蓝色",偶尔选择"灰色"或"红色"。

3. 高温( T = 2 T = 2 T=2

调整后概率:
P = [ e 2.0 / 2 e 1 + e 0.5 + e 0.05 , e 1.0 / 2 e 1 + e 0.5 + e 0.05 , e 0.1 / 2 e 1 + e 0.5 + e 0.05 ] ≈ [ 0.43 , 0.33 , 0.24 ] P = \left[ \frac{e^{2.0/2}}{e^{1} + e^{0.5} + e^{0.05}}, \frac{e^{1.0/2}}{e^{1} + e^{0.5} + e^{0.05}}, \frac{e^{0.1/2}}{e^{1} + e^{0.5} + e^{0.05}} \right] \approx [0.43, 0.33, 0.24] P=[e1+e0.5+e0.05e2.0/2,e1+e0.5+e0.05e1.0/2,e1+e0.5+e0.05e0.1/2][0.43,0.33,0.24]
输出结果:可能生成"蓝色"、“灰色"甚至"红色”(如:“天空是红色”,尽管逻辑性下降)。


三、实际应用场景

  1. 低温度( T < 1 T < 1 T<1)

    • 适合需要确定性的任务(如代码生成、事实问答)。
    • 示例输入:“法国的首都是”
    • 输出:“巴黎”(概率99%)。
  2. 高温度( T > 1 T > 1 T>1)

    • 适合需要创造性的任务(如诗歌生成、故事创作)。
    • 示例输入:“夜晚的森林里”
    • 可能输出:“萤火虫在闪烁” 或 “传来神秘的脚步声”。

四、温度与其他参数的关系

温度常与Top-k或Top-p采样结合使用:

  • 高温 + Top-p=0.9:在多样候选词中随机选择。
  • 低温 + Top-k=1:强制选择最高概率词(类似贪婪搜索)。

总结

温度值通过缩放logits改变输出概率分布的平滑程度:

  • 低温度:输出稳定但保守,适合精确性任务。
  • 高温度:输出多样但可能不连贯,适合创造性任务。

实际应用中需根据任务需求调整温度值,例如对话系统常使用 ( T=0.7 ) 平衡确定性与多样性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值