李同学2020-08-19 22:37:13
请问为什么 第二种方法,即标准化 可以消除 outlier?
回答(1)
Kevin2020-08-20 09:21:24
同学你好!
举个简单的例子,分类的问题,x=-1000,-10,-5,-4,-3,-2,-1,0,1,2,3,4,5,10,1000,其中-1000和1000都是异常值。训练出来的模型,会判定x在-3到3之间y为1,其余为0,也就是x=-3,-2,-1,0,1,2,3时,y=1。
而Normalization后,这个区间也会相应压缩,可能会变成x(normalized)在-0.3到+0.3之间y(new)为1,其余为0,但此时由于异常值的存在,分母特别大,原本不在-3到3的数据点,经过Normalization后,都在-0.3到0.3之间,即x=-10,-5,-4,-3,-2,-1,0,1,2,3,4,5,10时,y=1。因此该算法对异常值敏感。
而Standardization经过该变化,直观上理解,就是区间成比例缩放,因为是根据该组数据的均值和标准差调整的,异常值对均值和标准差的影响相对较小,因此较大程度保留了该组数据的性质。所以Standardization对异常值不太敏感。但要注意,这里并没有消除outlier,只是outlier的影响小而已。
- 评论(0)
- 追问(2)
- 追问
-
老师您解释的很具体,我想把问题简单化一点。我说一下我的想法:先说第二种 标准化,即Z值化,因为(0,1)正太分布的均值是0,标准差是1,以数据大小一般不会超过三倍标准差为common sence,即任何数据Z化之后都在(-3,3)之间,所以异常值 10000 -5000也罢的影响就小了;相对,正常化,因为分母为 range,受异常值影响大,所以整个结果受异常值影响也会大。问:可否简单的这样理解,目的是更好的记住结论啊~
- 追答
-
同学你好!
可以这么理解。其实考试并不要求具体的理解,记住结论即可。
评论
0/1000
追答
0/1000
+上传图片

