随笔分类 -  深度学习

摘要:在 PyTorch 中,trainer.param_groups 是一个列表(list),其中每个元素是一个字典(dict),表示优化器管理的参数组(parameter group)。每个参数组包含一组模型参数及其对应的超参数(如学习率、动量等)。以下是详细解释: 1. trainer.param_ 阅读全文
posted @ 2025-03-28 20:56 最爱丁珰 阅读(41) 评论(0) 推荐(0)
摘要:这段文字主要讨论 随机梯度下降(SGD)中不同的数据采样方式及其影响,具体涉及以下几点: 1. 核心问题:有替换采样 vs. 无替换采样 有替换采样:每次从数据集中随机抽取一个样本后,将其放回原数据集。这意味着同一样本可能被多次选中。 无替换采样:每次从数据集中抽取一个样本后不再放回,直到所有样本都 阅读全文
posted @ 2025-03-24 14:12 最爱丁珰 阅读(45) 评论(0) 推荐(0)
摘要:\((2)\) a.他的解答的意思没说明白,看c的代码即可 c.代码是正确的,注意\(x_1\)一定小于\(x_2\),然后去分类讨论即可。到时注意,此时区间缩小的速度是\(\frac{3}{4}\) 阅读全文
posted @ 2025-03-24 14:10 最爱丁珰 阅读(10) 评论(0) 推荐(0)
摘要:\((2)\) 证明一下为什么范数满足三角不等式: \[||x+y||_p=\sqrt[p]{\underset{i=1}{\overset{d}{\sum}}|x_i+y_i|^p}=\sqrt[p]{\underset{i=1}{\overset{d}{\sum}}2^p|\frac{1}{2} 阅读全文
posted @ 2025-03-23 10:39 最爱丁珰 阅读(42) 评论(0) 推荐(0)
摘要:式\((11.5)\)的推导过程: 令\(Z=P(X|Y)\sim P_1(Z)\),则 \[E_{Y\sim P(Y)}[-\log P(X|Y)]=E_{Z\sim P_1(Z)}[-\log Z] \]\[\geq -\log E[Z]=-\log \int P(Y)P(X|Y)dY=-\lo 阅读全文
posted @ 2025-03-23 09:06 最爱丁珰 阅读(14) 评论(0) 推荐(0)
摘要:梯度消失问题是指在深度神经网络中,反向传播时梯度随着层数的增加逐渐变小,导致早期层的权重更新非常缓慢,甚至几乎不更新。这个问题在长序列的循环神经网络(RNN)中尤为明显。 为了缓解这个问题,门控循环单元(GRU)和长短期记忆网络(LSTM)引入了门控机制,使得网络能够更好地控制信息的流动。下面我们将 阅读全文
posted @ 2025-03-22 19:17 最爱丁珰 阅读(59) 评论(0) 推荐(0)
摘要:其实BERT预训练任务中,掩蔽语言模型才是最重要的,下一句预测这个任务造成不了什么影响(BERT的原始论文做了两个预训练任务,但后面有一个人只做了掩蔽语言模型,效果还更好,如下)。但是我们需要学到的就是,无论是什么任务,我们总是期望教会模型一点东西(比如下一句预测就是希望模型学会长距离的关系) 上图 阅读全文
posted @ 2025-03-21 14:13 最爱丁珰 阅读(21) 评论(0) 推荐(0)
摘要:补充一下迁移学习 迁移学习用微调比较多。比如我们按照图像分类去训练了一个神经网络,但是我们现在想要将这个神经网络运用在\(X\)光图像识别上。这就是迁移学习 方法: 我们的新数据(指的是\(X\)光图片)不多 微调(fine tuning)神经网络的最后一层即可,也就是将最后一层的参数重新初始化并训 阅读全文
posted @ 2025-03-20 22:02 最爱丁珰 阅读(17) 评论(0) 推荐(0)
摘要:注意,GPT只基于Transformer的解码器,没有基于编码器。GPT的主要任务是根据已经给了的句子预测下一个词(这本来就是语言模型干的事,不是说语言模型非要进行机器翻译的)。回忆一下,我们在训练Transformer的时候,解码器的部分也是有mask的(尽管我们输入的是一个完整的句子),所以解码 阅读全文
posted @ 2025-03-20 08:54 最爱丁珰 阅读(11) 评论(0) 推荐(0)
摘要:\((3)\) 看不懂答案在说什么。。一般来说,就认为点积既有方向的元素也有长度的元素,而求和只有长度的元素,所以点积更好(比如两个方向垂直的向量) 阅读全文
posted @ 2025-03-16 09:49 最爱丁珰 阅读(10) 评论(0) 推荐(0)
摘要:\((5)\) 他这个答案算是一种方式吧,但是你说不能令一个time就是一个num_steps吗?我觉得可以 阅读全文
posted @ 2025-03-15 18:50 最爱丁珰 阅读(12) 评论(0) 推荐(0)
摘要:\((6)\) 其实BatchNorm1d,BatchNorm2d和BatchNorm3d的用法都是一样的,参数都只用传一个(即特征维度,手动实现的BatchNorm的num_features);对于手动实现的BatchNorm的初始化参数num_dims,是由1d,2d和3d来区分的 LazyBa 阅读全文
posted @ 2025-03-13 21:24 最爱丁珰 阅读(10) 评论(0) 推荐(0)
摘要:Batch Norm就可以在一定程度上解决协变量偏移问题,其通过将每一层的\(\text{z}^{[l]}\)标准化,可以大概固定\(\text{z}^{[l]}\),无论输入是怎么样的。也就是说,这样子在一定程度上让各层的输入数据是独立的(输入数据都可以看做时来自均值为\(0\)方差为\(1\)的 阅读全文
posted @ 2025-03-10 22:18 最爱丁珰 阅读(15) 评论(0) 推荐(0)
摘要:以前我们对局部最优解的理解不是非常准确。实际上,在高维空间中的某一个点的梯度为\(0\),意味着其四面八方的极小一段区域都是平的,但是不代表其是极值点,因为要让每个极小区域都向上或者向下的概率是非常小的,我们更多遇到的应该是鞍点,如下 也就是一些方向是向上的,另一些方向是向下的 也就是局部最优点不太 阅读全文
posted @ 2025-03-10 21:56 最爱丁珰 阅读(10) 评论(0) 推荐(0)
摘要:这种方法的优点显而易见,就是得到新数据的开销更小,缺点也很明显,就是这种方法得到的新数据的新信息量不如完全新的数据的信息量多 下面是各个代码的解释 \(2.\) 改变颜色apply(img, torchvision.transforms.ColorJitter( brightness=0.5, # 阅读全文
posted @ 2025-03-10 21:28 最爱丁珰 阅读(9) 评论(0) 推荐(0)
摘要:在词类比任务中,为什么用\(\text{vec}(c)+\text{vec}(b)-\text{vec}(a)\)来进行近似呢?以man,woman,son,daughter为例.\(\text{vec}(\text{son})-\text{vec}(\text{man})\)后,就在son中去除了 阅读全文
posted @ 2025-03-06 21:17 最爱丁珰 阅读(21) 评论(0) 推荐(0)
摘要:我们来想一下另一种方法的缺点: 一个简单的分类器如下 简单来说就是求出各个单词的\(e\)之后将他们加起来并平均然后传入\(\text{Softmax}\)层 这个算法有一个缺点就是忽略了单词的顺序,比如下面 这句话是一个很显然的负面评论,但是由于出现了很多次good,可能分类器会认为他是正面评论 阅读全文
posted @ 2025-03-06 12:39 最爱丁珰 阅读(54) 评论(0) 推荐(0)
摘要:在层序softmax中,不是只有叶子节点才代表一个词元吗?那么为什么计算条件概率的时候要去看非叶子节点?非叶子节点代表什么?为什么非叶子节点有词向量?对此,deepseek的解释如下 在层序Softmax(Hierarchical Softmax)中,非叶子节点虽然不直接代表词元,但它们通过构建二叉 阅读全文
posted @ 2025-03-05 19:35 最爱丁珰 阅读(54) 评论(0) 推荐(0)
摘要:现在考虑BERT的输入。一般来说NLP里面的输入都是成对的,比如机器翻译,有一个源句子还有一个目标句子。那么这里如何让输入是两个句子呢?我们只用拼接起来就好了,如下 <cls>表示classification,sep表示句子分隔符(separation);Segment Embeddings就是用来 阅读全文
posted @ 2025-03-04 10:36 最爱丁珰 阅读(24) 评论(0) 推荐(0)
摘要:BERT的任务是构建一个通用的模型,那么在NLP里面,语言模型(看一些词,预测下一个词)显然是最通用的,所以我们将BERT训练成一个语言模型,即带掩码的语言模型。但是Transformer是双向的,而语言模型是单向的,这显然就不能直接训练,于是这就是我们带掩码的原因。<mask>就是我们要填写的词, 阅读全文
posted @ 2025-03-04 10:35 最爱丁珰 阅读(68) 评论(0) 推荐(0)