Fundamentos matemáticos en Tensorflow

Antes de construir un programa TensorFlow básico, es fundamental comprender las ideas matemáticas necesarias para TensorFlow. El núcleo de cualquier algoritmo de aprendizaje automático se considera matemática. Se establece una estrategia o solución para un determinado algoritmo de aprendizaje automático con la ayuda de principios matemáticos clave. Profundicemos en los fundamentos matemáticos de TensorFlow.

Escalar

Un escalar es una cantidad física sin dirección que se caracteriza totalmente por su magnitud. Los escalares son vectores con una sola dimensión.

Python3

# importing packages
import tensorflow as tf
  
# creating a scalar
scalar = tf.constant(7)
scalar

Producción:

<tf.Tensor: shape=(), dtype=int32, numpy=7>

Comprobando las dimensiones:

Python3

scalar.ndim

Producción:

0

Vector

Un vector es un objeto bidimensional con magnitud y dirección. podemos interpretar el vector geométricamente como un segmento de línea dirigido con una flecha que muestra la dirección y una longitud de la línea igual a la magnitud del vector. a continuación se muestra un ejemplo de creación de un vector en TensorFlow.

Python3

# importing packages
import tensorflow as tf
  
# create a vector
vector = tf.constant([10, 10])
  
# checking the dimensions of vector
vector.ndim

Producción:

1

Array

Array es un término que se refiere a arrays multidimensionales que se organizan en filas y columnas. Las longitudes de fila y columna determinan el tamaño de la array. Cuando una array tiene filas «a» y columnas «b», la array se representa como una array «a*b», que también especifica la longitud de la array.

Python3

# importing packages
import tensorflow as tf
  
# creating a matrix
matrix = tf.constant([[1, 2], [3, 4]])
print(matrix)
print('the number of dimensions of a matrix is :\
'+str(matrix.ndim))

Producción:

tf.Tensor(
[[1 2]
 [3 4]], shape=(2, 2), dtype=int32)
the number of dimensions of a matrix is : 2

Operación Matemática

Suma

Cuando dos o más arrays tienen la misma dimensión, se pueden sumar. El término “adición” se refiere al proceso de agregar cada elemento al lugar o posición dada.

Python3

# importing packages
import tensorflow as tf
  
# creating two tensors
matrix = tf.constant([[1, 2], [3, 4]])
matrix1 = tf.constant([[2, 4], [6, 8]])
  
# addition of two matrices
print(matrix+matrix1)

Producción:

tf.Tensor(
[[ 3  6]
 [ 9 12]], shape=(2, 2), dtype=int32)

Sustracción

La resta de arrays funciona de la misma manera que la suma de dos arrays. Si las dimensiones de dos arrays son iguales, el usuario puede restarlas.

Python3

# importing packages
import tensorflow as tf
  
# creating two tensors
matrix = tf.constant([[1, 2], [3, 4]])
matrix1 = tf.constant([[2, 4], [6, 8]])
  
# subtraction of two matrices
print(matrix1 - matrix)

Producción:

tf.Tensor(
[[1 2]
 [3 4]], shape=(2, 2), dtype=int32)

Multiplicación

La dimensión n debe ser igual a para que dos arrays m*n y a*b sean multiplicables. m*b es la array resultante.

Python3

# importing packages
import tensorflow as tf
  
# creating two tensors
matrix = tf.constant([[1, 2], [3, 4]])
matrix1 = tf.constant([[2, 4], [6, 8]])
  
# multiplication of two matrices
print(matrix1 * matrix)

Producción:

tf.Tensor(
[[ 2  8]
 [18 32]], shape=(2, 2), dtype=int32)

División

Para realizar la división dos arrays deben tener las mismas dimensiones, al igual que la suma. 

Python3

# importing packages
import tensorflow as tf
  
# creating two tensors
matrix = tf.constant([[1, 2],[3, 4]])
matrix1 = tf.constant([[2, 4],[6, 8]])
  
# division of two matrices
print(matrix1 / matrix)

Producción:

tf.Tensor(
[[2. 2.]
 [2. 2.]], shape=(2, 2), dtype=float64)

Transponer

La transposición de una array se determina convirtiendo sus filas en columnas o columnas en filas. La letra «T» en el superíndice de la array proporcionada denota la transposición de la array.

La transpuesta de una array M m*n es MT (transpuesta) n*m, que se obtiene al transponer los vectores de columna en vectores de fila. El método tf.transpose() se usa para encontrar la transposición de una array en TensorFlow. si M es una array, la transposición está representada por M T

Python3

# importing packages
import tensorflow as tf
  
# creating a matrix
matrix = tf.constant([[1, 2], [3, 4]])
# transpose of the matrix
print(tf.transpose(matrix))

Producción:

tf.Tensor(
[[1 3]
 [2 4]], shape=(2, 2), dtype=int32)

Producto escalar

La suma de los productos de los componentes coincidentes es el producto escalar de dos vectores. Componentes que están en el mismo eje y pueden representarse como:

El método tf.tensodot() se usa para encontrar el producto punto en TensorFlow. cuando especificamos ejes = 1, se lleva a cabo la multiplicación de arrays. 

Python3

# importing packages
import tensorflow as tf
  
# creating a matrix
matrix = tf.constant([[1, 2], [3, 4]])
  
# dot product of matrices
print('dot product of matrices is : ' +
      str(tf.tensordot(matrix, matrix, axes=1)))

Producción:

dot product of matrices is : tf.Tensor(
[[ 7 10]
 [15 22]], shape=(2, 2), dtype=int32)

Publicación traducida automáticamente

Artículo escrito por sarahjane3102 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *