TensorFlow is open-source python library designed by Google to develop Machine Learning models and deep learning neural networks. betainc() is method in tensorflow math module used to Compute the regularized incomplete beta integral Ix(a,b) .
Regularized incomplete beta integral Ix(a,b) is defines as:
Ix(a,b) = B(x;a,b)/B(a,b)
where,
B(x;a,b) is incomplete beta function and is defined as:
B(x;a,b) = ?xo ta-1(1-t)b-1 dt
and B(a,b) is complete beta function.
Syntax: tensorflow.math.betainc( a, b, x, name)
Parameters:
- a: It’s a Tensor. Allowed types are float32 and float64.
- b: It’s a Tensor of type same as a.
- x: It’s also a Tensor of type same as a.
- name: It’s an optional parameter that defines the name for the operation.
Return: Returns a tensor of type same as a.
Example 1:
Python3
# importing the library import tensorflow as tf # initializing the constant tensors a = tf.constant([ 1 , 2 , 3 , 4 , 5 ], dtype = tf.float64) b = tf.constant([ 1.5 , 2.7 , 3.4 , 4.9 , 5.6 ], dtype = tf.float64) x = tf.constant( [ 1 , 1 , 1 , 1 , 1 ], dtype = tf.float64) # printing the input tensors print ( 'Input a: ' ,a) print ( 'Input b: ' ,b) print ( 'Input x: ' ,x) # calculating the regularized incomplete beta integral ribi = tf.math.betainc(a,b,x) # printing the result print ( 'regularized incomplete beta integral: ' ,ribi) |
Output:
Input a: tf.Tensor([1. 2. 3. 4. 5.], shape=(5,), dtype=float64) Input b: tf.Tensor([1.5 2.7 3.4 4.9 5.6], shape=(5,), dtype=float64) Input x: tf.Tensor([1. 1. 1. 1. 1.], shape=(5,), dtype=float64) regularized incomplete beta integral: tf.Tensor([1. 1. 1. 1. 1.], shape=(5,), dtype=float64)
Example 2: This example tries to evaluate regularized incomplete beta integral with unallowed dtype tensor. This will raise NotFoundError.
Python3
# importing the library import tensorflow as tf # initializing the constant tensors a = tf.constant([ 1 , 2 , 3 , 4 , 5 ], dtype = tf.complex128) b = tf.constant([ 1.5 , 2.7 , 3.4 , 4.9 , 5.6 ], dtype = tf.complex128) x = tf.constant( [ 1 , 1 , 1 , 1 , 1 ], dtype = tf.complex128) # printing the input tensors print ( 'Input a: ' ,a) print ( 'Input b: ' ,b) print ( 'Input x: ' ,x) # calculating the regularized incomplete beta integral ribi = tf.math.betainc(a,b,x) |
Output:
Input a: tf.Tensor([1.+0.j 2.+0.j 3.+0.j 4.+0.j 5.+0.j], shape=(5,), dtype=complex128) Input b: tf.Tensor([1.5+0.j 2.7+0.j 3.4+0.j 4.9+0.j 5.6+0.j], shape=(5,), dtype=complex128) Input x: tf.Tensor([1.+0.j 1.+0.j 1.+0.j 1.+0.j 1.+0.j], shape=(5,), dtype=complex128) NotFoundError Traceback (most recent call last) <ipython-input-16-904ce11d62af> in <module>() 1 # calculating the regularized incomplete beta integral ----> 2 ribi = tf.math.betainc(a,b,x) 2 frames /usr/local/lib/python3.6/dist-packages/six.py in raise_from(value, from_value) NotFoundError: Could not find valid device for node. Node:{{node Betainc}} All kernels registered for op Betainc : device='XLA_CPU_JIT'; T in [DT_FLOAT, DT_DOUBLE] device='XLA_GPU_JIT'; T in [DT_FLOAT, DT_DOUBLE] device='XLA_CPU'; T in [DT_FLOAT, DT_DOUBLE] device='XLA_GPU'; T in [DT_FLOAT, DT_DOUBLE] device='GPU'; T in [DT_DOUBLE] device='GPU'; T in [DT_FLOAT] device='CPU'; T in [DT_DOUBLE] device='CPU'; T in [DT_FLOAT]