下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第8章大模型微调一、问答题
1.简述大模型微调的意义和作用。答:大模型微调的核心意义是让预训练大模型适配特定任务或场景。预训练模型虽具备通用知识与能力,但在具体任务(如专业领域分类、特定风格生成)中表现不足。通过使用目标任务数据微调,可微调模型参数,强化任务相关特征,提升预测精准度、输出贴合度与效率,同时保留通用能力,避免从零训练的高成本,实现“通用模型+专属适配”的高效落地。
简述大模型微调的主流分类及其差异。答:大模型微调主流分全量微调和参数高效微调两类。全量微调更新模型所有参数,适配性强、性能拉满,但算力消耗大,易过拟合,适合数据充足、算力足的场景。参数高效微调含LoRA、QLoRA等。LoRA训练低秩矩阵,大幅减参;QLoRA叠加量化技术,显存占用更低,适配超大规模模型单卡训练;此外还有插入适配模块的AdapterTuning,均适合算力有限、小数据场景,性能略逊全量微调。
3.简述大模型微调的常见应用场景。答:大模型微调的常见应用场景聚焦“通用能力适配特定需求”,覆盖多领域落地需求:专业领域任务:如法律合同分析、医疗病历解读、金融财报摘要,通过行业数据微调,让模型掌握专业术语与逻辑。企业级定制:适配内部知识库问答、客户服务话术生成、办公文档自动化处理,贴合企业业务流程。内容创作个性化:微调后生成特定风格文案(营销、学术、文学)、适配方言/专业表述的文本。垂直场景优化:如代码生成(适配特定编程语言)、机器翻译(聚焦小语种/专业领域)、推荐系统(贴合用户偏好)。二、实践题
通过微调BERT模型进行英文文本的精准分类任务。要求:使用PyTorch和Transformers库包,数据集任选。答:基于PyTorch和Transformers库,通过微调BERT模型实现英文文本精准分类的完整示例,选用AGNews新闻分类数据集(4分类:世界/体育/商业/科技)。运行环境准备#安装依赖库包pipinstalltorchtransformersdatasetsscikit-learn2、代码实现importtorchimporttorch.nnasnnfromtorch.utils.dataimportDataLoaderfromtransformersimportBertTokenizer,BertForSequenceClassification,AdamWfromtransformersimportget_linear_schedule_with_warmupfromdatasetsimportload_datasetfromsklearn.metricsimportaccuracy_score#1.基础配置DEVICE=torch.device("cuda"iftorch.cuda.is_available()else"cpu")MODEL_NAME="bert-base-uncased"#英文小写BERT预训练模型BATCH_SIZE=32EPOCHS=2#小数据集微调无需过多轮次LR=2e-5MAX_SEQ_LEN=64#AGNews文本较短,适配长度#2.加载数据集(AGNews4分类)dataset=load_dataset("ag_news")train_data=dataset["train"]test_data=dataset["test"]#3.加载BERT分词器tokenizer=BertTokenizer.from_pretrained(MODEL_NAME)#4.数据预处理:文本→模型输入格式defpreprocess(examples):#分词:截断/填充到固定长度,返回tensorencodings=tokenizer(examples["text"],truncation=True,padding="max_length",max_length=MAX_SEQ_LEN,return_tensors="pt")encodings["labels"]=torch.tensor(examples["label"])#标签转为tensorreturnencodings#批量预处理数据集train_enc=train_data.map(preprocess,batched=True)test_enc=test_data.map(preprocess,batched=True)#适配PyTorchDataLoader格式train_enc.set_format(type="torch",columns=["input_ids","attention_mask","labels"])test_enc.set_format(type="torch",columns=["input_ids","attention_mask","labels"])#创建数据加载器train_loader=DataLoader(train_enc,batch_size=BATCH_SIZE,shuffle=True)test_loader=DataLoader(test_enc,batch_size=BATCH_SIZE,shuffle=False)#5.加载微调版BERT分类模型model=BertForSequenceClassification.from_pretrained(MODEL_NAME,num_labels=4#AGNews为4分类,对应调整分类头).to(DEVICE)#6.优化器与学习率调度器(微调核心配置)optimizer=AdamW(model.parameters(),lr=LR)total_steps=len(train_loader)*EPOCHSscheduler=get_linear_schedule_with_warmup(optimizer,num_warmup_steps=0,num_training_steps=total_steps)#7.微调训练函数deftrain(model,loader):model.train()total_loss=0forbatchinloader:#数据移至设备input_ids=batch["input_ids"].to(DEVICE)attention_mask=batch["attention_mask"].to(DEVICE)labels=batch["labels"].to(DEVICE)#前向传播outputs=model(input_ids,attention_mask=attention_mask,labels=labels)loss=outputs.losstotal_loss+=loss.item()#反向传播+梯度裁剪(防止微调梯度爆炸)loss.backward()nn.utils.clip_grad_norm_(model.parameters(),1.0)optimizer.step()scheduler.step()optimizer.zero_grad()returntotal_loss/len(loader)#8.评估函数defevaluate(model,loader):model.eval()all_preds=[]all_labels=[]withtorch.no_grad():forbatchinloader:input_ids=batch["input_ids"].to(DEVICE)attention_mask=batch["attention_mask"].to(DEVICE)labels=batch["labels"].to(DEVICE)outputs=model(input_ids,attention_mask=attention_mask)preds=torch.argmax(outputs.logits,dim=1)#取概率最大类别all_preds.extend(preds.cpu().numpy())all_labels.extend(labels.cpu().numpy())returnaccuracy_score(all_labels,all_preds)#9.执行微调与评估if__name__=="__main__":forepochinrange(EPOCHS):train_loss=train(model,train_loader)test_acc=evaluate(model,test_loader)print(f"Epoch{epoch+1}
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国农业大学《模拟电子技术实验B》2024-2025学年第二学期期末试卷
- 广州涉外经济职业技术学院《证券投资学含实验》2024-2025学年第二学期期末试卷
- 大连民族大学《花式篮球》2024-2025学年第二学期期末试卷
- 河北经贸大学经济管理学院《节目主持人》2024-2025学年第二学期期末试卷
- 江西信息应用职业技术学院《语音识别技术与应用实验》2024-2025学年第二学期期末试卷
- 黑龙江农业经济职业学院《中西医结合内科学Ⅰ》2024-2025学年第二学期期末试卷
- 黑龙江幼儿师范高等专科学校《农业水资源利用》2024-2025学年第二学期期末试卷
- 齐鲁师范学院《文献目录与信息检索》2024-2025学年第二学期期末试卷
- 齐齐哈尔高等师范专科学校《高级网站开发技术》2024-2025学年第二学期期末试卷
- 2025-2026学年长方体正方体体积教案
- 2026年黑龙江农业工程职业学院单招职业倾向性测试题库附答案详解
- 医学心理学虚拟案例库建设
- 纯化水监测管理制度
- 流行性腮腺炎课件及卷子
- 家畜普通病学课件
- 雨课堂学堂云在线《身边的营养学》单元测试考核答案
- 2025年六枝特区考调试题及答案
- 2026年苏州工业职业技术学院单招职业技能测试必刷测试卷附答案
- 液化气站安全隐患排查整改台账
- 供热管网系统运行工岗前基础实操考核试卷含答案
- 男士吹风课件
评论
0/150
提交评论