在启智平台上训练LLM——PanGu
简介
pcl_pangu项目的目标是将
鹏城·盘古
[项目主页]开源模型、以及基于该模型的一系列任务拓展与持续学习得到的模型从语料数据预处理到模型训练推理部署整个流水线封装成开发工具包SDK。其目标与特点在于:
- 向开发者提供简单易用的 鹏城·盘古应用拓展API,包括数据预处理、模型预训练、推理、微调、模型转换、模型压缩等功能。您可以快速体验鹏城·盘古大模型,并且可以轻松的开发自己的模型;
- 向开发者提供基于鹏城·盘古大模型的应用拓展案例,如:鹏城.盘古增强版(Evolution);鹏城·盘古多语言模型(mPanGu);
- 支持 mindspore 和 pytorch 框架,支持 NPU 和 GPU 设备;提供 mindspore 和 pytorch 模型转换工具,可实现鹏城·盘古模型异构框架的快速切换及兼容生态发展。
启智AI协作平台平台面向AI领域的一站式协同开发环境,提供集代码开发环境,数据管理、模型调试、推理和评测为一体的AI开发流水线
训练配置![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/038535f13dda0c47a889510aad4b4c84.png)
在平台上跑了快21个小时,训练过程中loss的变化一言难尽,详细情况如下:
上面这个是打印的日志文件的截图
这个是Loss值在每个Epoch中的变化情况,没有明细的下降上升趋势,更不用说收敛了,只是单纯的在一个区间范围内来回波动。
看到上面的这些图,我陷入了深深的沉思。
具体依据如下:
如果损失值在一个区间内来回波动,并没有明显的下降或上升趋势,可能表示模型的训练效果不稳定或存在问题。以下是一些可能的原因和解决方法:
- 学习率设置不合适:学习率过大可能导致训练不稳定,损失值震荡;学习率过小可能导致训练进展缓慢。您可以尝试调整学习率的大小,选择合适的学习率来平衡模型的收敛速度和稳定性。
- 模型复杂度过高:如果模型过于复杂,可能会导致训练过程中的震荡。可以考虑简化模型结构、减少网络层数或参数量,以降低模型的复杂度。
- 数据集问题:如果训练数据集存在噪声或标注错误,可能会导致训练过程中的不稳定性。可以检查数据集的质量,并尝试使用更干净、更准确的数据集进行训练。
- 正则化方法不当:正则化方法如权重衰减、Dropout等可以帮助提高模型的泛化能力,但过度使用或不恰当的正则化方法可能会导致模型过度拟合或欠拟合。可以检查正则化方法的设置,根据情况进行调整。
- 初始权重设置不当:初始权重的选择可能会对模型的训练产生影响。可以尝试不同的权重初始化方法,例如Xavier初始化、He初始化等,看是否对训练过程产生影响。
- 训练样本不平衡:如果训练样本类别不平衡,可能会导致模型倾向于预测样本较多的类别,而忽略样本较少的类别。可以尝试处理样本不平衡的方法,如欠采样、过采样或类别加权等。
写在最后
雄关漫道真如铁,而今迈步从头越