PCA-Intuïtie
Hoofcomponentenanalyse (PCA) is een krachtige techniek die nieuwe assen identificeert - zogenaamde hoofcomponenten - dit zijn richtingen in uw gegevens die de meeste variantie vastleggen.
PCA behoudt de richtingen waarin uw gegevens het meest variëren, omdat deze de belangrijkste patronen en structuur vastleggen.
Zie PCA als het schijnen van een zaklamp op een 3D-object en het bestuderen van de schaduw op een muur. De hoek van het licht verandert het detail van de schaduw. PCA vindt de beste hoek zodat de schaduw, of projection, het meeste onthult over de vorm van het object. Op vergelijkbare wijze projecteert PCA uw gegevens op nieuwe assen om zoveel mogelijk variatie te behouden.
12345678910111213141516171819202122232425262728293031323334import 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()
Door de richtingen te identificeren waarin uw gegevens het meest variëren, maakt PCA het mogelijk om dimensies te reduceren terwijl de belangrijkste informatie behouden blijft. Door te focussen op deze richtingen van maximale variantie blijft de structuur en de patronen in uw dataset duidelijk zichtbaar. Dit inzicht bereidt u voor om de wiskundige basis van PCA in de volgende secties te verkennen.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
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?
Geweldig!
Completion tarief verbeterd naar 8.33
PCA-Intuïtie
Veeg om het menu te tonen
Hoofcomponentenanalyse (PCA) is een krachtige techniek die nieuwe assen identificeert - zogenaamde hoofcomponenten - dit zijn richtingen in uw gegevens die de meeste variantie vastleggen.
PCA behoudt de richtingen waarin uw gegevens het meest variëren, omdat deze de belangrijkste patronen en structuur vastleggen.
Zie PCA als het schijnen van een zaklamp op een 3D-object en het bestuderen van de schaduw op een muur. De hoek van het licht verandert het detail van de schaduw. PCA vindt de beste hoek zodat de schaduw, of projection, het meeste onthult over de vorm van het object. Op vergelijkbare wijze projecteert PCA uw gegevens op nieuwe assen om zoveel mogelijk variatie te behouden.
12345678910111213141516171819202122232425262728293031323334import 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()
Door de richtingen te identificeren waarin uw gegevens het meest variëren, maakt PCA het mogelijk om dimensies te reduceren terwijl de belangrijkste informatie behouden blijft. Door te focussen op deze richtingen van maximale variantie blijft de structuur en de patronen in uw dataset duidelijk zichtbaar. Dit inzicht bereidt u voor om de wiskundige basis van PCA in de volgende secties te verkennen.
Bedankt voor je feedback!