数学知识在实际中的意义

在实验中通常会自己设计损失函数、优化函数等,通常会用到对数、分数、梯度等,不明白函数的实际意义在设计的时候就一脸懵,因此本文就几种常见的函数进行实际意义的解释,方便后期自身学习和使用。

1 对数

1.1 对数的基本属性

  • 在定义域范围内单调递增
  • X 必须大于0
  • X 值越小越敏感
  • log图如图所示
log.jpg

1.2 对数的各个属性意义

  • 对数的单调递增属性,X越大对数值越大。对数的单调递增属性保证了原始数据的差异性,比如原始数据a = 500,b = 200,a > b ,取对数之后ln a = 6.2146,ln b = 5.2983,ln a > ln b ,原数据大的在取对数后仍然大,保持了原始数据的差异性。
  • 扩大了倍数但是差距没有变化。例如ln 50 - ln 20 = 0.917, 而ln 5000- ln 2000 = 0.917, 差距几乎一致。所以在实验中如果遇到数据较大的情况可以不用缩小相同倍数,直接取对数值也不影响,这也说明了第一个中保证了数据之间的差异性。
  • 值越小越敏感。举个例子,a=50,b=20,a-b=30; ln a -ln b= 0.917,而ln1000 - ln 700 = 0.42, 反而ln 50 - ln 20 > ln 1000 -ln 700,所以值越小越敏感。在实际例子中当你消费买了10块的东西,多收了你2,3块你会在意,但是在几十百万的东西就不会在意一两千的差额了,就是这个意思。
  • 取对数后会让数据更加平稳,保证数据差异的同时减小了数据的倍数,减小了模型的计算量,在深度学习模型中使用较多。

1.3 总结

实验中需要取对数的情况很多,一般什么情况下取呢?这要取决于数据的属性,如果数据都是大于0的,数值较大,用到后期计算量大,影响模型效率的情况,可以考虑采用取对数。

2 梯度

2.1 梯度的属性

(蛮佩服发明出梯度这个概念的人,是怎么想到的)
梯度这部分用的比较多,实际意义就是:

  • 沿着梯度方向能找到函数的极值点
  • 梯度方向找到极值的速度最快

在机器学习中通常用梯度来优化权重,因为权重都是f(x,seta)的公式,对每个seta求偏导后,再将梯度值反馈,优化seta,x是input不变的,从而可以得到seta向量值的方向,从这个方向可以得到loss函数的极小值,完成模型的训练。

3 entropy 熵

熵在实际意义中就是预测事物的不准确性,不可靠性。
熵越大,说明不确定性越强。
比如在预测中,假设分类器1预测分类,1,2,3,预测类1 的概率是0.56,2的概率是0.34,3的概率是0.1,分类器2预测分类的类1概率是0.98,2的概率是0.01,3的概率是0.01,那么分类器2的效果更好,因为2的不确定性小,0.9的概率比0.56的概率更值得信任,所以2的熵更小,值更稳定。

(其他意义慢慢更新中。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容