我认为它是某种移动平均线,但有效范围介于0和1之间。
答案 0 :(得分:20)
@ drpng的答案指向正确的解释,但由于链接可能在这里下去,因此使用了平滑函数的Pythonic转换代码。
假设所有真实标量值都在名为scalars
的列表中,则应用如下平滑:
def smooth(scalars, weight): # Weight between 0 and 1
last = scalars[0] # First value in the plot (first timestep)
smoothed = list()
for point in scalars:
smoothed_val = last * weight + (1 - weight) * point # Calculate smoothed value
smoothed.append(smoothed_val) # Save it
last = smoothed_val # Anchor the last smoothed value
return smoothed
答案 1 :(得分:11)
答案 2 :(得分:0)
这是实际的源代码,它执行指数平滑,并在注释中解释了一些额外的去偏置,以补偿零初始值的选择:
last = last * smoothingWeight + (1 - smoothingWeight) * nextVal