问题:
1. 深度学习训练的常规步骤
2. 微调模型的几个思考方向 → 把次序调后以便连贯
3. 构建自己的数据集用于微调大模型
4. 各种微调方式的实现
编写代码:
模型训练的数据保存格式有很多种,datasets库提供了相关的方法从网上下载并加载导入,所以就不需要重复造轮子了。datasets是HuggingFace开发的,所以默认了从其网站下载数据的功能。在这里我们实现本地加载数据功能。
我们使用jsonl格式,以方便编辑和浏览。它和json的区别就是,每行都是一个json对象(也可以理解为python中的dict对象)。按咱的惯例先定义路径和数据格式:
cur_path = os.getcwd()
class DataPathEnum(str, Enum):
GPT2XL_TRAIN_DATA_DIR = "gpt2xl"
def __str__(self):
return os.path.join(cur_path, "data", self.value)
数据文件路径和文件名为:
question, novel, konwledge是数据分类的名称,代表我要训练问答、小说、知识之类的内容。后面带_e的文件代表的是验证数据文件,两种文件里的格式一致。
question.jsonl其中的数据格式如下:(你完全可以自定义)