![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
人工智能
deardao
昵称为同名微信号,有合作交流的可与我联系
展开
-
设计普遍逼近的深度神经网络:一阶优化方法
传统的基于优化的神经网络设计方法通常从一个具有显式表示的目标函数出发,采用特定的优化算法进行求解,再将优化迭代格式映射为神经网络架构,例如著名的 LISTA-NN 就是利用 LISTA 算法求解 LASSO 问题所得 [4],这种方法受限于目标函数的显式表达式,可设计得到的网络结构有限。一些研究者尝试通过自定义目标函数,再利用算法展开等方法设计网络结构,但他们也需要如权重绑定等与实际情况可能不符的假设。论文地址:https://ieeexplore.ieee.org/document/10477580。原创 2024-04-27 10:22:26 · 207 阅读 · 0 评论 -
einsum和matmul的结果对比实验
程序:import torchimport torch.nn as nnt=torch.randn((2,3,2))w=torch.randn((3,2))einsum = torch.einsum('ijk,js->isk',t,w)print(einsum.shape,'einsum shape')print(einsum)t_T=t.transpose(2,1)result = torch.matmul(t_T,w).transpose(2,1)print(result.原创 2021-03-17 08:54:23 · 975 阅读 · 0 评论 -
LCA: Loss Change Allocation for Neural Network Training (神经网络在训练过程中的损失变化分配)
经验告诉我们,随着网络的训练,损失是会下降的(假设所有设计都正确),损失函数的变化指示着算法的收敛性和网路的学习过程。然而,当我们把总体的损失函数分配到网络中的每一个参数上,来具体测量损失在每个参数上的变化程度,结果会怎样?这篇文章,就是基于这样的思路,对每层、没通道甚至没个神经元的损失变化情况进行了测量,该方法将得到那些有意思的结论呢?原创 2019-09-13 21:56:12 · 548 阅读 · 0 评论 -
分布式机器学习(一)之总体概述
大数据,大模型,高算法的时代到来了,在本系列 Blog 里,主要介绍如何使用分布式机器学习算法(高性能集群)来训练拥有大规模参数的机器学习模型。分布式机器学习就是解决怎样协调和利用大量的 GPU 集群,来完成深度学习模型的训练和获取好的收敛,达到相对高的性能。分布式机器学习涉及如何分配训练任务,调配计算资源,协调各个功能模块,以达到训练速度与精度的平衡。原创 2019-09-15 22:32:00 · 23276 阅读 · 4 评论 -
机器学习之优化算法(一)之损失函数
损失函数损失函数被称为 cost function, object function, loss function等,这里不区分几种用法的微小区别。机器学习离不开目标函数,我们分析一下目标函数:其中,前一项是经验风险,后一项是结构风险。前者是为了增加 ML 对已有系统的 fitting,后者是尽量减少 ML 模型的复杂度,以避免 overfitting。整个损失函数称为正则化经验风险最小化...原创 2019-09-18 19:06:56 · 1765 阅读 · 0 评论 -
机器学习之优化算法(二)之梯度下降及收敛性分析
确定性优化算法和随即优化算法是有明显的分界线的。如果加上分布式集群上的实现方式,就可以分为同步或异步的算法。从梯度下降(GD)后,20世纪50年代,各种一阶算法井喷,其中 SGD 也是这个时候的产物。梯度下降(GD)是柯西(Cauchy )大神的1847年提出的。其基本思想是...原创 2019-09-18 19:08:19 · 6944 阅读 · 3 评论