本文是基于星火大模型驱动阅读理解题库构建挑战赛(点击跳转赛事官网)的一篇从从零入门大模型微调的实践课,适合于零基础小白,本篇文章是我自己的学习笔记,供大家参考
Datawhale官方的速通教程链接:从零入门大模型微调
baseline要点讲解(配合Datawhale速通教程)
step1 进入赛事报名并进行个人认证
赛事链接:2024 iFLYTEK A.I.开发者大赛-讯飞开放平台 (xfyun.cn)
第一次登录需要,大家完成个人认证
完成个人认证以后便能参赛
step2 执行baseline
首先,登录百度账号
然后运行环境
点击main,运行代码
运行完代码,下载output.jsonl
文件(首次运行要等待几分钟)
step3 模型微调
数据上传
等待处理
点击去训练后,进入模型管理页面。
等待训练(一般会训练30分钟左右,如果排队的话可能会久一些)
如果训练失败(如下面情况)就是点启动训练
等待运行成功(我等了4个小时,人太多了)
点击发布为服务
没有授权应用的去建立一个
有了应用后,返回刷新,点击发布
等待发布成功,保存参数进行测试
step4 测试模型
回到notebook
输入正确(注意这块一定要加上serviceld、resourceld,不然)
SPARKAI_APP_ID = ''
SPARKAI_API_SECRET = ''
SPARKAI_API_KEY = ''
serviceld=
resourceld=
点击启动按钮运行notebook(如果运行失败,从头运行,注意不要覆盖)
等待模型的输出
step5 提交文件,拿下第一个分数
官方链接:2024 iFLYTEK A.I.开发者大赛-讯飞开放平台 (xfyun.cn)
点击官方链接,点击提交结果
点击提交结果后,需要在大模型定制训练平台 (xfyun.cn)刚才的微调页面拿一下resourceid
接着拿好我们的prompt填写完成,后提交
提交完成后等待1-2h,就可以在提交交页面最下方处看评分结果了
注:遇到服务器开小差,刷新后(人太多了)等一会在试试
别忘记打卡&在群里接龙
Pandas库和机器学习的基础知识点(拓展)
在本次学习过程中,大家可以一边将下面推荐的材料作为字典,遇到问题时,利用这些资源、大模型和搜索引擎进行查询,以促进理论与实践的融合。通过这种方式,大家可以深刻理解理论知识的真正价值,并掌握如何在现实问题场景中应用这些知识。
Pandas基础知识介绍
pandas是 Python 中一个强大的数据分析和操作库(数据处理与分析工具集),它提供了快速、灵活和表达力强的数据结构,使数据清洗和分析工作变得简单。
1.1 数据结构
pandas
有两种基本的数据存储结构:Series和DataFrame
- Series:一维数组结构,可以存储任何数据类型。
- DataFrame:二维表格型数据结构,类似于Excel中的表格,有行和列,可以包含不同类型
1.2 索引
我们想象一下一个图书馆,索引就是图书管馆里的目录系统。当你走进一个大型的图书馆,里面有成千上万本书。如果没有目录系统,你将一本一本地查找你想要的书,这将非常耗时。我们可以理解索引就是帮助我们快速定位到特定书籍的工具。
1.2.1索引的作用
帮助我们快速访问书籍结构中的特定元素,例如图书馆的目录告诉我们每本书的位置一样。
1.2.2 索引的类型
默认索引:类似于图书馆书籍的默认排序,通常是按照书籍进入图书馆的顺序。
自定义索引:就像我们可以按照作者、标题或主题对书籍进行排序一样,在Pandas中,我们可以为Series或DataFrame设置自定义索引。
1.2.3 使用索引访问数据
我们可以通过索引值来快速访问数据,就像我们通过目录找到书的编号,然后走到相应的书架取书一样,
1.2.4 索引的层次结构
在多级索引(例如DataFrame的行和列)的情况下,可以将其比作图书馆的分类系统,其中每个书架(列)上有不同的类别(行),每个类别下有多本书(单元格数据)。
1.2.5 索引的重置
如果你重新排列图书馆的书架,可能需要更新目录系统。在Pandas中,如果需要改变索引的顺序或删除重复的索引,可以使用reset_index()
方法。
1.3 分组
我们根据数据的特征或属性将数据分组,以便于进行更有针对性的分析
1.4 缺失值处理
在使用数据之前,我们必须识别数据中的缺失值,通过删除、填充、赋值等方法来处理缺失值。
1.5 数据清洗
数据清洗的第一步是识别数据中的问题,比如错误的记录、重复的数据或缺失的值,在数据清洗中,我们会删除那些无关紧要或错误的数据记录,修正错误的数据,填补缺失的值,并通过标准化数据格式和单位,确保数据的一致性。数据清洗也是一个持续的过程,随着新数据的加入,需要定期进行清洗和更新。
(
具体属性和方法我会写一篇关于pandas是实践课)
机器学习基础知识介绍
大概1980年代以后,有了机器学习的方法。那么机器学习顾名思义,从名字就可以被猜出,就是让机器具有学习的能力。所以机器学习跟人工智慧之间什么关系呢?机器学习是人工智能的一个分支,它使计算机系统能够从数据中学习和改进,而不需要明确编程。
监督学习(Supervised Learning)
- 想象一个学生在老师的指导下学习。老师提供题目和正确答案,学生通过这些例子学习如何解决问题。在监督学习中,算法就像学生,训练数据就像题目和答案,算法通过它们学习如何预测新的未知数据。
半监督学习(Semi-Supervised Learning)
- 这就像一个学生在自学的同时偶尔得到老师的指导。半监督学习中,算法使用少量标记数据和大量未标记数据,类似于学生使用少量的例题和大量的练习题来提高自己的能力。
迁移学习(Transfer Learning)
- 想象一个擅长数学的学生,当他开始学习物理时,他可以用在数学上学到的逻辑思维和解决问题的技巧。在迁移学习中,一个在某个任务上训练好的模型被用来解决一个相关但不同的任务,就像学生将一个领域的知识应用到另一个领域。
无监督学习(Unsupervised Learning)
- 这可以比作一群孩子在没有成人指导的情况下自己玩耍和学习社交规则。无监督学习中,算法处理没有标记的数据,自己发现数据中的模式和结构,就像孩子们自己探索世界一样。
监督学习中的结构化学习(Structured Learning in Supervised Learning)
- 想象一个学生在学习有明确结构和规则的科目,比如语法。在监督学习中,结构化学习指的是算法处理具有明确结构的数据,比如表格数据,其中每列都有明确定义的属性。
强化学习(Reinforcement Learning)
- 这就像一个孩子通过不断尝试和犯错来学习骑自行车。强化学习中,算法通过与环境的交互来学习最佳行为策略,以获得最大的累积奖励,就像孩子通过练习学会平衡和控制自行车。