- 博客(22)
- 收藏
- 关注
原创 【Dive into Deep Learning |动手学深度学习(李沐)】4.6 暂退法(Dropout)--学习笔记
要实现单层的暂退法函数, 我们从均匀分布U[0,1]中抽取样本,样本数与这层神经网络的维度一致。然后我们保留那些对应样本大于p的节点,把剩下的丢弃。在下面的代码中,我们实现 dropout_layer 函数, 该函数以dropout的概率丢弃张量输入X中的元素, 如上所述重新缩放剩余部分:将剩余部分除以1.0-dropout。
2023-07-12 14:53:26
365
原创 【Dive into Deep Learning |动手学深度学习(李沐)】4.5权重衰退--学习笔记
L2范数即平方范数,对所有项求平方后再将它们求和。def train(lambd) : w , b = init_params() #初始化参数net , loss = lambda X : d2l . linreg(X , w , b) , d2l . squared_loss #定义模型为线性模型,损失函数num_epochs , lr = 100 , 0.003 #迭代次数和学习率#动画展示效果。
2023-07-12 13:29:11
320
原创 【Dive into Deep Learning |动手学深度学习(李沐)】4.4 模型选择、欠拟合和过拟合--学习笔记
欠拟合是指模型无法继续减少训练误差。过拟合是指训练误差远小于验证误差。由于不能基于训练误差来估计泛化误差,因此简单地最小化训练误差并不一定意味着泛化误差的减小。机器学习模型需要注意防止过拟合,即防止泛化误差过大。验证集可以用于模型选择,但不能过于随意地使用它。我们应该选择一个复杂度适当的模型,避免使用数量不足的训练样本。
2023-07-11 12:59:35
445
原创 【Dive into Deep Learning |动手学深度学习(李沐)】4.2/4.3 多层感知机代码实现(代码含注释)
实现一个具有单隐藏层的多层感知机, 它包含256个隐藏单元。注意,我们可以将这两个变量都视为超参数。实现ReLU激活函数,回归一下ReLU函数,本质上就是一个求最大值的函数。使用交叉熵损失函数(CrossEntropyLoss)实际上就是上一节这样一个过程,如图。这里和上面的差不多。
2023-07-10 17:14:05
337
原创 【Dive into Deep Learning |动手学深度学习(李沐)】4.1 多层感知机--学习笔记
可以将这两条线看作xy轴,首先对于蓝色的这条线,若x<0,划为正类,如下图1、3小球为‘+’,2、4小球为‘-’;这段伪代码的意思是:首先初始化参数,w、b为0,repeat即开始一个循环,从i到n(n表示有多少个样本),判断yi与y_hat是都同号,即y_hat=<w,xi>+b。输入x是n维的,假设设定的隐藏层个数为m,则参数w1的维度为[m,n],b1为偏移,维度为[m,1]是线性的,则最后得到的结果也还是一个线性模型,相当于还是一个单层感知机,所以激活函数不能是线性的。唯一多了的就是一层隐藏层。
2023-07-10 15:57:19
278
原创 【Dive into Deep Learning |第三章 线性神经网络】动手学深度学习(李沐)3.7 softmax回归的简洁实现(代码含注释)
nn.Sequential 的参数是一个由两个模块组成的列表。第二个模块是 nn.Linear(784, 10),它定义了一个线性层,输入大小为 784(图像展平后的长度),输出大小为 10(对应于 10 个类别的预测)。如果是线性层,就对该层的权重进行正态分布初始化,使用 nn.init.normal_ 函数,并指定标准差为 0.01。当 reduction 设置为 ‘none’ 时,nn.CrossEntropyLoss 返回一个与输入张量大小相同的损失张量,其中每个元素对应一个样本的损失值。
2023-07-09 19:47:45
202
原创 【Dive into Deep Learning |第三章 线性神经网络】动手学深度学习(李沐)3.6 softmax回归的从零开始(代码含注释)
MNIST数据集 (LeCun et al., 1998) 是图像分类中广泛使用的数据集之一,但作为基准数据集过于简单。我们将使用类似但更复杂的Fashion-MNIST数据集 (Xiao et al., 2017)。通过框架中的内置函数将Fashion-MNIST数据集下载并读取到内存中每个输入图像的高度和宽度均为28像素。
2023-07-09 17:26:35
595
原创 【Dive into Deep Learning |第三章 线性神经网络】3.3 线性回归的简洁实现(代码含注释)
【Dive into Deep Learning |第三章 线性神经网络】3.3 线性回归的简洁实现(代码含注释)
2023-07-09 11:03:52
231
原创 编程求前三名运动员的号码及相应的成绩。要求用结构体存放数据,实现函数,并用主函数验证其有效性
编程求前三名运动员的号码及相应的成绩。要求用结构体存放数据,实现函数,并用主函数验证其有效性
2023-03-23 15:28:21
135
原创 C语言实现各类排序算法代码:冒泡排序、选择排序、快速排序、插入排序、希尔排序
C语言实现各类排序算法代码:冒泡排序、选择排序、快速排序、插入排序、希尔排序
2023-03-22 17:34:33
171
原创 flask连接数据库报错:RuntimeError: Working outside of application context.
flask连接数据库报错:RuntimeError: Working outside of application context.
2023-03-06 14:47:48
508
原创 C语言实现单词交换
C语言实现单词交换:读入一行文本,包含若干个单词(以空格问隔,或到文本结束),将其中以A开头的单词与以N结尾的单词。用头尾交换的办法予以置换,画流程图,实现函数,并用主函数验证其有效性。 要求实现函数: void exchange(const char *pln, char *pOut) 输入: pln 输入的文本 输出: pOut 输出的文本( pOut 空间已经分配,请直接写入,空间长度和 pln 长度一致) 示例: 输入: "AM I OLDER THAN YOU" 输出: "THA
2023-03-03 13:45:42
537
1
原创 TypeError: f() takes 1 positional argument but 2 were given
TypeError: f() takes 1 positional argument but 2 were given跑代码时,出现这个错误,查阅资料,说是需要在函数定义时传入self参数,但还是不行。最后,找到原因,pandas版本过低0.23.4,升级pandas版本为1.1.5,问题解决。升级前:升级后:查看pandas版本:import pandas as pdpd.show_versions()pd.version更新pandas:pip install
2021-07-25 11:37:37
2606
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人