Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Vecteurs et Matrices | Concepts Mathématiques de Base et Définitions
Mathématiques pour l'Analyse de Données et la Modélisation
course content

Contenu du cours

Mathématiques pour l'Analyse de Données et la Modélisation

Mathématiques pour l'Analyse de Données et la Modélisation

1. Concepts Mathématiques de Base et Définitions
2. Algèbre Linéaire
3. Analyse Mathématique

book
Vecteurs et Matrices

Qu'est-ce qu'un vecteur ?

Un vecteur est un objet mathématique représentant une quantité avec à la fois une magnitude et une direction. Pour comprendre l'essence de ce qu'est un vecteur, comprenons d'abord ce qu'est un nombre unique.
Un nombre unique est une caractéristique quantitative simple d'une propriété qui décrit sa magnitude. En même temps, un vecteur est un ensemble de telles caractéristiques et peut être utilisé pour décrire des objets et des processus complexes qu'un nombre unique ne peut pas décrire.

Ainsi, le vecteur peut être interprété comme une liste ordonnée de nombres. Ces nombres sont également appelés coordonnées.
Les vecteurs peuvent décrire la vitesse, la force, les couleurs, les structures de données complexes, etc. De plus, avec l'aide des vecteurs, la position d'un point dans l'espace est généralement définie.

Exemple : déterminer la position d'un point dans l'espace

12345678910111213141516171819202122232425262728
import matplotlib.pyplot as plt def plot_vectors(vectors): origin = [0, 0] # The point at which the vector begins # Plot each vector in the list for vector in vectors: # Plot a single vector from the origin to the specified point plt.quiver(*origin, *vector, angles='xy', scale_units='xy', scale=1) # Set the limits for the x-axis and y-axis plt.xlim(-5, 5) # Set the x-axis limits plt.ylim(-5, 5) # Set the y-axis limits # Label the x-axis and y-axis plt.xlabel('X-axis') plt.ylabel('Y-axis') # Show grid lines on the plot plt.grid(True) # Display the plot plt.show() # Example usage vectors = [[3, 4], [-3, 4], [3, -4], [-3, -4]] # Four different vectors plot_vectors(vectors)
copy

Nous pouvons voir 4 flèches différentes : chacune a la même longueur mais des directions différentes. En conséquence, nous ne pouvons pas décrire la flèche en utilisant uniquement la magnitude comme un nombre unique - nous devons utiliser un vecteur pour fournir des informations supplémentaires sur la direction de la flèche.

Exemple : Représentation des données pour les modèles d'apprentissage automatique

Les données pour les modèles d'apprentissage automatique sont également représentées à l'aide de vecteurs :

1234567891011
import numpy as np from sklearn.datasets import load_iris # Load the Iris dataset iris = load_iris() # Access the data attribute data = iris.data # Print the first few samples of the data print(f'Data samples:\n{data[:5]}')
copy

Nous pouvons voir que les informations sur chaque fleur d'Iris sont stockées sous forme de vecteur avec 4 coordonnées. Chaque coordonnée représente une caractéristique particulière de la fleur : longueur/largeur d'un sépale/pétale.
Évidemment, si nous utilisons un seul nombre au lieu d'un vecteur, nous ne pourrons pas fournir suffisamment d'informations sur les caractéristiques d'une plante particulière.

Qu'est-ce qu'une matrice ?

Un autre objet mathématique important est une matrice - un tableau rectangulaire de nombres, symboles ou expressions disposés en lignes et colonnes.
Les matrices sont utilisées pour représenter et manipuler les transformations linéaires, les systèmes d'équations linéaires, et d'autres opérations mathématiques. Nous pouvons interpréter une matrice comme un vecteur dont les coordonnées sont également des vecteurs. Les matrices sont couramment utilisées pour décrire et modéliser différents processus.

Représentation d'image à l'aide de matrice

12345678910111213
import numpy as np import matplotlib.pyplot as plt # Generate a grayscale image image = np.array([[50, 100, 150, 200], [75, 125, 175, 225], [100, 150, 200, 250], [125, 175, 225, 255]]) # Display the grayscale image plt.imshow(image, cmap='gray') plt.axis('off') plt.show()
copy

Chaque nombre dans la matrice représente l'intensité ou la valeur de luminosité d'un pixel dans l'image en niveaux de gris.

Manipulations de figures

Nous pouvons également effectuer différentes manipulations avec des figures en utilisant des matrices. Par exemple, nous pouvons faire pivoter une figure en utilisant la multiplication de matrices (nous examinerons cette opération plus en détail dans la section suivante) :

12345678910111213141516171819202122232425262728293031323334353637383940414243
import numpy as np import matplotlib.pyplot as plt # Define the coordinates of the figure x = np.array([0, 1, 1, 0, 0]) y = np.array([0, 0, 1, 1, 0]) # Plot the original figure plt.plot(x, y, color='blue', label='Original') # Define the rotation angle in degrees angle_deg = 45 # Convert the angle to radians angle_rad = np.radians(angle_deg) # Create the rotation matrix rotation_matrix = np.array([[np.cos(angle_rad), -np.sin(angle_rad)], [np.sin(angle_rad), np.cos(angle_rad)]]) # Perform the rotation transformation vertices = np.row_stack((x, y)) vertices_rotated = np.dot(rotation_matrix, vertices) # Extract the rotated coordinates x_rotated = vertices_rotated.T[:, 0] y_rotated = vertices_rotated.T[:, 1] # Plot the rotated figure plt.plot(x_rotated, y_rotated, color='red', label='Rotated') # Set the aspect ratio and limits of the plot plt.gca().set_aspect('equal') plt.xlim(-2, 2) plt.ylim(-2, 2) # Add labels and legend plt.xlabel('X-axis') plt.ylabel('Y-axis') plt.legend() # Display the plot plt.show()
copy

Nous avons utilisé une matrice de rotation spécifique et l'avons appliquée à notre figure. Cette matrice détermine la manière dont nous faisons pivoter notre figure. Vous pouvez changer la variable angle_deg dans le code ci-dessus et observer le résultat de la rotation.
En conséquence, nous avons obtenu la même figure avec les mêmes caractéristiques mais tournée de 45 degrés dans le sens antihoraire.

Note

Il existe de nombreuses autres façons d'utiliser les vecteurs et les matrices dans des tâches réelles. Les énumérer prendrait beaucoup de temps, donc nous ne le ferons pas dans ce cours.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 5
We're sorry to hear that something went wrong. What happened?
some-alt