
深度学习
文章平均质量分 87
师范大学生
登峰造极境
展开
-
Informer源码解析3——编码器与解码器解读
BatchNorm在同一特征维度上跨样本计算均值和方差(如处理一个batch中所有句子的第一个词),实际上在NLP任务中,长序列不同位置语义差异大(如句首和句尾词),跨样本统计无意义。BatchNorm在小batch size下统计量估计不准确(如GPU内存限制导致batch size较小),而LayerNorm无需跨样本统计,对batch size不敏感。由上面的表可以知道,直接使用python列表的话,子模块的参数不会被自动注册,导致训练时这些参数不会被更新。所以使用ModuleList是必要的。原创 2025-04-27 00:22:53 · 563 阅读 · 0 评论 -
Informer源码解析2——数据处理
数据是informer代码里自带的数据集。可以看到第一列是时间,以日期和小时为单位;后面的几列都是数据。我们要根据所有数据去预测最后一列的值,即WetBulbCelsius。原创 2025-04-24 00:50:19 · 997 阅读 · 0 评论 -
Informer源码解析1——参数分析
知识蒸馏的方法,一般是先训练一个性能较好的教师模型(大模型),然后使用这个大模型的输出作为软标签,用数据的真实标签作为硬标签,两者联合起来去训练学生模型(小模型)。通过这种方法,可以把模型压缩到一个非常小的规模,而训练得到的小模型能够具有与复杂模型近似的性能效果,但是复杂度和计算量却要小很多。这里96是指训练时输入序列的长度,48是解码器从编码器中获取的序列长度(编码器做了下采样,所以序列变短了),24是最终预测出的新序列长度。如果--attn设置为full,那显然--factor就失效了。原创 2025-04-22 00:38:36 · 625 阅读 · 0 评论 -
基于LSTM的文本分类2——文本数据处理
由于计算机无法认识到文字内容,因此在训练模型时需要将文字映射到计算机能够识别的编码内容。这篇文章的目的就是搞懂上面的代码如何实现,即如何构建文字数据集和迭代器。原创 2025-04-05 22:37:13 · 853 阅读 · 0 评论 -
基于LSTM的文本分类1——模型搭建
经过embedding映射后可以看到,张量out里的数据变成128*32*300的维度,300的维度就是词向量维度,可以看到data里的数据都由原来的整数映射成了向量。由于我们的数据量较小,所以使用较低的词向量维度。另外,如果使用预训练模型,词向量维度的值需要和预训练模型的值相同。全连接的输入通道数是隐藏层维度的两倍,原因是我们的模型是双向的,双向的结果都需要输出给全连接层。前面的汉字部分是模型学习的文本,后面接一个tab键是对该文本的分类。配置的重点是模型的超参数,这里分析一下模型涉及的超参数。原创 2025-04-01 00:35:25 · 1000 阅读 · 0 评论 -
pytorch中dataloader自定义数据集
from PIL import Image # 从PIL库导入Image类"""花朵分类任务数据集类,继承自torch的Dataset类""""""初始化数据集实例Args:root_dir (str): 数据集根目录路径ann_file (str): 标注文件路径transform (callable, optional): 数据预处理变换函数"""# 加载图片路径与标签的映射字典 {文件名: 标签}# 构建完整图片路径列表 [root_dir/文件名1, ...]原创 2025-03-29 23:51:45 · 597 阅读 · 0 评论 -
基于CNN的FashionMNIST数据集识别5——GoogleNet模型
从整个链路上看,googlenet的复杂度相比于之前我们提到的cnn网络更复杂。仔细分析可以看到,googlenet的网络结构里面有多个核心模块inception。搞懂inception就基本搞清楚了googlenet。原创 2025-03-20 01:05:59 · 802 阅读 · 0 评论 -
基于CNN的FashionMNIST数据集识别6——ResNet模型
在反向传播过程中,梯度通过链式法则逐层传递。对于包含 L 层的网络,第 l 层的梯度计算为:其中 a(k) 表示第 k层的激活值。当多个雅可比矩阵 ∂a(k+1)/∂a(k) 的乘积中出现大量小于1的特征值时(例如使用Sigmoid激活函数),梯度会指数级衰减();反之若特征值大于1,则梯度爆炸式增长()。实验证明,VGG-19的训练损失曲线在后期趋于平缓,参数更新停滞。网络退化问题通常是过深的网络的表达力下降导致的,原始像素信息需经过所有层的非线性变换,关键特征可能在传递过程中被破坏。原创 2025-03-23 01:04:19 · 1064 阅读 · 0 评论 -
基于CNN的FashionMNIST数据集识别4——VGG-16模型
VGG-16 是牛津大学 在 2014 年提出的经典卷积神经网络模型,发表于论文《Very Deep Convolutional Networks for Large-Scale Image Recognition》。它在 ImageNet 图像分类任务中取得了突破性成绩,核心贡献是证明了 对模型性能的重要性(当然太深了也不好)。原创 2025-03-13 00:23:40 · 398 阅读 · 0 评论 -
基于CNN的FashionMNIST数据集识别3——模型验证
和之前训练模型时的验证逻辑基本相同。只进行前向传播,将预测正确的样本个数进行累加。当模型训练完毕后,我们得到的是一组最优的参数配置。在代码运行时,需要将参数载入到模型里,再进行验证。最后要做的就是验证这组参数的表现。原创 2025-02-24 00:05:42 · 287 阅读 · 0 评论 -
基于CNN的FashionMNIST数据集识别2——模型训练
从代码里可以看出,模型训练代码主要可以分为:数据加载,模型训练,可视化展示。原创 2025-02-23 14:49:15 · 712 阅读 · 0 评论 -
基于CNN的FashionMNIST数据集识别1——模型搭建与数据准备
我们这次使用LeNet模型,LeNet是一个经典的卷积神经网络(Convolutional Neural Network, CNN)架构,最初由Yann LeCun等人在1998年提出,用于手写数字识别任务创建一个文件model.py。实现以下代码。原创 2025-02-16 22:35:37 · 935 阅读 · 5 评论