Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Algebra Lineare di Base | Matematica con NumPy
Basi di NumPy
Sezione 4. Capitolo 3
single

single

Algebra Lineare di Base

Scorri per mostrare il menu

L'algebra lineare è un ramo fondamentale della matematica che svolge un ruolo cruciale in diversi campi, tra cui machine learning, deep learning e analisi dei dati.

Vettori e Matrici

Nell'algebra lineare, un vettore è un insieme ordinato di valori. Gli array NumPy 1D possono rappresentare in modo efficiente i vettori. Una matrice è un array bidimensionale di numeri, che può essere rappresentato da un array 2D in NumPy.

Hai già affrontato l'addizione e la sottrazione di vettori e matrici, così come la moltiplicazione per uno scalare, nel capitolo "Operazioni matematiche di base". Qui, l'attenzione sarà su altre operazioni.

Trasposizione

La trasposizione è un'operazione che capovolge una matrice lungo la sua diagonale. In altre parole, converte le righe della matrice in colonne e le colonne in righe.

Trasposizione

È possibile trasporre una matrice utilizzando l'attributo .T di un array NumPy:

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

Prodotto scalare

Il prodotto scalare è forse l'operazione di algebra lineare più comunemente utilizzata nell'apprendimento automatico e profondo. Il prodotto scalare di due vettori (che devono avere un numero uguale di elementi) è la somma dei loro prodotti elemento per elemento. Il risultato è uno scalare:

Prodotto scalare

Moltiplicazione di matrici

La moltiplicazione di matrici è definita solo se il numero di colonne della prima matrice è uguale al numero di righe della seconda matrice. La matrice risultante avrà lo stesso numero di righe della prima matrice e lo stesso numero di colonne della seconda matrice.

Moltiplicazione di matrici

Come puoi vedere, ogni elemento della matrice risultante è il prodotto scalare di due vettori. Il numero di riga dell'elemento corrisponde al numero del vettore riga nella prima matrice, mentre il numero di colonna corrisponde al numero del vettore colonna nella seconda matrice.

Il numero di colonne della prima matrice deve essere uguale al numero di righe della seconda matrice, poiché il prodotto scalare richiede che i due vettori abbiano lo stesso numero di elementi.

Prodotto scalare e moltiplicazione di matrici in NumPy

NumPy fornisce la funzione dot() sia per il prodotto scalare che per la moltiplicazione di matrici. Questa funzione accetta due array come argomenti.

Tuttavia, è anche possibile utilizzare l'operatore @ tra due array per ottenere gli stessi risultati.

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)

Se l'argomento destro nella moltiplicazione di matrici è un vettore (array 1D), NumPy lo tratta come una matrice in cui l'ultima dimensione è 1. Quando si moltiplica una matrice 6x4 per un vettore con 4 elementi, il vettore viene considerato come una matrice 4x1.

Se l'argomento sinistro nella moltiplicazione di matrici è un vettore, NumPy lo tratta come una matrice in cui la prima dimensione è 1. Quando si moltiplica un vettore con 4 elementi per una matrice 4x6, il vettore viene trattato come una matrice 1x4.

L'immagine seguente mostra la struttura degli array exam_scores e coefficients utilizzati nell'esercizio:

Coefficienti degli esami
Compito

Scorri per iniziare a programmare

Il punteggio finale di ogni studente viene calcolato moltiplicando i punteggi delle materie per i rispettivi coefficienti e sommando i risultati. Il prodotto scalare esegue entrambe le operazioni contemporaneamente.

Calcolare il prodotto scalare tra exam_scores e coefficients per ottenere i punteggi finali di tutti e tre gli studenti.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 3
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

some-alt