![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度学习
Da小伙儿
这个作者很懒,什么都没留下…
展开
-
Windows上的Pytorch安装
Windows上Pytorch安装有3个方案:Pytorch官网安装(-c pytorch)直接https://pytorch.org/(Pytorch官网,按需求选择cuda,py版本,按正常人思维选择会自动给出代码,复制执行即可),其中本地cuda版本查看方式:桌面右键NVIDIA控制面板->左下角系统信息->组件->NVCUDA.DLL右边就是了上面基本不行...原创 2020-03-16 17:16:53 · 149 阅读 · 0 评论 -
深度学习(十九)——一些知识点
对于2d卷积网络:w=torch.rand(16,3,5,5)数值意义:16:卷积核16个,比如对一幅图各种不同卷积核上去卷积,如模糊,边缘卷积核等等3:channnel,一幅图3通道5,5:卷积核大小5×5...原创 2020-03-09 21:50:35 · 118 阅读 · 0 评论 -
深度学习(十八)——交叉熵
交叉熵(Cross Entropy Loss)也是一种loss香农定理:用概率决定信息量,公式的意义:比如:买彩票,中100万奖概率小,一旦你中奖了,这个信息量就很大了;但你花10块钱买了一袋零食,本来概率就是100%,这个信息量就很小,由概率决定信息量,两者呈反比。所以,如果4分类,每个分类出来的概率都是25%,不确定性很高,即求出的E(熵)就很大,可以用作loss。KL代表散度...原创 2020-03-05 14:15:10 · 352 阅读 · 0 评论 -
深度学习(十七)——2D函数优化实例
四个极小值这里不是对loss进行求偏导数,而是直接用式子对x,y进行求偏导,直接backward就可以,即x’=x-α▽x,y同样,这里[X]=[x,y]更改初始化,就可以找另外的局部极小值。...原创 2020-03-04 14:23:01 · 241 阅读 · 0 评论 -
深度学习(十六)——MLP反向传播
多层的理解:把前面遮住,Oj就是公式里的xj原创 2020-02-29 21:28:49 · 614 阅读 · 0 评论 -
深度学习(十五)——链式法则
原创 2020-02-29 20:44:35 · 649 阅读 · 0 评论 -
深度学习(十四)——感知机
单层感知机b=w0*x0,其中x0=1多层感知机原创 2020-02-29 18:18:59 · 93 阅读 · 0 评论 -
深度学习(十三)——loss及其梯度
MSE:均方差需要求偏导的参数,要特别写出来因为是动态图,所以要再次求mse两种求梯度的写法softmax由来输出的值想要最大的,认为转化为概率0-1如果用sigmoid,概率相加可能不等于1softmax:把值大的变的更大,值小的压缩到密集的空间,差距拉大,所以叫soft version of max,最大的极度舒适版本呀==!i=j时i!=j总结:只有...原创 2020-02-29 16:41:02 · 2212 阅读 · 0 评论 -
深度学习(十二)——梯度和激活函数
梯度导数:函数的变化量,方向指定,标量偏导数:对某一变量的倒数,方向是自变量的方向倒三角就是偏微分梯度是一个向量,每一个量是对应轴的偏微分,不是标量梯度的长度反应变化的趋势,即增长速率,长越大,越陡,表示变的越快梯度的方向:增长的方向梯度:找极小值搜索过程的影响因素:局部极小值,ResNet解决了鞍点:对于x轴是极小值,对于y轴是极大值初始状态learningRate...原创 2020-02-28 22:16:25 · 315 阅读 · 0 评论 -
深度学习(十一)——高阶操作where和gather
where用条件选择矩阵的某些数gather用索引实现查表功能用index中的7对应label中的第7 个数:107,index中的4对应label中的第4个数:104,即对应查表原创 2020-02-28 21:19:28 · 291 阅读 · 0 评论 -
深度学习(十)——Pytorch统计属性
norm范数norm(1):1范数,绝对值之和norm(2):2范数,平方和在根号矩阵范数:绝对值的和,再求maxnorm(1,dim=1):对维度1做1范数prod:累乘argmax,argmin:返回索引mean,max等首先会把矩阵变为dim=1在每个dim=1上找最大值keepdim表示保持原来的dimtop-k——取大小为 前k个和索引kthvalue—...原创 2020-02-28 20:40:43 · 210 阅读 · 0 评论 -
深度学习(九)——Tensor基本运算
+:add或者+-:sub或者-*:mul或者*/:div或者/——一个**/符号代表除法,两个//**代表整除矩阵相乘*:是对应位置相乘torch.mm只适用2d,不推荐torch.matmul=@:矩阵相乘,@是matmul的重载图中w为(512,784),a(4,784)@w(784,512)=(4,512),为什么w的512放第一位呢:Pytorch习惯把输出放第一位,...原创 2020-02-28 19:58:55 · 567 阅读 · 0 评论 -
深度学习(八)——拼接和拆分
CatStackSplitChunkCat维度拼接dim=?就拼接那个维度,数据都要补齐Stack添加维度stack维度一定要一致Split按长度/数目[3,1,1]按311拆分拆分Chunk按数目拆分...原创 2020-02-27 22:36:12 · 1226 阅读 · 0 评论 -
深度学习(七)——Broadcast自动扩展
broadcast的扩张步骤理解broadcast为自动扩张图中第2行第2列的0 1 2 维度为1,即[3],broadcast首先 把[3]->[1 3],再进行扩张,步骤为:在高维度上插入1把所有shape为1的Tensor扩张为shape和a相同的shape一个浮点数是4byte理解broadcast的存在意义:[5.0]存数据,[1]代表1维度如果[1,32,8...原创 2020-02-27 22:06:19 · 1113 阅读 · 0 评论 -
深度学习(六)——torch的Tensor维度变换
view和reshape功能一样-不变的是数据本身,变维度改变对数据的理解缩小/扩大维度,正的维度在索引之后插入,负的维度在索引之前插入例子:给每幅图一个偏置bias右边扩两次,左边一次,从[32]得到[1 32 1 1 ]维度扩展:expend/repeat,expend在需要的时候复制数据,节约内存,推荐;repeat复制了数据expend扩展1->N可行,大于1需要...原创 2020-02-26 22:39:12 · 1715 阅读 · 0 评论 -
深度学习(五)——Pytorch的索引和切片
索引注意,最后维度上的值取出来是标量:2->0,1不包含2-1:->最后开始[0 1 2],用-1表示索引就是-3 -2 -1,所以最后一个是-1,因为从最后开始,所以如果是RGB三通道,就只取了B一个通道start:end:step::2,代表步长为2挑选任一位置…自动识别ge:找比函数的参数大的位置转化为一维...原创 2020-02-26 20:57:47 · 524 阅读 · 0 评论 -
深度学习(四)——Pytorch的张量数据类型
TensorPytorch的基本类型都是在Int,Double,Float等数据类型后加一个Tensor,但没String类型,解决办法:onehot编码,都是01矩阵——体现不了语言前后关联性word2vec等在gpu上还有cuda类型如果一个数据a是Tensor类型type(a),a.type()查询数据类型isinstance(a, torch.FloatTensor),合...原创 2020-02-26 17:22:49 · 578 阅读 · 0 评论 -
深度学习(三)——MINIST手写图片识别
思路:网络是三层:h1=relu(w1*x+b1)-输入28*28,输出256h2=relu(w2*h1+b2)-输入256,输出64h3=w3*h2+b3-输入64,输出10其中256,64是自己构想的,10是固定的结果10分类每次是512个28*28的1通道图片进入一起处理,处理三次得出结果注意每次计算梯度都要先清零:optimizer.zero_grad(),不然梯度累加就...原创 2020-02-26 16:42:52 · 456 阅读 · 0 评论 -
深度学习(二)——线性回归的求解
线性回归对线性方程y = w * x + b中w,b求解知识点:损失函数:loss = (y - w * x - b )**2怎么迭代:loss对要求的值求偏导:w(新) = w(旧) - ∂loss/∂wb(新) = b(旧) - ∂loss/∂b为什么是减号呢:设想当前点在最优解左边(凹函数),斜率就是负值,怎么向右移动呢?负负得正,减去这个负值就好啦!随着点越来越靠近最优...原创 2020-02-24 12:29:47 · 446 阅读 · 0 评论 -
深度学习(一)——回归问题,梯度下降
深度学习基础:不断回归得到最优解梯度下降:利用高中的求导,一步一步逼近最优解思想变量:x每次求导∂x利用x2 = x1 -步长 * ∂x,一步步利用∂x诱导走向最优解最优解怎么求?要求的式子形如:y= w * x + b (w、b待求)定义:loss = ∑(w * x + b - y )**2 ——loss叫误差函数方法:用模拟的数据和y的和的平方,使loss减小到最优,...原创 2020-02-23 22:35:38 · 383 阅读 · 0 评论