李宏毅机器学习 p5(pytorch 1)学习笔记
Posted bohu83
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了李宏毅机器学习 p5(pytorch 1)学习笔记相关的知识,希望对你有一定的参考价值。
框架对比
训练过程
tensor: 张量
这个词物理上数学上有一堆定义。可以 看 知乎上大佬们的解释,我没看懂。先 按照 老师说的 在深度学习里,是一个多维数组来理解,看图 更直观些 。
datatype: 存放的数据类型,浮点 、长整型
tensor的属性:
- rank:number of dimensions
- shape: number of rows and columns
- type: data type of tensor's elements
tensor的构造
torch.size ()
可以查看当前Tensor的维度,
torch.squeeze()
这个函数主要对数据的维度进行压缩,torch.squeeze(n)
函数表示压缩tensor中第n维为1的维数.
torch.unsqueeze()
这个函数主要是对数据维度进行扩充。给指定位置加上维数为一的维度
transpose 转置函数
cat()
torch.cat是将两个张量(tensor)拼接在一起
torch.cat((X,Y),dim)时,除拼接维数dim数值可不同外其余维数数值需相同。
加法 z= x+y
减法 :z= x-y
次方pow()
sum 函数
一种直接将待求和数据作为参数,则返回参数数据所有维度所有元素的和,
还可加入 dim 参数,指定对待求和数据的某一维进行求和。
可以理解为一种压缩方式 ,dim=0: 1+1=2,tensor变成了[2,2,2]
mean 求均值,类似
是否使用GPU,这块我没有显卡,所以不在意了,网上看的还是很多坑的
求解梯度
这里一些参数的 含义,第一步要计算某个Tensor的导数,那么我们需要设置其.requires_grad
属性为True
。我们称为叶子节点。
第二步就是计算平方后求和。
第三步backward,这个 会根据链式法则自动计算出叶子节点的梯度值。
这里老师一带而过过,没有展开讲。
第四步,输出梯度值
对应数学推导 过程如下
感到有些抽象(不懂 ),先整理到这里 。
以上是关于李宏毅机器学习 p5(pytorch 1)学习笔记的主要内容,如果未能解决你的问题,请参考以下文章