Дисперсія ознак PCA
Набір даних про риб має 6 вимірів. Але якою є його внутрішня розмірність? Побудуйте графік дисперсій ознак PCA, щоб це з'ясувати. Як і раніше, samples — це двовимірний масив, де кожен рядок відповідає одній рибі. Спершу потрібно стандартизувати ознаки.
Ця вправа є частиною курсу
Наглядове навчання в Python
Інструкції до вправи
- Створіть екземпляр
StandardScalerз назвоюscaler. - Створіть екземпляр
PCAз назвоюpca. - Скористайтеся функцією
make_pipeline(), щоб побудувати конвеєр, що послідовно застосовуєscalerіpca. - Використайте метод
.fit()об'єктаpipeline, щоб навчити його на вибірці рибsamples. - Витягніть кількість використаних компонент за допомогою атрибута
.n_components_об'єктаpca. Передайте це значення у функціюrange()і збережіть результат у зміннійfeatures. - Використайте функцію
plt.bar(), щоб побудувати стовпчикову діаграму пояснених дисперсій:features— по осі x,pca.explained_variance_— по осі y.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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()