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 |
|
||||||||||||||||||||||||||
Matice | Tenzor | ||||||||||||||||||||||||||
|
|
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...