李沐深度学习
Allure丶憨憨
这个作者很懒,什么都没留下…
展开
-
李沐动手学深度学习08线性回归+基础优化算法
08线性回归+基础优化算法线性模型中n维输入就可以用向量表示,n维权重也可以用向量表示,以及一个标量偏差(这其实就是普通的变量,例如y=ax+b中的b)。通过向量表示就可以是y=<w,x>+b(内积+b)。衡量预测质量:损失函数=1/2(真实值-估计值)^2,前面的常量是为了求导的时候可以凑1。这样的函数成为平方损失训练损失中,1/2是平方损失中原本就有的,1/n是为了求每个训练样本的平均损失;<xi,w>是求每个样本的估计值,右侧的向量版本可能更容易理解。最小化损失就是为原创 2021-10-09 16:19:27 · 318 阅读 · 0 评论 -
李沐动手学深度学习-07自动求导
07自动求导对于矩阵的求导可以使用函数自动实现,但是还是需要学习一下具体的过程。链式法则等导数计算方法,截图主要用于帮助理解反向传递正向和反向的计算方法相比,在时间复杂度上两者并没有太大的查遍,但是内存复杂度不同,正向传递需要把所有结果都存下来,需要消耗大量的GPU内存资源。x = torch.arange(4.0)print(x)x.requires_grad_(True) # 等价于x=torch.arange(4.0, requires_grad=True)x.grad # 默认值为原创 2021-10-04 20:05:54 · 186 阅读 · 0 评论 -
李沐动手学深度学习-06矩阵计算
06矩阵计算矩阵计算中最重要的就是矩阵的导数计算,这对于深度学习或者机器学习的训练与优化都是非常重要的依据如果dy/dx,如果y是一个标量,而x是一个向量,那么就需要使用y的这个表达式,对x1,x2全部求一次导,然后变成一个向量;相反如果y是一个向量而x是一个标量的话,那么每一个y都需要对指定的x进行求导;如果x,y都是向量,那么就是每一个y都需要对每一个x进行求导。拓展到矩阵可以看出,如果矩阵和向量进行求导运算,那么结果就会变成一个三维。如果矩阵和矩阵进行进行求导运算的话那么就会变成以四维的结果。原创 2021-10-03 20:16:28 · 256 阅读 · 0 评论 -
李沐动手学深度学习-05线性代数
05-线性代数这一节课从数学上面讲一下线性代数,包括向量加减乘,模长点乘正交等内容,都学习过所以就不写了。A.T # 表示A矩阵的转置torch.arange(24),reshape(2,3,4) # 首先是第三维的层数,然后行数,最后是列数B = A.clone() # 这种方法是和copy差不多,是完全的复制A * B # 并不是矩阵的相乘,而是元素相乘,这点需要注意2 + A # 如果是标量和矩阵进行计算,那么就是这个标量和所有的元素进行计算A_sum0 = a.sum(axis原创 2021-10-03 19:29:38 · 121 阅读 · 0 评论 -
李沐动手学深度学习-04数据操作+数据预处理
李沐动手学深度学习-CH04数据操作的实现这边的内容感觉不太需要记录,所以就没有写了,忘记了就查找一下嘛。只是简单记录值得注意的是如果向量形状不一样,他会有一个广播机制,当然这个广播机制的使用也是有一定条件的(可扩展)A = X.numpy() # 转换成Numpy张量B = torch.tensor(A) # 重新转换为torch创建CSV文件通过python的os库我们可以创建对应的CSV文件,f.write里面的会分割每一个值,放置到不同的单元格中去import torchim原创 2021-09-25 21:44:49 · 261 阅读 · 0 评论