wordpress无法创建页面,合肥seo按天扣费,计算机专业做网站运营,电商网站建设常见问题文章目录 主流应用方向核心流程#xff08;5步#xff09;1.选定语言模型结构2.收集标注数据3.forward 正向传播4.backward 反向传播5.使用模型预测真实场景 主流应用方向
文本分类文本匹配序列标注生成式任务
核心流程#xff08;5步#xff09; 基本流程实现的先后顺序… 文章目录 主流应用方向核心流程5步1.选定语言模型结构2.收集标注数据3.forward 正向传播4.backward 反向传播5.使用模型预测真实场景 主流应用方向
文本分类文本匹配序列标注生成式任务
核心流程5步 基本流程实现的先后顺序每一步都包含很多技术点
1.选定语言模型结构
语言模型作用 判断那一句话相对更合理相对不合理的会得到较底的分值需要挑选成句概率分值最高的。评价指标PPLPerplexity 困惑度 评估一个语言模型在给定数据集上的预测效果PPL 值与成句概率成反比PPL 越小成句概率越高 模型分类 SLM 统计语言模型 ngramNLM 神经语言模型2003 RNN循环神经网络 LSTMRNN 进阶版 CNN卷积神经网络 GRUPLM 预训练语言模型2018 基于 Transformer 架构 BERT预训练模型 生成式任务是逐词预测bert 是预测缺失的词或者句子前后关系GPT 生成式模型一系列类 bert 模型 LLM 大语言模型2023 GhatGPT
2.收集标注数据
样本数据预测数据
3.forward 正向传播
模型超参数随机初始化
训练轮数epoch_num每次训练样本个数batch_size样本文本长度window_size学习率lr隐藏层hidden_size模型层数layer_num 构建词表 load_vocab 构建数据集 dataset 模型组成 离散值连续化可选 Padding可选 将不同长度的文本补齐或截断到统一长度使得不同长度的文本可以放在同一个batch内运算补齐所使用的token需要有对应的embedding向量 embedding 层 作用 将字符转为向量 将离散型的输入数据如单词、类别等映射到连续的向量空间中核心 将离散值转化为向量 形状[vocab_dim, hidden_size] hidden_size 是embedding 的下一层模型的输入形状 模型结构处理连续数据 pooling 池化层 embedding 结果要先转置后才能 pooling embedding.transpose(1,2) 作用 降低后续网络层的输入维度缩减模型大小 -提高计算速度提高鲁棒性防止过拟合 分类 平均池化最大池化 全连接层 作用 将前面层提取到的特征进行组合和加权参数可通过反向传播学习适应不同数据和任务提高模型的表示能力 更好地捕捉数据中的复杂模式和关系通过堆叠多个全连接层结合非线性激活函数模型就可以学习更复杂的非线性映射 分类与回归 分类任务中 将特征映射到不同类别的概率分布上方便模型对输入进行分类 回归任务中 生成连续值的预测 参数 权重Weights 是模型中每个神经元或连接的参数权重矩阵定义了输入和输出之间的关系 偏置Biases 额外参数与权重一起用于计算激活函数的输入 激活函数可选 不会改变输入内容的形状 作用 引入非线性变换 全连接层仅可线性变换将激活函数结果传递给下一个全连接层可在学习复杂任务时更好的表达数据的抽象特征 约束输出范围提高模型的数值稳定性 常用激活函数 Sigmoidtanh RNN 自带一个 tanhRelu 可以防止梯度消失问题Gelu Normalization 归一化层可选 对输入数据进行归一化处理使其具有零均值和单位方差加速模型训练过程提高模型稳定性和收敛速度 代码 from torch.nn import BatchNorm1d self.bn1 BatchNorm1d(50) 分类 批量归一化 batch normalization 对每一层的向量求平均再求标准差之后进行公式计算获得可训练参数 样本与其他样本归一化适合 cv适合两张图片之间相似度评价 层归一化 layer normalization 纵向向量求平均再求标准差之后进行公式计算获得可训练参数 样本内进行归一化适合 nlp适合文本 dropout 层可选 代码 from torch.nn import Dropout self.dropout Dropout(0.5)是一种常用的正则化技术 作用 减少神经网络的过拟合提高模型的泛化能力强制网络学习更加健壮和泛化的特征减少神经元之间的依赖关系使得网络更加鲁棒 在训练期间 随机“丢弃”一些神经元 以一定的概率通常在0.2到0.5之间随机地将隐藏单元的输出置为零保持总体期望值不变 将其余值按比例进行缩放 在测试期间 Dropout不会应用而是将所有神经元的输出乘以保留概率以保持输出的期望值 获取预测值 计算 loss 是指预测值与样本真实值之间的loss计算。 常见 loss 函数 均方差MSE 回归场景交叉熵Cross Entropy 分类场景BCE 0/1损失 分类场景一般输入为 sigmod 的输出指数损失对数损失Hinge损失
4.backward 反向传播
Optimizer 优化器 Adam SGD 进阶版在模型的权重没有收敛之前没有训练到预期结果之前不断循环计算历史每轮的梯度都参与计算。可无脑选择使用的优化器。是非常好的baseLine一般出问题不会因为adam 出问题。特点 实现 一阶动量 历史 n 轮梯度差值二阶动量 历史 n 轮梯度的平方差避免由于一阶动量与二阶动量初始值为零向量引起参数估计偏向于 0 的问题 一阶动量偏差修正 一阶动量历史累计值/(1-超参数 t 次方)二阶动量偏差修正 二阶动量历史累计值/(1-超参数 t 次方) 权重更新 SGD 计算逻辑新权重 旧权重 - 学习率 * 梯度 optmi-梯度归零 optimizer.zero_grad()loss-反向传播计算梯度 loss.backward()optim-更新权重 optimizer.step()
5.使用模型预测真实场景
经过前4步得到训练好的模型将模型投放到真实场景进行预测。