计算机数学

来源:互联网 发布:阿里云机顶盒刷机固件 编辑:程序博客网 时间:2024/04/30 13:16
  1. 数据区对数的意义
    平时在一些数据处理中,经常会把原始数据取对数后进一步处理。

之所以这样做是基于对数函数在其定义域内是单调增函数,取对数后不会改变数据的相对关系,取对数作用主要有:

  1. 缩小数据的绝对数值,方便计算。

例如,每个数据项的值都很大,许多这样的值进行计算可能对超过常用数据类型的取值范围,这时取对数,就把数值缩小了,例如TF-IDF计算时,由于在大规模语料库中,很多词的频率是非常大的数字。

  1. 取对数后,可以将乘法计算转换称加法计算。
    乘法连乘可能造成浮点下溢,转成对数加法后,不会造成溢出

  2. 某些情况下,在数据的整个值域中的在不同区间的差异带来的影响不同。例如,中文分词的mmseg算法,计算语素自由度时候就取了对数,这是因为,如果某两个字的频率分别都是500,频率和为1000,另外两个字的频率分别为200和800,如果单纯比较频率和都是相等的,但是取对数后,log500=2.69897, log200=2.30103, log800=2.90308 这时候前者为2log500=5.39794, 后者为log200+log800=5.20411,这时前者的和更大,取前者。因为前面两个词频率都是500,可见都比较常见。后面有个词频是200,说明不太常见,所以选择前者。

从log函数的图像可以看到,自变量x的值越小,函数值y的变化越快,还是前面的例子,同样是相差了300,但log500-log200>log800-log500,因为前面一对的比后面一对更小。

也就是说,对数值小的部分差异的敏感程度比数值大的部分的差异敏感程度更高。这也是符合生活常识的,例如对于价格,买个家电,如果价格相差几百元能够很大程度影响你决策,但是你买汽车时相差几百元你会忽略不计了。

  1. 取对数之后不会改变数据的性质和相关关系,但压缩了变量的尺度,例如800/200=4, 但log800/log200=1.2616,数据更加平稳,也消弱了模型的共线性、异方差性等。

  2. 且所得到的数据易消除异方差问题。

  3. 在经济学中,常取自然对数再做回归,这时回归方程为 lnY=a lnX+b ,两边同时对X求导,1/Y*(DY/DX)=a*1/X, b=(DY/DX)*(X/Y)=(DY*X)/(DX*Y)=(DY/Y)/(DX/X) 这正好是弹性的定义。

当然,如果数据集中有负数当然就不能取对数了。实践中,取对数的一般是水平量,而不是比例数据,例如变化率等。

  1. 方差
    方差是衡量实际值与期望值之间偏离的程度。
    标准差(或均方差)与方差有相同的量纲。标准差是用来衡量一组数据的离散程度的统计量[2] 。

  2. 余弦 向量之间的相似性
    采用余弦值衡量两个向量之间的相似性,两个向量的夹角越小,相关性越大。

  3. Sigmoid函数
    阶跃函数具有不光滑、不连续等不太好的性质,通常使用sigmoid函数来代替阶跃函数,它把可能在较大范围内变化的输入值挤压到(0,1)输出值范围内,因为有时也称sigmoid函数为挤压函数。

  4. 拉格朗日乘子
    在等式约束下,求函数的极值问题,使用拉格朗日乘子

0 0
原创粉丝点击