tensoren

Een Tensor is een N-dimensionale Matrix :

  • Een scalaire is een 0-dimensionale tensor
  • Een Vector is een 1-dimensionale tensor
  • Een matrix is ​​een 2-dimensionale tensor

Een Tensor is een generalisatie van vectoren en matrices naar hogere dimensies.

scalairvector(en)
1
1
2
3
 
1 2 3

Matrixtensor
1 2 3
4 5 6
 
1 2 3
4 5 6
 
4 5 6
1 2 3
 

tensor-rangen

Het aantal richtingen dat een tensor kan hebben in een N -dimensionale ruimte, wordt de Rang van de tensor genoemd.

De rang wordt aangeduid met R .

Een scalaire is een enkel nummer. R = 0 .

  • Het heeft 0 assen
  • Het heeft een rangorde van 0
  • Het is een 0-dimensionale Tensor

Een vector is een reeks getallen. R = 1 .

  • Het heeft 1 as
  • Het heeft een rangorde van 1
  • Het is een 1-dimensionale Tensor

Een matrix is een 2-dimensionale array. R = 2 .

  • Het heeft 2 assen:
  • Het heeft een Rang van 2
  • Het is een 2-dimensionale Tensor

Echte Tensoren

Technisch gezien zijn al het bovenstaande tensoren, maar als we het hebben over tensoren, hebben we het over het algemeen over matrices met een afmeting groter dan 2 ( R > 2 ).


Lineaire algebra in JavaScript

In lineaire algebra is het meest eenvoudige wiskundige object de scalaire :

const scalar = 1;

Een ander eenvoudig wiskundig object is de Array :

const array = [ 1, 2, 3 ];

Matrices zijn 2-dimensionale arrays :

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

Vectoren kunnen worden geschreven als matrices met slechts één kolom:

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

Vectoren kunnen ook worden geschreven als arrays :

const vector = [ 1, 2, 3 ];

Tensoren zijn N-dimensionale arrays :

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

JavaScript-tensorbewerkingen

Het programmeren van tensorbewerkingen in JavaScript kan gemakkelijk een spaghetti van lussen worden.

Het gebruik van een JavScript-bibliotheek bespaart u veel kopzorg.

Een van de meest gebruikte bibliotheken voor tensorbewerkingen is tensorflow.js .

Tensor-toevoeging

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] ]

Tensor Aftrekken

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] ]

Meer informatie over Tensorflow...