Concept
复读机现象
- 模型倾向于无限地复制输入的文本或者以过度频繁的方式重复相同的句子或短语。
原因:
- data bias:大量的重复文本,质量低
- 任务太单一
logits
logits 是模型的“原始输出”(在softmax层之前),表示每个 token 的打分,没经过任何概率归一化处理。
- 一般表示为向量
在训练中,logits 会传入 softmax 转为概率,再计算 loss:
logprobs
logprobs 是 token 被预测为某个值的对数概率,即:
- logprobs 是 logits 经过 softmax 后的 log 值(log softmax);
通常用于:
- 预测 top-k 的 token(概率最大的 token)
- 计算 perplexity
- 分析 token 被预测的置信度
由logits计算logprobs:
import numpy as np
# 假设从模型中得到的logits
logits = np.array([2.0, 1.0, 0.1])
# 计算Softmax概率
exp_logits = np.exp(logits)
probabilities = exp_logits / np.sum(exp_logits)
# 计算logprobs
logprobs = np.log(probabilities)
# 输出结果
print("Logits: ", logits)
print("Probabilities: ", probabilities)
print("Log-probabilities: ", logprobs)
Coding
world_size
报错信息:
Config mesh_device None world_size = 8
world_size 等于 num_processes,约等于分布式训练中GPU的个数。
可以在训练命令中通过修改 num_processes 参数来修改 world_size:
accelerate launch --num_processes=2
hugging face
401
权限问题,cli登录:
huggingface-cli login
403
OSError: You are trying to access a gated repo. Make sure to have access to it at [https://huggingface.co/meta-llama/Meta-Llama-3-8B-Instruct](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-sandbox/workbench/workbench.html). 403 Client Error.
访问权限错误,因为Meta-Llama-3-8B-Instruct模型是一个受限访问的仓库。
需要申请访问权限:
- 访问https://huggingface.co/meta-llama/Meta-Llama-3-8B-Instruct
- 点击"Access Request"
