Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Basis Lineaire Algebra met NumPy | Wiskunde met NumPy
Ultieme NumPy

bookBasis Lineaire Algebra met NumPy

Lineaire algebra is een fundamentele tak van de wiskunde die een cruciale rol speelt in diverse vakgebieden, waaronder machine learning, deep learning en data-analyse.

Vectoren en Matrices

In de lineaire algebra is een vector een geordende reeks waarden. 1D NumPy-arrays kunnen efficiënt vectoren representeren. Een matrix is een tweedimensionale array van getallen, die kan worden weergegeven door een 2D-array in NumPy.

We hebben vector- en matrixoptelling en -aftrekking, evenals scalair vermenigvuldigen, al behandeld in het hoofdstuk "Basiswiskundige bewerkingen". Hier richten we ons op andere bewerkingen.

Transponeren

Transponeren is een bewerking die een matrix over zijn diagonaal spiegelt. Met andere woorden, het zet de rijen van de matrix om in kolommen en de kolommen in rijen.

Een matrix kan worden getransponeerd met behulp van het .T-attribuut van een NumPy-array:

12345
import numpy as np matrix = np.array([[1, 2, 3], [4, 5, 6]]) # Transposing a matrix transposed_matrix = matrix.T print(transposed_matrix)
copy

Inwendig product

Het inwendig product is waarschijnlijk de meest gebruikte lineaire algebraïsche bewerking in machine learning en deep learning. Het inwendig product van twee vectoren (die een gelijk aantal elementen moeten hebben) is de som van hun elementgewijze producten. Het resultaat is een scalar:

Matrixvermenigvuldiging

Matrixvermenigvuldiging is alleen gedefinieerd als het aantal kolommen in de eerste matrix gelijk is aan het aantal rijen in de tweede matrix. De resulterende matrix heeft hetzelfde aantal rijen als de eerste matrix en hetzelfde aantal kolommen als de tweede matrix.

Zoals te zien is, is elk element van de resulterende matrix het inwendig product van twee vectoren. Het rijnummer van het element komt overeen met het nummer van de rijvector in de eerste matrix, en het kolomnummer komt overeen met het nummer van de kolomvector in de tweede matrix.

Het aantal kolommen in de eerste matrix moet gelijk zijn aan het aantal rijen in de tweede matrix, omdat het inwendig product vereist dat beide vectoren hetzelfde aantal elementen hebben.

Inwendig product en matrixvermenigvuldiging in NumPy

NumPy biedt de functie dot() voor zowel het inwendig product als matrixvermenigvuldiging. Deze functie neemt twee arrays als argumenten.

Daarnaast kan ook de operator @ tussen twee arrays worden gebruikt om hetzelfde resultaat te bereiken.

12345678910111213
import numpy as np vector_1 = np.array([1, 2, 3]) vector_2 = np.array([4, 5, 6]) # Dot product using the dot() function print(np.dot(vector_1, vector_2)) # Dot product using the @ operator print(vector_1 @ vector_2) matrix_1 = np.array([[1, 2, 3], [4, 5, 6]]) matrix_2 = np.array([[7, 10], [8, 11], [9, 12]]) # Matrix multiplication using the dot() function print(np.dot(matrix_1, matrix_2)) # Matrix multiplication using the @ operator print(matrix_1 @ matrix_2)
copy

Als het rechter argument bij matrixvermenigvuldiging een vector (1D-array) is, behandelt NumPy deze als een matrix waarbij de laatste dimensie 1 is. Bijvoorbeeld, bij het vermenigvuldigen van een 6x4 matrix met een vector van 4 elementen, wordt de vector beschouwd als een 4x1 matrix.

Als het linker argument bij matrixvermenigvuldiging een vector is, behandelt NumPy deze als een matrix waarbij de eerste dimensie 1 is. Bijvoorbeeld, bij het vermenigvuldigen van een vector met 4 elementen met een 4x6 matrix, wordt de vector behandeld als een 1x4 matrix.

De onderstaande afbeelding toont de structuur van de arrays exam_scores en coefficients die in de opdracht worden gebruikt:

Taak

Swipe to start coding

Je werkt met de array exam_scores, die gesimuleerde examencijfers bevat van drie studenten (elke rij stelt een student voor) over drie vakken (elke kolom stelt een vak voor).

  1. Vermenigvuldig de cijfers van elk vakexamen met de respectievelijke coëfficiënt.
  2. Tel de resulterende cijfers voor elke student op om hun eindscore te berekenen.
  3. Bereken het inwendig product tussen exam_scores en coefficients.

Dit levert de eindscores op voor alle studenten, gebaseerd op de gewogen bijdragen van hun vakcijfers.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 4
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

close

Awesome!

Completion rate improved to 3.7

bookBasis Lineaire Algebra met NumPy

Veeg om het menu te tonen

Lineaire algebra is een fundamentele tak van de wiskunde die een cruciale rol speelt in diverse vakgebieden, waaronder machine learning, deep learning en data-analyse.

Vectoren en Matrices

In de lineaire algebra is een vector een geordende reeks waarden. 1D NumPy-arrays kunnen efficiënt vectoren representeren. Een matrix is een tweedimensionale array van getallen, die kan worden weergegeven door een 2D-array in NumPy.

We hebben vector- en matrixoptelling en -aftrekking, evenals scalair vermenigvuldigen, al behandeld in het hoofdstuk "Basiswiskundige bewerkingen". Hier richten we ons op andere bewerkingen.

Transponeren

Transponeren is een bewerking die een matrix over zijn diagonaal spiegelt. Met andere woorden, het zet de rijen van de matrix om in kolommen en de kolommen in rijen.

Een matrix kan worden getransponeerd met behulp van het .T-attribuut van een NumPy-array:

12345
import numpy as np matrix = np.array([[1, 2, 3], [4, 5, 6]]) # Transposing a matrix transposed_matrix = matrix.T print(transposed_matrix)
copy

Inwendig product

Het inwendig product is waarschijnlijk de meest gebruikte lineaire algebraïsche bewerking in machine learning en deep learning. Het inwendig product van twee vectoren (die een gelijk aantal elementen moeten hebben) is de som van hun elementgewijze producten. Het resultaat is een scalar:

Matrixvermenigvuldiging

Matrixvermenigvuldiging is alleen gedefinieerd als het aantal kolommen in de eerste matrix gelijk is aan het aantal rijen in de tweede matrix. De resulterende matrix heeft hetzelfde aantal rijen als de eerste matrix en hetzelfde aantal kolommen als de tweede matrix.

Zoals te zien is, is elk element van de resulterende matrix het inwendig product van twee vectoren. Het rijnummer van het element komt overeen met het nummer van de rijvector in de eerste matrix, en het kolomnummer komt overeen met het nummer van de kolomvector in de tweede matrix.

Het aantal kolommen in de eerste matrix moet gelijk zijn aan het aantal rijen in de tweede matrix, omdat het inwendig product vereist dat beide vectoren hetzelfde aantal elementen hebben.

Inwendig product en matrixvermenigvuldiging in NumPy

NumPy biedt de functie dot() voor zowel het inwendig product als matrixvermenigvuldiging. Deze functie neemt twee arrays als argumenten.

Daarnaast kan ook de operator @ tussen twee arrays worden gebruikt om hetzelfde resultaat te bereiken.

12345678910111213
import numpy as np vector_1 = np.array([1, 2, 3]) vector_2 = np.array([4, 5, 6]) # Dot product using the dot() function print(np.dot(vector_1, vector_2)) # Dot product using the @ operator print(vector_1 @ vector_2) matrix_1 = np.array([[1, 2, 3], [4, 5, 6]]) matrix_2 = np.array([[7, 10], [8, 11], [9, 12]]) # Matrix multiplication using the dot() function print(np.dot(matrix_1, matrix_2)) # Matrix multiplication using the @ operator print(matrix_1 @ matrix_2)
copy

Als het rechter argument bij matrixvermenigvuldiging een vector (1D-array) is, behandelt NumPy deze als een matrix waarbij de laatste dimensie 1 is. Bijvoorbeeld, bij het vermenigvuldigen van een 6x4 matrix met een vector van 4 elementen, wordt de vector beschouwd als een 4x1 matrix.

Als het linker argument bij matrixvermenigvuldiging een vector is, behandelt NumPy deze als een matrix waarbij de eerste dimensie 1 is. Bijvoorbeeld, bij het vermenigvuldigen van een vector met 4 elementen met een 4x6 matrix, wordt de vector behandeld als een 1x4 matrix.

De onderstaande afbeelding toont de structuur van de arrays exam_scores en coefficients die in de opdracht worden gebruikt:

Taak

Swipe to start coding

Je werkt met de array exam_scores, die gesimuleerde examencijfers bevat van drie studenten (elke rij stelt een student voor) over drie vakken (elke kolom stelt een vak voor).

  1. Vermenigvuldig de cijfers van elk vakexamen met de respectievelijke coëfficiënt.
  2. Tel de resulterende cijfers voor elke student op om hun eindscore te berekenen.
  3. Bereken het inwendig product tussen exam_scores en coefficients.

Dit levert de eindscores op voor alle studenten, gebaseerd op de gewogen bijdragen van hun vakcijfers.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 4
single

single

some-alt