Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Grundoperationen: Lineare Algebra | Tensoren
Einführung in TensorFlow
course content

Kursinhalt

Einführung in TensorFlow

Einführung in TensorFlow

1. Tensoren
2. Grundlagen von TensorFlow

book
Grundoperationen: Lineare Algebra

Lineare Algebra Operationen

TensorFlow bietet eine Reihe von Funktionen, die sich auf lineare Algebra-Operationen konzentrieren und Matrixoperationen einfach machen.

Matrixmultiplikation

Hier ist eine kurze Erinnerung daran, wie die Matrixmultiplikation funktioniert.

Es gibt zwei gleichwertige Ansätze für die Matrixmultiplikation:

  • Die tf.matmul() Funktion;
  • Verwendung des @ Operators.
1234567891011121314
import tensorflow as tf # Create two matrices matrix1 = tf.constant([[1, 2], [3, 4], [2, 1]]) matrix2 = tf.constant([[2, 0, 2, 5], [2, 2, 1, 3]]) # Multiply the matrices product1 = tf.matmul(matrix1, matrix2) product2 = matrix1 @ matrix2 # Display tensors print(product1) print('-' * 50) print(product2)
copy

Hinweis

Das Multiplizieren von Matrizen der Größe 3x2 und 2x4 ergibt eine Matrix der Größe 3x4.

Matrixinversion

Sie können die Inverse einer Matrix mit der Funktion tf.linalg.inv() erhalten. Zusätzlich wollen wir eine grundlegende Eigenschaft der inversen Matrix überprüfen.

123456789101112131415
import tensorflow as tf # Create 2x2 matrix matrix = tf.constant([[1., 2.], [3., 4.]]) # Compute the inverse of a matrix inverse_mat = tf.linalg.inv(matrix) # Check the result identity = matrix @ inverse_mat # Display tensors print(inverse_mat) print('-' * 50) print(identity)
copy

Hinweis

Das Multiplizieren einer Matrix mit ihrer Inversen sollte eine Einheitsmatrix ergeben, die Einsen auf ihrer Hauptdiagonale und Nullen überall sonst hat. Zusätzlich bietet das tf.linalg Modul eine breite Palette von linearen Algebra-Funktionen. Für weitere Details oder fortgeschrittene Operationen sollten Sie die offizielle Dokumentation konsultieren.

Transponieren

Sie können eine transponierte Matrix mit der Funktion tf.transpose() erhalten.

123456789101112
import tensorflow as tf # Create a matrix 3x2 matrix = tf.constant([[1, 2], [3, 4], [2, 1]]) # Get the transpose of a matrix transposed = tf.transpose(matrix) # Display tensors print(matrix) print('-' * 40) print(transposed)
copy

Skalarprodukt

Sie können ein Skalarprodukt mit der Funktion tf.tensordot() erhalten. Durch das Einrichten eines Achsenarguments können Sie auswählen, entlang welcher Achsen ein Skalarprodukt berechnet werden soll. Zum Beispiel erhalten Sie für zwei Vektoren durch das Einrichten von axes=1 das klassische Skalarprodukt zwischen Vektoren. Aber wenn Sie axes=0 einstellen, erhalten Sie eine übertragene Matrix entlang der 0-Achse:

1234567891011121314
import tensorflow as tf # Create two vectors matrix1 = tf.constant([1, 2, 3, 4]) matrix2 = tf.constant([2, 0, 2, 5]) # Compute the dot product of two tensors dot_product_axes1 = tf.tensordot(matrix1, matrix2, axes=1) dot_product_axes0 = tf.tensordot(matrix1, matrix2, axes=0) # Display tensors print(dot_product_axes1) print('-' * 40) print(dot_product_axes0)
copy

Hinweis

Wenn Sie zwei Matrizen mit geeigneten Dimensionen (NxM @ MxK, wobei NxM die Dimensionen der ersten Matrix und MxK die der zweiten darstellt) nehmen und das Skalarprodukt entlang axes=1 berechnen, führt dies im Wesentlichen eine Matrixmultiplikation durch.

Aufgabe

Swipe to start coding

Hintergrund

Ein System linearer Gleichungen kann in Matrixform mit der Gleichung dargestellt werden:

AX = B

Wo:

  • A eine Matrix von Koeffizienten ist.
  • X eine Spaltenmatrix von Variablen ist.
  • B eine Spaltenmatrix darstellt, die die Werte auf der rechten Seite der Gleichungen repräsentiert.

Die Lösung dieses Systems kann mit der Formel gefunden werden:

X = A^-1 B

Wobei A^-1 die Inverse der Matrix A ist.

Ziel

Gegeben ein System linearer Gleichungen, verwenden Sie TensorFlow, um es zu lösen. Ihnen wird das folgende System linearer Gleichungen gegeben:

  1. 2x + 3y - z = 1.
  2. 4x + y + 2z = 2.
  3. -x + 2y + 3z = 3.
Dot Product
  1. Stellen Sie das Gleichungssystem in Matrixform dar (trennen Sie es in die Matrizen A und B).
  2. Verwenden Sie TensorFlow, um die Inverse der Matrix A zu finden.
  3. Multiplizieren Sie die Inverse der Matrix A mit der Matrix B, um die Lösungs-Matrix X zu finden, die die Werte von x, y und z enthält.

Hinweis

Slicing in TensorFlow funktioniert ähnlich wie in NumPy. Daher wird X[:, 0] alle Elemente aus der Spalte am Index 0 abrufen. Wir werden später im Kurs auf das Slicing eingehen.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 9
toggle bottom row

book
Grundoperationen: Lineare Algebra

Lineare Algebra Operationen

TensorFlow bietet eine Reihe von Funktionen, die sich auf lineare Algebra-Operationen konzentrieren und Matrixoperationen einfach machen.

Matrixmultiplikation

Hier ist eine kurze Erinnerung daran, wie die Matrixmultiplikation funktioniert.

Es gibt zwei gleichwertige Ansätze für die Matrixmultiplikation:

  • Die tf.matmul() Funktion;
  • Verwendung des @ Operators.
1234567891011121314
import tensorflow as tf # Create two matrices matrix1 = tf.constant([[1, 2], [3, 4], [2, 1]]) matrix2 = tf.constant([[2, 0, 2, 5], [2, 2, 1, 3]]) # Multiply the matrices product1 = tf.matmul(matrix1, matrix2) product2 = matrix1 @ matrix2 # Display tensors print(product1) print('-' * 50) print(product2)
copy

Hinweis

Das Multiplizieren von Matrizen der Größe 3x2 und 2x4 ergibt eine Matrix der Größe 3x4.

Matrixinversion

Sie können die Inverse einer Matrix mit der Funktion tf.linalg.inv() erhalten. Zusätzlich wollen wir eine grundlegende Eigenschaft der inversen Matrix überprüfen.

123456789101112131415
import tensorflow as tf # Create 2x2 matrix matrix = tf.constant([[1., 2.], [3., 4.]]) # Compute the inverse of a matrix inverse_mat = tf.linalg.inv(matrix) # Check the result identity = matrix @ inverse_mat # Display tensors print(inverse_mat) print('-' * 50) print(identity)
copy

Hinweis

Das Multiplizieren einer Matrix mit ihrer Inversen sollte eine Einheitsmatrix ergeben, die Einsen auf ihrer Hauptdiagonale und Nullen überall sonst hat. Zusätzlich bietet das tf.linalg Modul eine breite Palette von linearen Algebra-Funktionen. Für weitere Details oder fortgeschrittene Operationen sollten Sie die offizielle Dokumentation konsultieren.

Transponieren

Sie können eine transponierte Matrix mit der Funktion tf.transpose() erhalten.

123456789101112
import tensorflow as tf # Create a matrix 3x2 matrix = tf.constant([[1, 2], [3, 4], [2, 1]]) # Get the transpose of a matrix transposed = tf.transpose(matrix) # Display tensors print(matrix) print('-' * 40) print(transposed)
copy

Skalarprodukt

Sie können ein Skalarprodukt mit der Funktion tf.tensordot() erhalten. Durch das Einrichten eines Achsenarguments können Sie auswählen, entlang welcher Achsen ein Skalarprodukt berechnet werden soll. Zum Beispiel erhalten Sie für zwei Vektoren durch das Einrichten von axes=1 das klassische Skalarprodukt zwischen Vektoren. Aber wenn Sie axes=0 einstellen, erhalten Sie eine übertragene Matrix entlang der 0-Achse:

1234567891011121314
import tensorflow as tf # Create two vectors matrix1 = tf.constant([1, 2, 3, 4]) matrix2 = tf.constant([2, 0, 2, 5]) # Compute the dot product of two tensors dot_product_axes1 = tf.tensordot(matrix1, matrix2, axes=1) dot_product_axes0 = tf.tensordot(matrix1, matrix2, axes=0) # Display tensors print(dot_product_axes1) print('-' * 40) print(dot_product_axes0)
copy

Hinweis

Wenn Sie zwei Matrizen mit geeigneten Dimensionen (NxM @ MxK, wobei NxM die Dimensionen der ersten Matrix und MxK die der zweiten darstellt) nehmen und das Skalarprodukt entlang axes=1 berechnen, führt dies im Wesentlichen eine Matrixmultiplikation durch.

Aufgabe

Swipe to start coding

Hintergrund

Ein System linearer Gleichungen kann in Matrixform mit der Gleichung dargestellt werden:

AX = B

Wo:

  • A eine Matrix von Koeffizienten ist.
  • X eine Spaltenmatrix von Variablen ist.
  • B eine Spaltenmatrix darstellt, die die Werte auf der rechten Seite der Gleichungen repräsentiert.

Die Lösung dieses Systems kann mit der Formel gefunden werden:

X = A^-1 B

Wobei A^-1 die Inverse der Matrix A ist.

Ziel

Gegeben ein System linearer Gleichungen, verwenden Sie TensorFlow, um es zu lösen. Ihnen wird das folgende System linearer Gleichungen gegeben:

  1. 2x + 3y - z = 1.
  2. 4x + y + 2z = 2.
  3. -x + 2y + 3z = 3.
Dot Product
  1. Stellen Sie das Gleichungssystem in Matrixform dar (trennen Sie es in die Matrizen A und B).
  2. Verwenden Sie TensorFlow, um die Inverse der Matrix A zu finden.
  3. Multiplizieren Sie die Inverse der Matrix A mit der Matrix B, um die Lösungs-Matrix X zu finden, die die Werte von x, y und z enthält.

Hinweis

Slicing in TensorFlow funktioniert ähnlich wie in NumPy. Daher wird X[:, 0] alle Elemente aus der Spalte am Index 0 abrufen. Wir werden später im Kurs auf das Slicing eingehen.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 9
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt