Kursinhalt
Einführung in TensorFlow
Einführung in TensorFlow
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.
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)
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.
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)
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.
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)
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:
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)
Hinweis
Wenn Sie zwei Matrizen mit geeigneten Dimensionen (
NxM @ MxK
, wobeiNxM
die Dimensionen der ersten Matrix undMxK
die der zweiten darstellt) nehmen und das Skalarprodukt entlangaxes=1
berechnen, führt dies im Wesentlichen eine Matrixmultiplikation durch.
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:
2x + 3y - z = 1
.4x + y + 2z = 2
.-x + 2y + 3z = 3
.

- Stellen Sie das Gleichungssystem in Matrixform dar (trennen Sie es in die Matrizen
A
undB
). - Verwenden Sie TensorFlow, um die Inverse der Matrix
A
zu finden. - Multiplizieren Sie die Inverse der Matrix
A
mit der MatrixB
, um die Lösungs-MatrixX
zu finden, die die Werte vonx
,y
undz
enthält.
Hinweis
Slicing in TensorFlow funktioniert ähnlich wie in NumPy. Daher wird
X[:, 0]
alle Elemente aus der Spalte am Index0
abrufen. Wir werden später im Kurs auf das Slicing eingehen.
Lösung
Danke für Ihr Feedback!
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.
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)
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.
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)
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.
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)
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:
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)
Hinweis
Wenn Sie zwei Matrizen mit geeigneten Dimensionen (
NxM @ MxK
, wobeiNxM
die Dimensionen der ersten Matrix undMxK
die der zweiten darstellt) nehmen und das Skalarprodukt entlangaxes=1
berechnen, führt dies im Wesentlichen eine Matrixmultiplikation durch.
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:
2x + 3y - z = 1
.4x + y + 2z = 2
.-x + 2y + 3z = 3
.

- Stellen Sie das Gleichungssystem in Matrixform dar (trennen Sie es in die Matrizen
A
undB
). - Verwenden Sie TensorFlow, um die Inverse der Matrix
A
zu finden. - Multiplizieren Sie die Inverse der Matrix
A
mit der MatrixB
, um die Lösungs-MatrixX
zu finden, die die Werte vonx
,y
undz
enthält.
Hinweis
Slicing in TensorFlow funktioniert ähnlich wie in NumPy. Daher wird
X[:, 0]
alle Elemente aus der Spalte am Index0
abrufen. Wir werden später im Kurs auf das Slicing eingehen.
Lösung
Danke für Ihr Feedback!