Tensori
Un tensore è una matrice N-dimensionale :
- Uno scalare è un tensore 0-dimensionale
- Un vettore è un tensore unidimensionale
- Una matrice è un tensore bidimensionale
Un tensore è una generalizzazione di vettori e matrici a dimensioni superiori.
Scalare | vettore(i) | ||||||||||||||||||||||||||
1 |
|
||||||||||||||||||||||||||
Matrice | Tensore | ||||||||||||||||||||||||||
|
|
Gradi tensoriali
Il numero di direzioni che un tensore può avere in uno spazio N -dimensionale, è chiamato Rango del tensore.
Il rango è indicato con R .
Uno scalare è un numero singolo. R = 0 .
- Ha 0 assi
- Ha un rango di 0
- È un tensore 0-dimensionale
Un vettore è un array di numeri. R = 1 .
- Ha 1 Asse
- Ha un rango di 1
- È un tensore unidimensionale
Una matrice è un array bidimensionale. R = 2 .
- Ha 2 assi
- Ha un rango di 2
- È un tensore bidimensionale
Tensori reali
Tecnicamente tutti i suddetti sono tensori, ma quando si parla di tensori si parla generalmente di matrici con dimensione maggiore di 2 ( R > 2 ).
Algebra lineare in JavaScript
In algebra lineare, l'oggetto matematico più semplice è lo Scalare :
const scalar = 1;
Un altro semplice oggetto matematico è l' Array :
const array = [ 1, 2, 3 ];
Le matrici sono array bidimensionali :
const matrix = [ [1,2],[3,4],[5,6] ];
I vettori possono essere scritti come matrici con una sola colonna:
const vector = [ [1],[2],[3] ];
I vettori possono anche essere scritti come Array :
const vector = [ 1, 2, 3 ];
I tensori sono array N-dimensionali :
const tensor = [ [1,2,3],[4,5,6],[7,8,9] ];
Operazioni tensoriali JavaScript
La programmazione di operazioni sui tensori in JavaScript, può facilmente diventare una spaghettata.
L'uso di una libreria JavScript ti farà risparmiare un sacco di mal di testa.
Una delle librerie più comuni da utilizzare per le operazioni sui tensori è denominata tensorflow.js .
Addizione tensore
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] ]
Sottrazione del tensore
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] ]
Ulteriori informazioni su Tensorflow...