Застосування PCA до Реального Набору Даних
Виконання PCA на реальному наборі даних за допомогою scikit-learn. Використовуйте набір даних Iris — класичний приклад у машинному навчанні, і дотримуйтесь таких кроків:
- Завантаження даних;
- Підготовка даних до аналізу;
- Стандартизація ознак;
- Застосування
PCAдля зменшення розмірності.
Цей процес демонструє, як реалізувати зменшення розмірності у практичних сценаріях.
12345678910111213141516171819202122import 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
Наведений вище код виконує 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%. Разом вони охоплюють більшість інформації з початкових даних.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 8.33
Застосування PCA до Реального Набору Даних
Свайпніть щоб показати меню
Виконання PCA на реальному наборі даних за допомогою scikit-learn. Використовуйте набір даних Iris — класичний приклад у машинному навчанні, і дотримуйтесь таких кроків:
- Завантаження даних;
- Підготовка даних до аналізу;
- Стандартизація ознак;
- Застосування
PCAдля зменшення розмірності.
Цей процес демонструє, як реалізувати зменшення розмірності у практичних сценаріях.
12345678910111213141516171819202122import 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
Наведений вище код виконує 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%. Разом вони охоплюють більшість інформації з початкових даних.
Дякуємо за ваш відгук!