牙科 网站建设方案,wordpress 归档文章,培训手机软件开发,怎么做坑人网站Minimind 是一个“小”语言模型#xff0c;总共只有 2500 万个参数#xff0c;最小版本体积只有 GPT-3 的七千分之一#xff0c;作者称只需要3块钱2小时就可以完成训练#xff0c;项目地址为#xff1a;https://github.com/jingyaogong/minimind。为防止误解#xff0c;“…Minimind 是一个“小”语言模型总共只有 2500 万个参数最小版本体积只有 GPT-3 的七千分之一作者称只需要3块钱2小时就可以完成训练项目地址为https://github.com/jingyaogong/minimind。为防止误解“2小时” 基于NVIDIA 3090硬件设备单卡测试“3块钱” 指GPU服务器租用成本具体规格详情见下文。Minimind 完全从0开始对大语言模型实现了全阶段开源复现是入门 LLM 的绝佳教程。 本文将根据项目文档完成两阶段训练预训练和有监督微调初步感受一下“大”模型的训练过程环境准备Minimind 作者的软硬件配置仅供参考CPU: Intel(R) Core(TM) i9-10980XE CPU 3.00GHzRAM: 128 GBGPU: NVIDIA GeForce RTX 3090(24GB) * 8Ubuntu 20.04CUDA 12.2Python 3.10.16requirements.txt我的软硬件配置我的个人电脑GPU只有500M显存所以使用了云主机ModelScope 免费提供的阿里云PAI-DSW实例36个小时完成本文训练共花费4小时左右8核CPU 32GB内存NIVDIA A1024G显存Ubuntu 22.04CUDA 12.1Python 3.10.16Miniconda虚拟环境获取代码# 从 github 下载代码并进入项目目录git clone https://github.com/jingyaogong/minimind.gitcd minimind# 创建虚拟环境并激活conda create --name minimind python3.10.16conda initconda activate minimind# 安装需要的依赖pip install -r requirements.txt下载数据# 还是在 minimind 目录pip install modelscopemodelscope download --dataset gongjy/minimind_dataset --local_dir ./dataset总共下载了 20 多 G 的数据都是 jsonl 格式预训练预训练需要执行一个 python 文件python train_pretrain.py预训练过程其实是有一些参数可以调整的但为了快速完成训练我们先全部使用默认参数。预训练所使用的数据在我的这个云主机里训练一个 epoch大概需要两个小时有监督微调有监督微调也只需要执行一个 python 文件python train_full_sft.py微调使用的数据格式和预训练不同对对话的双方做了区分从肉眼上看微调的速度比预训练略快模型评估经过上面的训练我们得到了两个模型一个是预训练模型一个是微调模型都在 out 目录下可以看到两个模型的大小一模一样说明两个模型的结构应该是相同的。 下面我们使用 python eval_model.py 来比较两个模型的表现eval_model.py 这个文件接收两个参数-load 参数用来指示加载我们自己训练的模型在 out 目录还是加载从Huggingface下载下来的模型在 MiniMind2 目录model_mode 参数用来指示加载哪个阶段的模型0表示预训练模型1表示微调模型2表示RLHF模型等首先是项目自带的评测可以看出虽然都只训练了一个epoch微调后的模型比预训练模型明显强了很多即使存在信息不准确或者错误但是对话的语气和意图是很明显的而预训练模型就差了很多而且看起来似乎有时没办法终止对话。再来看看人工评测我问了两个模型三个相同问题豆腐脑甜的好吃还是咸的好吃大模型是什么东西邓紫棋哪首歌好听下面是它们的回答和自动评测的结果差不多微调模型“知道”自己在对话而预训练模型的回答非常发散。项目也提供了 Web 页面和模型交互的方法通过 streamlit 实现cd scriptsstreamlit run web_demo.py对话界面长这样后续以上就是我的 Minimind 初体验由于时间和成本问题预训练模型和微调模型都只训练了一个 epoch模型表现不是很给力但是这不影响我们了解大模型的训练过程后续我会进一步深入研究 Minimind 项目包括复现其它的训练阶段研究训练代码以及过程中发现的其他问题。如果你也对此感兴趣或者有学习大模型的建议欢迎指点和交流Minimind 项目实践总结项目概述​Minimind 是一个仅 2500 万参数的小型语言模型体积为 GPT-3 的 1/7000具有低成本3 元 2 小时训练、全阶段开源的特点适合作为 LLM 入门实践教程。实践过程​环境与数据准备​使用云主机16GB 显存替代本地低配 GPU克隆代码、创建虚拟环境、安装依赖通过 ModelScope 下载 20GB 的 JSONL 格式数据集两阶段训练​预训练使用默认参数在通用文本数据上训练约 2 小时/epoch有监督微调使用对话格式数据训练速度比预训练略快得到结构相同、大小一致的两个模型预训练 微调模型评估​自动评测微调模型在对话意图、语气连贯性上显著优于预训练模型人工测试微调模型能理解对话上下文预训练模型回答发散且难以终止Web 交互通过 Streamlit 实现可视化对话界面关键发现​即使仅训练 1 个 epoch有监督微调仍能大幅提升模型的对话能力预训练模型缺乏对话逻辑微调后能初步掌握对话结构与意图理解项目完整复现了 LLM 核心训练流程具有较好的学习参考价值后续计划​作者将继续深入研究复现其他训练阶段如 RLHF分析训练代码实现细节探索训练过程中的问题与优化方向项目价值​Minimind 以极低的硬件门槛和清晰的代码实现为初学者提供了完整的 LLM 训练实践路径帮助理解从预训练到微调的全流程是入门大模型技术的优质实践项目。Minimind 是一个仅 2500 万参数的开源小语言模型旨在以极低成本复现大模型全流程。笔者通过云主机完成了其预训练与有监督微调两阶段实践。结果显示即使仅训练一个周期微调后的模型在对话意图与连贯性上也显著优于原始预训练模型。该项目代码清晰、资源要求低为初学者理解与动手训练大模型提供了绝佳的入门路径。