¿Porque Tensores?
Concepto
Los datos pueden en general tener los formatos
- escalares
- vectores
- matrices
en donde las ultimas pueden ser de 2 o mas dimensiones. Una forma mas general de definir estos formatos es habla de tensores.
ID:(10374, 0)
Definición básica de un tensor
Concepto
La forma más básica es el tensor:
```
tf.tensor (values, shape?, dtype?)
```
en donde el signo ? indica que son argumentos opcionales.
Los values son los valores que pueden ser por ejemplo un escalar
```
values = [1]
```
o un vector
```
values = [1,2,3]
```
o una matriz
```
values = [[1,2,3],[4,5,6]]
```
El shape cumple una función de control ya que ratifica el formato de la información. En el caso de un escalar el shape debe indicar la unidad:
```
values = [1] -> shape = [1]
```
En el caso del vector debe indicar la dimensión de este
```
values = [1,2,3] -> shape = [3]
```
y en el caso de la matriz simple sus dimensiones
```
values = [[1,2,3],[4,5,6]] -> shape = [2,3]
```
El shape también es usado para ordenar los valores que simplemente se listan como por ejemplo si se escribe
```
values = [1,2,3,4,5,6] -> shape = [2,3]
```
con lo que se pueden también escribir matrices de mayores dimensiones.
El dtype simplemente indica el formato del numero que puede ser del tipo
format | explicación
---------|-----------------
'float32' | reales
'int32' | enteros
'bool' | boolean
'complex64' | complejo
'string' | texto
y que es igual para todos los elementos.
ID:(10375, 0)
Definiciones Especificas
Concepto
Para evitar errores se recomienda emplear las definiciones específicas que son en particular:
Para escalares
```
tf.scalar (value, dtype?)
```
para vectores
```
tf.tensor1d (values, dtype?)
```
para matrices de dos dimensiones
```
tf.tensor2d (values, shape?, dtype?) // matriz de 2 dimensiones
```
y para matrices de mayores dimensiones
```
tf.tensor3d (values, shape?, dtype?) // matriz de 3 dimensiones
tf.tensor4d (values, shape?, dtype?) // matriz de 4 dimensiones
tf.tensor5d (values, shape?, dtype?) // matriz de 5 dimensiones
tf.tensor6d (values, shape?, dtype?) // matriz de 6 dimensiones
```
El shape es necesario cada vez que el values no define el formato. En general shape sera un arreglo que tendrá tantos elementos como dimensiones de la matriz.
ID:(10379, 0)
Variables
Descripción
string = tf.Variable('this is a string',tf.string)
number = tf.Variable(324,tf.int16)
floating = tf.Variable(3.567,tf.float64)
rank1_tensor = tf.Variable(['a1','a2','a3'],tf.string)
rank2_tensor = tf.Variable([['a11','a12','a13'],['a21','a22','a23'],['a31','a32','a33'],tf.string)
ID:(10381, 0)