问题描述
对于DBSCAN实施,是否必须将所有功能列标准化并标准化?
例如
[[ 664.,703.,2901.069079],[ 632.,717.,[ 606.,740.,4386.449399],[ 635.,751.,[ 672.,525.,4760.874001]]
如果我必须对此进行DBSCAN,是否必须先对其进行标准化然后再对其进行标准化?只是规范化?
此外,这些值如何决定eps的选择?
解决方法
标准化或标准化数据可以破坏数据集的重要属性。
一些例子:
- 您的数据是地理坐标。经纬度绝对不能归一化或标准化
- 您的数据是直方图。唯一有意义的归一化是使直方图的总和为1。切勿变换单个变量!
- 您的数据具有有意义的零。例如,它是一个货币值。不过,在某些领域,使用sgn(x)* sqrt(abs(x))进行转换可能会有所帮助。
- 您的数据稀疏。永远不要标准化。 (如果您没有负值,则归一化可能很好。)
不应该选择缩放,因为“总是缩放”;但是由于您有实际数据!选择它是因为它是对的,而不是因为它是“默认”或在某些教程中。
如果您要归一化或标准化,很可能您不了解自己的数据,也不了解如何测量距离或相似性;然后人们喜欢使用归一化作为最后的手段;但是你永远都不知道结果是否有意义。