
概述BitNet b1.58模型的再现性和性能
BitNet b1.58模型使用RedPajama数据集进行训练,涵盖100B个令牌,重点研究超参数调节与两阶段学习率及权重衰减的优化。在不同参数下测评PPL和零样本准确率,揭示出因数据处理等随机因素导致的再现性细微差异。模型在Huggingface平台开源,配套评价方法简化效能验证。
bitnet_b1_58-xl项目是对BitNet b1.58论文的再现。该项目的模型使用RedPajama数据集进行训练,处理了1000亿个令牌(tokens)。训练过程中采用了特定的超参数(hyperparameters),并按照相关论文中的建议进行了两阶段学习率调整和权重衰减。所有模型都是开源的,用户可以在Hugging Face平台的1bitLLM仓库中获取。
项目中已经训练了多种规模的模型,包括700M、1.3B和3B参数的版本。在有更多资源的时候,计划训练更大规模的模型和处理更多的令牌。
项目的重要成果反映在PPL(perplexity)和零样本准确率上。以下是一些不同规模模型的实验结果:
700百万参数模型
1.3十亿参数模型
3十亿参数模型
再现结果与报告结果的差异,可能源于训练数据处理、随机种子或其他随机因素的不同。
项目使用论文作者提供的评估流程,具体可用以下命令进行评估:
安装评估工具:
pip install lm-eval==0.3.0
使用命令行对模型进行评估:
计算困惑度(PPL):
python eval_ppl.py --hf_path 1bitLLM/bitnet_b1_58-3B --seqlen 2048
执行任务评估:
python eval_task.py --hf_path 1bitLLM/bitnet_b1_58-3B \ --batch_size 1 \ --tasks \ --output_path result.json \ --num_fewshot 0 \ --ctx_size 2048
bitnet_b1_58-xl项目展示了在大规 模数据训练下再现论文模型性能的尝试与挑战,进一步推动了1比特大语言模型的研究及开源开发。未来,随着资源条件的改善,该项目将继续在更大规模和更多数据量的模型训练上进行探索和实践。