Riduzione della dimensionalità: tecniche di visualizzazione

Esercitarsi con le domande di colloquio di Machine Learning in Python

Lisa Stuart

Data Scientist

Perché ridurre la dimensionalità?

  1. Velocizza l’addestramento ML
  2. Visualizzazione
  3. Migliora l’accuratezza
Esercitarsi con le domande di colloquio di Machine Learning in Python

Tecniche di visualizzazione

  • PCA
  • t-SNE
Esercitarsi con le domande di colloquio di Machine Learning in Python

Visualizzare con PCA

grafico PCA

1 https://districtdatalabs.silvrback.com/principal-component-analysis-with-python
Esercitarsi con le domande di colloquio di Machine Learning in Python

Scree plot

Scree plot

1 https://towardsdatascience.com/a-step-by-step-explanation-of-principal-component-analysis-b836fb9c97e2
Esercitarsi con le domande di colloquio di Machine Learning in Python

t-SNE

  • Probabilistica
  • Coppie di punti dati
  • Embedding a bassa dimensione
  • Traccia gli embedding
Esercitarsi con le domande di colloquio di Machine Learning in Python

Visualizzare con t-SNE

# t-sne with loan data
from sklearn.manifold import TSNE
import seaborn as sns

loans =  pd.read_csv('loans_dataset.csv')

# Feature matrix
X = loans.drop('Loan Status', axis=1)

tsne = TSNE(n_components=2, verbose=1, perplexity=40)
tsne_results = tsne.fit_transform(X)

loans['t-SNE-PC-one'] = tsne_results[:,0]
loans['t-SNE-PC-two'] = tsne_results[:,1]

# t-sne viz
plt.figure(figsize=(16,10))
sns.scatterplot(
    x="t-SNE-PC-one", y="t-SNE-PC-two",
    hue="Loan Status",
    palette=sns.color_palette(["grey","blue"]),
    data=loans,
    legend="full",
    alpha=0.3
)
1 https://scikit-learn.org/stable/modules/generated/sklearn.manifold.TSNE.html
Esercitarsi con le domande di colloquio di Machine Learning in Python

Visualizzare con t-SNE

grafico t-SNE

Esercitarsi con le domande di colloquio di Machine Learning in Python

PCA vs t-SNE: cifre

PCA e t-SNE su dataset di cifre

1 https://towardsdatascience.com/visualising-high-dimensional-datasets-using-pca-and-t-sne-in-python-8ef87e7915b
Esercitarsi con le domande di colloquio di Machine Learning in Python

Andiamo a fare pratica!

Esercitarsi con le domande di colloquio di Machine Learning in Python

Preparing Video For Download...