Предположим, у меня есть два тензора, p1
и p2
в тензорном потоке одинаковой формы, которые содержат вероятности, некоторые из которых могут быть равны нулю или единице. Является ли их элегантный способ вычисления логарифмической вероятности точечным: p1*log(p2) + (1-p1)*log(1-p2)
?
Реализация его наивно с использованием функций тензорного потока
p1*tf.log(p2) + (1-p1)*tf.log(1-p2)
рискует вызвать 0*tf.log(0)
, что даст nan
.