Tensory

Tensor to N-wymiarowa macierz :

  • Skalar jest tensorem 0-wymiarowym
  • Wektor jest tensorem jednowymiarowym
  • Matrix to dwuwymiarowy tensor

Tensor to uogólnienie wektorów i macierzy do wyższych wymiarów.

SkalarnyWektory
1
1
2
3
 
1 2 3

MatrycaNapinacz
1 2 3
4 5 6
 
1 2 3
4 5 6
 
4 5 6
1 2 3
 

Rangi tensora

Liczba kierunków, jakie tensor może mieć w przestrzeni N - wymiarowej, nazywana jest rzędem tensora.

Ranga jest oznaczona jako R .

Skalar to pojedyncza liczba. R = 0 .

  • Ma 0 osi
  • Ma rangę 0
  • Jest to tensor 0-wymiarowy

Vector to tablica liczb. R = 1 .

  • Ma 1 oś
  • Ma rangę 1
  • Jest to tensor jednowymiarowy

Matrix to dwuwymiarowa tablica . R = 2 .

  • Ma 2 osie
  • Ma rangę 2
  • Jest to dwuwymiarowy tensor

Prawdziwe Tensory

Technicznie wszystkie powyższe są tensorami, ale kiedy mówimy o tensorach, to na ogół mówimy o macierzach o wymiarze większym niż 2 ( R > 2 ).


Algebra liniowa w JavaScript

W algebrze liniowej najprostszym obiektem matematycznym jest Skalar :

const scalar = 1;

Innym prostym obiektem matematycznym jest Array :

const array = [ 1, 2, 3 ];

Macierze są tablicami dwuwymiarowymi :

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

Wektory można zapisać jako macierze z tylko jedną kolumną:

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

Wektory można również zapisać jako tablice :

const vector = [ 1, 2, 3 ];

Tensory to tablice N-wymiarowe :

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

Operacje na tensorze JavaScript

Programowanie operacji tensorowych w JavaScript może łatwo stać się spaghetti pętli.

Korzystanie z biblioteki JavScript pozwoli Ci zaoszczędzić wiele bólu głowy.

Jedna z najpopularniejszych bibliotek używanych do operacji tensorowych nazywa się tensorflow.js .

Dodawanie tensora

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

Odejmowanie tensora

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

Dowiedz się więcej o Tensorflow...