TensorFlow檢查NaN和Inf值的張量

2020-07-16 11:15 更新

tf.check_numerics

check_numerics ( 
    tensor, 
    message, 
    name = None
 )

請(qǐng)參閱指南:控制流程>調(diào)試操作

檢查 NaN 和 Inf 值的張量.

當(dāng)運(yùn)行時(shí),如果張量有任何不是數(shù)字(NaN) 或無(wú)窮大(Inf) 的值,就會(huì)報(bào)告一個(gè) InvalidArgument 錯(cuò)誤.否則,按原樣通過(guò)張量.

ARGS:

  • tensor:一個(gè)張量.必須是下列類(lèi)型之一:half,float32,float64.
  • message:一個(gè)字符串.是錯(cuò)誤消息的前綴.
  • name:操作的名稱(可選).

返回:

返回一個(gè)張量,與 tensor 具有相同的類(lèi)型.


參數(shù) 'tensor' 要屬于以下類(lèi)型才能通過(guò) bfloat16, float16, float32, float64,返回原tensorflow。否則報(bào)InvalidArgument 錯(cuò)誤。

#!/usr/bin/env python2
# -*- coding: utf-8 -*-
"""
Created on Mon Aug 27 11:16:32 2018

@author: myhaspl
"""

import tensorflow as tf
a = tf.constant([[1., 2.], [3., 4.]])
b = tf.constant([[1, 2], [3, 4]])

check_a=tf.check_numerics(a,"non number")
#check_b=tf.check_numerics(b,"non number")                                                            
sess=tf.Session()
with sess:
    print sess.run(check_a)
   # print sess.run(check_b)

[[1. 2.] [3. 4.]]


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)