- 博客(15)
- 收藏
- 关注
原创 深度学习入门(鱼书)摘抄
使用交叉熵误差作为Softmax函数的损失函数,反向传播后,softmax输出(y1-t1,y2-t2,y3-t3)这样“漂亮的结果”,是正向Softmax输出与监督标签的差分,可以直截了当的表示误差。如果高斯分布的标准差为1,各层的激活函数输出结果基本会偏向0和1分布,而这时的导数值逐渐接近于0,所以在反向传播中这些数据梯度的值会逐渐变小导致梯度消失。主要是为了调整输出的大小。这是因为在误差反向传播法中,所有权重值都会做相同的更新,最后权重更新完也是相同的,这使神经网络拥有许多不同权重的值的意义丧失了。
2026-02-08 12:05:34
606
原创 大语言模型(LLM)
本文探讨了大语言模型(LLM)的创新架构与训练方法。首先介绍了LLM的三大训练阶段:预训练、监督微调(SFT)和基于人类反馈的强化学习(RLHF)。重点分析了五种创新模型架构:1)混合专家模型(MoE)通过稀疏激活专家网络减少计算量;2)旋转位置编码(RoPE)改进位置信息表示;3)多头潜在注意力(MLA)压缩KV缓存降低内存消耗;4)Swish-GLU激活函数提升FFN性能;5)RMSNorm简化层归一化计算。其中MoE部分详细比较了全加型、挑选型和共享型三种架构,并解释了其减少计算量而非参数量的特性。这
2026-01-26 18:50:33
886
原创 生成任务与Transformer
本文介绍了Transformer模型在序列生成任务中的应用。首先阐述了Encoder和Decoder的输入区别,以及训练与测试阶段的不同流程。重点分析了Decoder中自注意力模块的因果掩码机制,防止未来信息泄露。同时解释了Transformer的损失函数来自解码器输出与真实标签的交叉熵计算。文章还详细说明了交叉注意力的工作原理,即Decoder利用Encoder输出辅助生成目标序列。最后介绍了Beam Search算法,该算法通过保留多个候选路径来提高生成质量,但会增加计算开销。这些技术要点共同构成了Tr
2026-01-24 18:47:16
864
原创 Bert代码实战
文章摘要: 本文介绍了基于BERT的文本分类实现,包含三个核心部分:1) 数据处理模块使用PyTorch的Dataset和DataLoader构建训练/验证集,并采用sklearn的train_test_split进行数据划分;2) 模型部分继承BertModel,添加全连接层进行分类,详细说明了BERT输入构建方法及tokenizer参数;3) 训练流程展示了BERT模型前向传播过程,包括文本编码、注意力掩码生成和分类输出。整体实现利用预训练BERT模型进行下游文本分类任务微调,适用于酒店评论等短文本分类
2026-01-21 18:13:37
899
原创 自然语言处理
本文介绍了深度学习中的文本表示方法和序列建模技术。首先讲解了独热编码和词嵌入两种文本表示方法,重点分析了词嵌入的优势。然后详细阐述了RNN、LSTM等循环神经网络的结构特点及其局限性。接着深入解析了自注意力机制和多头注意力机制的工作原理,说明其并行处理全局信息的优势。文章还介绍了位置编码的必要性和实现方法。最后,重点讲解了BERT模型的结构特点、预训练任务(MLM和NSP)及其应用方式,包括输入表示、Transformer编码层、Pooler层和分类头的设计原理。这些技术构成了现代NLP领域的基础架构。
2026-01-20 13:14:31
990
原创 半监督——图像分类代码实战
本文介绍了半监督学习的基本原理和实现方法。半监督学习通过结合少量有标签数据和大量无标签数据来提升模型性能。文章详细说明了半监督学习的工作流程:先用少量有标签数据训练初始模型,当模型达到一定准确度后,对无标签数据进行预测并筛选高置信度样本作为伪标签,再将这些伪标签数据与原始有标签数据一起训练模型,形成迭代优化过程。 在代码实现部分,文章展示了如何固定随机种子保证实验可复现性,以及如何通过数据增强提升模型泛化能力。重点介绍了自定义Dataset类的实现方法,包括读取图像数据、处理标签以及为半监督学习设计的数据获
2026-01-17 18:49:52
843
原创 典型图像分类卷积神经网络(CNN)的基本流程
本文介绍了卷积神经网络(CNN)的基本概念与结构。首先阐述了卷积核的作用,包括特征提取、参数共享和平移不变性。其次详细说明了卷积的输入输出维度计算,涉及填充(padding)和步长(stride)的应用。接着讨论了让特征图变小的两种方法:步长和池化(pooling)。然后描述了CNN图像分类的基本流程,从卷积到全连接层形成分类头。最后简要介绍了AlexNet、VGG13和ResNet等经典CNN模型。文章重点在于解析CNN的核心计算过程,包括特征图尺寸变化和参数量的计算方法。
2026-01-15 18:18:58
529
原创 回归实战代码详解
本文摘要: 本文介绍了使用PyTorch框架构建COVID-19预测模型的关键步骤。首先导入必要的库,包括数据处理、神经网络和优化模块。然后定义自定义数据集类,实现数据预处理、标准化和划分功能。接着构建一个简单神经网络模型,包含两个全连接层和ReLU激活函数。最后详细说明了训练流程,包括损失计算、反向传播、参数更新,以及模型评估和保存最佳模型的机制。整个过程涵盖了PyTorch模型开发的核心环节,包括数据准备、模型构建、训练验证等关键步骤。
2026-01-13 17:23:31
708
原创 手动linear线性回归训练
本文介绍了使用PyTorch实现线性回归模型的完整流程。首先通过create_data函数生成500个带噪声的合成数据样本,基于真实参数true_w和true_b。然后构建了数据加载器data_provider,实现随机分批功能。模型采用简单的线性函数fun,损失函数为MAE,优化使用SGD算法。在训练过程中,通过50个epoch迭代更新参数w_0和b_0,最终学习到的参数接近真实值。最后通过matplotlib可视化展示了第4个特征与标签的关系,绘制了拟合直线和原始数据散点图。代码中特别强调了梯度清零、参
2026-01-11 18:45:39
467
原创 408数据结构—图
使用一维数组存放顶点的信息使用二维数组存放边的信息,即各个顶点之间的邻接关系邻接矩阵:存储顶点之间的邻接关系的二维数组A[i][j]在有边时为1,无边时为0对于带权图而言,有边时存放权值,否则存放0或者♾无向图的邻接矩阵是对称矩阵,规模很大的话可以压缩存储以下是图的邻接矩阵存储结构的定义100//一维数组,顶点表//二维数组,邻接矩阵,边表//图的当前顶点数,边数}MGraph;当邻接矩阵里的元素只表示存在与否,我们可以使用0,1的枚举类型O(n²)
2025-02-10 10:45:51
1022
原创 408数据结构—数组和特殊矩阵
数组与线性表的关系: 数组是线性表的推广。一维数组可视为一个线性表;二维数组可视为其元素是定长数组的线性表,以此类推。**数组一旦被定义,其维数和维界就不再改变。**因此,除结构的初始化和销毁外,数组只会有存取元素和修改元素的操作。
2025-01-01 22:42:59
685
原创 408数据结构—顺序表和链表
线性表是一种,表示元素之间一对一的相邻关系,同时还有非线性表顺序表和链表是,两者属于不同层面的概念我们可以用顺序表和链表实现线性表。
2024-12-29 22:48:26
1675
原创 408数据结构—时间复杂度的计算
算法效率的度量是通过时间复杂度和空间复杂度来描述的。时间复杂度在统考中是一大重点,在算法设计题里通常都会要求分析时间复杂度,空间复杂度,同时还会出现考察时间复杂度的选择题,所以需要考生熟练掌握重复执行算法中所有语句的频度之和记为T(n),是问题规模n的函数这里补充一下算法设计与分析课程中有关大O表示法等渐进符号的定义O: f(n)=O(g(n))当且仅当存在正的常数C和n0,使得对于所有的n≥ n0,有f(n)≤Cg(n)。此时,称g(n)是f(n)当 n充分大时的一个上界。
2024-12-28 21:52:57
1062
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅