Какова математика за параметром "сглаживания" в скалярных графах TensorBoard?

Я предполагаю, что это какая-то скользящая средняя, но допустимый диапазон находится между 0 и 1.

Ответы

Ответ 1

Сглаживание объясняется здесь и применяется здесь. Это линейный фильтр.

Ответ 2

Она называется экспоненциальной скользящей средней, ниже приведено объяснение кода, как она создается.

Предполагая, что все реальные скалярные значения находятся в списке с именем scalars, сглаживание применяется следующим образом:

def smooth(scalars: List[float], weight: float) -> List[float]:  # 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