Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Застосування PCA до Реального Набору Даних | Реалізація PCA в Python
Зменшення Розмірності за Допомогою PCA

bookЗастосування PCA до Реального Набору Даних

Свайпніть щоб показати меню

Виконання PCA на реальному наборі даних за допомогою scikit-learn. Використовуйте набір даних Iris — класичний приклад у машинному навчанні, і дотримуйтесь таких кроків:

  • Завантаження даних;
  • Підготовка даних до аналізу;
  • Стандартизація ознак;
  • Застосування PCA для зменшення розмірності.

Цей процес демонструє, як реалізувати зменшення розмірності у практичних сценаріях.

12345678910111213141516171819202122
import numpy as np import pandas as pd from sklearn.datasets import load_iris from sklearn.preprocessing import StandardScaler from sklearn.decomposition import PCA # Load the Iris dataset data = load_iris() X = data.data feature_names = data.feature_names # Standardize features (important for PCA) scaler = StandardScaler() X_scaled = scaler.fit_transform(X) # Apply PCA to reduce to 2 components pca = PCA(n_components=2) X_pca = pca.fit_transform(X_scaled) print("Original shape:", X.shape) print("Transformed shape:", X_pca.shape) # Each row in X_pca is a sample projected onto the first two principal components
copy

Наведений вище код виконує PCA на наборі даних Iris, дотримуючись кількох ключових етапів:

1. Завантаження даних

Набір даних Iris завантажується за допомогою load_iris() з scikit-learn. Цей набір містить 150 зразків ірисів, кожен з яких описується чотирма ознаками: довжина чашолистка, ширина чашолистка, довжина пелюстки, ширина пелюстки.

2. Стандартизація ознак

Стандартизація забезпечує, що кожна ознака має середнє значення 0 та дисперсію 1:

scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

Цей крок є важливим, оскільки PCA чутлива до дисперсії кожної ознаки. Без стандартизації ознаки з більшими масштабами домінували б у головних компонентах, що призвело б до некоректних результатів.

3. Застосування PCA

PCA(n_components=2) зменшує розмірність набору даних з чотирьох до двох:

pca = PCA(n_components=2)
X_pca = pca.fit_transform(X_scaled)

Головні компоненти — це нові осі, які відображають напрямки максимальної дисперсії у даних. Кожен зразок проектується на ці осі, що дозволяє отримати компактне представлення з максимально можливою кількістю інформації.

4. Інтерпретація результатів PCA

Можна перевірити, яку частку дисперсії пояснює кожна головна компонента:

print(pca.explained_variance_ratio_)

Цей рядок виведе масив, наприклад [0.7277, 0.2303], що означає: перша компонента пояснює близько 73% дисперсії, а друга — близько 23%. Разом вони охоплюють більшість інформації з початкових даних.

question mark

Яке твердження є правильним щодо виконання PCA на наборі даних Iris, як показано в прикладі?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 3. Розділ 1
some-alt