稀疏数据与优化器:简述

学习深度学习也有一段时间了,一直没有一个好的记笔记的习惯。这里记录一些经常见到的基础词汇。

1. 稀疏数据: 

引用:https://blog.csdn.net/vucndnrzk8iwx/article/details/79185875

        稀疏数据是指,数据框中绝大多数数值缺失或者为零的数据。在现代社会中,随着信息的爆炸式增长,数据量也呈现出爆炸式增长,数据形式也越来越多样化。在数据挖掘领域,常常要面对海量的复杂型数据。其中,稀疏数据这一特殊形式的数据正在越来越为人们所注意。稀疏数据绝对不是无用数据,只不过是信息不完全,通过适当的手段是可以挖掘出大量有用信息的。然而在一些情况下,数据的稀疏程度甚至会达到 95%以上,这使得传统的统计方法不适于处理此类数据。 

    稀疏数据的来源与产生原因可以有很多种。目前大致归结起来,主要可以概括为以下几个种类:

-- 由于调查不当产生的稀疏数据

    这种稀疏数据常见于问卷调查和电话调查中,如果问卷问题设置不当,过于繁杂难懂,就会导致被调查者产生厌烦心理,草草回答几个问题了事。然而已经回答的问题又是有效问卷的一部分,不能做遗弃处理,假若这种问卷大量出现,那么就会出现稀疏数据。

-- 由于天然限制产生的稀疏数据

    这种稀疏数据常见于电子商务领域,例如淘宝网、沃尔玛等网购网站或超市中。由于每个客户客观上不可能把所有商品购买一遍,所以他们的客户购买记录必然只是对海量商品中一小部分的记录。这样,客户购买记录必然是一个稀疏数据。

-- 文本挖掘中产生的稀疏数据

    在文本挖掘领域,为了比较几篇文章是否属于同一主题,常用的算法是首先选定一批关键词,通过不同文章中这些关键词出现的频率来进行判断。而这一批关键词常常会有成千上万个,而每篇文章基本只包含其中几十到几百个关键词,那么由此产生的数据也就是一个稀疏数据了。

-- 医学造影成像领域

    现代医学常常要借助 CT、B 超、核磁等手段造影成像,作为判断病情的重要手段。其中 CT 成像是由若干射线源与接收器来采集数据,在实际应用中,受到设备、病人条件等限制,常常不能做到全角度扫描,故而在成像算法上也常常要面对稀疏数据。


2. 反向传播用到的计算方式

这个可以说是非常的不想看了,但是还是要看 =  = 转自:https://blog.csdn.net/u014595019/article/details/52989301

- BGD
即batch gradient descent. 在训练中,每一步迭代都使用训练集的所有内容. 也就是说,利用现有参数对训练集中的每一个输入生成一个估计输出yi^,然后跟实际输出yi比较,统计所有误差,求平均以后得到平均误差,以此来作为更新参数的依据:

g^←+1n∇θ∑iL(f(xi;θ),yi) —— 这里g^就是当前位置的梯度嘛

θ←θ−ϵg^ —— 更新参数的位置(梯度*学习率是对参数的下降值),这里如果 loss function是一个需要下降的函数,那参数值就是x轴,学习率就是用来配合每个点的梯度值来在下降的时候决定每次下降多少用的,直到最低点!(almost)

- SGD

SGD全名 stochastic gradient descent, 即随机梯度下降。不过这里的SGD其实跟MBGD(minibatch gradient descent)是一个意思,即随机抽取一批样本,以此为根据来更新参数。(不再一步一步递减了!)

- Momentum
上面的SGD有个问题,就是每次迭代计算的梯度含有比较大的噪音. 而Momentum方法可以比较好的缓解这个问题,尤其是在面对小而连续的梯度但是含有很多噪声的时候,可以很好的加速学习.Momentum借用了物理中的动量概念,即前几次的梯度也会参与运算.为了表示动量,引入了一个新的变量v(velocity).v是之前的梯度的累加,但是每回合都有一定的衰减。这个没咋看懂,没用过,大概就是引入一个梯度变量?

- Nesterov Momentum

这是对之前的Momentum的一种改进,大概思路就是,先对参数进行估计,然后使用估计后的参数来计算误差

- AdaGrad

AdaGrad可以自动变更学习速率,只是需要设定一个全局的学习速率ϵϵ,但是这并非是实际学习速率,实际的速率是与以往参数的模之和的开方成反比的。 好的,看公式就能迅速理解嘻嘻

- RMSProp

RMSProp通过引入一个衰减系数,让r每回合都衰减一定比例,类似于Momentum中的做法。(类似 emmmm

- RMSProp with Nesterov Momentum (看名字就不看了 emmm

- Adam

Adam(Adaptive Moment Estimation)本质上是带有动量项的RMSprop,它利用梯度的一阶矩估计和二阶矩估计动态调整每个参数的学习率。Adam的优点主要在于经过偏置校正后,每一次迭代学习率都有个确定范围,使得参数比较平稳。(Adam还是很值得一学的)其原理还是动态调整,但是涉及到动量衰减系数。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值