Introduction
Ce laboratoire explore diverses normalisations sur une distribution normale multivariée à l'aide de Python Matplotlib. Dans ce laboratoire, vous allez apprendre à normaliser linéairement, à appliquer la loi de puissance pour la normalisation et à utiliser Matplotlib pour visualiser la distribution normale multivariée.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet de notes pour accéder au carnet Jupyter pour pratiquer.
Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limites du carnet Jupyter.
Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session et nous résoudrons rapidement le problème pour vous.
Importation des bibliothèques
Dans cette étape, vous devez importer les bibliothèques nécessaires, qui sont Matplotlib, NumPy et Multivariate_normal à partir de NumPy.random.
import matplotlib.pyplot as plt
import numpy as np
from numpy.random import multivariate_normal
Fixer l'état aléatoire
Dans cette étape, vous devez fixer l'état aléatoire pour la reproductibilité.
np.random.seed(19680801)
Créer des données
Dans cette étape, vous devez créer des données à l'aide de multivariate_normal(). Cette fonction génère un échantillon aléatoire à partir d'une distribution normale multivariée.
data = np.vstack([
multivariate_normal([10, 10], [[3, 2], [2, 3]], size=100000),
multivariate_normal([30, 20], [[3, 1], [1, 3]], size=1000)
])
Créer un histogramme
Dans cette étape, vous devez créer un histogramme à l'aide de hist2d(). La fonction hist2d() est utilisée pour créer un histogramme bidimensionnel.
plt.hist2d(data[:, 0], data[:, 1], bins=100)
Créer une normalisation par loi de puissance
Dans cette étape, vous devez créer une normalisation par loi de puissance à l'aide de PowerNorm().
plt.hist2d(data[:, 0], data[:, 1], bins=100, norm=mcolors.PowerNorm(gamma))
Créer des sous-graphiques
Dans cette étape, vous devez créer des sous-graphiques à l'aide de subplots().
fig, axs = plt.subplots(nrows=2, ncols=2)
Créer une normalisation linéaire
Dans cette étape, vous devez créer une normalisation linéaire.
axs[0, 0].hist2d(data[:, 0], data[:, 1], bins=100)
Créer une normalisation par loi de puissance
Dans cette étape, vous devez créer une normalisation par loi de puissance avec différentes valeurs de gamma.
for ax, gamma in zip(axs.flat[1:], gammas):
ax.hist2d(data[:, 0], data[:, 1], bins=100, norm=mcolors.PowerNorm(gamma))
Définir le titre
Dans cette étape, vous devez définir le titre de chaque graphique.
axs[0, 0].set_title('Linear normalization')
for ax, gamma in zip(axs.flat[1:], gammas):
ax.set_title(r'Power law $(\gamma=%1.1f)$' % gamma)
Mise en page compacte
Dans cette étape, vous devez ajuster l'espacement entre les sous-graphiques.
fig.tight_layout()
Afficher le graphique
Dans cette étape, vous devez afficher le graphique à l'aide de show().
plt.show()
Sommaire
Dans ce laboratoire, nous avons exploré diverses normalisations sur une distribution normale multivariée à l'aide de Python Matplotlib. Vous avez appris sur la normalisation linéaire, la normalisation par loi de puissance et la manière d'utiliser Matplotlib pour visualiser la distribution normale multivariée.