Tenzory

Tenzor je N-rozměrná matice :

  • Skalár je 0-rozměrný tenzor
  • Vektor je jednorozměrný tenzor
  • Matrix je 2-rozměrný tenzor

Tenzor je zobecněním vektorů a matic do vyšších dimenzí.

Skalárnívektor(y)
1
1
2
3
 
1 2 3

MaticeTenzor
1 2 3
4 5 6
 
1 2 3
4 5 6
 
4 5 6
1 2 3
 

Pořadí tenzorů

Počet směrů, které může mít tenzor v N - rozměrném prostoru, se nazývá Hodnost tenzoru.

Hodnost je označena R .

Skalár je jedno číslo . R = 0 .

  • Má 0 os
  • Má hodnocení 0
  • Je to 0-rozměrný tenzor

Vektor je pole čísel. R = 1 .

  • Má 1 osu
  • Má hodnost 1
  • Je to 1-rozměrný tenzor

Matrix je 2-rozměrné pole. R = 2 .

  • Má 2 osy
  • Má hodnost 2
  • Je to 2-rozměrný tenzor

Skutečné tenzory

Technicky jsou všechny výše uvedené tenzory, ale když mluvíme o tenzorech, obecně mluvíme o maticích s rozměrem větším než 2 ( R > 2 ).


Lineární algebra v JavaScriptu

V lineární algebře je nejjednodušším matematickým objektem skalární :

const scalar = 1;

Dalším jednoduchým matematickým objektem je Array :

const array = [ 1, 2, 3 ];

Matice jsou 2-rozměrná pole :

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

Vektory lze zapsat jako matice pouze s jedním sloupcem:

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

Vektory lze také zapsat jako pole :

const vector = [ 1, 2, 3 ];

Tenzory jsou N-rozměrná pole :

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

Operace tenzoru JavaScriptu

Programování tenzorových operací v JavaScriptu se může snadno stát špagetou smyček.

Použití knihovny JavaScript vám ušetří spoustu bolesti hlavy.

Jedna z nejběžnějších knihoven pro operace tenzorů se nazývá tensorflow.js .

Přidání tenzoru

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

Odečítání tenzoru

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

Další informace o Tensorflow...