
Softmax与温度调节
深度学习
在机器学习和深度学习中,特别是在语言模型中,温度(temperature)是一个重要的参数,用于控制 softmax 函数在计算概率分布时的平滑度。 具体来说,温度影响模型在生成 token 时的概率分布,进而影响模型的输出多样性和确定性。
温度 T 是一个正数,可以调节 softmax 的平滑度。不同的温度值会对概率分布产生不同的影响:
高温度(T > 1):当温度较高时,softmax 输出的概率分布更加平滑。也就是说,所有 token 的概率更接近,从而增加了生成结果的多样性,但会导致模型输出的确定性降低。例如,如果温度非常高(接近无穷大),softmax 输出将趋于一个均匀分布,各个 token 的概率几乎相等。
低温度(0 < T < 1):当温度较低时,softmax 输出的概率分布更加尖锐。也就是说,某些 token 的概率显著高于其他 token,从而增加了生成结果的确定性,但会减少输出的多样性。例如,如果温度非常低(接近 0),softmax 输出将趋于一个稀疏分布,某些 token 的概率接近 1,而其他 token 的概率接近 0。
温度等于 1(T = 1):这是标准的 softmax,没有进行任何平滑或放大的操作,直接使用模型生成的 logits 来计算概率分布。