《动手学深度学习》
文章平均质量分 72
学习李沐的《动手学深度学习》的笔记
芝士就是能量!
这个作者很懒,什么都没留下…
展开
-
《动手学深度学习》——4.4模型选择、权重衰减、暂退法
随机初始化模型参数#定义范数惩罚def train(lambd): #lambd为超参数net, loss = lambda X: d2l.linreg(X, w, b), d2l.squared_loss #线性网络和平方损失# 增加了L2范数惩罚项,# 广播机制使l2_penalty(w)成为一个长度为batch_size的向量d2l.sgd([w, b], lr, batch_size) #sgd随机梯度下降优化器。原创 2024-06-24 15:29:22 · 696 阅读 · 0 评论 -
《动手学深度学习》——4.2多层感知机
有现成的API,咱们就是不用# 由于X为28*28,我们把它展平H = relu(X@W1 + b1) # 这里“@”代表矩阵乘法# 交叉熵损失,上一节说了# 报错“grad can be implicitly created only for scalar outputs”# 把损失函数里面的内容删掉就可以了。该参数主要影响多个样本输入时,损失的综合方法。# reduction默认为 mean。mean表示损失为多个样本的平均值,sum表示损失的和,none表示不综合。原创 2024-06-22 22:10:33 · 243 阅读 · 0 评论 -
《动手学深度学习》——2.6概率(掷色子)
使用原代码会报错module 'torch' has no attribute 'SymInt',有文章说是d2l中的torch.py文件和其他文件重名,不知道怎么解决,索性不使用这个包了。进行500组实验,每组随机抽1次。cumsum函数:返回沿给定轴的元素的累积和。生成一个1行6列的全1向量,再除以6。然后随机抽到某列,某列数值加1,连续进行5次。每行除以每行的总和,求得概率。原创 2024-02-22 21:00:09 · 402 阅读 · 0 评论 -
《动手学深度学习》——3.2线性回归
第一节的部分只(1)通过张量来进行数据存储和线性代数;(2)通过自动微分来计算梯度。实际上,由于数据迭代器、损失函数、优化器和神经网络层很常用, 本节就调用深度学习组件库实现线性回归。# nn是神经网络的缩写# 1.生成数据集true_b=2.2# 2.读取数据集"""构造一个PyTorch数据迭代器"""# 3.定义模型# 4.初始化模型参数# 5.定义损失# 6.定义优化算法# 7.训练。原创 2024-03-07 21:04:02 · 805 阅读 · 0 评论 -
《动手学深度学习》——3.4softmax回归
回归可以用于预测多少,也可以用于预测“哪一类”。将我们需要预测的类别数据 使用独热编码(one-hot encoding)来存储,独热编码是一个向量,它的分量和类别一样多。类别对应的分量设置为1,其他所有分量设置为0。比如我要预测三个类别猫、鸡、狗,标签y将是一个三维向量, 其中(1,0,0)对应于“猫”、(0,1,0)对应于“鸡”、(0,0,1)对应于“狗”。为了解决线性模型的分类问题,我们需要和输出一样多的仿射函数每个输出对应于它自己的仿射函数。原创 2024-04-01 17:30:50 · 381 阅读 · 0 评论