Tensores

Um tensor é uma matriz N-dimensional :

  • Um escalar é um tensor 0-dimensional
  • Um vetor é um tensor unidimensional
  • Uma Matrix é um tensor bidimensional

Um tensor é uma generalização de vetores e matrizes para dimensões superiores.

EscalarVetor(es)
1
1
2
3
 
1 2 3

MatrizTensor
1 2 3
4 5 6
 
1 2 3
4 5 6
 
4 5 6
1 2 3
 

Ranks de tensores

O número de direções que um tensor pode ter em um espaço N - dimensional é chamado de Rank do tensor.

A classificação é denotada R .

Um escalar é um número único. R = 0 .

  • Tem 0 Eixos
  • Tem uma classificação de 0
  • É um tensor 0-dimensional

Um vetor é uma matriz de números. R = 1 .

  • tem 1 eixo
  • Tem uma classificação de 1
  • É um tensor unidimensional

Uma Matrix é uma matriz bidimensional. R = 2 .

  • tem 2 eixos
  • Tem um Rank de 2
  • É um tensor bidimensional

Tensores Reais

Tecnicamente, todos os itens acima são tensores, mas quando falamos de tensores, geralmente falamos de matrizes com dimensão maior que 2 ( R > 2 ).


Álgebra Linear em JavaScript

Em álgebra linear, o objeto matemático mais simples é o Scalar :

const scalar = 1;

Outro objeto matemático simples é o Array :

const array = [ 1, 2, 3 ];

Matrizes são Arrays bidimensionais :

const matrix = [ [1,2],[3,4],[5,6] ];

Os vetores podem ser escritos como matrizes com apenas uma coluna:

const vector = [ [1],[2],[3] ];

Vetores também podem ser escritos como Arrays :

const vector = [ 1, 2, 3 ];

Tensores são Arrays N-dimensionais :

const tensor = [ [1,2,3],[4,5,6],[7,8,9] ];

Operações de tensor JavaScript

Programar operações de tensor em JavaScript pode facilmente se tornar um espaguete de loops.

Usar uma biblioteca JavaScript vai lhe poupar muita dor de cabeça.

Uma das bibliotecas mais comuns a serem usadas para operações de tensor é chamada tensorflow.js .

Adição de tensor

const tensorA = tf.tensor([[1, 2], [3, 4], [5, 6]]);
const tensorB = tf.tensor([[1,-1], [2,-2], [3,-3]]);

// Tensor Addition
const tensorAdd = tensorA.add(tensorB);

// Result [ [2, 1], [5, 2], [8, 3] ]

Subtração do tensor

const tensorA = tf.tensor([[1, 2], [3, 4], [5, 6]]);
const tensorB = tf.tensor([[1,-1], [2,-2], [3,-3]]);

// Tensor Subtraction
const tensorSub = tensorA.sub(tensorB);

// Result [ [0, 3], [1, 6], [2, 9] ]

Saiba mais sobre o Tensorflow...