У меня есть функция потери стоимости в тензорном потоке. Цель состоит в том, чтобы предсказать вектор, параллельная проекция которого на другой вектор должна быть как можно лучше похожа на другой вектор.
def loss(n_pred, n_true):
cost = tf.square(tf.divide(n_pred-n_true, n_true))
return tf.reduce_mean(cost)
n_true с равномерным распределением.
Так что в идеале n_pred / n_true должно быть 1.
Проблема в том, что мой прогноз должен быть стабильным по n_true. Прямо сейчас у меня всегда есть предубеждение (> 1) для n_pred / n_true для маленького n_true и недооценка (<1) для n_pred / n_true для большого n_true. Для меня это не имеет смысла, так как потеря относительна. </p>
Есть ли у вас какие-либо идеи, как уменьшить потери по значениям n_true, поэтому я не всегда получаю завышение для малых значений n_true и недооценку для больших значений n_true?
Большое спасибо за любую помощь!