李宏毅机器学习 p5(pytorch 1)学习笔记

框架对比 

李宏毅机器学习 p5(pytorch 1)学习笔记_第1张图片

训练过程

李宏毅机器学习 p5(pytorch 1)学习笔记_第2张图片 tensor:  张量

这个词物理上数学上有一堆定义。可以 看 知乎上大佬们的解释,我没看懂。先 按照 老师说的 在深度学习里,是一个多维数组来理解,看图 更直观些 。

李宏毅机器学习 p5(pytorch 1)学习笔记_第3张图片

 datatype:   存放的数据类型,浮点 、长整型

李宏毅机器学习 p5(pytorch 1)学习笔记_第4张图片

tensor的属性:

  1. rank:number of dimensions
  2. shape: number of rows and columns
  3. type: data type of tensor's elements

 tensor的构造

李宏毅机器学习 p5(pytorch 1)学习笔记_第5张图片

 

torch.size () 

可以查看当前Tensor的维度,

李宏毅机器学习 p5(pytorch 1)学习笔记_第6张图片

torch.squeeze() 

这个函数主要对数据的维度进行压缩,torch.squeeze(n)函数表示压缩tensor中第n维为1的维数.

李宏毅机器学习 p5(pytorch 1)学习笔记_第7张图片

 torch.unsqueeze()

这个函数主要是对数据维度进行扩充。给指定位置加上维数为一的维度

李宏毅机器学习 p5(pytorch 1)学习笔记_第8张图片李宏毅机器学习 p5(pytorch 1)学习笔记_第9张图片

 transpose  转置函数

李宏毅机器学习 p5(pytorch 1)学习笔记_第10张图片 李宏毅机器学习 p5(pytorch 1)学习笔记_第11张图片

cat()

torch.cat是将两个张量(tensor)拼接在一起

李宏毅机器学习 p5(pytorch 1)学习笔记_第12张图片 torch.cat((X,Y),dim)时,除拼接维数dim数值可不同外其余维数数值需相同。

加法 z= x+y

李宏毅机器学习 p5(pytorch 1)学习笔记_第13张图片

减法 :z= x-y

李宏毅机器学习 p5(pytorch 1)学习笔记_第14张图片

次方pow()

李宏毅机器学习 p5(pytorch 1)学习笔记_第15张图片 

sum   函数

一种直接将待求和数据作为参数,则返回参数数据所有维度所有元素的和,

李宏毅机器学习 p5(pytorch 1)学习笔记_第16张图片 

还可加入 dim 参数,指定对待求和数据的某一维进行求和。

李宏毅机器学习 p5(pytorch 1)学习笔记_第17张图片 

可以理解为一种压缩方式 ,dim=0: 1+1=2,tensor变成了[2,2,2] 

mean  求均值,类似

李宏毅机器学习 p5(pytorch 1)学习笔记_第18张图片

 李宏毅机器学习 p5(pytorch 1)学习笔记_第19张图片

是否使用GPU,这块我没有显卡,所以不在意了,网上看的还是很多坑的

求解梯度

李宏毅机器学习 p5(pytorch 1)学习笔记_第20张图片 

这里一些参数的 含义,第一步要计算某个Tensor的导数,那么我们需要设置其.requires_grad属性为True 。我们称为叶子节点。

第二步就是计算平方后求和。

第三步backward,这个 会根据链式法则自动计算出叶子节点的梯度值。

这里老师一带而过过,没有展开讲。

第四步,输出梯度值

对应数学推导 过程如下

李宏毅机器学习 p5(pytorch 1)学习笔记_第21张图片

 

 感到有些抽象(不懂 ),先整理到这里 。

你可能感兴趣的:(python,机器学习,pytorch,深度学习)