偏斜特征最合适的归一化/变换方法?

Ann*_*lli 5 machine-learning normalization biological-neural-network neural-network

我正在尝试预处理生物数据以训练神经网络,尽管对各种归一化方法进行了广泛的搜索和重复演示,但我并不知道应该使用哪种方法.特别是我有许多输入变量,它们是正偏态的,并且一直试图确定是否存在最合适的归一化方法.

我还担心这些输入的性质是否会影响网络的性能,因此已经尝试过数据转换(特别是日志转换).但是,有些输入有很多零,但也可能是小的十进制值,并且似乎受到log(x + 1)(或者从1到0.0000001的任何数字)的高度影响,结果分布未能接近正常(或者仍然是倾斜或变为双峰,在最小值处具有尖峰).

这些与神经网络有关吗?即.我应该使用特定的特征转换/规范化方法来解释偏斜的数据,还是应该忽略它并选择规范化方法并推进?

对此事的任何建议将不胜感激!

谢谢!

Sta*_*tan 2

由于输入向量中的特征具有不同的性质,因此您应该对每个特征使用不同的归一化算法。网络应该在每个输入上提供统一的数据,以获得更好的性能。

正如您所写的,某些数据是倾斜的,我想您可以运行一些算法来“标准化”它。如果应用对数不起作用,也许可以尝试其他函数和方法,例如等级变换。

如果小十进制值确实完全出现在特定功能中,则只需以特定方式对其进行标准化,以便将它们转换为您的工作范围:我想是 [0, 1] 或 [-1, +1]。

如果某些输入有许多零,请考虑将它们从主神经网络中删除,并创建额外的神经网络,该神经网络将对具有非零特征的向量进行操作。或者,您可以尝试运行主成分分析(例如,通过具有结构 NMN,M < N 的自动关联记忆网络)来减少输入空间维度,从而消除归零成分(它们实际上会以某种方式在新的组合输入中考虑在内) )。顺便说一句,新的 M 输入将自动标准化。然后,您可以将新向量传递到实际的工作神经网络。