我有一个数据集,其中一些数据点为0,我试图处理它,使每个数据点变成与前一个数据点的百分比变化。问题是这些点中的一些值为0,因此有时从前一个数据点0计算百分比变化会导致当前数据点等于无穷大。
处理百分比变化是否有更好的方法,还是让循环神经网络使用无穷大作为其某些数据点是可以的?
我将这些数据输入到由Keras支持的循环神经网络中。
回答:
这是在机器学习中一个经典的问题。在处理此类问题时,你需要应用所谓的平滑处理,通常是在分母上加上一个小的常数eps
。所以你需要应用以下转换:
ration = next_step / (eps + small_step)
我建议你将eps
设置为大于1e5
,因为1e6
是keras
中使用的float32
格式的十进制点精度。