tensorflow 将数值限制在一定范围内


在使用tf.log时,如果输入为0.则loss为nan

这时使用 tf.clip_by_value(1-y,1e-10,1.0)将一个张量中的数值限制在一个范围之内。(可以避免一些运算错误:可以保证在进行log运算时,不会出现log0这样的错误或者大于1的概率)

tf.clip_by_value(1-y,1e-10,1.0)

参数:(1)1-y:input数据(2)1e-10、1.0是对数据的限制。
当1-y小于1e-10时,输出1e-10;
当1-y大于1e-10小于1.0时,输出原值;
当1-y大于1.0时,输出1.0;

比如tf.log(tf.clip_by_value(tf.sigmoid(self.scores),1e-8,1.0)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM