Varianza delle feature della PCA
Il dataset sui pesci è a 6 dimensioni. Ma qual è la sua dimensione intrinseca? Crea un grafico delle varianze delle feature della PCA per scoprirlo. Come prima, samples è un array 2D, in cui ogni riga rappresenta un pesce. Prima dovrai standardizzare le feature.
Questo esercizio fa parte del corso
Apprendimento non supervisionato in Python
Istruzioni dell'esercizio
- Crea un'istanza di
StandardScalerchiamatascaler. - Crea un'istanza di
PCAchiamatapca. - Usa la funzione
make_pipeline()per creare una pipeline concatenandoscalerepca. - Usa il metodo
.fit()dipipelineper adattarla ai campioni di pescesamples. - Estrai il numero di componenti utilizzato tramite l'attributo
.n_components_dipca. Inseriscilo in una funzionerange()e salva il risultato comefeatures. - Usa la funzione
plt.bar()per tracciare le varianze spiegate, confeaturessull'asse x epca.explained_variance_sull'asse y.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Perform the necessary imports
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import make_pipeline
import matplotlib.pyplot as plt
# Create scaler: scaler
scaler = ____
# Create a PCA instance: pca
pca = ____
# Create pipeline: pipeline
pipeline = ____
# Fit the pipeline to 'samples'
____
# Plot the explained variances
features = ____
plt.bar(____, ____)
plt.xlabel('PCA feature')
plt.ylabel('variance')
plt.xticks(features)
plt.show()