
深度学习DNN网络
文章平均质量分 91
宝贝儿好
李园园
展开
-
【深度学习】第六章:模型效果评估与优化
六、模型效果评估前面讲过,最初我们建模的目的就是预测,最早人们使用的是传统的数理统计分析建模,这是一套完整的理论,是建立在基本假设、总体、样本、抽样、估计、检验等概念框架之上,有一系列完整的数学方法和和数理统计工具去计算统计量,进而得到总体规律而形成的统计模型,然后用模型来进行预测。但是,机器学习和深度学习是没有这一套系统的理论框架的,机器学习和深度学习更像是一个实证类方法,评估一个模型的好坏看预测效果即可,预测效果好就是好模型,没人再追究你模型建立的前提假设是否合理、你总体服从什么分布等问题。也所原创 2024-01-04 14:10:14 · 2260 阅读 · 0 评论 -
【深度学习】第五章:再次回看网络架构-激活函数-损失函数-梯度下降
再看反向传播,当relu把这个神经元的输出变成0后,那反向传播时它的梯度就是0了,那就意味着这个神经元的参数得不到更新了,参数不更新,意味着下次正向传播时还是上一轮的参数,所以大概率还是被relu变成0,就表示这个神经元不再相应后面的数据了,参数也就一直更新不了,很难再活过来。所以线性层后必有激活层,即使架构图没有标出,你也要知道一定是要有激活层的。输出层的激活函数也是根据任务设置的,而且还可以灵活设置,就是如果你的输出层没有激活函数也是可以的,也是可以放到损失函数的计算过程中,这个看你怎么方便怎么来。原创 2024-01-03 13:14:26 · 952 阅读 · 0 评论 -
【深度学习】第四章:反向传播-梯度计算-更新参数
简单的说,求导就是求梯度,有了梯度就可以更新参数,更新了的新参数就是损失函数减小的一组参数,如此往复,就是模型学习样本数据,就是我们训练了模型。当损失函数小到我们可以接受的程度,此时的模型就是最优的模型,此时的模型就可以很好的帮我们人类预测样本了。我们计算loss关于w、b的偏导,从几何角度看,就是在loss函数的(w,b)点,找到了loss的切面,而沿着这个切面的反方向就是loss下降最快的方向,所以当(w,b)沿切面反方向走到(w',b')时,loss就变小了一点。从模型角度来说,就是模型学习的过程。原创 2023-12-30 19:38:06 · 2428 阅读 · 0 评论 -
【深度学习】第三章:搭建架构-正向传播-计算损失
因为神经网络本来就很复杂了,不同的隐藏层再设置不同激活函数,对模型训练的稳定性、可收敛性等都不利,所以所有的隐藏层的激活函数都一样。二是,输入层是没有参数的,只有隐藏层和输出层才有参数,如上图的C,输出层前面的线条就是输出层的参数w,所以一个神经元就有输入个参数,如果还设置了b,一个神经元还有一个b。(1)输入层:就是上面的input layer,输入层的神经元个数是由你的数据决定的,比如前面讲的鸢尾花数据集,这个数据集有4个特征,那它对应的DNN架构的输入层一定得是4个神经元,多一个少一个都不行。原创 2023-12-27 12:59:05 · 1372 阅读 · 0 评论 -
【深度学习】第二章:数据
类似这种数据集的数据,我们一般称为二维表格数据,就是有行有列的的二维数据,其中行是一条一条的样本,列是样本的特征,样本和样本之间没有什么关联。说明:pytorch在对数据进行生成、打包、shuffle、切分、分小批次,以及数据预处理(比如转化数据类型、数据归一化)等操作,pytorch都是仅仅存储着数据转化的逻辑关系,不是真正的去新生成一些数据转化结果数据,而是生成一些映射式或者迭代式的对象,在使用的时候也是迭代查询或者递归查询这些对象,这种底层设计机制主要就是为了适应海量数据而设计的。原创 2023-12-25 20:36:55 · 1240 阅读 · 0 评论 -
【深度学习】第一章:深度学习的入坑线路
二是数学方面,你要清楚数据传播过程是怎样的一个数学计算过程、你要清楚损失函数的具体或抽选的表达是什么、你要清楚优化算法背后的数学逻辑、你要知道训练过程的数学过程等,就是每步的数学过程你要清楚,这样你才能知道问题出在那里,你才能针对性的采取措施;最后代码方面,这是你学习的归宿,不管你有什么想法、什么行动,你都得借助计算机,才能实现或者想大家展示你的想法,所以你的基本代码能力必须有。当然你学DNN之前也是默认你有一定的计算机基础的、底层的内存、操作系统、语言、数据结构、数据库等都是默认你已经该知道的都知道了。原创 2023-12-25 08:47:04 · 509 阅读 · 0 评论