Analisi del componente principale è fondamentalmente una procedura statistica per convertire un insieme di osservazioni di variabili possibilmente correlate in un insieme di valori di variabili linearmente non correlate.
Ciascuna delle componenti principali è scelta in modo tale da descrivere la varianza ancora disponibile della maggior parte di esse e tutte queste componenti principali sono ortogonali tra loro. In tutte le componenti principali, la prima componente principale ha una varianza massima.
mysql non è uguale
Usi dell'PCA:
- Viene utilizzato per trovare interrelazioni tra le variabili nei dati.
- Viene utilizzato per interpretare e visualizzare i dati.
- Il numero di variabili sta diminuendo, il che rende più semplici le ulteriori analisi.
- Viene spesso utilizzato per visualizzare la distanza genetica e la parentela tra le popolazioni.
Questi vengono fondamentalmente eseguiti su una matrice quadrata simmetrica. Può essere una somma pura di quadrati e una matrice di prodotti incrociati. Matrice di covarianza o matrice di correlazione. Se la varianza individuale differisce molto viene utilizzata una matrice di correlazione.
Obiettivi della PCA:
- È fondamentalmente una procedura non dipendente in cui riduce lo spazio degli attributi da un gran numero di variabili a un numero minore di fattori.
- La PCA è fondamentalmente un processo di riduzione delle dimensioni, ma non vi è alcuna garanzia che la dimensione sia interpretabile.
- Il compito principale di questo PCA è selezionare un sottoinsieme di variabili da un insieme più ampio, in base a quali le variabili originali hanno la massima correlazione con l'importo del capitale.
- Identificazione dei modelli: la PCA può aiutare a identificare modelli o relazioni tra variabili che potrebbero non essere evidenti nei dati originali. Riducendo la dimensionalità dei dati, la PCA può rivelare strutture sottostanti che possono essere utili per comprendere e interpretare i dati.
- Estrazione delle caratteristiche: la PCA può essere utilizzata per estrarre caratteristiche da un insieme di variabili che sono più informative o rilevanti rispetto alle variabili originali. Queste funzionalità possono quindi essere utilizzate nella modellazione o in altre attività di analisi.
- Compressione dei dati: la PCA può essere utilizzata per comprimere set di dati di grandi dimensioni riducendo il numero di variabili necessarie per rappresentare i dati, conservando quante più informazioni possibili.
- Riduzione del rumore: la PCA può essere utilizzata per ridurre il rumore in un set di dati identificando e rimuovendo i componenti principali che corrispondono alle parti rumorose dei dati.
- Visualizzazione: la PCA può essere utilizzata per visualizzare dati ad alta dimensione in uno spazio a dimensione inferiore, facilitandone l'interpretazione e la comprensione. Proiettando i dati sui componenti principali, i modelli e le relazioni tra le variabili possono essere visualizzati più facilmente.
Metodo dell'asse principale: La PCA cerca fondamentalmente una combinazione lineare di variabili in modo da poter estrarre la massima varianza dalle variabili. Una volta completato questo processo, lo rimuove e cerca un'altra combinazione lineare che dia una spiegazione sulla proporzione massima della varianza rimanente che sostanzialmente porta a fattori ortogonali. In questo metodo, analizziamo la varianza totale.
Autovettore: È un vettore diverso da zero che rimane parallelo dopo la moltiplicazione della matrice. Supponiamo che x sia un autovettore di dimensione r della matrice M con dimensione r*r se Mx e x sono paralleli. Quindi dobbiamo risolvere Mx=Ax dove sia x che A sono sconosciuti per ottenere autovettore e autovalori.
Sotto Autovettori, possiamo dire che le componenti principali mostrano sia la varianza comune che quella unica della variabile. Fondamentalmente, si tratta di un approccio focalizzato sulla varianza che cerca di riprodurre la varianza totale e la correlazione con tutti i componenti. Le componenti principali sono fondamentalmente le combinazioni lineari delle variabili originali ponderate in base al loro contributo per spiegare la varianza in una particolare dimensione ortogonale.
Propri valori: È fondamentalmente noto come radici caratteristiche. Fondamentalmente misura la varianza in tutte le variabili che è rappresentata da quel fattore. Il rapporto tra autovalori è il rapporto tra l'importanza esplicativa dei fattori rispetto alle variabili. Se il fattore è basso significa che contribuisce meno alla spiegazione delle variabili. In parole semplici, misura la quantità di varianza nel database totale considerato dal fattore. Possiamo calcolare l’autovalore del fattore come la somma del suo coefficiente quadrato per tutte le variabili.
Ora, comprendiamo l'analisi delle componenti principali con Python.
Per ottenere il set di dati utilizzato nell'implementazione, fare clic su Qui .
Passo 1: Importazione delle librerie
Pitone # importing required libraries import numpy as np import matplotlib.pyplot as plt import pandas as pd>
Passo 2: Importazione del set di dati
Importare il set di dati e distribuire il set di dati nei componenti X e Y per l'analisi dei dati.
Pitone # importing or loading the dataset dataset = pd.read_csv('wine.csv') # distributing the dataset into two components X and Y X = dataset.iloc[:, 0:13].values y = dataset.iloc[:, 13].values>
Passaggio 3: Suddivisione del set di dati in Training set e Test set
# Splitting the X and Y into the # Training set and Testing set from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 0)>
Passaggio 4: Ridimensionamento delle funzionalità
Eseguire la parte di pre-elaborazione sul set di formazione e test, come l'adattamento della scala standard.
Pitone # performing preprocessing part from sklearn.preprocessing import StandardScaler sc = StandardScaler() X_train = sc.fit_transform(X_train) X_test = sc.transform(X_test)>
Passaggio 5: Applicazione della funzione PCA
Applicazione della funzione PCA al set di training e test per l'analisi.
Pitone # Applying PCA function on training # and testing set of X component from sklearn.decomposition import PCA pca = PCA(n_components = 2) X_train = pca.fit_transform(X_train) X_test = pca.transform(X_test) explained_variance = pca.explained_variance_ratio_>
Passaggio 6: Adattamento della regressione logistica al set di addestramento
Pitone # Fitting Logistic Regression To the training set from sklearn.linear_model import LogisticRegression classifier = LogisticRegression(random_state = 0) classifier.fit(X_train, y_train)>
Produzione:

Passaggio 7: Previsione del risultato del set di test
Pitone # Predicting the test set result using # predict function under LogisticRegression y_pred = classifier.predict(X_test)>
Passaggio 8: Costruire la matrice di confusione
# making confusion matrix between # test set of Y and predicted value. from sklearn.metrics import confusion_matrix cm = confusion_matrix(y_test, y_pred)>
Passaggio 9: Previsione del risultato del set di allenamento
# Predicting the training set # result through scatter plot from matplotlib.colors import ListedColormap X_set, y_set = X_train, y_train X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01), np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01)) plt.contourf(X1, X2, classifier.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape), alpha = 0.75, cmap = ListedColormap(('yellow', 'white', 'aquamarine'))) plt.xlim(X1.min(), X1.max()) plt.ylim(X2.min(), X2.max()) for i, j in enumerate(np.unique(y_set)): plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1], color = ListedColormap(('red', 'green', 'blue'))(i), label = j) plt.title('Logistic Regression (Training set)') plt.xlabel('PC1') # for Xlabel plt.ylabel('PC2') # for Ylabel plt.legend() # to show legend # show scatter plot plt.show()> Produzione:

Passaggio 10: Visualizzazione dei risultati del set di test
Pitone # Visualising the Test set results through scatter plot from matplotlib.colors import ListedColormap X_set, y_set = X_test, y_test X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() - 1, stop = X_set[:, 0].max() + 1, step = 0.01), np.arange(start = X_set[:, 1].min() - 1, stop = X_set[:, 1].max() + 1, step = 0.01)) plt.contourf(X1, X2, classifier.predict(np.array([X1.ravel(), X2.ravel()]).T).reshape(X1.shape), alpha = 0.75, cmap = ListedColormap(('yellow', 'white', 'aquamarine'))) plt.xlim(X1.min(), X1.max()) plt.ylim(X2.min(), X2.max()) for i, j in enumerate(np.unique(y_set)): plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1], color = ListedColormap(('red', 'green', 'blue'))(i), label = j) # title for scatter plot plt.title('Logistic Regression (Test set)') plt.xlabel('PC1') # for Xlabel plt.ylabel('PC2') # for Ylabel plt.legend() # show scatter plot plt.show()> 
Possiamo visualizzare i dati nel nuovo spazio delle componenti principali:
Pitone # plot the first two principal components with labels y = df.iloc[:, -1].values colors = ['r', 'g'] labels = ['Class 1', 'Class 2'] for i, color, label in zip(np.unique(y), colors, labels): plt.scatter(X_pca[y == i, 0], X_pca[y == i, 1], color=color, label=label) plt.xlabel('Principal Component 1') plt.ylabel('Principal Component 2') plt.legend() plt.show() 7> Questo è un semplice esempio di come eseguire PCA utilizzando Python. L'output di questo codice sarà un grafico a dispersione delle prime due componenti principali e il loro rapporto di varianza spiegato. Selezionando il numero appropriato di componenti principali, possiamo ridurre la dimensionalità del set di dati e migliorare la nostra comprensione dei dati.