动手学深度学习
文章平均质量分 51
笔记
hlllllllhhhhh
这个作者很懒,什么都没留下…
展开
-
53 语言模型【动手学深度学习v2】(笔记)
1、2、3、处理长序列 1000*24、原创 2023-04-02 08:08:44 · 86 阅读 · 0 评论 -
52 文本预处理【动手学深度学习v2】(笔记)
3、python 类里面__getitem__就是重载了[ ]运算符。1、.strip() 移除字符串开头和结尾的空格。原创 2023-04-01 15:22:27 · 64 阅读 · 0 评论 -
51 序列模型【动手学深度学习v2】(笔记)
1、什么是序列数据?数据是有时序结构的,比如电影的评价随时间变化变化2、还有更多的序列数据3、在b发生的情况下,a也发生的概率4、反序:用未来的事情推测过去的事情,但有时在物理上是不可行的,因为时间上总是顺序发展的,但是RNN可以做到5、自回归模型,就是上个状态模型的输出当做下个状态模型的输入,进行迭代6、A: 马尔科夫假设,当前数据只跟前面某几个数据点相关7、B: 潜变量模型 潜变量ht8、总结。原创 2023-04-01 15:02:52 · 244 阅读 · 1 评论 -
37 微调【动手学深度学习v2】(笔记)
5、使用预训练之后的模型,因为模型已经有一个大概值了,所以往往使用更小的学习率;并且节省开销,避免过拟合,会使用更少的数据迭代;而且在源数据集远远复杂于目标数据时,微调的效果更好,不然,你直接使用目标数据多次迭代也依然可以得到较好的模型。1、微调也叫迁移学习,在大数据集上训练出的模型,能不能很好地迁移到小数据集上?4、这里有提到预训练的概念;3、微调就是,可以重用特征提取部分,修改全连接层,实现模型复用。代码主要的难点还是一些语法,感觉自己写写不出。(transfer learning)将从。原创 2023-03-16 11:04:34 · 124 阅读 · 0 评论 -
36 数据增广【动手学深度学习v2】(笔记)
1.数据增强:增加一个已有数据集,使得有更多的多样性2.使用增强数据:原始数据—>在线生成(随机增强)—>增强后的数据—>进入训练3.常见的数据增强:左右翻转、上下翻转、不总是可行4.随机切割:从图片中切割一块,然后变形到固定形状5.颜色:色调、饱和度、明亮度6、数据增强通过变形数据来获取多样性,从而使得模型泛化性能更好,常见的图形增广包括翻转、切割、变色。原创 2023-03-16 08:25:37 · 98 阅读 · 0 评论 -
35 分布式训练【动手学深度学习v2】
增加batch_size影响的是 t1 ,t1会变大,t2不变,所以我们算一个足够大的batch_size,使得 t1 远远大于 t2。6、因为是batch个样本算平均梯度,一个epoch的样本数固定,所以batch越大更新越慢。5、在同步SGD的情况下,计算和通信没有办法重叠的。在forward的时候是不能并行的,在backward的时候才开始并行。4、每个worker都是同步计算一个批量,同步SGD。3、减少跨机器的通讯,例子——计算一个小批量。2、与GPU性能上的不同,少在机器上做通讯。原创 2023-03-14 16:43:13 · 76 阅读 · 0 评论 -
33 单机多卡并行【动手学深度学习v2】
1、单机多卡2、数据并行和模型并行3、数据并行的流程:读取一个数据块--拿回参数--计算梯度--发出梯度--更新梯度4、总结。原创 2023-03-14 14:39:02 · 133 阅读 · 0 评论 -
32 深度学习硬件:TPU和其他【动手学深度学习v2】
Alexnet 全连接和卷积VGGInceptionResNetmodule parallel , data parallel 模型并行 数据并行emmm,对于硬件还是有很多不懂得地方,但是听听老师的看法总算长点见识哈。原创 2023-03-14 14:10:07 · 112 阅读 · 0 评论 -
31 深度学习硬件:CPU 和 GPU【动手学深度学习v2】
一、CPU和GPU1、GPU的核数明显大于CPU,能做大量的并行计算;CPU擅长控制,GPU擅长计算2、如何提升GPU利用率3、不要频繁在CPU和GPU之间传数据:一个是带宽限制,一个是同步开销4、高性能计算编程5、总结。原创 2023-03-14 12:38:26 · 154 阅读 · 0 评论 -
29 残差网络 ResNet【动手学深度学习v2】 (笔记)
1、存在这样一个问题,加深总能改变精度吗?新添加的层如何提升神经网络的性能?模型偏差ResNet:就是让你加更多的层,但是模型精度不会变差2、不太理解哇,3、4、最核心的点6、7、原创 2023-03-16 08:28:17 · 81 阅读 · 0 评论 -
28 批量归一化【动手学深度学习v2】(笔记)
1、有这样的问题,损失出现在最后,后面的层训练较快,但是前面的层训练较慢批量规范化的发明者非正式地假设,这些变量分布中的这种偏移可能会阻碍网络的收敛。j2、解决的思想是:假设把分布固定住,符合某一个分布;批量规范化应用于单个可选层(也可以应用到所有层),其原理如下:在每次训练迭代中,我们首先规范化输入,即通过减去其均值并除以其标准差,其中两者均基于当前小批量处理。接下来,我们应用比例系数和比例偏移。正是由于这个基于批量统计的标准化,才有了批量规范化的名称。原创 2023-03-13 16:19:25 · 74 阅读 · 0 评论 -
27 含并行连结的网络 GoogLeNet / Inception V3【动手学深度学习v2】(笔记)
1、卷积层个数超过了100层,怎么选择最好的卷积层超参数2、GoogleLeNet 全要首先,输入和输出等高等宽其次,不同的路径3、 白色的1*1卷积层是用来改变通道数的蓝色的卷积层是用来抽取信息的4、为啥要用 Inception块?5、展示Googlenet,高宽减半就是一个stage6、展示一下具体是怎么设计的7、变种,这些常用一点8、诡异但是有效果,每秒跑800个样本,耗内存多,跑得慢,但是精度不错9、总结。原创 2023-03-13 13:39:10 · 122 阅读 · 0 评论 -
26 网络中的网络 NiN【动手学深度学习v2】(笔记)
NiN,降低模型复杂度,提高了泛化性,但是收敛变慢。原创 2023-03-13 10:21:12 · 83 阅读 · 0 评论 -
24 深度卷积神经网络 AlexNet【动手学深度学习v2】(笔记)
n为输入维度,f为核维度,p为填充值,s为步幅,可以参考吴恩达的理论课;图片填充的方法opencv有将,线性插值,双边插值,镜像,各种伸缩尺寸的算法,所以说卷积和计算机视觉的联系还是挺多的。两个优点:一个是从人工特征提取,到使用CNN进行特征提取,机器自动进行特征抽取,不需要了解太多和机器学习相关的知识;5、数据集的兴起,是深度卷积发展非常重要的基础;有这么大的数据集,才允许你用更深的网络,去抽取更多的信息。因为针对的数据集不一样,这里没有用模型使用的那个数据集,所以图片尺寸不一样,需要变形。原创 2023-03-12 10:58:58 · 128 阅读 · 0 评论 -
23 经典卷积神经网络 LeNet【动手学深度学习v2】(笔记)
2、x.view(-1,1,28,28),这里的 -1 指的是批量数不变,自动计算;(批量数,通道数,行,列);批量数不变,通道数为1。4、总结,好像看着挺简单的,但是前人能想出这样的方法真是不可思议,好聪明,下面代码实现有21min,加油!3、LeNet:里面两个卷积层,两个池化层,然后使用全连接,120再到84,最后使用高斯激活。4、mnist原始数据是28*28,这里加了padding就能实现论文里说的输入32*32了吧。1、产生由来,是当时想要识别邮政上的邮编,然后投递到对应位置,节省人力。原创 2023-03-11 15:26:52 · 275 阅读 · 0 评论 -
22 池化层【动手学深度学习v2】(笔记)
2、想用池化解决这个问题,所谓池化,就是找到池子中的最大值,那么为啥可以解决问题?6、总结一下,池化层在卷积之后,缓解卷积层的位置敏感性。4、不需要学习参数,对每个通道都做一次,不做融合。5、有平均的有最大的。原创 2023-03-11 13:07:11 · 106 阅读 · 0 评论 -
21 卷积层里的多输入多输出通道【动手学深度学习v2】(笔记)
目录一、多输入输出通道 二、代码实现三、问题总结1、之前说的图片都是灰度,但是现实是RGB三通道的彩色图片,怎么办? 2、那你每层给一个卷积核,每个卷积核和每一层遍历,然后得到结果相加 3、给你个累加公式看看 c是第几个通道,不管输入是几个通道,输出都是单通道 4、上面说只输出一个通道,但是,你还要研究多个输出通道哇,这里有点不懂。这里多了几个三维卷积核C(o),最后输出也是多个对的,比如一个核提取边缘信息,一个核提取另一种信息应该是一个通道包含类似的可以提取相同特征的核吧 一个通道负责一种特征原本每个通道原创 2023-03-10 19:57:12 · 190 阅读 · 0 评论 -
20 卷积层里的填充和步幅【动手学深度学习v2】(笔记)
5、stride = 2 步幅,输出减半 (8+2-3+2)/ 2= 4.5 =4, 这里是+2(加的是步幅),再向下取整。最后老师谈到钱的问题,突然觉得,有点幸运,能够学习到这种前沿的知识,这本身就是很贵很贵的,享受其中吧。哦,理解了,减去的是K,K大,减得多。3、填充的取值如下,这样做,代入可以看到可以抵消,可以让我们的输入输出和原来保持一致。当我想用大的卷积核,但是我的图片小,怎么办,我想用几百个卷积层怎么办。2、我填充之后,我的输出是4*4,比我的输入3*3还要大呢。6、那该怎么算最后的输出大小?原创 2023-03-10 19:05:27 · 90 阅读 · 0 评论 -
19 卷积层【动手学深度学习v2】(笔记)
一、从全连接到卷积一、从全连接到卷积1、为啥要卷积?因为图片的数据量太多,类别又很少因为这些网络特征元素的顺序是不变的,因此最优的结果是利用先验知识,即利用相近像素之间的相互关联性,从图像数据中学习得到有效的模型。卷积神经网络(convolutional neural network,CNN)是一类强大的、为处理图像数据而设计的神经网络。卷积神经网络需要的参数少于全连接架构的网络,而且卷积也很容易用GPU并行计算。多层感知机十分适合处理表格数据,其中行对应样本,列对应特征。原创 2023-03-10 16:47:44 · 117 阅读 · 0 评论 -
14 数值稳定性 + 模型初始化和激活函数【动手学深度学习v2】
14 数值稳定性 + 模型初始化和激活函数【动手学深度学习v2】原创 2023-03-07 10:24:16 · 49 阅读 · 0 评论 -
13 丢弃法【动手学深度学习v2】
上一层给下一层的输出是一个向量X,将向量中的每个元素大小进行改变,对每个元素而言,有p的概率将其变为0,否则就是将它除以1-p。也就是说,我现在加入了层间噪声,但是呢,我还想无偏差的加,那我应该怎样加呢?这样设置,我可以去求期望,得到的期望和上面是一样的没有变化 E(x) = x。正则项,只在训练中使用,这样可以改变权重。输入数据加入随机扰动可以防止过拟合,泛化性更好,等价于一种正则方式。相当于数据增强了,样本变得更多了,减少过拟合,增强泛化。在推理的时候,我的dropout 就不会再做变0处理了。原创 2023-03-07 12:51:18 · 44 阅读 · 0 评论