迁移学习案例_中文文本分类案例

1. 通过微调方式进行迁移学习的两种类型

类型一:直接加载预训练模型进行输入文本的特征表示,后接自定义网络进行微调输出结果;

类型二:使用指定任务类型的微调脚本微调预圳练模型,后接带有输出头的预定义网络输出结果,说明:所有类型的实战演示,都将针对中文文本进行;

2. 迁移学习-中文分类

即中文句子分类。

任务介绍 :直接加载预训练模型进行输入文本的特征表示,后接自定义网络进行微调输出结果;

数据介绍:数据文件有三个train.csv,test.csv,validation.csv,数据样式都是一样的。(都只有2列数据:标签、文本);

通过huggingface的datasets工具,加载信息文件;使用datasets中的load_dataset()方法来读取数据,如:csv文件;之前是 先构建数据源对象DataSet,再构建数据加载器DataLoader;此方法好处是:在这里datasets这个第三方库的load_dataset方法读取文件,直接得到一个DataSet对象,即此第三方库可帮忙完成第三方库的构建;load_dataset("csv", data_files=my_files, split="train")第一个参数是当前要读取的文件类型,后面data_files文件路径跟的是什么样的文件类型、这里就指明什么样的文件:如果后面是csv则此处是csv、如果是txt则是txt、如果是json则是json;

2.1 数据预处理

2.2 自定义下游任务网络模型

自定义单层的全连接网络作为微调网络。根据实际经验,自定义的微调网络参数总数应大于0.5倍的训练数据量,小于10倍的训练数据量,这样有助于模型在合理的时间范围内收敛。

定义下游任务模型:定义一个类继承 nn.Module,init方法、forward方法;init方法:直接实例化一个linear层:输入特征768(因为BertModel只是一个特征提取器,不具备任何任务输出特征头,所以bert后的结果还是867维的向量)、输出特征2(因为整个文本做二分类,所以输出特征是2)。forwar方法:input_ids, attention_mask, token_type_ids三个参数即前面处理过的3个输入,这3个输入不是直接给上面的 nn.Linear的,而是先经过预训练模型(前面加载的预训练模型bert_model),得到bert模型编码后的结果因为预训练模型不参与训练,所以需要将参数冻结,使用with torch.no_grad():进行冻结 ,只对其代码范围内的bert模型这块起作用(即未对齐这行),全连接层没有在代码范围内,所以对其不起作用 (pooler_output = bert_output.pooler_output这行不要写进去,bert_output"pooler_output" 代表每个样本的CLS - -token对应的隐藏层输出结果,代表整个句子的语意)但是上面的全连接层要进行模型的训练**;(为了不让预训练模型的参数进行更新,这里需要使用 with torch.no_grad():得到预训练后的结果,再送给全连接层,得到预测的结果)。

2.3 模型训练

2.4 模型评估

模型训练:

模型评估:

相关推荐
叠层归一研究院6 小时前
AGI 系统(八):符号范畴嵌入函子 — SymCat ↪ C_M107 严格化
c语言·开发语言·人工智能·算法·transformer·agi
Lee_jerome15 小时前
python神经网络编程入门(三十五)——Transformer 整体架构——一张图看懂全貌
nlp·transformer·encoder·注意力机制·decoder·交叉注意力·self-attention
_codemonster20 小时前
Transformer的核心机制
人工智能·深度学习·transformer
AI即插即用2 天前
即插即用系列 | IEEE TMI PLG-HN:原型学习引导的 CNN-Transformer 混合网络,攻克乳腺肿瘤分割难题
人工智能·深度学习·神经网络·学习·目标检测·cnn·transformer
Lee_jerome2 天前
python神经网络编程入门(三十三)——多头注意力(Multi-Head Attention)
深度学习·nlp·transformer·注意力机制·多头注意力·self-attention
爱知菜2 天前
Transformer vs Diffusion:为什么扩散模型更擅长捕捉细节?
人工智能·深度学习·transformer·扩散模型
ʜᴇɴʀʏ2 天前
ICCV 2025 | STEP-DETR:基于超级教师与伪标签引导文本查询的半监督目标检测
人工智能·目标检测·计算机视觉·transformer
杀生丸学AI2 天前
【前馈三维重建】SAF3R:前馈式3D重建Transformer的动态稀疏注意力(加速)
深度学习·3d·transformer
梦想的初衷~3 天前
人工智能核心模型详解教程:注意力机制、Transformer、CV、NLP与多模态大模型
人工智能·深度学习·transformer
大模型丫丫4 天前
深入解析:HashMap、HashTable 与 ConcurrentHashMap 的核心区别
人工智能·transformer