OpenELM是苹果公司开源的一系列大模型,包括不同参数规模的最终模型、中间checkpoint、training log以及训练框架和具体配置等。由于OpenELM是软件模型,它不依赖于特定的硬件配置来运行,而是可以在各种具备相应计算能力的设备上部署。以下是关于其模型设计、数据预训练、训练超参以及评估等方面的详细介绍:
模型设计
- 层叠缩放设计:OpenELM采用了layer-wise scaling的设计,对每层的超参进行scaling,以优化参数量的分配。
- 技术细节:所有linear层都没有使用biaspre-norm + RMSNorm,RoPEGQASwiGLU FFN和LLAMA相同的tokenizer,这些都是比较常规的设计。
数据预训练
- 数据来源:RefinedWeb、deduplicated PILE、a subset of RedPajamaa subset of Dolma v1.6,总共约1.8T token。
训练超参
- 训练步数:总共约350k step。
- 优化器:AdamW optimizer。
- 学习率计划:cosine learning rate schedule,warmup=5k。
- 权重衰减:0.1。
- 梯度裁剪:1.0。
评估
- 评估任务:在Standard zero-shot tasks、OpenLLM leaderboard tasks、LLM360 leaderboard taskspretrained model上进行评估。
- 效果:随着训练步数增加,效果有上升趋势。使用最后5个相隔5000 step的模型checkpoint进行滑动平均获得的模型参数,比单纯使用最后一个checkpoint要好。
如果您想获取更具体的硬件配置清单,可能需要查看特定于您所使用的OpenELM模型版本和部署环境的文档或资源。