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

bookІнтуїція PCA

Note
Визначення

Аналіз головних компонент (PCA) — це потужна техніка, яка визначає нові осі — так звані головні компоненти — тобто напрямки у ваших даних, що відображають найбільшу дисперсію.

PCA зберігає ті напрямки, у яких ваші дані змінюються найбільше, оскільки саме вони відображають основні закономірності та структуру.

Уявіть PCA як ліхтарик, що світить на тривимірний об'єкт, і ви розглядаєте тінь на стіні. Кут світла змінює деталізацію тіні. PCA знаходить найкращий кут, щоб тінь, або projection, максимально розкривала форму об'єкта. Аналогічно, PCA проектує ваші дані на нові осі, щоб зберегти якомога більше варіації.

12345678910111213141516171819202122232425262728293031323334
import numpy as np import matplotlib.pyplot as plt # Generate a simple 2D dataset np.random.seed(0) mean = [0, 0] cov = [[3, 2], [2, 2]] # Covariance matrix X = np.random.multivariate_normal(mean, cov, 200) # Compute the mean of the data mean_vector = np.mean(X, axis=0) # Compute the covariance matrix and its eigenvectors cov_matrix = np.cov(X.T) eigenvalues, eigenvectors = np.linalg.eig(cov_matrix) # First principal component (direction of maximum variance) pc1 = eigenvectors[:, np.argmax(eigenvalues)] # Plot the data plt.figure(figsize=(8,6)) plt.scatter(X[:,0], X[:,1], alpha=0.3, label="Data points") plt.quiver( mean_vector[0], mean_vector[1], pc1[0], pc1[1], angles='xy', scale_units='xy', scale=1.5, color='red', width=0.01, label="First principal component" ) plt.xlabel("Feature 1") plt.ylabel("Feature 2") plt.title("Direction of Maximum Variance (First Principal Component)") plt.legend() plt.axis("equal") plt.show()
copy

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

question mark

Яка основна інтуїція головних компонент у PCA?

Select the correct answer

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

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

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

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

Запитати АІ

expand

Запитати АІ

ChatGPT

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

Suggested prompts:

Can you explain how the principal components are calculated in PCA?

What does the red arrow in the plot represent?

How does PCA help with dimensionality reduction?

Awesome!

Completion rate improved to 8.33

bookІнтуїція PCA

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

Note
Визначення

Аналіз головних компонент (PCA) — це потужна техніка, яка визначає нові осі — так звані головні компоненти — тобто напрямки у ваших даних, що відображають найбільшу дисперсію.

PCA зберігає ті напрямки, у яких ваші дані змінюються найбільше, оскільки саме вони відображають основні закономірності та структуру.

Уявіть PCA як ліхтарик, що світить на тривимірний об'єкт, і ви розглядаєте тінь на стіні. Кут світла змінює деталізацію тіні. PCA знаходить найкращий кут, щоб тінь, або projection, максимально розкривала форму об'єкта. Аналогічно, PCA проектує ваші дані на нові осі, щоб зберегти якомога більше варіації.

12345678910111213141516171819202122232425262728293031323334
import numpy as np import matplotlib.pyplot as plt # Generate a simple 2D dataset np.random.seed(0) mean = [0, 0] cov = [[3, 2], [2, 2]] # Covariance matrix X = np.random.multivariate_normal(mean, cov, 200) # Compute the mean of the data mean_vector = np.mean(X, axis=0) # Compute the covariance matrix and its eigenvectors cov_matrix = np.cov(X.T) eigenvalues, eigenvectors = np.linalg.eig(cov_matrix) # First principal component (direction of maximum variance) pc1 = eigenvectors[:, np.argmax(eigenvalues)] # Plot the data plt.figure(figsize=(8,6)) plt.scatter(X[:,0], X[:,1], alpha=0.3, label="Data points") plt.quiver( mean_vector[0], mean_vector[1], pc1[0], pc1[1], angles='xy', scale_units='xy', scale=1.5, color='red', width=0.01, label="First principal component" ) plt.xlabel("Feature 1") plt.ylabel("Feature 2") plt.title("Direction of Maximum Variance (First Principal Component)") plt.legend() plt.axis("equal") plt.show()
copy

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

question mark

Яка основна інтуїція головних компонент у PCA?

Select the correct answer

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

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

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

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