Czym jest tensor? – Uproszczenie

1 – Definicja

Według definicji – Tensor jest obiektem algebraicznym, który opisuje wieloliniową relację między zbiorami obiektów algebraicznych związanych z przestrzenią wektorową.

Dla zrozumienia, poniżej mamy różne poziomy, zaczynając od skalaru, a kończąc na tensorze:

Poziom Typ Przykład
0 Skalar \(\mathbf{[1]}\)
1 Wektor \(\mathbf{[1,1]}\)
2 Macierz \(\mathbf{[[1,1],[1,1]]}\)
3 3 Tensor \(\mathbf{[[[1,1],[1,1]],[[1,1],[1,1]]]}\)
N Tensor (…)

Powyższa tabela przedstawia struktury od skalaru (poziom 0) do tensora (poziom 3).

2 – Przykład w NLP

Sentencja
Podaj login
Podaj hasło
Podaj email

Przekształcając powyższą tabelę w słownik unikalnych słów otrzymujemy:

Unikalne słowoIndeks
Podaj0
login1
hasło2
email3
Słownik unikalnych słów

Możemy zakodować podane słowa za pomocą wektora (One-hot encoding vector)

Unikalne słowo indeks Kod 1 z n
Podaj 0 [1,0,0,0]
login 1 [0,1,0,0]
hasło 2 [0,0,1,0]
 email 3 [0,0,0,1]
Słownik unikalnych słów z wartościami one hot encoding vector

Korzystając z tabeli powyżej możemy zakodować całą sentencję z pomocą wektorów:

SentencjaReprezentacja wektorowa
Podaj login[[1,0,0,0], [0,1,0,0]]
Podaj hasło[[1,0,0,0], [0,0,1,0]]
Podaj Email[[1,0,0,0], [0,0,0,1]]
Sentencje z reprezentacją wektorową

Korzystając z „mini partii” (mini batch) nasze dane wejściowe będą wyglądać następująco:

Podaj login Podaj hasło Podaj email

[[[1,0,0,0], [0,1,0,0]], [[1,0,0,0], [0,0,1,0]], [[1,0,0,0], [0,0,0,1]]]

W skrócie, zakodowujemy sentencje i wysyłamy wszystkie na raz w tablicy.

Zbudujmy teraz tensor, wiedząc, że każde słowo może przyjąć jedną z 4 wartości (od 0 do 3):
(4)
Kolejno każda sentencja składa się z dwóch słów:
(2,4)
Oraz posiadamy 3 sentencje
(3,2,4) w wyniku daje nam 3d tensor.

Dla podsumowania:
[[[1,0,0,0], [0,1,0,0]], [[1,0,0,0], [0,0,1,0]], [[1,0,0,0], [0,0,0,1]]]
(3,2,4)
Pierwsza liczba oznacza rozmiar próbki.

Druga liczba określa maksymalną długość sentencji:
[[[1,0,0,0], [0,1,0,0]], [[1,0,0,0], [0,0,1,0]], [[1,0,0,0], [0,0,0,1]]]
(3,2,4)

Trzecia liczba określa rozmiar wektora słowa:
[[[1,0,0,0], [0,1,0,0]], [[1,0,0,0], [0,0,1,0]], [[1,0,0,0], [0,0,0,1]]]
(3,2,4)

1.2 Przestrzeń Liniowa – Wektory i Operacje Podstawowe Quiz Standardowy

Quiz Zaawansowany: Przestrzeń Liniowa i Operacje na Wektorach

  1. Przemienność dodawania: Wykaż, że przestrzeń wektorów spełnia warunek przemienności dodawania. Pokaż na przykładzie dowolnych wektorów \( \mathbf{u} \) i \( \mathbf{v} \), że \( \mathbf{u} + \mathbf{v} = \mathbf{v} + \mathbf{u} \).
  2. Łączność dodawania: Udowodnij, że dodawanie wektorów jest łączne. Dla dowolnych wektorów \( \mathbf{u} \), \( \mathbf{v} \) i \( \mathbf{w} \), pokaż, że \( (\mathbf{u} + \mathbf{v}) + \mathbf{w} = \mathbf{u} + (\mathbf{v} + \mathbf{w}) \).
  3. Wektor zerowy: Zdefiniuj wektor zerowy w przestrzeni liniowej. W jaki sposób wektor zerowy wpływa na dodawanie wektorów? Czy istnieje więcej niż jeden wektor zerowy w przestrzeni liniowej?
  4. Wektor przeciwny: Podaj definicję wektora przeciwnego i udowodnij, że dodanie wektora przeciwnego prowadzi do wektora zerowego. Użyj przykładów i formalnego zapisu matematycznego.
  5. Rozdzielność mnożenia względem dodawania wektorów: Udowodnij, że dla dowolnych wektorów \( \mathbf{u} \) i \( \mathbf{v} \) oraz skalara \( a \), zachodzi \( a(\mathbf{u} + \mathbf{v}) = a\mathbf{u} + a\mathbf{v} \).
  6. Rozdzielność mnożenia względem dodawania skalarów: Wykaż, że dla dowolnych skalarów \( a \), \( b \) i wektora \( \mathbf{v} \), zachodzi \( (a + b)\mathbf{v} = a\mathbf{v} + b\mathbf{v} \).
  7. Jednostkowy skalar: Pokaż, że wektor pozostaje niezmieniony, gdy pomnożysz go przez skalar \(1\). Użyj formalnego dowodu.
  8. Mnożenie przez zero: Udowodnij, że mnożenie wektora przez skalar \(0\) daje wektor zerowy. W jaki sposób można to formalnie zapisać?

1.1 Przestrzeń Liniowa – Wektory i Operacje Podstawowe Quiz Podstawowy

Quiz Podstawowy: Aksjomaty Przestrzeni Liniowej i Operacje na Wektorach

  1. Przemienność dodawania: Czy dla dowolnych wektorów \( \mathbf{u} \) i \( \mathbf{v} \) zachodzi \( \mathbf{u} + \mathbf{v} = \mathbf{v} + \mathbf{u} \)?
  2. Łączność dodawania: Czy dla dowolnych wektorów \( \mathbf{u} \), \( \mathbf{v} \) i \( \mathbf{w} \) zachodzi \( (\mathbf{u} + \mathbf{v}) + \mathbf{w} = \mathbf{u} + (\mathbf{v} + \mathbf{w}) \)?
  3. Istnienie wektora zerowego: Jak wygląda wektor zerowy \( \mathbf{0} \), i co się dzieje, gdy dodasz go do dowolnego wektora \( \mathbf{v} \)?
  4. Istnienie wektora przeciwnego: Co się dzieje, gdy dodasz do wektora \( \mathbf{v} \) jego przeciwny wektor \( -\mathbf{v} \)?
  5. Rozdzielność mnożenia względem dodawania wektorów: Czy \( a(\mathbf{u} + \mathbf{v}) = a\mathbf{u} + a\mathbf{v} \) dla dowolnych wektorów \( \mathbf{u} \), \( \mathbf{v} \) i skalara \( a \)?
  6. Rozdzielność mnożenia względem dodawania skalarów: Czy \( (a + b)\mathbf{v} = a\mathbf{v} + b\mathbf{v} \) dla dowolnych skalarów \( a \), \( b \) i wektora \( \mathbf{v} \)?
  7. Jednostkowy skalar: Co się dzieje, gdy pomnożysz wektor \( \mathbf{v} \) przez skalar \(1\)?
  8. Mnożenie wektora przez zero: Co się dzieje, gdy pomnożysz wektor \( \mathbf{v} \) przez skalar \(0\)?

1.0 Przestrzeń Liniowa – Wektory i Operacje Podstawowe

wektory

Przestrzeń Liniowa – Wektory i Operacje Podstawowe

Wektory to podstawowe elementy matematyki, które są nieodzowne w wielu dziedzinach nauki. W przestrzeniach liniowych możemy wykonywać operacje takie jak dodawanie wektorów oraz ich skalowanie (za pomocą skalara – liczby), co pozwala na bardziej zaawansowane przekształcenia.

Definicja wektora:

Wektor to uporządkowana lista liczb, która reprezentuje zarówno kierunek, jak i wielkość. Na przykład, wektor $$ \mathbf{v} = \begin{pmatrix} 3 \\ 4 \end{pmatrix} $$ w przestrzeni dwuwymiarowej ma składową 3 jednostki wzdłuż osi x oraz 4 jednostki wzdłuż osi y. Co istotne, wektory są przenośne, więc można umieszczać je w dowolnym miejscu w układzie współrzędnych, ponieważ nadal zachowują ten sam kierunek i wielkość.

Operacje na wektorach:

  1. Dodawanie wektorów: Aby dodać dwa wektory, dodajemy ich odpowiednie współrzędne.

    Przykład: $$ \mathbf{u} = \begin{pmatrix} 1 \\ 2 \end{pmatrix}, \quad \mathbf{v} = \begin{pmatrix} 3 \\ 4 \end{pmatrix} $$

    Ich suma to: $$ \mathbf{u} + \mathbf{v} = \begin{pmatrix} 1+3 \\ 2+4 \end{pmatrix} = \begin{pmatrix} 4 \\ 6 \end{pmatrix} $$

  2. Mnożenie przez skalar: Aby pomnożyć wektor przez skalar (liczbę), mnożymy każdą współrzędną wektora przez tę liczbę.

    Przykład: Dla skalara $$ 2 $$ i wektora $$ \mathbf{v} = \begin{pmatrix} 3 \\ 4 \end{pmatrix} $$, mamy: $$ 2 \cdot \mathbf{v} = \begin{pmatrix} 2 \cdot 3 \\ 2 \cdot 4 \end{pmatrix} = \begin{pmatrix} 6 \\ 8 \end{pmatrix} $$

Długość wektora:

Długość wektora to jego „wartość” w przestrzeni. Oblicza się ją za pomocą twierdzenia Pitagorasa. Dla wektora $$ \mathbf{v} = (x, y) $$, jego długość $$ \|\mathbf{v}\| $$ to:

$$ \|\mathbf{v}\| = \sqrt{x^2 + y^2} $$

Na przykład, dla wektora $$ \mathbf{v} = (3, 4) $$, jego długość to:

$$ \|\mathbf{v}\| = \sqrt{3^2 + 4^2} = \sqrt{9 + 16} = \sqrt{25} = 5 $$

Przestrzeń liniowa – definicja:

Przestrzeń liniowa (wektorowa) to zbiór wektorów, w którym można wykonywać operacje dodawania wektorów oraz ich mnożenia przez skalar. Aby zbiór mógł być uznany za przestrzeń liniową, muszą być spełnione pewne warunki (aksjomaty).

  1. Przemienność dodawania: $$ \mathbf{u} + \mathbf{v} = \mathbf{v} + \mathbf{u} $$
  2. Łączność dodawania: $$ (\mathbf{u} + \mathbf{v}) + \mathbf{w} = \mathbf{u} + (\mathbf{v} + \mathbf{w}) $$
  3. Istnienie wektora zerowego: Istnieje wektor $$ \mathbf{0} $$, taki że $$ \mathbf{v} + \mathbf{0} = \mathbf{v} $$
  4. Istnienie wektora przeciwnego: Dla każdego wektora $$ \mathbf{v} $$ istnieje $$ -\mathbf{v} $$, takie że $$ \mathbf{v} + (-\mathbf{v}) = \mathbf{0} $$
  5. Rozdzielność mnożenia względem dodawania wektorów: $$ a(\mathbf{u} + \mathbf{v}) = a\mathbf{u} + a\mathbf{v} $$
  6. Rozdzielność mnożenia względem skalara: $$ (a + b)\mathbf{v} = a\mathbf{v} + b\mathbf{v} $$
  7. Jednostkowy skalar: $$ 1 \cdot \mathbf{v} = \mathbf{v} $$
  8. Mnożenie przez zero: $$ 0 \cdot \mathbf{v} = \mathbf{0} $$