我在5小时内在H100上训练了一个117M参数的Silia模型。

Reddit r/singularity 模型

摘要

一个拥有1.17亿参数的Silia模型在H100 GPU上使用8200万个token训练了5小时。该模型严重欠训练,但提供了与nanoGPT的对比。

大约一个月前,我在这里发布了关于自定义 Silia 架构的第一篇论文:https://www.reddit.com/r/LocalLLaMA/s/J19Qi4NXeJ 在 Ok-Internal9317 的帮助下,他决定赞助计算资源,我成功训练了一个 117M 参数的模型。你可以在这里查看模型:Hugging Face https://huggingface.co/Srijan-Srivastava/Strawberry-s1 GitHub https://github.com/SrijanSriv211/Silia/ 如何生成?示例提示词:哪种动物毒性更强——伸出骨头的蝾螈还是有尖头东西的青蛙?它们分别用什么方法伤害敌人?使用 uv 进行推理。安装 torch、numpy、regex 和 colorama。运行:uv run inference.py -i 117M_fp32/final.bin -e cl16k.bin -T "哪种动物毒性更强——伸出骨头的蝾螈还是有尖头东西的青蛙?它们分别用什么方法伤害敌人?" 生成的输出: ``` 我不明白他们为什么都一起工作。 1. 查询分解 "你的动物的生存" → 食品安全担忧 "所有动物" → 双重危险阈值 "潜在危险" → 阈值问题,不仅仅是阈值 ● 高置信度:食品安全、环境影响、食品安全 用户寻求:食品安全考量、政策影响、环境交互 2. 领域上下文化 食品安全(食品安全):食品安全、食品安全、健康需求 "所有动物" → 食品安全阈值、环境影响 "所有动物" → 食品安全阈值、食品安全担忧 "它们一起工作了吗" → 安全要求、环境条件 所需关键领域: - 食品安全生理学(飞行、进食、食品安全) - 环境风险分层 - 环境因素 - 环境交互 3. 信息状态评估 ● 高置信度 ``` Silia 研究论文 Hugging Face https://huggingface.co/Srijan-Srivastava/Strawberry-s1/blob/main/Silia%3A%20Tiny%20Scale%20Is%20All%20I%20Can%20Spare%20To%20Play%20With%20Transformer.pdf Zenodo https://zenodo.org/records/20631957 更多内容。该模型在 H100 上训练了 5 小时,使用了 https://huggingface.co/datasets/codelion/synth-100M 数据集,总计约 8200 万(81,920,000)个 token,批量大小为 8,上下文长度为 1024。由于这是一个 117M 参数的模型,仅用 8200 万 token 训练,因此严重欠训练,尤其是考虑到使用了 Muon 优化器但学习率相当低(至少我是这么感觉的)。所以没错,这个模型非常欠训练,本可以达到更低的损失。我还没有在任何基准测试上运行过。另外,我没有机会训练一个 117M 参数的 nanoGPT 模型,但由于该模型欠训练且学习率较低,我认为它的表现会比 nanoGPT 差。不过,我成功在一个 11.5M 参数的 Silia 和 nanoGPT 模型上,使用相同的 synth-100M 数据集训练了 20000 步,Silia 的最终验证损失为 3.2123,而 nanoGPT 的最终验证损失为 3.1945。有一点不同:Silia 需要稍高的学习率,最大为 3e-3,最小为 3e-4(使用余弦衰减),而 nanoGPT 需要最大 2e-3 和最小 2e-4。在与 nanoGPT 相同的 2e-3 → 2e-4 学习率下,Silia 表现更差,最终验证损失为 3.2857。快速回顾一下,架构图如下: 输入 token | [Token Embedding] | [Silia Block xN:] |--- 多头注意力 | |--- 旋转位置编码 | |--- QK 归一化 | |--- 缩放点积注意力 |--- Silu 激活函数 |--- 多头注意力 |--- 注意力残差 [输出投影(权重共享)] | 下一 token 对数概率 谢谢 :)
查看原文

相似文章

我仅能腾出小规模来摆弄Transformer

Reddit r/LocalLLaMA

一名学生介绍了Silia,这是一种新颖的Transformer架构,将注意力机制和前馈网络合并为统一操作,以在≤10M参数规模下节省参数,尽管计算资源有限,仍以更少的参数实现了与GPT-2相当的性能。